From: Richard Purdie Date: Thu, 15 Jul 2010 09:19:12 +0000 (+0100) Subject: binutils/gcc-crosssdk: Fix hardcoded path layout assumptions for cross toolchains X-Git-Tag: 2011-1~5287 X-Git-Url: https://code.ossystems.io/gitweb?a=commitdiff_plain;h=baf69e6a929344368284128038959228e073ed7a;p=openembedded-core.git binutils/gcc-crosssdk: Fix hardcoded path layout assumptions for cross toolchains Signed-off-by: Richard Purdie --- diff --git a/meta/packages/binutils/binutils-crosssdk_2.20.1.bb b/meta/packages/binutils/binutils-crosssdk_2.20.1.bb index 8a9275003f..f3bc5bfc22 100644 --- a/meta/packages/binutils/binutils-crosssdk_2.20.1.bb +++ b/meta/packages/binutils/binutils-crosssdk_2.20.1.bb @@ -4,9 +4,9 @@ inherit crosssdk PROVIDES = "virtual/${TARGET_PREFIX}binutils-crosssdk" -PR = "r1" +PR = "r3" do_configure_prepend () { - sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATH}/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt + sed -i 's#/usr/local/lib /lib /usr/lib#${SDKPATHNATIVE}/lib ${SDKPATHNATIVE}/usr/lib /usr/local/lib /lib /usr/lib#' ${S}/ld/configure.tgt } diff --git a/meta/packages/gcc/gcc-configure-common.inc b/meta/packages/gcc/gcc-configure-common.inc index 58a527b51c..052c5a1bda 100644 --- a/meta/packages/gcc/gcc-configure-common.inc +++ b/meta/packages/gcc/gcc-configure-common.inc @@ -50,6 +50,7 @@ ARCH_FLAGS_FOR_TARGET = "${TARGET_CC_ARCH}" EXTRA_OEMAKE += "ARCH_FLAGS_FOR_TARGET='${ARCH_FLAGS_FOR_TARGET}'" SYSTEMHEADERS = "${target_includedir}" +SYSTEMLIBS = "${target_base_libdir}/" SYSTEMLIBS1 = "${target_libdir}/" do_configure () { @@ -86,6 +87,9 @@ do_configure () { echo "#ifndef STANDARD_INCLUDE_DIR" >> ${S}/gcc/defaults.h.new echo "#define STANDARD_INCLUDE_DIR \"${SYSTEMHEADERS}\"" >> ${S}/gcc/defaults.h.new echo "#endif" >> ${S}/gcc/defaults.h.new + echo "#ifndef STANDARD_STARTFILE_PREFIX_1" >> ${S}/gcc/defaults.h.new + echo "#define STANDARD_STARTFILE_PREFIX_1 \"${SYSTEMLIBS}\"" >> ${S}/gcc/defaults.h.new + echo "#endif" >> ${S}/gcc/defaults.h.new echo "#ifndef STANDARD_STARTFILE_PREFIX_2" >> ${S}/gcc/defaults.h.new echo "#define STANDARD_STARTFILE_PREFIX_2 \"${SYSTEMLIBS1}\"" >> ${S}/gcc/defaults.h.new echo "#endif" >> ${S}/gcc/defaults.h.new diff --git a/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb b/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb index 02a78aa411..756339d6d1 100644 --- a/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb +++ b/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb @@ -11,6 +11,7 @@ DEPENDS += "gmp-nativesdk mpfr-nativesdk" RDEPENDS_${PN} += "mpfr-nativesdk" SYSTEMHEADERS = "/usr/include" +SYSTEMLIBS = "/lib/" SYSTEMLIBS1 = "/usr/lib/" EXTRA_OECONF += "--disable-libunwind-exceptions --disable-libssp \ diff --git a/meta/packages/gcc/gcc-crosssdk-initial.inc b/meta/packages/gcc/gcc-crosssdk-initial.inc index 794a953472..eb8d27397d 100644 --- a/meta/packages/gcc/gcc-crosssdk-initial.inc +++ b/meta/packages/gcc/gcc-crosssdk-initial.inc @@ -1,6 +1,7 @@ inherit crosssdk SYSTEMHEADERS = "${SDKPATHNATIVE}${prefix_nativesdk}/include" +SYSTEMLIBS = "${SDKPATHNATIVE}${base_libdir_nativesdk}/" SYSTEMLIBS1 = "${SDKPATHNATIVE}${libdir_nativesdk}/" DEPENDS = "virtual/${TARGET_PREFIX}binutils-crosssdk gettext-native" diff --git a/meta/packages/gcc/gcc-crosssdk-intermediate.inc b/meta/packages/gcc/gcc-crosssdk-intermediate.inc index 5b88d33139..ed5d5e838d 100644 --- a/meta/packages/gcc/gcc-crosssdk-intermediate.inc +++ b/meta/packages/gcc/gcc-crosssdk-intermediate.inc @@ -1,6 +1,7 @@ inherit crosssdk SYSTEMHEADERS = "${SDKPATHNATIVE}${prefix_nativesdk}/include" +SYSTEMLIBS = "${SDKPATHNATIVE}${base_libdir_nativesdk}/" SYSTEMLIBS1 = "${SDKPATHNATIVE}${libdir_nativesdk}/" DEPENDS = "virtual/${TARGET_PREFIX}binutils-crosssdk gettext-native" diff --git a/meta/packages/gcc/gcc-crosssdk-intermediate_4.3.3.bb b/meta/packages/gcc/gcc-crosssdk-intermediate_4.3.3.bb index c0f5d5cb16..b14dfc32cf 100644 --- a/meta/packages/gcc/gcc-crosssdk-intermediate_4.3.3.bb +++ b/meta/packages/gcc/gcc-crosssdk-intermediate_4.3.3.bb @@ -1,3 +1,3 @@ require gcc-cross-intermediate_${PV}.bb require gcc-crosssdk-intermediate.inc -PR = "r1" +PR = "r2" diff --git a/meta/packages/gcc/gcc-crosssdk.inc b/meta/packages/gcc/gcc-crosssdk.inc index be2d0b0a28..6e7d5a73f9 100644 --- a/meta/packages/gcc/gcc-crosssdk.inc +++ b/meta/packages/gcc/gcc-crosssdk.inc @@ -1,6 +1,7 @@ inherit crosssdk SYSTEMHEADERS = "${SDKPATHNATIVE}${prefix_nativesdk}/include" +SYSTEMLIBS = "${SDKPATHNATIVE}${base_libdir_nativesdk}/" SYSTEMLIBS1 = "${SDKPATHNATIVE}${libdir_nativesdk}/" GCCMULTILIB = "--disable-multilib" @@ -10,6 +11,6 @@ PROVIDES = "virtual/${TARGET_PREFIX}gcc-crosssdk virtual/${TARGET_PREFIX}g++-cro do_configure_prepend () { # Change the default dynamic linker path to the one in the SDK - sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib/#\1${SYSTEMLIBS1}#' - sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib64/#\1${SYSTEMLIBS1}#' + sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib/#\1${SYSTEMLIBS}#' + sed -i ${S}/gcc/config/*/linux*.h -e 's#\(GLIBC_DYNAMIC_LINKER.*\)/lib64/#\1${SYSTEMLIBS}#' }