diff options
-rw-r--r-- | packages/gcc/gcc-package.inc | 26 | ||||
-rw-r--r-- | packages/gcc/gcc3-build.inc | 69 | ||||
-rw-r--r-- | packages/gcc/gcc_3.4.0.bb | 24 | ||||
-rw-r--r-- | packages/gcc/gcc_3.4.1.bb | 24 | ||||
-rw-r--r-- | packages/gcc/gcc_3.4.2.bb | 24 | ||||
-rw-r--r-- | packages/gcc/gcc_3.4.3.bb | 2 |
6 files changed, 158 insertions, 11 deletions
diff --git a/packages/gcc/gcc-package.inc b/packages/gcc/gcc-package.inc index 4fa95a8abc..1bde3782c5 100644 --- a/packages/gcc/gcc-package.inc +++ b/packages/gcc/gcc-package.inc @@ -3,14 +3,14 @@ gcclibdir ?= "${libdir}/gcc" # libgcc libstdc++ libg2c are listed in our FILES_*, but are actually # packaged in the respective cross packages. PACKAGES = "${PN} ${PN}-symlinks \ - ${PN}-c++ ${PN}-c++-symlinks \ - ${PN}-f77 ${PN}-f77-symlinks \ + g++ g++-symlinks \ + cpp cpp-symlinks \ + g77 g77-symlinks \ + gcov gcov-symlinks \ libstdc++-dev libg2c-dev \ ${PN}-doc" FILES_${PN} = "${bindir}/${TARGET_PREFIX}gcc \ - ${bindir}/${TARGET_PREFIX}cpp \ - ${bindir}/${TARGET_PREFIX}gcov \ ${bindir}/${TARGET_PREFIX}gccbug \ ${libexecdir}/gcc/${TARGET_SYS}/${PV}/cc1 \ ${libexecdir}/gcc/${TARGET_SYS}/${PV}/collect2 \ @@ -20,24 +20,29 @@ FILES_${PN} = "${bindir}/${TARGET_PREFIX}gcc \ ${gcclibdir}/${TARGET_SYS}/${PV}/include" FILES_${PN}-symlinks = "${bindir}/cc \ ${bindir}/gcc \ - ${bindir}/cpp \ - ${bindir}/gcov \ ${bindir}/gccbug" -FILES_${PN}-f77 = "${bindir}/${TARGET_PREFIX}g77 \ +FILES_g77 = "${bindir}/${TARGET_PREFIX}g77 \ ${libexecdir}/gcc/${TARGET_SYS}/${PV}/f771" -FILES_${PN}-f77-symlinks = "${bindir}/g77 \ +FILES_g77-symlinks = "${bindir}/g77 \ ${bindir}/f77" +FILES_cpp = "${bindir}/${TARGET_PREFIX}cpp \ + ${base_libdir}/cpp" +FILES_cpp-symlinks = "${bindir}/cpp" + +FILES_gcov = "${bindir}/${TARGET_PREFIX}gcov" +FILES_gcov-symlinks = "${bindir}/gcov" + PACKAGE_ARCH_libg2c-dev = "${TARGET_ARCH}" # Called from within gcc-cross, so libdir is set wrong FILES_libg2c-dev = "${libdir}/libg2c.so \ ${libdir}/libg2c.a \ ${libdir}/libfrtbegin.a" -FILES_${PN}-c++ = "${bindir}/${TARGET_PREFIX}g++ \ +FILES_g++ = "${bindir}/${TARGET_PREFIX}g++ \ ${libexecdir}/gcc/${TARGET_SYS}/${PV}/cc1plus" -FILES_${PN}-c++-symlinks = "${bindir}/c++ \ +FILES_g++-symlinks = "${bindir}/c++ \ ${bindir}/g++" PACKAGE_ARCH_libstdc++-dev = "${TARGET_ARCH}" @@ -99,4 +104,5 @@ do_install () { ln -sf g77 f77 ln -sf g++ c++ ln -sf gcc cc + ln -sf ${bindir}/${TARGET_SYS}-cpp ${D}${base_libdir}/cpp } diff --git a/packages/gcc/gcc3-build.inc b/packages/gcc/gcc3-build.inc index e69de29bb2..f555a3f87a 100644 --- a/packages/gcc/gcc3-build.inc +++ b/packages/gcc/gcc3-build.inc @@ -0,0 +1,69 @@ +MIRRORS_prepend () { +${GNU_MIRROR}/gcc/releases/ ftp://gcc.gnu.org/pub/gcc/releases/ +${GNU_MIRROR}/gcc/ http://mirrors.rcn.net/pub/sourceware/gcc/releases/ +${GNU_MIRROR}/gcc/releases/ http://gcc.get-software.com/releases/ +${GNU_MIRROR}/gcc/ http://gcc.get-software.com/releases/ +} + +gcclibdir ?= "${libdir}/gcc" +S = "${WORKDIR}/gcc-${PV}" +B = "${S}/build.${HOST_SYS}.${TARGET_SYS}" + +EXTRA_OECONF = "${@['--enable-clocale=generic', ''][bb.data.getVar('USE_NLS', d, 1) != 'no']} \ + --with-gnu-ld \ + --enable-shared \ + --enable-target-optspace \ + --enable-languages=c,c++,f77 \ + --enable-threads=posix \ + --enable-multilib \ + --enable-c99 \ + --enable-long-long \ + --enable-symvers=gnu \ + --program-prefix=${TARGET_PREFIX} \ + ${EXTRA_OECONF_PATHS} \ + ${EXTRA_OECONF_DEP}" + +EXTRA_OECONF_PATHS = "--with-sysroot=/ \ + --with-local-prefix=${prefix}/local \ + --with-gxx-include-dir=${includedir}/c++/${PV}" + +EXTRA_OECONF_DEP = "" +EXTRA_OECONF_uclibc = "--disable-__cxa_atexit" +EXTRA_OECONF_glibc = "--enable-__cxa_atexit" +EXTRA_OECONF += "${@get_gcc_fpu_setting(bb, d)}" +CPPFLAGS = "" + +def get_gcc_fpu_setting(bb, d): + if bb.data.getVar('TARGET_FPU', d, 1) in [ 'soft' ]: + return "--with-float=soft" + return "" + +python __anonymous () { + import bb, re + if (re.match('linux-uclibc$', bb.data.getVar('TARGET_OS', d, 1)) != None): + bb.data.setVar('EXTRA_OECONF_DEP', '${EXTRA_OECONF_uclibc}', d) + elif (re.match('linux$', bb.data.getVar('TARGET_OS', d, 1)) != None): + bb.data.setVar('EXTRA_OECONF_DEP', '${EXTRA_OECONF_glibc}', d) +} + +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 + export CC_FOR_BUILD="${BUILD_CC}" + export CXX_FOR_BUILD="${BUILD_CXX}" + export CFLAGS_FOR_BUILD="${BUILD_CFLAGS}" + export CPPFLAGS_FOR_BUILD="${BUILD_CPPFLAGS}" + export CXXFLAGS_FOR_BUILD="${BUILD_CXXFLAGS}" + export LDFLAGS_FOR_BUILD="${BUILD_LDFLAGS}" + (cd ${S} && gnu-configize) || die "failure running gnu-configize" + oe_runconf +} diff --git a/packages/gcc/gcc_3.4.0.bb b/packages/gcc/gcc_3.4.0.bb index e69de29bb2..635c8c3ef4 100644 --- a/packages/gcc/gcc_3.4.0.bb +++ b/packages/gcc/gcc_3.4.0.bb @@ -0,0 +1,24 @@ +PR = "r4" +DESCRIPTION = "The GNU cc and gcc C compilers." +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "devel" +LICENSE = "GPL" +MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" + +inherit autotools gettext + +include gcc-package.inc + +SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ + file://gcc34-reverse-compare.patch;patch=1 \ + file://gcc34-arm-ldm.patch;patch=1 \ + file://gcc34-arm-ldm-peephole.patch;patch=1 \ + file://gcc34-arm-tune.patch;patch=1 \ + file://gcc-3.4.1-uclibc-100-conf.patch;patch=1 \ + file://gcc-3.4.1-uclibc-200-locale.patch;patch=1 \ + file://gcc-3.4.0-arm-lib1asm.patch;patch=1 \ + file://gcc-3.4.0-arm-nolibfloat.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian-uclibc.patch;patch=1" + +include gcc3-build.inc diff --git a/packages/gcc/gcc_3.4.1.bb b/packages/gcc/gcc_3.4.1.bb index e69de29bb2..635c8c3ef4 100644 --- a/packages/gcc/gcc_3.4.1.bb +++ b/packages/gcc/gcc_3.4.1.bb @@ -0,0 +1,24 @@ +PR = "r4" +DESCRIPTION = "The GNU cc and gcc C compilers." +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "devel" +LICENSE = "GPL" +MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" + +inherit autotools gettext + +include gcc-package.inc + +SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ + file://gcc34-reverse-compare.patch;patch=1 \ + file://gcc34-arm-ldm.patch;patch=1 \ + file://gcc34-arm-ldm-peephole.patch;patch=1 \ + file://gcc34-arm-tune.patch;patch=1 \ + file://gcc-3.4.1-uclibc-100-conf.patch;patch=1 \ + file://gcc-3.4.1-uclibc-200-locale.patch;patch=1 \ + file://gcc-3.4.0-arm-lib1asm.patch;patch=1 \ + file://gcc-3.4.0-arm-nolibfloat.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian-uclibc.patch;patch=1" + +include gcc3-build.inc diff --git a/packages/gcc/gcc_3.4.2.bb b/packages/gcc/gcc_3.4.2.bb index e69de29bb2..635c8c3ef4 100644 --- a/packages/gcc/gcc_3.4.2.bb +++ b/packages/gcc/gcc_3.4.2.bb @@ -0,0 +1,24 @@ +PR = "r4" +DESCRIPTION = "The GNU cc and gcc C compilers." +HOMEPAGE = "http://www.gnu.org/software/gcc/" +SECTION = "devel" +LICENSE = "GPL" +MAINTAINER = "Gerald Britton <gbritton@doomcom.org>" + +inherit autotools gettext + +include gcc-package.inc + +SRC_URI = "${GNU_MIRROR}/gcc/gcc-${PV}/gcc-${PV}.tar.bz2 \ + file://gcc34-reverse-compare.patch;patch=1 \ + file://gcc34-arm-ldm.patch;patch=1 \ + file://gcc34-arm-ldm-peephole.patch;patch=1 \ + file://gcc34-arm-tune.patch;patch=1 \ + file://gcc-3.4.1-uclibc-100-conf.patch;patch=1 \ + file://gcc-3.4.1-uclibc-200-locale.patch;patch=1 \ + file://gcc-3.4.0-arm-lib1asm.patch;patch=1 \ + file://gcc-3.4.0-arm-nolibfloat.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian.patch;patch=1 \ + file://gcc-3.4.0-arm-bigendian-uclibc.patch;patch=1" + +include gcc3-build.inc diff --git a/packages/gcc/gcc_3.4.3.bb b/packages/gcc/gcc_3.4.3.bb index 99e028f48c..f95ce458b3 100644 --- a/packages/gcc/gcc_3.4.3.bb +++ b/packages/gcc/gcc_3.4.3.bb @@ -1,4 +1,4 @@ -PR = "r7" +PR = "r8" DESCRIPTION = "The GNU cc and gcc C compilers." HOMEPAGE = "http://www.gnu.org/software/gcc/" SECTION = "devel" |