Target C++ header file location rationale?
Benjamin Kosnik
bkoz@redhat.com
Wed Jan 22 05:10:00 GMT 2003
On Wed, 22 Jan 2003 04:21:30 +0000
Jonathan Larmour <jifl@eCosCentric.com> wrote:
>> In a cross-compilation build with 3.2.1, target headers get installed in
>> $(prefix)/include with target-specific additions going under the bits/
>> subdir therein. What is the rationale for them living here for cross
>> builds?
You seem confused.
For 3.2.x and above:
$(prefix)/include/c++/$(gcc_version)/
Is the base install directory for c++ includes.
As part of this,
$(prefix)/include/c++/$(gcc_version)/$(target)/bits/
is where configuration-specific files go.
This was orignally done so that Laurel Networks could have cross
compilers and native compilers installed in the same directory: the
common includes would install over each other, and the target specific
bits would be isolated.
Seems to make sense.
Then some bright chappie decided, much like you have, that really, the
configuration-specific files should be out in
$(prefix)/$(target)/include.
We tried this for a bit, but it hosed relocatable RPMS, and perhaps
there were other problems that I don't remember anymore.
I'm not super interested in changing the current setup.
best,
benjamin
More information about the Libstdc++
mailing list