summaryrefslogtreecommitdiff
path: root/packages/gcc
diff options
context:
space:
mode:
Diffstat (limited to 'packages/gcc')
-rw-r--r--packages/gcc/gcc-cross_3.4.0.bb16
-rw-r--r--packages/gcc/gcc-cross_3.4.1.bb16
-rw-r--r--packages/gcc/gcc-cross_3.4.2.bb16
-rw-r--r--packages/gcc/gcc-cross_3.4.3.bb10
-rw-r--r--packages/gcc/gcc-package-cross.inc0
-rw-r--r--packages/gcc/gcc-package.inc8
-rw-r--r--packages/gcc/gcc-paths-cross.inc0
-rw-r--r--packages/gcc/gcc3-build-cross.inc0
-rw-r--r--packages/gcc/gcc3-cross-build.inc79
9 files changed, 54 insertions, 91 deletions
diff --git a/packages/gcc/gcc-cross_3.4.0.bb b/packages/gcc/gcc-cross_3.4.0.bb
index e69de29bb2..2146a31b68 100644
--- a/packages/gcc/gcc-cross_3.4.0.bb
+++ b/packages/gcc/gcc-cross_3.4.0.bb
@@ -0,0 +1,16 @@
+include gcc_${PV}.bb
+# path mangling, needed by the cross packaging
+include gcc-paths-cross.inc
+inherit cross
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
+# NOTE: split PR. If the main .oe changes something that affects its *build*
+# remember to increment this one too.
+PR = "r4"
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+# cross build
+include gcc3-cross-build.inc
+# cross packaging
+include gcc-package-cross.inc
diff --git a/packages/gcc/gcc-cross_3.4.1.bb b/packages/gcc/gcc-cross_3.4.1.bb
index e69de29bb2..2146a31b68 100644
--- a/packages/gcc/gcc-cross_3.4.1.bb
+++ b/packages/gcc/gcc-cross_3.4.1.bb
@@ -0,0 +1,16 @@
+include gcc_${PV}.bb
+# path mangling, needed by the cross packaging
+include gcc-paths-cross.inc
+inherit cross
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
+# NOTE: split PR. If the main .oe changes something that affects its *build*
+# remember to increment this one too.
+PR = "r4"
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+# cross build
+include gcc3-cross-build.inc
+# cross packaging
+include gcc-package-cross.inc
diff --git a/packages/gcc/gcc-cross_3.4.2.bb b/packages/gcc/gcc-cross_3.4.2.bb
index e69de29bb2..2146a31b68 100644
--- a/packages/gcc/gcc-cross_3.4.2.bb
+++ b/packages/gcc/gcc-cross_3.4.2.bb
@@ -0,0 +1,16 @@
+include gcc_${PV}.bb
+# path mangling, needed by the cross packaging
+include gcc-paths-cross.inc
+inherit cross
+FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
+# NOTE: split PR. If the main .oe changes something that affects its *build*
+# remember to increment this one too.
+PR = "r4"
+
+DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
+PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
+
+# cross build
+include gcc3-cross-build.inc
+# cross packaging
+include gcc-package-cross.inc
diff --git a/packages/gcc/gcc-cross_3.4.3.bb b/packages/gcc/gcc-cross_3.4.3.bb
index 15642ea124..0bb212e8d7 100644
--- a/packages/gcc/gcc-cross_3.4.3.bb
+++ b/packages/gcc/gcc-cross_3.4.3.bb
@@ -1,14 +1,16 @@
include gcc_${PV}.bb
+# path mangling, needed by the cross packaging
+include gcc-paths-cross.inc
inherit cross
FILESDIR = "${@os.path.dirname(bb.data.getVar('FILE',d,1))}/gcc-${PV}"
# NOTE: split PR. If the main .oe changes something that affects its *build*
# remember to increment this one too.
-PR = "r6"
+PR = "r7"
DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc"
PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++"
-# Files for these are defined in the main gcc.oe
-PACKAGES = "libgcc libstdc++ libg2c"
-
+# cross build
include gcc3-cross-build.inc
+# cross packaging
+include gcc-package-cross.inc
diff --git a/packages/gcc/gcc-package-cross.inc b/packages/gcc/gcc-package-cross.inc
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gcc/gcc-package-cross.inc
diff --git a/packages/gcc/gcc-package.inc b/packages/gcc/gcc-package.inc
index 8e776af7b3..4fa95a8abc 100644
--- a/packages/gcc/gcc-package.inc
+++ b/packages/gcc/gcc-package.inc
@@ -29,10 +29,8 @@ FILES_${PN}-f77 = "${bindir}/${TARGET_PREFIX}g77 \
FILES_${PN}-f77-symlinks = "${bindir}/g77 \
${bindir}/f77"
-PACKAGE_ARCH_libg2c = "${TARGET_ARCH}"
PACKAGE_ARCH_libg2c-dev = "${TARGET_ARCH}"
# Called from within gcc-cross, so libdir is set wrong
-FILES_libg2c = "${libdir}/libg2c.so.*"
FILES_libg2c-dev = "${libdir}/libg2c.so \
${libdir}/libg2c.a \
${libdir}/libfrtbegin.a"
@@ -42,13 +40,7 @@ FILES_${PN}-c++ = "${bindir}/${TARGET_PREFIX}g++ \
FILES_${PN}-c++-symlinks = "${bindir}/c++ \
${bindir}/g++"
-PACKAGE_ARCH_libgcc = "${TARGET_ARCH}"
-FILES_libgcc = "/lib/libgcc_s.so.1"
-
-PACKAGE_ARCH_libstdc++ = "${TARGET_ARCH}"
PACKAGE_ARCH_libstdc++-dev = "${TARGET_ARCH}"
-# Called from within gcc-cross, so libdir is set wrong
-FILES_libstdc++ = "${libdir}/libstdc++.so.*"
FILES_libstdc++-dev = "${includedir}/c++/${PV} \
${libdir}/libstdc++.so \
${libdir}/libstdc++.la \
diff --git a/packages/gcc/gcc-paths-cross.inc b/packages/gcc/gcc-paths-cross.inc
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gcc/gcc-paths-cross.inc
diff --git a/packages/gcc/gcc3-build-cross.inc b/packages/gcc/gcc3-build-cross.inc
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gcc/gcc3-build-cross.inc
diff --git a/packages/gcc/gcc3-cross-build.inc b/packages/gcc/gcc3-cross-build.inc
deleted file mode 100644
index ef3ae3a6a1..0000000000
--- a/packages/gcc/gcc3-cross-build.inc
+++ /dev/null
@@ -1,79 +0,0 @@
-OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}"
-INHIBIT_PACKAGE_STRIP = "1"
-
-EXTRA_OECONF_PATHS = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \
- --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++"
-
-do_configure_prepend () {
- rm -f ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${PV}/libgcc_eh.a
-}
-
-do_compile_prepend () {
- export CC="${BUILD_CC}"
- export AR_FOR_TARGET="${TARGET_SYS}-ar"
- export RANLIB_FOR_TARGET="${TARGET_SYS}-ranlib"
- export LD_FOR_TARGET="${TARGET_SYS}-ld"
- export NM_FOR_TARGET="${TARGET_SYS}-nm"
- export CC_FOR_TARGET="${CCACHE} ${TARGET_SYS}-gcc"
-}
-
-do_stage_append () {
- for d in info man share/doc share/locale ; do
- rm -rf ${CROSS_DIR}/$d
- done
-
- # These aren't useful on the cross toolchain
- rm -f ${CROSS_DIR}/bin/*gcov
- rm -f ${CROSS_DIR}/bin/*gccbug
-
- # Fix a few include links so cross builds are happier
- if [ ! -e ${STAGING_INCDIR}/c++ ]; then
- mkdir -p ${STAGING_INCDIR}
- ln -sf ${CROSS_DIR}/${TARGET_SYS}/include/c++ \
- ${STAGING_INCDIR}/
- fi
-
- # We use libiberty from binutils
- rm -f ${CROSS_DIR}/lib/libiberty.a
-
- # We probably don't need these
- rmdir ${CROSS_DIR}/include || :
-
- # We don't really need to keep this around
- rm -rf ${CROSS_DIR}/share
-}
-
-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)
-}
-
-do_install () {
- oe_runmake 'DESTDIR=${D}' install
-
- # Move libgcc_s into /lib
- mkdir -p ${D}${base_libdir}
- if [ -f ${D}${base_libdir}/libgcc_s.so.? ]; then
- # Already in the right location
- :
- elif [ -f ${D}${prefix}/lib/libgcc_s.so.? ]; then
- mv -f ${D}${prefix}/lib/libgcc_s.so.* ${D}${base_libdir}
- else
- mv -f ${D}${prefix}/*/lib/libgcc_s.so.* ${D}${base_libdir}
- fi
-
- # Move libstdc++ and libg2c into libdir (resetting our prefix to /usr
- TGT_LIBDIR=`echo ${libdir} | sed -e 's,${CROSS_DIR},/usr,'`
- mkdir -p ${D}${TGT_LIBDIR}
- mv -f ${D}${prefix}/*/lib/libstdc++.so.* ${D}${TGT_LIBDIR}
- mv -f ${D}${prefix}/*/lib/libg2c.so.* ${D}${TGT_LIBDIR}
-
- # Manually run the target stripper since we won't get it run by
- # the packaging.
- if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then
- ${TARGET_PREFIX}strip ${D}${TGT_LIBDIR}/libstdc++.so.*
- ${TARGET_PREFIX}strip ${D}${TGT_LIBDIR}/libg2c.so.*
- ${TARGET_PREFIX}strip ${D}${base_libdir}/libgcc_s.so.*
- fi
-}