summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKoen Kooi <koen@openembedded.org>2008-05-18 11:56:58 +0000
committerKoen Kooi <koen@openembedded.org>2008-05-18 11:56:58 +0000
commit13899c1db914722bcc635b1752f7e473ccaeaf4b (patch)
treeefdaa9c07b3bb8f7044e028de9034639537459ea
parent3ca0ffc76f5077b8c11e80ddd846f87ca61e6ebe (diff)
gcc: add gcc csl 2007q3
-rw-r--r--packages/gcc/gcc-cross-initial_csl-arm-2007q3.bb12
-rw-r--r--packages/gcc/gcc-cross_csl-arm-2007q3.bb26
-rw-r--r--packages/gcc/gcc-csl-arm-2007q3.inc51
-rw-r--r--packages/gcc/gcc-csl-arm-2007q3/.mtn2git_empty0
-rw-r--r--packages/gcc/gcc-csl-arm-2007q3/gcc-new-makeinfo.patch22
-rw-r--r--packages/gcc/gcc_csl-arm-2007q3.bb5
6 files changed, 116 insertions, 0 deletions
diff --git a/packages/gcc/gcc-cross-initial_csl-arm-2007q3.bb b/packages/gcc/gcc-cross-initial_csl-arm-2007q3.bb
new file mode 100644
index 0000000000..99656dbe83
--- /dev/null
+++ b/packages/gcc/gcc-cross-initial_csl-arm-2007q3.bb
@@ -0,0 +1,12 @@
+require gcc-cross_${PV}.bb
+require gcc-cross-initial.inc
+
+S = "${WORKDIR}/gcc-4.2"
+
+EXTRA_OECONF += "--disable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap "
+
+# Hack till we fix *libc properly
+do_stage_append() {
+ ln -sf ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include-fixed/* ${CROSS_DIR}/lib/gcc/${TARGET_SYS}/${BINV}/include/
+}
+
diff --git a/packages/gcc/gcc-cross_csl-arm-2007q3.bb b/packages/gcc/gcc-cross_csl-arm-2007q3.bb
new file mode 100644
index 0000000000..4fde67b006
--- /dev/null
+++ b/packages/gcc/gcc-cross_csl-arm-2007q3.bb
@@ -0,0 +1,26 @@
+PR = "r0"
+
+require gcc-csl-arm-2007q3.inc
+require gcc-cross4.inc
+require gcc-configure-cross.inc
+require gcc-package-cross.inc
+
+SRC_URI_append_fail-fast = " file://zecke-no-host-includes.patch;patch=1 "
+
+EXTRA_OECONF += "--disable-multilib --disable-libunwind-exceptions --with-mpfr=${STAGING_DIR_NATIVE}${layout_exec_prefix}"
+
+#We don't want i686 linux ending up in the CFLAGS_FOR_TARGET like this: -isystem/OE/angstrom-tmp/staging/i686-linux/usr/include
+CFLAGS = ""
+CXXFLAGS = ""
+LDFLAGS = ""
+
+# staging-linkage and cross-linkage recipes don't work anymore, so do it by hand for this backwards CSL toolchain
+do_compile_prepend() {
+ ln -sf ${STAGING_DIR_TARGET}${layout_libdir}/crt*.o ${CROSS_DIR}/${TARGET_SYS}/lib/
+ ln -sf ${STAGING_DIR_TARGET}${layout_libdir}/ld-* ${CROSS_DIR}/${TARGET_SYS}/lib/
+ ln -sf ${STAGING_DIR_TARGET}/lib/libc* ${CROSS_DIR}/${TARGET_SYS}/lib/
+ sed -i -e 's:gcc_no_link=yes:gcc_no_link=no:' ${S}/libstdc++-v3/configure
+
+}
+
+ARCH_FLAGS_FOR_TARGET += " -L${STAGING_DIR_TARGET}${layout_libdir} -isystem${STAGING_DIR_TARGET}${layout_includedir}"
diff --git a/packages/gcc/gcc-csl-arm-2007q3.inc b/packages/gcc/gcc-csl-arm-2007q3.inc
new file mode 100644
index 0000000000..601b4f0110
--- /dev/null
+++ b/packages/gcc/gcc-csl-arm-2007q3.inc
@@ -0,0 +1,51 @@
+require gcc-common.inc
+
+BINV = "4.2.1"
+PV = "4.2.1+csl-arm-2007q3-53"
+
+FILESPATH = "${FILE_DIRNAME}/gcc-csl-arm-2007q3:${FILE_DIRNAME}/gcc-csl-arm"
+
+SRC_URI = "http://www.codesourcery.com/public/gnu_toolchain/arm-none-eabi/arm-2007q3-53-arm-none-eabi.src.tar.bz2 \
+ file://gcc-new-makeinfo.patch;patch=1 \
+# file://100-uclibc-conf.patch;patch=1 \
+# file://103-uclibc-conf-noupstream.patch;patch=1 \
+# file://200-uclibc-locale.patch;patch=1 \
+# file://203-uclibc-locale-no__x.patch;patch=1 \
+# file://204-uclibc-locale-wchar_fix.patch;patch=1 \
+# file://205-uclibc-locale-update.patch;patch=1 \
+# file://300-libstdc++-pic.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://305-libmudflap-susv3-legacy.patch;patch=1 \
+# file://306-libstdc++-namespace.patch;patch=1 \
+# file://307-locale_facets.patch;patch=1 \
+# file://402-libbackend_dep_gcov-iov.h.patch;patch=1 \
+# file://602-sdk-libstdc++-includes.patch;patch=1 \
+ file://gcc41-configure.in.patch;patch=1 \
+ file://arm-nolibfloat.patch;patch=1 \
+ file://arm-softfloat.patch;patch=1 \
+ file://zecke-xgcc-cpp.patch;patch=1 \
+# file://gfortran.patch;patch=1 \
+# file://fortran-static-linking.patch;patch=1 \
+# file://gcc-configure-no-fortran.patch;patch=1;pnum=1 \
+# file://gcc-new-makeinfo.patch;patch=1 \
+"
+
+
+S = "${WORKDIR}/gcc-4.2"
+
+do_unpack2() {
+ cd ${WORKDIR}
+ tar -xvjf ./arm-2007q3-53-arm-none-eabi/gcc-2007q3-53.tar.bz2
+}
+
+# Language Overrides
+FORTRAN = ""
+#FORTRAN_linux-gnueabi = ",fortran"
+#JAVA = ",java"
+
+EXTRA_OECONF_BASE = "--enable-libssp --disable-bootstrap --disable-libgomp --disable-libmudflap"
+ARM_INSTRUCTION_SET = "arm"
+
+addtask unpack2 after do_unpack before do_patch
diff --git a/packages/gcc/gcc-csl-arm-2007q3/.mtn2git_empty b/packages/gcc/gcc-csl-arm-2007q3/.mtn2git_empty
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/packages/gcc/gcc-csl-arm-2007q3/.mtn2git_empty
diff --git a/packages/gcc/gcc-csl-arm-2007q3/gcc-new-makeinfo.patch b/packages/gcc/gcc-csl-arm-2007q3/gcc-new-makeinfo.patch
new file mode 100644
index 0000000000..b59bd76c85
--- /dev/null
+++ b/packages/gcc/gcc-csl-arm-2007q3/gcc-new-makeinfo.patch
@@ -0,0 +1,22 @@
+--- /tmp/configure 2008-05-18 12:57:11.378648834 +0200
++++ gcc-4.2/configure 2008-05-18 12:58:38.309478684 +0200
+@@ -3776,7 +3776,7 @@
+ # For an installed makeinfo, we require it to be from texinfo 4.4 or
+ # higher, else we use the "missing" dummy.
+ if ${MAKEINFO} --version \
+- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then
++ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
+ :
+ else
+ MAKEINFO="$MISSING makeinfo"
+--- /tmp/configure.in 2008-05-18 12:57:32.665314708 +0200
++++ gcc-4.2/configure.in 2008-05-18 12:59:03.000000000 +0200
+@@ -2271,7 +2271,7 @@
+ # For an installed makeinfo, we require it to be from texinfo 4.4 or
+ # higher, else we use the "missing" dummy.
+ if ${MAKEINFO} --version \
+- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then
++ | egrep 'texinfo[^0-9]*(4\.([6-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
+ :
+ else
+ MAKEINFO="$MISSING makeinfo"
diff --git a/packages/gcc/gcc_csl-arm-2007q3.bb b/packages/gcc/gcc_csl-arm-2007q3.bb
new file mode 100644
index 0000000000..d610713177
--- /dev/null
+++ b/packages/gcc/gcc_csl-arm-2007q3.bb
@@ -0,0 +1,5 @@
+PR = "r0"
+
+require gcc-${PV}.inc
+require gcc-configure-target.inc
+require gcc-package-target.inc