Parent Directory | Revision Log
|Links to HEAD:||(view) (download) (as text) (annotate)|
add_host_toolchain_libpath: usr/CHOST/lib/gcc no longer needs to exist (on Darwin)
add_target_toolchain_runpath: usr/CHOST/lib/gcc no longer needs to exist (on Darwin)
filterSysLibpath: do NOT remove any -L arguments Since we do not recognise various multilib-dirs, the following simple example causes breakage due to only the Prefix libdir being removed: % gcc -o t -L$EPREFIX/usr/lib -L/usr/lib64 -lgdbm t.c The executable t will be linked against /usr/lib64/libgdbm.so.X, while $EPREFIX/usr/lib/libgdbm.so.Y (with Y > X) exists. This is due to the invocation to ld having the -L$EPREFIX/usr/lib moved to the end, while the -L/usr/lib64 is retained in its original position. Net effect, /usr/lib64 is searched first, while the original gcc/collect2 invocation was setup properly. For this reason, don't try to be smart, by moving -L arguments around. At all times, the input should be sane, the wrapper should only be adding -L/-rpath arguments at the end for the configured Prefix system.
For linkpath, add PREFIX/usr/lib:PREFIX/lib in that order, but to runpath, add in reverse order. This also is needed for AIX to allow (manual) workarounds, when updated shared libraries have SONAME support while the old one does not, because 'libX.so' cannot be loaded any more when having SONAME support, as it becomes either (a symlink to) an archive or a standalone import file. This is related to http://bugs.gentoo.org/show_bug.cgi?id=213277
Drop relative library path components before filtering against system runpath, to avoid duplicate usr/lib via usr/lib/gcc/.. This allows workaround-libraries in usr/lib/host/gcc to be found at runtime before the real ones in usr/lib, while finding the real ones at linktime in usr/lib/gcc/.. first. Such workarounds might be useful on AIX to enable SONAME support for already installed libraries, fex libz.so might be erroneously used at runtime, which breaks when supporting SONAME.
Add solaris plugin. Add --with-native-ld, to choose native linker over GNU linker when supported (currently Solaris only).
Allow to switch dumping the eventual call args at runtime
inline some small funcs
squash compiler warnings (unused variables, unused computed values)
nuke multilib mess, we're no longer using it on Linux
another attempt to get libpath,runpath for cross-triplet,cross-prefix,use-root right
provide root (without trailing slash), eprefix and triplet for both host and target in LdPluginIn data
reworked adding of host system's libdirs to avoid duplicates
renamed 'binutils-libdir' to 'toolchain-libdir' in debug output
Bumped to 0.3 branch. Dropped binutils-config.in, instead added ld/create-ldwrapper.in, to be called from within binutils-config like a plugin. Dropped version number from usr/lib/misc/binutils-config install dir. Do not search for gcc, use usr/<chost>[/<ctarget>]/lib/gcc as gcc-ldpath instead.
more intelligent check if to add build-eprefix' system-libdirs to host-eprefix' runpath.
actually add_host_system_libdirs() when building natively, and ROOT is empty, and this is cross-EPREFIX
during binutils-config for native ld, ld-wrapper is configured using env-vars to use the new binutils without etc/env.d/ configfile, because this is invalid in case that version might have just been unmerged.
various warning fixes
more cross-/native-compilation, fixed plugins
added cross-compilation support.
initial import of toolchain-prefix-wrapper
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
|Powered by ViewVC 1.1.20|