summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Purdie <richard@openedhand.com>2008-01-31 21:02:59 +0000
committerRichard Purdie <richard@openedhand.com>2008-01-31 21:02:59 +0000
commitd38751f4e40add5c9ef3c3384e0af2a69a1a0807 (patch)
tree96ff9bc6750b26a068629fc8907e1a175bae2969
parentc51985fbd1e3bd406df1c37f927b74e43af71aa8 (diff)
downloadopenembedded-core-d38751f4e40add5c9ef3c3384e0af2a69a1a0807.tar.gz
openembedded-core-d38751f4e40add5c9ef3c3384e0af2a69a1a0807.tar.bz2
openembedded-core-d38751f4e40add5c9ef3c3384e0af2a69a1a0807.tar.xz
openembedded-core-d38751f4e40add5c9ef3c3384e0af2a69a1a0807.zip
gcc-cross-sdk: Totally rewrite packaging so it consists of a single package. Disable shlibs code causing build breakage. Add useful symlinks to gcc and cc
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@3655 311d38ba-8fff-0310-9ca6-ca027cbcb966
-rw-r--r--meta/packages/gcc/gcc-cross-sdk_3.4.4.bb2
-rw-r--r--meta/packages/gcc/gcc-cross-sdk_4.1.2.bb2
-rw-r--r--meta/packages/gcc/gcc-cross-sdk_csl-arm-2005q3-2.bb2
-rw-r--r--meta/packages/gcc/gcc-package-sdk.inc64
4 files changed, 47 insertions, 23 deletions
diff --git a/meta/packages/gcc/gcc-cross-sdk_3.4.4.bb b/meta/packages/gcc/gcc-cross-sdk_3.4.4.bb
index 038d39040..4b2c583fc 100644
--- a/meta/packages/gcc/gcc-cross-sdk_3.4.4.bb
+++ b/meta/packages/gcc/gcc-cross-sdk_3.4.4.bb
@@ -3,7 +3,7 @@ HOMEPAGE = "http://www.gnu.org/software/gcc/"
SECTION = "devel"
LICENSE = "GPL"
require gcc_${PV}.bb
-PR = "r2"
+PR = "r3"
inherit sdk
diff --git a/meta/packages/gcc/gcc-cross-sdk_4.1.2.bb b/meta/packages/gcc/gcc-cross-sdk_4.1.2.bb
index 85ff74ec3..23327c06d 100644
--- a/meta/packages/gcc/gcc-cross-sdk_4.1.2.bb
+++ b/meta/packages/gcc/gcc-cross-sdk_4.1.2.bb
@@ -1,4 +1,4 @@
-PR = "r5"
+PR = "r6"
inherit sdk
diff --git a/meta/packages/gcc/gcc-cross-sdk_csl-arm-2005q3-2.bb b/meta/packages/gcc/gcc-cross-sdk_csl-arm-2005q3-2.bb
index 15ef0273b..fa5794b7b 100644
--- a/meta/packages/gcc/gcc-cross-sdk_csl-arm-2005q3-2.bb
+++ b/meta/packages/gcc/gcc-cross-sdk_csl-arm-2005q3-2.bb
@@ -1,4 +1,4 @@
-PR = "r0"
+PR = "r1"
inherit sdk
diff --git a/meta/packages/gcc/gcc-package-sdk.inc b/meta/packages/gcc/gcc-package-sdk.inc
index e106abbd4..635ab6d1f 100644
--- a/meta/packages/gcc/gcc-package-sdk.inc
+++ b/meta/packages/gcc/gcc-package-sdk.inc
@@ -1,20 +1,58 @@
-# Packages emitted by our gcc-cross builds.
#
+# Note gcc-package.inc was already included before us.
+#
+# We override PACKAGES and FILES to change the packaging
+#
+
INHIBIT_PACKAGE_STRIP ?= ""
HAS_G2C ?= "yes"
HAS_GFORTRAN ?= "no"
OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}"
INHIBIT_PACKAGE_STRIP = "1"
-python do_package() {
- if bb.data.getVar('DEBIAN_NAMES', d, 1):
- bb.data.setVar('PKG_libgcc', 'libgcc1', d)
- bb.build.exec_func('package_do_package', d)
-}
+# Having anything auto depending on gcc-cross-sdk is a really bad idea...
+EXCLUDE_FROM_SHLIBS = "1"
+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 \
+ ${gcclibdir}/${TARGET_SYS}/${BINV}/*.o \
+ ${gcclibdir}/${TARGET_SYS}/${BINV}/specs \
+ ${gcclibdir}/${TARGET_SYS}/${BINV}/lib* \
+ ${gcclibdir}/${TARGET_SYS}/${BINV}/include \
+ ${includedir}/c++/${BINV} \
+ ${prefix}/${TARGET_SYS}/bin/* \
+ ${prefix}/${TARGET_SYS}/lib/* \
+ "
do_install () {
oe_runmake 'DESTDIR=${D}' install
+ # Cleanup some of the ${libdir}{,exec}/gcc stuff ...
+ rm -r ${D}${libdir}/gcc/${TARGET_SYS}/${BINV}/install-tools
+ rm -r ${D}${libexecdir}/gcc/${TARGET_SYS}/${BINV}/install-tools
+
+ # We care about g++ not c++
+ rm -f ${D}${bindir}/*c++
+
+ # We don't care about the gcc-<version> copies
+ rm -f ${D}${bindir}/*gcc-?.?*
+
+ # We use libiberty from binutils
+ 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},,'`"
+ done
+ ln -sf "${bindir}/${TARGET_PREFIX}gcc" "${D}${prefix}/${TARGET_SYS}/bin/cc"
+
# Manually run the target stripper since we won't get it run by
# the packaging.
if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then
@@ -24,17 +62,3 @@ do_install () {
fi
}
-FILES_libgcc = "${prefix}/${TARGET_SYS}/lib/libgcc*.so.*"
-FILES_libgcc-dev = "${prefix}/${TARGET_SYS}/lib/libgcc*.so"
-
-FILES_libstdc++ = "${prefix}/${TARGET_SYS}/lib/libstdc++.so.*"
-FILES_libstdc++-dev = "${includedir}/c++/${BINV} \
- ${prefix}/${TARGET_SYS}/lib/libstdc++.so \
- ${prefix}/${TARGET_SYS}/lib/libstdc++.a \
- ${prefix}/${TARGET_SYS}/lib/libsupc++.a"
-
-FILES_libmudflap = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so.*"
-FILES_libmudflap-dev = "${prefix}/${TARGET_SYS}/lib/libmudflap*.so \
- ${prefix}/${TARGET_SYS}/lib/libmudflap*.a"
-
-RRECOMMENDS_${PN} += "libgcc libgcc-dev cpp g++ libstdc++ libstdc++-dev"