aboutsummaryrefslogtreecommitdiff
path: root/sbin/Makefile.pc98
diff options
context:
space:
mode:
authorBryan Drewery <bdrewery@FreeBSD.org>2015-11-24 00:49:29 +0000
committerBryan Drewery <bdrewery@FreeBSD.org>2015-11-24 00:49:29 +0000
commit8b2b71b415450d1ad4c9b56cec424c702020bf93 (patch)
treef835cdb869b62313bad215c29cfdad2940fde14c /sbin/Makefile.pc98
parent15d107308f0dc3b026160bd7185ad7674c422767 (diff)
downloadsrc-8b2b71b415450d1ad4c9b56cec424c702020bf93.tar.gz
src-8b2b71b415450d1ad4c9b56cec424c702020bf93.zip
Fix ld not respecting --sysroot.
ld(1) uses the /usr/libdata/ldscripts when linking. These scripts add in the default search paths of /lib and /usr/lib via 'SEARCH_DIR("DIR")'. These need to be prefixed by '=' so that the --sysroot flag is respected. This is not a problem with buildworld since the TOOLS_PREFIX is baked into the cross-ld. However it is a problem when trying to use ld(1) with --sysroot anywhere else as it ends up still reading /lib and /usr/lib despite --sysroot. The default --sysroot (TARGET_SYSTEM_ROOT) is '/' for /usr/bin/ld. I found this while building with META MODE with uses only --sysroot with /usr/bin/ld, and found that libraries that I had not built in its sysroot directory were leaking in. This didn't happen with ports binutils either. This would also impact external compiler support. Reviewed by: bapt, brooks MFC after: 2 weeks Sponsored by: EMC / Isilon Storage Division Differential Revision: https://reviews.freebsd.org/D4262
Notes
Notes: svn path=/head/; revision=291226
Diffstat (limited to 'sbin/Makefile.pc98')
0 files changed, 0 insertions, 0 deletions