summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <rpurdie@linux.intel.com>2010-08-03 20:04:33 +0100
committerRichard Purdie <rpurdie@linux.intel.com>2010-08-03 20:04:33 +0100
commitec8f5299d96d938b56c68d4ffa701b0c8a061de6 (patch)
treead27e2213266eb3b425a36f5c6f990c78938ba35
parentb3e41b5d1ec003908610a79648528246d467a053 (diff)
downloadopenembedded-core-ec8f5299d96d938b56c68d4ffa701b0c8a061de6.tar.gz
openembedded-core-ec8f5299d96d938b56c68d4ffa701b0c8a061de6.tar.bz2
openembedded-core-ec8f5299d96d938b56c68d4ffa701b0c8a061de6.zip
cross-canadian: Move binaries into a subdirectory of bin to allow multimachine installs and update users accordingly
Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
-rw-r--r--meta/classes/cross-canadian.bbclass6
-rw-r--r--meta/packages/binutils/binutils-cross-canadian.inc8
-rw-r--r--meta/packages/binutils/binutils-cross-canadian_2.20.1.bb2
-rw-r--r--meta/packages/gcc/gcc-cross-canadian_4.3.3.bb2
-rw-r--r--meta/packages/gcc/gcc-package-sdk.inc16
-rw-r--r--meta/packages/meta/meta-toolchain.bb10
6 files changed, 21 insertions, 23 deletions
diff --git a/meta/classes/cross-canadian.bbclass b/meta/classes/cross-canadian.bbclass
index 9afdd619ea..72032367ef 100644
--- a/meta/classes/cross-canadian.bbclass
+++ b/meta/classes/cross-canadian.bbclass
@@ -49,6 +49,12 @@ target_exec_prefix := "${exec_prefix}"
base_prefix = "${SDKPATHNATIVE}"
prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
exec_prefix = "${SDKPATHNATIVE}${prefix_nativesdk}"
+bindir = "${exec_prefix}/bin/${OLD_MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
+sbindir = "${bindir}"
+base_bindir = "${bindir}"
+base_sbindir = "${bindir}"
+libdir = "${exec_prefix}/lib/${OLD_MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
+libexecdir = "${exec_prefix}/libexec/${OLD_MULTIMACH_ARCH}${TARGET_VENDOR}-${TARGET_OS}"
FILES_${PN} = "${prefix}"
FILES_${PN}-dbg += "${prefix}/.debug \
diff --git a/meta/packages/binutils/binutils-cross-canadian.inc b/meta/packages/binutils/binutils-cross-canadian.inc
index 04fa6e2de0..4953bc2c3b 100644
--- a/meta/packages/binutils/binutils-cross-canadian.inc
+++ b/meta/packages/binutils/binutils-cross-canadian.inc
@@ -6,15 +6,9 @@ EXTRA_OECONF = "--with-sysroot=${SDKPATH}/sysroots/${TARGET_SYS} \
do_install () {
autotools_do_install
- # Fix the ${prefix}/${TARGET_SYS}/bin/* files to be symlinks
- rm ${D}${prefix}/${TARGET_SYS}/bin/.debug -Rf
- rm ${D}${prefix}/${TARGET_SYS}/bin/*
- for l in ${D}${bindir}/*; do
- ln -sf "${bindir}/`basename $l`" "${D}${prefix}/${TARGET_SYS}/bin/`basename $l | sed -e 's,${TARGET_PREFIX},,'`"
- done
-
# We're not interested in the libs or headers, these would come from the
# nativesdk or target version of the binutils recipe
+ rm -rf ${D}${prefix}/${TARGET_SYS}
rm -f ${D}${libdir}/libbfd*
rm -f ${D}${libdir}/libiberty*
rm -f ${D}${libdir}/libopcodes*
diff --git a/meta/packages/binutils/binutils-cross-canadian_2.20.1.bb b/meta/packages/binutils/binutils-cross-canadian_2.20.1.bb
index 13fc22aa64..f4a7a0e619 100644
--- a/meta/packages/binutils/binutils-cross-canadian_2.20.1.bb
+++ b/meta/packages/binutils/binutils-cross-canadian_2.20.1.bb
@@ -1,3 +1,3 @@
require binutils_${PV}.bb
require binutils-cross-canadian.inc
-PR = "r3"
+PR = "r4"
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 7cc202363e..981452b7a7 100644
--- a/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb
+++ b/meta/packages/gcc/gcc-cross-canadian_4.3.3.bb
@@ -5,7 +5,7 @@ require gcc-cross-canadian.inc
require gcc-configure-sdk.inc
require gcc-package-sdk.inc
-PR = "r16"
+PR = "r17"
DEPENDS += "gmp-nativesdk mpfr-nativesdk"
RDEPENDS_${PN} += "mpfr-nativesdk"
diff --git a/meta/packages/gcc/gcc-package-sdk.inc b/meta/packages/gcc/gcc-package-sdk.inc
index cdce1da1c7..23b9a48eb3 100644
--- a/meta/packages/gcc/gcc-package-sdk.inc
+++ b/meta/packages/gcc/gcc-package-sdk.inc
@@ -7,10 +7,7 @@ PACKAGES = "${PN} ${PN}-doc"
FILES_${PN} = "\
${bindir}/* \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/collect2 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/f771 \
- ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/cc1plus \
+ ${libexecdir}/gcc/${TARGET_SYS}/${BINV}/* \
${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
${gcclibdir}/${TARGET_SYS}/${BINV}/specs \
${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \
@@ -44,11 +41,12 @@ do_install () {
rm -f ${D}${prefix}/${TARGET_SYS}/lib/libiberty.a
rm -f ${D}${libdir}/libiberty.a
- # Create the ${prefix}/${TARGET_SYS}/bin/* symlinks
- install -d ${D}${prefix}/${TARGET_SYS}/bin/
- for l in ${D}${bindir}/*; do
- ln -sf "${bindir}/`basename $l`" "${D}${prefix}/${TARGET_SYS}/bin/`basename $l | sed -e 's,${TARGET_PREFIX},,'`"
+ # Insert symlinks into libexec so when tools without a prefix are searched for, the correct ones are
+ # found.
+ dest=${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/
+ install -d $dest
+ for t in ar as ld nm objcopy objdump ranlib strip g77 gcc cpp gfortran; do
+ ln -sf ${bindir}/${TARGET_PREFIX}$t $dest$t
done
- ln -sf "${bindir}/${TARGET_PREFIX}gcc" "${D}${prefix}/${TARGET_SYS}/bin/cc"
}
diff --git a/meta/packages/meta/meta-toolchain.bb b/meta/packages/meta/meta-toolchain.bb
index fad9a3406a..a53569b55b 100644
--- a/meta/packages/meta/meta-toolchain.bb
+++ b/meta/packages/meta/meta-toolchain.bb
@@ -73,19 +73,19 @@ do_populate_sdk() {
rm -f ${SDK_OUTPUT}/${SDKPATHNATIVE}${libdir_nativesdk}/*.la
# Setup site file for external use
- siteconfig=${SDK_OUTPUT}/${SDKPATH}/site-config-${TARGET_SYS}
+ siteconfig=${SDK_OUTPUT}/${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}
touch $siteconfig
for sitefile in ${CONFIG_SITE} ; do
cat $sitefile >> $siteconfig
done
# Create environment setup script
- script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${TARGET_SYS}
+ script=${SDK_OUTPUT}/${SDKPATH}/environment-setup-${MULTIMACH_TARGET_SYS}
touch $script
- echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:$PATH' >> $script
+ echo 'export PATH=${SDKPATHNATIVE}${bindir_nativesdk}:${SDKPATHNATIVE}${bindir_nativesdk}/${MULTIMACH_TARGET_SYS}:$PATH' >> $script
echo 'export PKG_CONFIG_SYSROOT_DIR=${SDKTARGETSYSROOT}' >> $script
echo 'export PKG_CONFIG_PATH=${SDKTARGETSYSROOT}${libdir}/pkgconfig' >> $script
- echo 'export CONFIG_SITE=${SDKPATH}/site-config-${TARGET_SYS}' >> $script
+ echo 'export CONFIG_SITE=${SDKPATH}/site-config-${MULTIMACH_TARGET_SYS}' >> $script
echo 'export CC=${TARGET_PREFIX}gcc' >> $script
echo 'export CXX=${TARGET_PREFIX}g++' >> $script
echo 'export CONFIGURE_FLAGS="--target=${TARGET_SYS} --host=${TARGET_SYS} --build=${SDK_ARCH}-linux"' >> $script
@@ -102,7 +102,7 @@ do_populate_sdk() {
echo "alias opkg-target='LD_LIBRARY_PATH=${SDKPATHNATIVE}${libdir_nativesdk} ${SDKPATHNATIVE}${bindir_nativesdk}/opkg-cl -f ${SDKTARGETSYSROOT}${sysconfdir}/opkg.conf -o ${SDKTARGETSYSROOT}'" >> $script
# Add version information
- versionfile=${SDK_OUTPUT}/${SDKPATH}/version-${TARGET_SYS}
+ versionfile=${SDK_OUTPUT}/${SDKPATH}/version-${MULTIMACH_TARGET_SYS}
touch $versionfile
echo 'Distro: ${DISTRO}' >> $versionfile
echo 'Distro Version: ${DISTRO_VERSION}' >> $versionfile