diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/gcc-3.3.2/gcc-001-disable-mathf.patch | 0 | ||||
-rw-r--r-- | gcc/gcc-3.3.2/gcc-006-include-search.patch | 0 | ||||
-rw-r--r-- | gcc/gcc-3.3.2/gcc-810-libstd++-locale.patch | 0 | ||||
-rw-r--r-- | gcc/gcc-3.3.2/libibery-crosstool.patch | 0 | ||||
-rw-r--r-- | gcc/gcc-cross-initial_3.3.2.oe | 0 | ||||
-rw-r--r-- | gcc/gcc-cross-initial_3.3.3.oe | 25 | ||||
-rw-r--r-- | gcc/gcc-cross-initial_3.4.0.oe | 28 | ||||
-rw-r--r-- | gcc/gcc-cross_3.3.2.oe | 78 | ||||
-rw-r--r-- | gcc/gcc-cross_3.3.3.oe | 8 | ||||
-rw-r--r-- | gcc/gcc-cross_3.4.0.oe | 5 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross-initial_3.3.2.oe | 0 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross-initial_3.3.3.oe | 0 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross-initial_3.4.0.oe | 0 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross_3.3.2.oe | 75 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross_3.3.3.oe | 75 | ||||
-rw-r--r-- | gcc/gcc-uclibc-cross_3.4.0.oe | 93 | ||||
-rw-r--r-- | gcc/gcc-uclibc_3.3.2.oe | 79 | ||||
-rw-r--r-- | gcc/gcc-uclibc_3.3.3.oe | 86 | ||||
-rw-r--r-- | gcc/gcc-uclibc_3.4.0.oe | 0 | ||||
-rw-r--r-- | gcc/gcc_3.3.2.oe | 148 | ||||
-rw-r--r-- | gcc/gcc_3.3.3.oe | 89 | ||||
-rw-r--r-- | gcc/gcc_3.4.0.oe | 76 |
22 files changed, 172 insertions, 693 deletions
diff --git a/gcc/gcc-3.3.2/gcc-001-disable-mathf.patch b/gcc/gcc-3.3.2/gcc-001-disable-mathf.patch deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-3.3.2/gcc-001-disable-mathf.patch +++ /dev/null diff --git a/gcc/gcc-3.3.2/gcc-006-include-search.patch b/gcc/gcc-3.3.2/gcc-006-include-search.patch deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-3.3.2/gcc-006-include-search.patch +++ /dev/null diff --git a/gcc/gcc-3.3.2/gcc-810-libstd++-locale.patch b/gcc/gcc-3.3.2/gcc-810-libstd++-locale.patch deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-3.3.2/gcc-810-libstd++-locale.patch +++ /dev/null diff --git a/gcc/gcc-3.3.2/libibery-crosstool.patch b/gcc/gcc-3.3.2/libibery-crosstool.patch deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-3.3.2/libibery-crosstool.patch +++ /dev/null diff --git a/gcc/gcc-cross-initial_3.3.2.oe b/gcc/gcc-cross-initial_3.3.2.oe deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-cross-initial_3.3.2.oe +++ /dev/null diff --git a/gcc/gcc-cross-initial_3.3.3.oe b/gcc/gcc-cross-initial_3.3.3.oe index e69de29bb2..c1a01c1593 100644 --- a/gcc/gcc-cross-initial_3.3.3.oe +++ b/gcc/gcc-cross-initial_3.3.3.oe @@ -0,0 +1,25 @@ +include gcc-cross_${PV}.oe + +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-initial" +PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial" + +EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ + --with-newlib \ + --disable-nls \ + --disable-shared \ + --disable-threads \ + --disable-multilib \ + --enable-__cxa_atexit \ + --enable-languages=c \ + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX}" + +do_stage_prepend () { + mkdir -p ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV} + ln -sf libgcc.a ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV}/libgcc_eh.a +} + +# Override the method from gcc-cross so we don't try to install libgcc +do_install () { + oe_runmake 'DESTDIR=${D}' install +} diff --git a/gcc/gcc-cross-initial_3.4.0.oe b/gcc/gcc-cross-initial_3.4.0.oe index e69de29bb2..b800e1927e 100644 --- a/gcc/gcc-cross-initial_3.4.0.oe +++ b/gcc/gcc-cross-initial_3.4.0.oe @@ -0,0 +1,28 @@ +include gcc-cross_${PV}.oe + +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-initial" +PROVIDES = "virtual/${TARGET_PREFIX}gcc-initial" + +PACKAGES = "" + +EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ + --with-newlib \ + --disable-nls \ + --disable-shared \ + --disable-threads \ + --disable-multilib \ + --enable-__cxa_atexit \ + --enable-languages=c \ + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX}" + +do_stage_prepend () { + mkdir -p ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${PV} + ln -sf libgcc.a ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${PV}/libgcc_eh.a +} + +# Override the method from gcc-cross so we don't try to install libgcc +do_install () { + oe_runmake 'DESTDIR=${D}' install +} + diff --git a/gcc/gcc-cross_3.3.2.oe b/gcc/gcc-cross_3.3.2.oe deleted file mode 100644 index dce9ef4482..0000000000 --- a/gcc/gcc-cross_3.3.2.oe +++ /dev/null @@ -1,78 +0,0 @@ -include gcc_${PV}.oe -inherit cross -FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}" - -DEPENDS = "virtual/${TARGET_PREFIX}binutils glibc patcher-native" -PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" - -PACKAGES = "" -INHIBIT_PACKAGE_STRIP = 1 - -EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ - --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ - --with-headers=${CROSS_DIR}/${TARGET_SYS}/include \ - --disable-nls \ - --enable-threads=posix \ - --enable-symvers=gnu \ - --enable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-c99 \ - --enable-long-long \ - --program-prefix=${TARGET_PREFIX}" - -export CPPFLAGS = "" -export CXXFLAGS = "" -export CFLAGS = "" -export LDFLAGS = "" - -do_configure () { - export CC="${BUILD_CC}" - export AR="${TARGET_SYS}-ar" - export RANLIB="${TARGET_SYS}-ranlib" - export LD="${TARGET_SYS}-ld" - export NM="${TARGET_SYS}-nm" - rm -f ${CROSS_DIR}/lib/gcc-lib/${TARGET_SYS}/${PV}/libgcc_eh.a - oe_runconf -} - -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 -} - -# Kill the install so we get no packages (we're the cross compiler) -do_install () { - : -} - diff --git a/gcc/gcc-cross_3.3.3.oe b/gcc/gcc-cross_3.3.3.oe index fdf9292ac4..d172d6ac0b 100644 --- a/gcc/gcc-cross_3.3.3.oe +++ b/gcc/gcc-cross_3.3.3.oe @@ -2,7 +2,7 @@ include gcc_${PV}.oe inherit cross FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}" -DEPENDS = "virtual/${TARGET_PREFIX}binutils glibc patcher-native" +DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc" PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" PACKAGES = "libgcc" @@ -11,6 +11,8 @@ INHIBIT_PACKAGE_STRIP = 1 EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ --disable-nls \ + --with-gnu-ld \ + --enable-multilib \ --enable-threads=posix \ --enable-symvers=gnu \ --enable-__cxa_atexit \ @@ -18,8 +20,8 @@ EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ --enable-shared \ --enable-c99 \ --enable-long-long \ - --program-prefix=${TARGET_PREFIX} \ - ${@['--with-headers=${CROSS_DIR}/${TARGET_SYS}/include', '']['${BUILD_SYS}' == '${HOST_SYS}']}" + --enable-target-optspace \ + --program-prefix=${TARGET_PREFIX}" FILES_libgcc = "/lib/libgcc_s.so.*" diff --git a/gcc/gcc-cross_3.4.0.oe b/gcc/gcc-cross_3.4.0.oe index 5df5ec6aca..8238e815da 100644 --- a/gcc/gcc-cross_3.4.0.oe +++ b/gcc/gcc-cross_3.4.0.oe @@ -2,7 +2,7 @@ include gcc_${PV}.oe inherit cross FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}" -DEPENDS = "virtual/${TARGET_PREFIX}binutils virtual/${TARGET_PREFIX}libc-for-gcc patcher-native" +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 @@ -12,6 +12,8 @@ INHIBIT_PACKAGE_STRIP = 1 EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ --disable-nls \ + --with-gnu-ld \ + --enable-multilib \ --enable-threads=posix \ --enable-symvers=gnu \ --enable-__cxa_atexit \ @@ -19,6 +21,7 @@ EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/${TARGET_SYS} \ --enable-shared \ --enable-c99 \ --enable-long-long \ + --enable-target-optspace \ --program-prefix=${TARGET_PREFIX}" export CPPFLAGS = "" diff --git a/gcc/gcc-uclibc-cross-initial_3.3.2.oe b/gcc/gcc-uclibc-cross-initial_3.3.2.oe deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-uclibc-cross-initial_3.3.2.oe +++ /dev/null diff --git a/gcc/gcc-uclibc-cross-initial_3.3.3.oe b/gcc/gcc-uclibc-cross-initial_3.3.3.oe deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-uclibc-cross-initial_3.3.3.oe +++ /dev/null diff --git a/gcc/gcc-uclibc-cross-initial_3.4.0.oe b/gcc/gcc-uclibc-cross-initial_3.4.0.oe deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-uclibc-cross-initial_3.4.0.oe +++ /dev/null diff --git a/gcc/gcc-uclibc-cross_3.3.2.oe b/gcc/gcc-uclibc-cross_3.3.2.oe deleted file mode 100644 index 3419f50416..0000000000 --- a/gcc/gcc-uclibc-cross_3.3.2.oe +++ /dev/null @@ -1,75 +0,0 @@ -inherit cross -include gcc-uclibc_${PV}.oe - -DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native" -PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" - -PACKAGES = "" -INHIBIT_PACKAGE_STRIP = 1 - -EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \ - --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-multilib \ - --enable-threads=posix \ - --program-prefix=${TARGET_PREFIX}" - -export CPPFLAGS = "" -export CXXFLAGS = "" -export CFLAGS = "" -export LDFLAGS = "" - -do_configure () { - export CC="${BUILD_CC}" - export AR="${TARGET_SYS}-ar" - export RANLIB="${TARGET_SYS}-ranlib" - export LD="${TARGET_SYS}-ld" - export NM="${TARGET_SYS}-nm" - oe_runconf -} - -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 this - rmdir ${CROSS_DIR}/include || : - - # We don't really need to keep this around - rm -rf ${CROSS_DIR}/share -} - -# Kill the install so we get no packages (we're the cross compiler) -do_install () { - : -} - diff --git a/gcc/gcc-uclibc-cross_3.3.3.oe b/gcc/gcc-uclibc-cross_3.3.3.oe deleted file mode 100644 index 5e4ee702f1..0000000000 --- a/gcc/gcc-uclibc-cross_3.3.3.oe +++ /dev/null @@ -1,75 +0,0 @@ -inherit cross -include gcc-uclibc_${PV}.oe - -DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native" -PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" - -PACKAGES = "" -INHIBIT_PACKAGE_STRIP = 1 - -EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \ - --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-threads \ - --enable-multilib \ - --program-prefix=${TARGET_PREFIX}" - -export CPPFLAGS = "" -export CXXFLAGS = "" -export CFLAGS = "" -export LDFLAGS = "" - -do_configure () { - export CC="${BUILD_CC}" - export AR="${TARGET_SYS}-ar" - export RANLIB="${TARGET_SYS}-ranlib" - export LD="${TARGET_SYS}-ld" - export NM="${TARGET_SYS}-nm" - oe_runconf -} - -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 this - rmdir ${CROSS_DIR}/include || : - - # We don't really need to keep this around - rm -rf ${CROSS_DIR}/share -} - -# Kill the install so we get no packages (we're the cross compiler) -do_install () { - : -} - diff --git a/gcc/gcc-uclibc-cross_3.4.0.oe b/gcc/gcc-uclibc-cross_3.4.0.oe deleted file mode 100644 index 125fa8782d..0000000000 --- a/gcc/gcc-uclibc-cross_3.4.0.oe +++ /dev/null @@ -1,93 +0,0 @@ -inherit cross -include gcc-uclibc_${PV}.oe - -DEPENDS = "virtual/${TARGET_PREFIX}binutils uclibc patcher-native" -PROVIDES = "virtual/${TARGET_PREFIX}gcc virtual/${TARGET_PREFIX}g++" - -# Files for these are defined in the main gcc.oe -PACKAGES = "libgcc libstdc++ libg2c" -INHIBIT_PACKAGE_STRIP = 1 - -EXTRA_OECONF = "--with-local-prefix=${CROSS_DIR}/local \ - --with-gxx-include-dir=${CROSS_DIR}/${TARGET_SYS}/include/c++ \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++,f77 \ - --enable-shared \ - --enable-threads \ - --enable-multilib \ - --program-prefix=${TARGET_PREFIX}" - -export CPPFLAGS = "" -export CXXFLAGS = "" -export CFLAGS = "" -export LDFLAGS = "" - -do_configure () { - oe_runconf -} - -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 this - rmdir ${CROSS_DIR}/include || : - - # We don't really need to keep this around - rm -rf ${CROSS_DIR}/share -} - -do_install () { - oe_runmake 'DESTDIR=${D}' install - - # Move libgcc_s into /lib - mkdir -p ${D}/lib - if [ -f ${D}/lib/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}/lib - else - mv -f ${D}/${prefix}/*/lib/libgcc_s.so.* ${D}/lib - 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. - ${TARGET_PREFIX}strip ${D}/${TGT_LIBDIR}/libstdc++.so.* - ${TARGET_PREFIX}strip ${D}/${TGT_LIBDIR}/libg2c.so.* - ${TARGET_PREFIX}strip ${D}/libgcc_s.so.* -} - diff --git a/gcc/gcc-uclibc_3.3.2.oe b/gcc/gcc-uclibc_3.3.2.oe deleted file mode 100644 index 3cb6cb0dbf..0000000000 --- a/gcc/gcc-uclibc_3.3.2.oe +++ /dev/null @@ -1,79 +0,0 @@ -include gcc_${PV}.oe -FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}" - -DESCRIPTION = "The GNU cc and gcc C compilers (uclibc)." -LICENSE = "GPL" -MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" - -DEPENDS = "uclibc" - -PACKAGES = "${PN} ${PN}-symlinks \ - ${PN}-c++ ${PN}-c++-symlinks \ - uclibc-libgcc uclibc-libstdc++ uclibc-libstdc++-dev \ - ${PN}-doc" - -# The rest of these are properly defined in gcc_${PV}.oe -FILES_uclibc-libgcc = "${FILES_libgcc}" -FILES_uclibc-libstdc++ = "${FILES_libstdc++}" -FILES_uclibc-libstdc++-dev = "${includedir}/c++/${PV}-uclibc \ - ${libdir}/libstdc++.so \ - ${libdir}/libstdc++.la \ - ${libdir}/libstdc++.a \ - ${libdir}/libsupc++.la \ - ${libdir}/libsupc++.a" - -EXTRA_OECONF = "--with-local-prefix=${prefix}/local \ - --with-gxx-include-dir=${includedir}/c++/${PV}-uclibc \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-multilib \ - --enable-threads=posix \ - --program-prefix=${TARGET_PREFIX}" - -gccbuild_do_patch () { - # - # Hack things to use the correct shared lib loader - # - LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .` - if [ -n "$LIST" ] ; then - perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST - fi - - # - # Prevent system glibc start files from leaking in uninvited... - # - perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c - perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c - - # - # Prevent system glibc include files from leaking in uninvited... - # - perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in - perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in - perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h - - # - # Prevent system glibc libraries from being found by collect2 - # when it calls locatelib() and rummages about the system looking - # for libraries with the correct name... - # - perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \ - gcc/collect2.c - perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \ - gcc/collect2.c - - # - # Prevent gcc from using the unwind-dw2-fde-glibc code - # - perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c -} - -python do_patch () { - oe.build.exec_func('base_do_patch', d) - oe.build.exec_func('gccbuild_do_patch', d) -} - diff --git a/gcc/gcc-uclibc_3.3.3.oe b/gcc/gcc-uclibc_3.3.3.oe deleted file mode 100644 index 10e4bdb371..0000000000 --- a/gcc/gcc-uclibc_3.3.3.oe +++ /dev/null @@ -1,86 +0,0 @@ -include gcc_${PV}.oe -FILESDIR = "${@os.path.dirname(oe.data.getVar('FILE',d,1))}/gcc-${PV}" - -DESCRIPTION = "The GNU cc and gcc C compilers (uclibc)." -LICENSE = "GPL" -MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" - -DEPENDS = "uclibc" - -PACKAGES = "${PN} ${PN}-symlinks \ - ${PN}-c++ ${PN}-c++-symlinks \ - uclibc-libgcc uclibc-libstdc++ uclibc-libstdc++-dev \ - ${PN}-doc" - -# The rest of these are properly defined in gcc_${PV}.oe -FILES_uclibc-libgcc = "${FILES_libgcc}" -FILES_uclibc-libstdc++ = "${FILES_libstdc++}" -FILES_uclibc-libstdc++-dev = "${includedir}/c++/${PV}-uclibc \ - ${libdir}/libstdc++.so \ - ${libdir}/libstdc++.la \ - ${libdir}/libstdc++.a \ - ${libdir}/libsupc++.la \ - ${libdir}/libsupc++.a" - -# Additional patches -SRC_URI_append = " \ - file://${FILESDIR}/gcc-uclibc-3.3-100-conf.patch;patch=1 \ - file://${FILESDIR}/gcc-uclibc-3.3-110-conf.patch;patch=1 \ - file://${FILESDIR}/gcc-uclibc-3.3-120-softfloat.patch;patch=1 \ - file://${FILESDIR}/gcc-uclibc-3.3-200-code.patch;patch=1" - -EXTRA_OECONF = "--with-local-prefix=${prefix}/local \ - --with-gxx-include-dir=${includedir}/c++/${PV}-uclibc \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-multilib \ - --enable-threads=posix \ - --program-prefix=${TARGET_PREFIX}" - -gccbuild_do_patch () { - # - # Hack things to use the correct shared lib loader - # - LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .` - if [ -n "$LIST" ] ; then - perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST - fi - - # - # Prevent system glibc start files from leaking in uninvited... - # - perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c - perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c - - # - # Prevent system glibc include files from leaking in uninvited... - # - perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in - perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in - perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h - - # - # Prevent system glibc libraries from being found by collect2 - # when it calls locatelib() and rummages about the system looking - # for libraries with the correct name... - # - perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \ - gcc/collect2.c - perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \ - gcc/collect2.c - - # - # Prevent gcc from using the unwind-dw2-fde-glibc code - # - perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c -} - -python do_patch () { - oe.build.exec_func('base_do_patch', d) - oe.build.exec_func('gccbuild_do_patch', d) -} - diff --git a/gcc/gcc-uclibc_3.4.0.oe b/gcc/gcc-uclibc_3.4.0.oe deleted file mode 100644 index e69de29bb2..0000000000 --- a/gcc/gcc-uclibc_3.4.0.oe +++ /dev/null diff --git a/gcc/gcc_3.3.2.oe b/gcc/gcc_3.3.2.oe deleted file mode 100644 index 9335dc7488..0000000000 --- a/gcc/gcc_3.3.2.oe +++ /dev/null @@ -1,148 +0,0 @@ -inherit autotools - -DESCRIPTION = "The GNU cc and gcc C compilers." -LICENSE = "GPL" -MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" - -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import oe, re - uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None) - uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None) - if uc_pkg != uc_os: - raise oe.parse.SkipPackage("incompatible with target %s" % - oe.data.getVar('TARGET_OS', d, 1)) -} - -DEPENDS = "glibc" - -PACKAGES = "${PN} ${PN}-symlinks \ - ${PN}-c++ ${PN}-c++-symlinks \ - libgcc libstdc++ libstdc++-dev \ - ${PN}-doc" - -FILES_${PN} = "${bindir}/${TARGET_PREFIX}gcc \ - ${bindir}/${TARGET_PREFIX}cpp \ - ${bindir}/${TARGET_PREFIX}gcov \ - ${bindir}/${TARGET_PREFIX}gccbug \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/cc1 \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/collect2 \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/crt* \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/specs \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/lib* \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/include" - -FILES_${PN}-symlinks = "${bindir}/cc \ - ${bindir}/gcc \ - ${bindir}/cpp \ - ${bindir}/gcov \ - ${bindir}/gccbug" - -FILES_${PN}-c++ = "${bindir}/${TARGET_PREFIX}g++ \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/cc1plus" - -FILES_${PN}-c++-symlinks = "${bindir}/c++ \ - ${bindir}/g++" - -FILES_libgcc = "/lib/libgcc_s.so.*" - -FILES_libstdc++ = "${libdir}/libstdc++.so.*" - -FILES_libstdc++-dev = "${includedir}/c++/${PV} \ - ${libdir}/libstdc++.so \ - ${libdir}/libstdc++.la \ - ${libdir}/libstdc++.a \ - ${libdir}/libsupc++.la \ - ${libdir}/libsupc++.a" - -FILES_${PN}-doc = "${infodir} \ - ${mandir} \ - ${libdir}/gcc-lib/${TARGET_SYS}/${PV}/include/README" - -SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ - file://${FILESDIR}/gcc-001-disable-mathf.patch;patch=1 \ - file://${FILESDIR}/gcc-006-include-search.patch;patch=1 \ - file://${FILESDIR}/gcc-810-libstd++-locale.patch;patch=1 \ - file://${FILESDIR}/libibery-crosstool.patch;patch=1;pnum=1" - -MIRRORS_prepend () { -${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/ -} - -S = "${WORKDIR}/gcc-${PV}" -B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" - -EXTRA_OECONF = "--with-local-prefix=${prefix}/local \ - --with-gxx-include-dir=${includedir}/c++/${PV} \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-multilib \ - --program-prefix=${TARGET_PREFIX}" - -do_configure () { - # Setup these vars for cross building only - if [ "${BUILD_SYS}" != "${HOST_SYS}" ]; then - export CC_FOR_TARGET="${CCACHE} ${HOST_PREFIX}gcc" - export GCC_FOR_TARGET="${CCACHE} ${HOST_PREFIX}gcc" - export CXX_FOR_TARGET="${CCACHE} ${HOST_PREFIX}g++" - export AS_FOR_TARGET="${HOST_PREFIX}as" - export LD_FOR_TARGET="${HOST_PREFIX}ld" - export NM_FOR_TARGET="${HOST_PREFIX}nm" - export AR_FOR_TARGET="${HOST_PREFIX}ar" - export RANLIB_FOR_TARGET="${HOST_PREFIX}ranlib" - fi - oe_runconf -} - -do_install () { - autotools_do_install - - # Cleanup some of the gcc-lib stuff - rm -rf ${D}/${libdir}/gcc-lib/${TARGET_SYS}/${PV}/install-tools - - # Move libgcc_s into /lib - mkdir -p ${D}/lib - mv -f ${D}/${libdir}/libgcc_s.so.* ${D}/lib - rm -f ${D}/${libdir}/libgcc_s.so - ln -sf `echo ${libdir}/gcc-lib/${TARGET_SYS}/${PV} | tr -s / | - sed -e 's,^/,,' -e 's,[^/]*,..,g'`/lib/libgcc_s.so.? \ - ${D}/${libdir}/gcc-lib/${TARGET_SYS}/${PV}/libgcc_s.so - - # Cleanup manpages.. - rm -rf ${D}/${mandir}/man7 - mv ${D}/${mandir}/man1/cpp.1 \ - ${D}/${mandir}/man1/${TARGET_SYS}-cpp.1 - mv ${D}/${mandir}/man1/gcov.1 \ - ${D}/${mandir}/man1/${TARGET_SYS}-gcov.1 - - # We use libiberty from binutils - rm -f ${D}/${libdir}/libiberty.a - - cd ${D}/${bindir} - - # We care about g++ not c++ - rm -f *c++ - - # We don't care about the gcc-<version> ones for this - rm -f *gcc-?.?* - - # These sometimes show up, they are strange, we remove them - rm -f ${TARGET_ARCH}-*${TARGET_ARCH}-* - - # Symlinks so we can use these trivially on the target - ln -sf ${TARGET_SYS}-g++ g++ - ln -sf ${TARGET_SYS}-gcc gcc - ln -sf g++ c++ - ln -sf gcc cc -} diff --git a/gcc/gcc_3.3.3.oe b/gcc/gcc_3.3.3.oe index 77688fca6b..6388351e43 100644 --- a/gcc/gcc_3.3.3.oe +++ b/gcc/gcc_3.3.3.oe @@ -4,25 +4,6 @@ DESCRIPTION = "The GNU cc and gcc C compilers." LICENSE = "GPL" MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# -# See the note in gcc/gcc_3.4.0.oe -# - -python __anonymous () { - import oe, re - uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None) - uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None) - if uc_pkg != uc_os: - raise oe.parse.SkipPackage("incompatible with target %s" % - oe.data.getVar('TARGET_OS', d, 1)) -} - -DEPENDS = "glibc" - PACKAGES = "${PN} ${PN}-symlinks \ ${PN}-c++ ${PN}-c++-symlinks \ libgcc libstdc++ libstdc++-dev \ @@ -96,25 +77,75 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://${FILESDIR}/arm-ldm-peephole.patch;patch=1;pnum=0 \ file://${FILESDIR}/libibery-crosstool.patch;patch=1;pnum=1 \ file://${FILESDIR}/reverse-compare.patch;patch=1 \ - file://${FILESDIR}/gcc34-15089.patch;patch=1" + file://${FILESDIR}/gcc34-15089.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.3-100-conf.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.3-110-conf.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.3-120-softfloat.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.3-200-code.patch;patch=1" MIRRORS_prepend () { ${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/ } +gccbuild_uclibc_do_patch () { + # + # Hack things to use the correct shared lib loader + # + #LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .` + #if [ -n "$LIST" ] ; then + # perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST + #fi + + # + # Prevent system glibc start files from leaking in uninvited... + # + perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c + perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c + + # + # Prevent system glibc include files from leaking in uninvited... + # + perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in + perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in + perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h + + # + # Prevent system glibc libraries from being found by collect2 + # when it calls locatelib() and rummages about the system looking + # for libraries with the correct name... + # + perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \ + gcc/collect2.c + perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \ + gcc/collect2.c + + # + # Prevent gcc from using the unwind-dw2-fde-glibc code + # + perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c +} + +python do_patch () { + import oe, re + oe.build.exec_func('base_do_patch', d) + if (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None): + oe.build.exec_func('gccbuild_uclibc_do_patch', d) +} + S = "${WORKDIR}/gcc-${PV}" B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" EXTRA_OECONF = "--with-local-prefix=${prefix}/local \ - --with-gxx-include-dir=${includedir}/c++/${PV} \ - --enable-target-optspace \ - --disable-nls \ - --with-gnu-ld \ - --disable-__cxa_atexit \ - --enable-languages=c,c++ \ - --enable-shared \ - --enable-multilib \ - --program-prefix=${TARGET_PREFIX}" + --with-gxx-include-dir=${includedir}/c++/${PV} \ + --enable-target-optspace \ + --disable-nls \ + --with-gnu-ld \ + --disable-__cxa_atexit \ + --enable-languages=c,c++,f77 \ + --enable-shared \ + --enable-multilib \ + --enable-threads=posix \ + --program-prefix=${TARGET_PREFIX}" do_configure () { # Setup these vars for cross building only diff --git a/gcc/gcc_3.4.0.oe b/gcc/gcc_3.4.0.oe index a05c86b7c6..b486ccfef2 100644 --- a/gcc/gcc_3.4.0.oe +++ b/gcc/gcc_3.4.0.oe @@ -4,31 +4,6 @@ DESCRIPTION = "The GNU cc and gcc C compilers." LICENSE = "GPL" MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" -# -# TODO: For shared setups with both uclibc and glibc, libstdc++ and the -# fortran (libg2c, libfrtbegin) will need to be moved into separate -# per-compiler paths. Shared libraries will also need some -# separation. This will also require changes to the dynamic linkers -# for the two libc's to support selection of appropriate libraries. -# -# This affects: binutils, gcc, uclibc, glibc -# -# For now, we will skip building of a gcc package if it is a uclibc one -# and our build is not a uclibc one, and we skip a glibc one if our build -# is a uclibc build. -# - -python __anonymous () { - import oe, re - uc_pkg = (re.search('uclibc', oe.data.getVar('PN', d, 1)) != None) - uc_os = (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None) - if uc_pkg != uc_os: - raise oe.parse.SkipPackage("incompatible with target %s" % - oe.data.getVar('TARGET_OS', d, 1)) -} - -DEPENDS = "glibc" - # libgcc libstdc++ libg2c are listed in our FILES_*, but are actually # packaged in the respective cross packages. PACKAGES = "${PN} ${PN}-symlinks \ @@ -97,12 +72,60 @@ SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ file://${FILESDIR}/gcc34-arm-ldm.patch;patch=1 \ file://${FILESDIR}/gcc34-arm-ldm-peephole.patch;patch=1 \ file://${FILESDIR}/gcc34-arm-tune.patch;patch=1 \ - file://${FILESDIR}/gcc34-15089.patch;patch=1" + file://${FILESDIR}/gcc34-15089.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.4.0-100-conf.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.4.0-120-softfloat.patch;patch=1 \ + file://${FILESDIR}/gcc-uclibc-3.4.0-200-code.patch;patch=1" MIRRORS_prepend () { ${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/ } +gccbuild_uclibc_do_patch () { + # + # Hack things to use the correct shared lib loader + # + #LIST=`grep -lr -- "-dynamic-linker.*\.so[\.0-9]*" .` + #if [ -n "$LIST" ] ; then + # perl -i -p -e "s,-dynamic-linker.*\.so[\.0-9]*},-dynamic-linker /lib/ld-uClibc.so.0},;" $LIST + #fi + + # + # Prevent system glibc start files from leaking in uninvited... + # + perl -i -p -e "s,standard_startfile_prefix_1 = \".*,standard_startfile_prefix_1 = \"${CROSS_DIR}/${TARGET_SYS}/lib/\";,;" gcc/gcc.c + perl -i -p -e "s,standard_startfile_prefix_2 = \".*,standard_startfile_prefix_2 = \"${CROSS_DIR}/${TARGET_SYS}/usr/lib/\";,;" gcc/gcc.c + + # + # Prevent system glibc include files from leaking in uninvited... + # + perl -i -p -e "s,^NATIVE_SYSTEM_HEADER_DIR.*,NATIVE_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in + perl -i -p -e "s,^CROSS_SYSTEM_HEADER_DIR.*,CROSS_SYSTEM_HEADER_DIR=${CROSS_DIR}/${TARGET_SYS}/include,;" gcc/Makefile.in + perl -i -p -e "s,^#define.*STANDARD_INCLUDE_DIR.*,#define STANDARD_INCLUDE_DIR \"${CROSS_DIR}/${TARGET_SYS}/include\",;" gcc/cppdefault.h + + # + # Prevent system glibc libraries from being found by collect2 + # when it calls locatelib() and rummages about the system looking + # for libraries with the correct name... + # + perl -i -p -e "s,\"/lib,\"${CROSS_DIR}/${TARGET_SYS}/lib,g;" \ + gcc/collect2.c + perl -i -p -e "s,\"/usr/,\"${CROSS_DIR}/${TARGET_SYS}/usr/,g;" \ + gcc/collect2.c + + # + # Prevent gcc from using the unwind-dw2-fde-glibc code + # + perl -i -p -e "s,^#ifndef inhibit_libc,#define inhibit_libc\n#ifndef inhibit_libc,g;" gcc/unwind-dw2-fde-glibc.c +} + +python do_patch () { + import oe, re + oe.build.exec_func('base_do_patch', d) + if (re.match('.*uclibc$', oe.data.getVar('TARGET_OS', d, 1)) != None): + oe.build.exec_func('gccbuild_uclibc_do_patch', d) +} + S = "${WORKDIR}/gcc-${PV}" B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" @@ -115,6 +138,7 @@ EXTRA_OECONF = "--with-local-prefix=${prefix}/local \ --enable-languages=c,c++,f77 \ --enable-shared \ --enable-multilib \ + --enable-threads=posix \ --program-prefix=${TARGET_PREFIX}" do_configure () { |