Summary: | ld doesn't honor sysroot prefix for ldscripts | ||
---|---|---|---|
Product: | binutils | Reporter: | Sven Rebhan <OdinsHorse> |
Component: | ld | Assignee: | Alan Modra <amodra> |
Status: | RESOLVED FIXED | ||
Severity: | normal | CC: | bug-binutils, toolchain |
Priority: | P2 | ||
Version: | 2.19 | ||
Target Milestone: | --- | ||
URL: | http://sourceware.org/ml/binutils/2012-03/msg00076.html | ||
Host: | Target: | armv4tl-softfloat-linux-gnueabi | |
Build: | Last reconfirmed: | ||
Attachments: | ld should search search in sysroot first |
Description
Sven Rebhan
2009-06-28 06:53:14 UTC
Created attachment 4025 [details]
ld should search search in sysroot first
When ld was configured with a sysroot, it should always search for libraries
with absolute filename in this sysroot first.
Comment on attachment 4025 [details]
ld should search search in sysroot first
When ld was configured with a sysroot, it should always search for libraries
with absolute filename in this sysroot first. This patch was tested on
x86_64-pc-linux-gnu without sysroot and armv4tl-softfloat-linux-gnueabi with
sysroot and works ffine on both.
background discussion can be found here: http://sourceware.org/ml/binutils/2009-05/msg00480.html CVSROOT: /cvs/src Module name: src Changes by: amodra@sourceware.org 2012-03-08 05:29:33 Modified files: ld : ChangeLog ldfile.c ldfile.h ldlang.c ldlang.h ldlex.h ldlex.l Log message: PR ld/10340 * ldfile.c (is_sysrooted_pathname): Remove notsame param. (ldfile_add_library_path): Don't set sysrooted flag. (ldfile_open_file_search): Likewise, and don't copy them. (try_open): Delete exten and code handling such. Add sysrooted param and return whether path is in sysroot. (ldfile_find_command_file): Delete extend param. Add sysrooted param. Rename local var. Update try_open calls. (ldfile_open_command_file_1): Pass sysrooted to lex_push_file. * ldfile.h (search_dirs_type): Remove sysrooted field. * ldlang.c (new_afile): Always set sysrooted from input_flags. (load_symbols): Don't set input_flags.sysrooted. * ldlang.h (struct lang_input_statement_flags): Revise sysrooted comment. * ldlex.h (lex_push_file): Update prototype. * ldlex.l (sysrooted_stack): New array. (EOF): Pop input_flags.sysrooted. (lex_push_file): Add sysrooted param. Save and set input_flags.sysrooted. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ChangeLog.diff?cvsroot=src&r1=1.2416&r2=1.2417 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldfile.c.diff?cvsroot=src&r1=1.65&r2=1.66 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldfile.h.diff?cvsroot=src&r1=1.19&r2=1.20 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldlang.c.diff?cvsroot=src&r1=1.385&r2=1.386 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldlang.h.diff?cvsroot=src&r1=1.102&r2=1.103 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldlex.h.diff?cvsroot=src&r1=1.9&r2=1.10 http://sourceware.org/cgi-bin/cvsweb.cgi/src/ld/ldlex.l.diff?cvsroot=src&r1=1.54&r2=1.55 More background discussion http://sourceware.org/ml/binutils/2003-02/msg00449.html fixed *** Bug 260998 has been marked as a duplicate of this bug. *** Seen from the domain http://volichat.com Page where seen: http://volichat.com/adult-chat-rooms Marked for reference. Resolved as fixed @bugzilla. |