diff options
author | Kumar Gala <galak@kernel.crashing.org> | 2011-08-02 17:33:17 -0500 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-08-03 17:46:47 +0100 |
commit | be1f70d68b6b75772ebab8bdff683ddd7c42b0cd (patch) | |
tree | 03fefec72c5b958fb6f3e3f1270926384e5a8c99 /meta/recipes-devtools/gcc/gcc-configure-common.inc | |
parent | 9a49eb78ec38af7d92e2cfa62a02c44a8b9fcf5a (diff) | |
download | poky-be1f70d68b6b75772ebab8bdff683ddd7c42b0cd.tar.gz |
gcc: Fix setting of GLIBC_DYNAMIC_LINKER
The sed regex in do_configure_prepend was producing the following result:
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "/lib64/ld-linux-x86-64.so.2"
instead of removing the leading "/lib" or "/lib64".
Now we have it do:
#define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2"
Additionally, with the regex fixed the manipulation of SYSTEMLIBS_DIR
needs to be removed.
(From OE-Core rev: b343436d03fa5690b16ee8ef5d4a738c5194b301)
Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-configure-common.inc')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-configure-common.inc | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-configure-common.inc b/meta/recipes-devtools/gcc/gcc-configure-common.inc index 9f5ba335c0..869d1b6d60 100644 --- a/meta/recipes-devtools/gcc/gcc-configure-common.inc +++ b/meta/recipes-devtools/gcc/gcc-configure-common.inc | |||
@@ -64,11 +64,15 @@ SYSTEMLIBS1 = "${target_libdir}/" | |||
64 | do_configure_prepend () { | 64 | do_configure_prepend () { |
65 | # Change the default dynamic linker path, only useful for SDK, other's value | 65 | # Change the default dynamic linker path, only useful for SDK, other's value |
66 | # are not changed according to the SYSTEMLIBS_DIR | 66 | # are not changed according to the SYSTEMLIBS_DIR |
67 | # | ||
68 | # We want something like the following: | ||
69 | # #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2" | ||
70 | # becomes | ||
71 | # #define GLIBC_DYNAMIC_LINKER64 SYSTEMLIBS_DIR "ld-linux-x86-64.so.2" | ||
72 | # | ||
67 | sed -i ${S}/gcc/config/*/linux*.h -e \ | 73 | sed -i ${S}/gcc/config/*/linux*.h -e \ |
68 | 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\)\( *"/lib.*\)#\1 SYSTEMLIBS_DIR\2#' | 74 | 's#\(GLIBC_DYNAMIC_LINKER[^ ]*\) \( *"/lib.*\)/\(.*\)#\1 SYSTEMLIBS_DIR "\3#' |
69 | 75 | ||
70 | SYSTEMLIBS_DIR=`dirname ${SYSTEMLIBS}` | ||
71 | [ "$SYSTEMLIBS_DIR" = "/" ] && SYSTEMLIBS_DIR="" | ||
72 | # teach gcc to find correct target includedir when checking libc ssp support | 76 | # teach gcc to find correct target includedir when checking libc ssp support |
73 | mkdir -p ${B}/gcc | 77 | mkdir -p ${B}/gcc |
74 | echo "NATIVE_SYSTEM_HEADER_DIR = ${SYSTEMHEADERS}" > ${B}/gcc/t-oe | 78 | echo "NATIVE_SYSTEM_HEADER_DIR = ${SYSTEMHEADERS}" > ${B}/gcc/t-oe |
@@ -83,7 +87,7 @@ do_configure_prepend () { | |||
83 | #ifndef STANDARD_STARTFILE_PREFIX_2 | 87 | #ifndef STANDARD_STARTFILE_PREFIX_2 |
84 | #define STANDARD_STARTFILE_PREFIX_2 "${SYSTEMLIBS1}" | 88 | #define STANDARD_STARTFILE_PREFIX_2 "${SYSTEMLIBS1}" |
85 | #endif | 89 | #endif |
86 | #define SYSTEMLIBS_DIR "$SYSTEMLIBS_DIR" | 90 | #define SYSTEMLIBS_DIR "${SYSTEMLIBS}" |
87 | #endif /* ! GCC_DEFAULTS_H */ | 91 | #endif /* ! GCC_DEFAULTS_H */ |
88 | _EOF | 92 | _EOF |
89 | mv ${B}/gcc/defaults.h.new ${B}/gcc/defaults.h | 93 | mv ${B}/gcc/defaults.h.new ${B}/gcc/defaults.h |