diff options
author | Chris Larson <clarson@kergoth.com> | 2004-03-06 20:28:54 +0000 |
---|---|---|
committer | Chris Larson <clarson@kergoth.com> | 2004-03-06 20:28:54 +0000 |
commit | 38e2bc91f5ea81181ba483e5ce1b30fbf1f2fd99 (patch) | |
tree | e24ba35bfef8fa39eb719ced510b2f7d798410d1 /gcc/gcc_3.3.3.oe | |
parent | 0e52f5537d796803d0cf839344ff0a456147adfe (diff) |
Point gcc builds at gnu.org for their SRC_URI, and prepend a mirror replacement pointing at http://gcc.get-software.com.
BKrev: 404a3486GbhJdCpuReWD71clqSQVLQ
Diffstat (limited to 'gcc/gcc_3.3.3.oe')
-rw-r--r-- | gcc/gcc_3.3.3.oe | 157 |
1 files changed, 157 insertions, 0 deletions
diff --git a/gcc/gcc_3.3.3.oe b/gcc/gcc_3.3.3.oe index e69de29bb2..1859ddb0ea 100644 --- a/gcc/gcc_3.3.3.oe +++ b/gcc/gcc_3.3.3.oe @@ -0,0 +1,157 @@ +inherit autotools + +DESCRIPTION := The GNU cc and gcc C compilers. +LICENSE := GPL +MAINTAINER := Gerald Britton <gbritton@doomcom.org> + +# This will ONLY build to this target +TARGET_VENDOR := +TARGET_SYS := ${TARGET_ARCH}${TARGET_VENDOR}-${TARGET_OS} +TARGET_PREFIX := ${TARGET_SYS}- + +DEPENDS := virtual/${HOST_PREFIX}binutils virtual/${HOST_PREFIX}gcc \ + glibc patcher + +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}/config.sub.patch;patch=1 \ + file://${FILESDIR}/empty6.patch;patch=1 \ + file://${FILESDIR}/pr10392-1-test.patch;patch=1 \ + file://${FILESDIR}/pr10412-1-test.patch;patch=1 \ + file://${FILESDIR}/pr10589-1-test.patch;patch=1 \ + file://${FILESDIR}/pr11162-1-test.patch;patch=1 \ + file://${FILESDIR}/pr11587-1-test.patch;patch=1 \ + file://${FILESDIR}/pr11608.patch;patch=1 \ + file://${FILESDIR}/pr11736-1-test.patch;patch=1 \ + file://${FILESDIR}/pr11864-1-test.patch;patch=1 \ + file://${FILESDIR}/pr12009.patch;patch=1 \ + file://${FILESDIR}/pr12010.patch;patch=1 \ + file://${FILESDIR}/pr13260-test.patch;patch=1 \ + file://${FILESDIR}/pr9365-1-test.patch;patch=1 \ + file://${FILESDIR}/sh-lib1funcs_sizeAndType.patch;patch=1 \ + file://${FILESDIR}/sh-pic-set_fpscr-gcc-3.3.2.patch;patch=1 \ + file://${FILESDIR}/thunk3.patch;patch=1 +MIRRORS_prepend () { +${GNU_MIRROR}/gcc/gcc-${PV}/ http://gcc.get-software.com/releases/gcc-${PV}/ +} + +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 -s `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 -s ${TARGET_SYS}-g++ g++ + ln -s ${TARGET_SYS}-gcc gcc + ln -s g++ c++ + ln -s gcc cc +} |