diff options
Diffstat (limited to 'packages/gcc')
-rw-r--r-- | packages/gcc/avr32-gcc-cross_4.1.2.bb | 22 | ||||
-rw-r--r-- | packages/gcc/avr32-gcc_4.1.2.bb | 24 | ||||
-rw-r--r-- | packages/gcc/gcc-package-cross.inc | 9 |
3 files changed, 51 insertions, 4 deletions
diff --git a/packages/gcc/avr32-gcc-cross_4.1.2.bb b/packages/gcc/avr32-gcc-cross_4.1.2.bb new file mode 100644 index 0000000000..765619ad69 --- /dev/null +++ b/packages/gcc/avr32-gcc-cross_4.1.2.bb @@ -0,0 +1,22 @@ +require avr32-gcc_${PV}.bb +# path mangling, needed by the cross packaging +require 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 = "r1" + +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc gmp-native mpfr-native" +PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" + +# cross build +require gcc3-build-cross.inc +# cross packaging +require gcc-package-cross.inc + +SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 " + +EXTRA_OECONF += " --disable-libmudflap \ + --disable-libunwind-exceptions \ + --with-mpfr=${STAGING_DIR}/${BUILD_SYS}" diff --git a/packages/gcc/avr32-gcc_4.1.2.bb b/packages/gcc/avr32-gcc_4.1.2.bb new file mode 100644 index 0000000000..fd461728bd --- /dev/null +++ b/packages/gcc/avr32-gcc_4.1.2.bb @@ -0,0 +1,24 @@ +require gcc_${PV}.bb + +PR = "r1" + +FILESPATH = "${@base_set_filespath([ '${FILE_DIRNAME}/gcc-4.1.2', '${FILE_DIRNAME}/gcc', '${FILE_DIRNAME}/files', '${FILE_DIRNAME}' ], d)}" + +SRC_URI = "http://www.angstrom-distribution.org/unstable/sources/gcc-4.1.2-atmel.1.1.0.tar.gz \ +# file://100-uclibc-conf.patch;patch=1 \ +# file://200-uclibc-locale.patch;patch=1 \ +# file://300-libstdc++-pic.patch;patch=1 \ + file://301-missing-execinfo_h.patch;patch=1 \ + file://302-c99-snprintf.patch;patch=1 \ + file://303-c99-complex-ugly-hack.patch;patch=1 \ + file://304-index_macro.patch;patch=1 \ + file://602-sdk-libstdc++-includes.patch;patch=1 \ + file://gcc41-configure.in.patch;patch=1 \ + file://ldflags.patch;patch=1 \ + file://zecke-xgcc-cpp.patch;patch=1 \ + file://cache-amnesia.patch;patch=1 \ + " + +do_compile_prepend() { +ln -sf ${S}/libstdc++-v3/config/os/uclibc/ ${S}/libstdc++-v3/config/os/uclibc-linux +} diff --git a/packages/gcc/gcc-package-cross.inc b/packages/gcc/gcc-package-cross.inc index fa1b1247f5..036bbf7b00 100644 --- a/packages/gcc/gcc-package-cross.inc +++ b/packages/gcc/gcc-package-cross.inc @@ -1,6 +1,7 @@ # Packages emitted by our gcc-cross builds. # INHIBIT_PACKAGE_STRIP ?= "" + OLD_INHIBIT_PACKAGE_STRIP := "${INHIBIT_PACKAGE_STRIP}" INHIBIT_PACKAGE_STRIP = "1" @@ -43,14 +44,14 @@ do_install () { # Already in the right location : elif [ -f ${D}${prefix}/lib/libgcc_s.so.? ]; then - mv -f ${D}${prefix}/lib/libgcc_s.so* ${D}${target_base_libdir} + mv -f ${D}${prefix}/lib/libgcc_s.so* ${D}${target_base_libdir} || true else - mv -f ${D}${prefix}/*/lib/libgcc_s.so* ${D}${target_base_libdir} + mv -f ${D}${prefix}/*/lib/libgcc_s.so* ${D}${target_base_libdir} || true fi # Move libstdc++ and libg2c into libdir (resetting our prefix to /usr mkdir -p ${D}${target_libdir} - mv -f ${D}${prefix}/*/lib/libstdc++.so* ${D}${target_libdir} + mv -f ${D}${prefix}/*/lib/libstdc++.so* ${D}${target_libdir} || true mv -f ${D}${prefix}/*/lib/libg2c.so* ${D}${target_libdir} || true mv -f ${D}${prefix}/*/lib/libgfortran*.so* ${D}${target_libdir} || true @@ -59,7 +60,7 @@ do_install () { if [ "x${OLD_INHIBIT_PACKAGE_STRIP}" != "x1" ]; then ${TARGET_PREFIX}strip ${D}${target_libdir}/libstdc++.so.* ${TARGET_PREFIX}strip ${D}${target_libdir}/libg2c.so.* || true - ${TARGET_PREFIX}strip ${D}${target_base_libdir}/libgcc_s.so.* + ${TARGET_PREFIX}strip ${D}${target_base_libdir}/libgcc_s.so.* || true ${TARGET_PREFIX}strip ${D}${target_libdir}/libgfortran*.so* || true fi } |