[ < ] | [ > ] | [ << ] | [ Up ] | [ >> ] | [Top] | [Contents] | [Index] | [ ? ] |
The `libiberty' subdirectory is currently a special case, in that it is the only directory which is built both using the host compiler and using the target compiler.
This is because the files in `libiberty' are used when building the host tools, and they are also incorporated into the `libstdc++' target library as support code.
This duality does not pose any particular difficulties. It means that there are targets for both `all-libiberty' and `all-target-libiberty'.
In a native configuration, when target libraries are not built in a subdirectory, the same objects are normally used as both the host build and the target build. This is normally OK, since libiberty contains only C code, and in a native configuration the results of the host compiler and the target compiler are normally interoperable.
Irix 6 is again an exception here, since the SGI native compiler defaults to using the `O32' ABI, and gcc defaults to using the `N32' ABI. On Irix 6, the target libraries are built in a subdirectory even for a native configuration, avoiding this problem.
There are currently no other libraries built for both the host and the target, but there is no conceptual problem with adding more.