summaryrefslogtreecommitdiff
path: root/cross/cross-mips64el-unknown-linux-gnu-gcc-core
diff options
context:
space:
mode:
Diffstat (limited to 'cross/cross-mips64el-unknown-linux-gnu-gcc-core')
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/PKGBUILD100
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.6.2-cloog-0.17.patch36
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.7.0-cloog-0.17.patch24
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-hash-style-both.patch122
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_mips64el_lib.patch24
-rw-r--r--cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_pure64.patch26
6 files changed, 298 insertions, 34 deletions
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/PKGBUILD b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/PKGBUILD
index 47ef81fe1..b94027442 100644
--- a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/PKGBUILD
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/PKGBUILD
@@ -10,54 +10,81 @@ _ARCH=mips
unset LDFLAGS CFLAGS CXXFLAGS
pkgname=cross-${_target}-gcc-core
-pkgver=4.6.2
-pkgrel=8
+pkgver=4.7.0
+pkgrel=4.3
+_snapshot=4.7-20120407
+_libstdcppmanver=20120307 # Note: check source directory name when updating this
pkgdesc="The GNU Compiler Collection for the MIPS/Loongson2f architecture (static version)"
url="http://www.gnu.org/software/binutils/"
arch=('i686' 'x86_64')
license=('GPL')
depends=('libmpc' 'sh' "${_target}-binutils" 'cloog' 'ppl')
options=('!ccache' '!distcc' '!emptydirs' '!libtool' '!strip')
-source=("ftp://ftp.gnu.org/gnu/gcc/gcc-${pkgver}/${_pkgname}-${pkgver}.tar.bz2")
-md5sums=('028115c4fbfb6cfd75d6369f4a90d87e')
+source=(#ftp://gcc.gnu.org/pub/gcc/releases/gcc-${pkgver}/gcc-${pkgver}.tar.bz2
+ ftp://gcc.gnu.org/pub/gcc/snapshots/${_snapshot}/gcc-${_snapshot}.tar.bz2
+ ftp://gcc.gnu.org/pub/gcc/libstdc++/doxygen/libstdc++-api.${_libstdcppmanver}.man.tar.bz2
+ gcc_pure64.patch
+ gcc_mips64el_lib.patch
+ gcc-4.7.0-cloog-0.17.patch)
+md5sums=('e44a8484687ef52c02066d6434ecf42b'
+ '489d2f5311535800a120efd8d18db719'
+ 'ced48436c1b3c981d721a829f1094de1'
+ '474b8f5a7dee6ddd96b95a7240bfb961'
+ '575f7d17b022e609447a590e481b18b5')
+
+if [ -n "${_snapshot}" ]; then
+ _basedir="${srcdir}/gcc-${_snapshot}"
+else
+ _basedir="${srcdir}/gcc-${pkgver}"
+fi
build() {
+ cd ${_basedir}
+
+ # Do not install libiberty
+ sed -i 's/install_to_$(INSTALL_DEST) //' libiberty/Makefile.in
+
+ # Do not run fixincludes
+ sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
+
+ # compatibility with latest cloog
+ patch -p1 -i ${srcdir}/gcc-4.7.0-cloog-0.17.patch
+
+ echo ${pkgver} > gcc/BASE-VER
+
cd ${srcdir}
mkdir gcc-build && cd gcc-build
+ #AS=${_target}-as \
+ LDFLAGS= \
CC_FOR_BUILD=${CHOST}-gcc \
CFLAGS=" -pipe " \
- LDFLAGS= \
- ${srcdir}/${_pkgname}-${pkgver}/configure \
- --build=${CHOST} \
- --host=${CHOST} \
- --target=${_target} \
- --prefix=/usr \
- --with-local-prefix=${_sysroot} \
- --disable-multilib \
- --disable-libmudflap \
- --with-sysroot=${_sysroot} \
- --with-newlib \
- --enable-threads=no \
- --disable-shared \
- --with-arch=loongson2f \
- --with-abi=n32 \
- --enable-__cxa_atexit \
- --with-gmp \
- --with-mpfr \
- --with-mpc \
- --with-ppl \
- --enable-cloog-backend=isl \
- --enable-lto \
- --enable-target-optspace \
- --disable-libgomp \
- --disable-libmudflap \
- --disable-nls \
- --enable-languages=c \
- --with-libs \
- --with-headers
+ ${_basedir}/configure --prefix=/usr \
+ --with-linker-hash-style=gnu \
+ --build=${CHOST} --host=${CHOST} --target=${_target} \
+ --with-sysroot=${_sysroot} --with-arch=loongson2f --with-abi=n32 \
+ --with-libs --with-headers \
+ --with-local-prefix=${_sysroot} \
+ --disable-multilib \
+ --disable-libmudflap \
+ --with-newlib \
+ --enable-threads=no \
+ --disable-shared \
+ --enable-__cxa_atexit \
+ --with-gmp \
+ --with-mpfr \
+ --with-mpc \
+ --with-ppl \
+ --enable-cloog-backend=isl \
+ --enable-lto \
+ --enable-target-optspace \
+ --disable-libgomp \
+ --disable-libmudflap \
+ --disable-nls \
+ --enable-languages=c
+
+ make all-gcc
- make ${MAKEFLAGS} all-gcc
}
package() {
@@ -67,3 +94,8 @@ package() {
rm -r ${pkgdir}/usr/share
}
+md5sums=('e44a8484687ef52c02066d6434ecf42b'
+ '489d2f5311535800a120efd8d18db719'
+ 'ced48436c1b3c981d721a829f1094de1'
+ '474b8f5a7dee6ddd96b95a7240bfb961'
+ '575f7d17b022e609447a590e481b18b5')
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.6.2-cloog-0.17.patch b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.6.2-cloog-0.17.patch
new file mode 100644
index 000000000..0503a05ed
--- /dev/null
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.6.2-cloog-0.17.patch
@@ -0,0 +1,36 @@
+diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure
+--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000
++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000
+@@ -6049,8 +6049,8 @@
+ LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}"
+
+ if test "${cloog_org}" = yes ; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5
+-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5
++$as_echo_n "checking for version 0.17 of CLooG... " >&6; }
+ if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+ else
+@@ -6061,8 +6061,7 @@
+ main ()
+ {
+ #if CLOOG_VERSION_MAJOR != 0 \
+- || CLOOG_VERSION_MINOR != 16 \
+- || CLOOG_VERSION_REVISION < 1
++ || CLOOG_VERSION_MINOR != 17
+ choke me
+ #endif
+ ;
+diff -Naur gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c
+--- gcc-4.6-20120120-orig/gcc/graphite-clast-to-gimple.c 2011-03-13 08:05:38.000000000 +1000
++++ gcc-4.6-20120120/gcc/graphite-clast-to-gimple.c 2012-02-03 17:51:47.943463879 +1000
+@@ -1367,7 +1367,7 @@
+ /* Change cloog output language to C. If we do use FORTRAN instead, cloog
+ will stop e.g. with "ERROR: unbounded loops not allowed in FORTRAN.", if
+ we pass an incomplete program to cloog. */
+- options->language = LANGUAGE_C;
++ options->language = CLOOG_LANGUAGE_C;
+
+ /* Enable complex equality spreading: removes dummy statements
+ (assignments) in the generated code which repeats the
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.7.0-cloog-0.17.patch b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.7.0-cloog-0.17.patch
new file mode 100644
index 000000000..c7146fa04
--- /dev/null
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-4.7.0-cloog-0.17.patch
@@ -0,0 +1,24 @@
+diff -Naur gcc-4.6-20120120-orig/configure gcc-4.6-20120120/configure
+--- gcc-4.6-20120120-orig/configure 2011-12-18 20:03:44.000000000 +1000
++++ gcc-4.6-20120120/configure 2012-02-03 17:55:14.885990135 +1000
+@@ -6049,8 +6049,8 @@
+ LDFLAGS="${_cloog_saved_LDFLAGS} ${clooglibs} ${ppllibs}"
+
+ if test "${cloog_org}" = yes ; then
+- { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.16.1 of CLooG" >&5
+-$as_echo_n "checking for version 0.16.1 of CLooG... " >&6; }
++ { $as_echo "$as_me:${as_lineno-$LINENO}: checking for version 0.17 of CLooG" >&5
++$as_echo_n "checking for version 0.17 of CLooG... " >&6; }
+ if test "${gcc_cv_cloog_ct_0_14_0+set}" = set; then :
+ $as_echo_n "(cached) " >&6
+ else
+@@ -6061,8 +6061,7 @@
+ main ()
+ {
+ #if CLOOG_VERSION_MAJOR != 0 \
+- || CLOOG_VERSION_MINOR != 16 \
+- || CLOOG_VERSION_REVISION < 1
++ || CLOOG_VERSION_MINOR != 17
+ choke me
+ #endif
+ ;
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-hash-style-both.patch b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-hash-style-both.patch
new file mode 100644
index 000000000..8b59f4535
--- /dev/null
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc-hash-style-both.patch
@@ -0,0 +1,122 @@
+--- gcc/config/alpha/linux-elf.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/alpha/linux-elf.h 2011-03-11 10:01:47.770000457 +1000
+@@ -41,7 +41,7 @@
+
+ #define ELF_DYNAMIC_LINKER LINUX_DYNAMIC_LINKER
+
+-#define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
++#define LINK_SPEC "-m elf64alpha --hash-style=both %{G*} %{relax:-relax} \
+ %{O*:-O3} %{!O*:-O1} \
+ %{shared:-shared} \
+ %{!shared: \
+--- gcc/config/i386/linux64.h.orig 2011-03-03 08:35:36.000000000 +1000
++++ gcc/config/i386/linux64.h 2011-03-11 10:01:47.770000457 +1000
+@@ -78,7 +78,7 @@
+ %{!mno-sse2avx:%{mavx:-msse2avx}} %{msse2avx:%{!mavx:-msse2avx}}"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} \
++#define LINK_SPEC "%{" SPEC_64 ":-m elf_x86_64} %{" SPEC_32 ":-m elf_i386} --hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+--- gcc/config/i386/linux.h.orig 2011-01-15 04:45:06.000000000 +1000
++++ gcc/config/i386/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -104,7 +104,7 @@
+ { "dynamic_linker", LINUX_DYNAMIC_LINKER }
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m %(link_emulation) %{shared:-shared} \
++#define LINK_SPEC "-m %(link_emulation) --hash-style=both %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+--- gcc/config/ia64/linux.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/ia64/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -64,7 +64,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux-ia64.so.2"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "\
++#define LINK_SPEC "--hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+--- gcc/config/rs6000/linux64.h.orig 2011-02-11 03:30:10.000000000 +1000
++++ gcc/config/rs6000/linux64.h 2011-03-11 10:03:34.280000457 +1000
+@@ -389,11 +389,11 @@
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER64, UCLIBC_DYNAMIC_LINKER64)
+
+
+-#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER32 "}}"
+
+-#define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC64 "-m elf64ppc --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER64 "}}"
+
+--- gcc/config/rs6000/sysv4.h.orig 2011-01-28 04:36:03.000000000 +1000
++++ gcc/config/rs6000/sysv4.h 2011-03-11 10:01:47.773333792 +1000
+@@ -830,7 +830,7 @@
+ #define LINUX_DYNAMIC_LINKER \
+ CHOOSE_DYNAMIC_LINKER (GLIBC_DYNAMIC_LINKER, UCLIBC_DYNAMIC_LINKER)
+
+-#define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
++#define LINK_OS_LINUX_SPEC "-m elf32ppclinux --hash-style=both %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+ -dynamic-linker " LINUX_DYNAMIC_LINKER "}}"
+
+--- gcc/config/s390/linux.h.orig 2010-12-09 23:27:07.000000000 +1000
++++ gcc/config/s390/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -77,7 +77,7 @@
+
+ #undef LINK_SPEC
+ #define LINK_SPEC \
+- "%{m31:-m elf_s390}%{m64:-m elf64_s390} \
++ "%{m31:-m elf_s390}%{m64:-m elf64_s390} --hash-style=both \
+ %{shared:-shared} \
+ %{!shared: \
+ %{static:-static} \
+--- gcc/config/sparc/linux64.h.orig 2011-02-17 23:57:21.000000000 +1000
++++ gcc/config/sparc/linux64.h 2011-03-11 10:01:47.770000457 +1000
+@@ -113,7 +113,7 @@
+ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC },
+
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,%R/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc --hash-style=both -Y P,%R/usr/lib %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -121,7 +121,7 @@
+ %{static:-static}} \
+ "
+
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+@@ -193,7 +193,7 @@
+ #else /* !SPARC_BI_ARCH */
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,%R/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc --hash-style=both -Y P,%R/usr/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+--- gcc/config/sparc/linux.h.orig 2011-01-27 06:30:12.000000000 +1000
++++ gcc/config/sparc/linux.h 2011-03-11 10:01:47.770000457 +1000
+@@ -74,7 +74,7 @@
+ #define GLIBC_DYNAMIC_LINKER "/lib/ld-linux.so.2"
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc --hash-style=both -Y P,/usr/lib %{shared:-shared} \
+ %{!mno-relax:%{!r:-relax}} \
+ %{!shared: \
+ %{!static: \
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_mips64el_lib.patch b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_mips64el_lib.patch
new file mode 100644
index 000000000..c938d9b30
--- /dev/null
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_mips64el_lib.patch
@@ -0,0 +1,24 @@
+diff -ru gcc-4.7-20120324.orig/gcc/config/mips/linux64.h gcc-4.7-20120324/gcc/config/mips/linux64.h
+--- gcc-4.7-20120324.orig/gcc/config/mips/linux64.h 2012-04-06 11:32:50.545152897 +0200
++++ gcc-4.7-20120324/gcc/config/mips/linux64.h 2012-04-06 12:06:58.501290352 +0200
+@@ -23,9 +23,9 @@
+ #define GNU_USER_LINK_EMULATION64 "elf64%{EB:b}%{EL:l}tsmip"
+ #define GNU_USER_LINK_EMULATIONN32 "elf32%{EB:b}%{EL:l}tsmipn32"
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1"
++#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld.so.1"
+ #define GLIBC_DYNAMIC_LINKER64 "/lib64/ld.so.1"
+-#define GLIBC_DYNAMIC_LINKERN32 "/lib32/ld.so.1"
++#define GLIBC_DYNAMIC_LINKERN32 "/lib/ld.so.1"
+ #define UCLIBC_DYNAMIC_LINKERN32 "/lib32/ld-uClibc.so.0"
+ #define BIONIC_DYNAMIC_LINKERN32 "/system/bin/linker32"
+ #define GNU_USER_DYNAMIC_LINKERN32 \
+diff -ru gcc-4.7-20120324.orig/gcc/config/mips/t-linux64 gcc-4.7-20120324/gcc/config/mips/t-linux64
+--- gcc-4.7-20120324.orig/gcc/config/mips/t-linux64 2012-04-06 11:32:50.379989000 +0200
++++ gcc-4.7-20120324/gcc/config/mips/t-linux64 2012-04-06 12:05:55.461021317 +0200
+@@ -18,4 +18,4 @@
+
+ MULTILIB_OPTIONS = mabi=n32/mabi=32/mabi=64
+ MULTILIB_DIRNAMES = n32 32 64
+-MULTILIB_OSDIRNAMES = ../lib32 ../lib ../lib64
++MULTILIB_OSDIRNAMES = ../lib ../lib32 ../lib64
diff --git a/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_pure64.patch b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_pure64.patch
new file mode 100644
index 000000000..a9b09bbcf
--- /dev/null
+++ b/cross/cross-mips64el-unknown-linux-gnu-gcc-core/gcc_pure64.patch
@@ -0,0 +1,26 @@
+diff -Naur gcc-orig/gcc/config/i386/linux64.h gcc/gcc/config/i386/linux64.h
+--- gcc-orig/gcc/config/i386/linux64.h 2011-07-08 01:38:34.000000000 +1000
++++ gcc/gcc/config/i386/linux64.h 2011-07-24 19:48:05.000000000 +1000
+@@ -28,6 +28,6 @@
+ #define GNU_USER_LINK_EMULATION64 "elf_x86_64"
+ #define GNU_USER_LINK_EMULATIONX32 "elf32_x86_64"
+
+-#define GLIBC_DYNAMIC_LINKER32 "/lib/ld-linux.so.2"
+-#define GLIBC_DYNAMIC_LINKER64 "/lib64/ld-linux-x86-64.so.2"
++#define GLIBC_DYNAMIC_LINKER32 "/lib32/ld-linux.so.2"
++#define GLIBC_DYNAMIC_LINKER64 "/lib/ld-linux-x86-64.so.2"
+ #define GLIBC_DYNAMIC_LINKERX32 "/libx32/ld-linux-x32.so.2"
+diff -Naur gcc-orig/gcc/config/i386/t-linux64 gcc/gcc/config/i386/t-linux64
+--- gcc-orig/gcc/config/i386/t-linux64 2011-07-08 01:38:34.000000000 +1000
++++ gcc/gcc/config/i386/t-linux64 2011-07-24 19:49:41.000000000 +1000
+@@ -34,8 +34,8 @@
+ comma=,
+ MULTILIB_OPTIONS = $(subst $(comma),/,$(TM_MULTILIB_CONFIG))
+ MULTILIB_DIRNAMES = $(patsubst m%, %, $(subst /, ,$(MULTILIB_OPTIONS)))
+-MULTILIB_OSDIRNAMES = m64=../lib64
+-MULTILIB_OSDIRNAMES+= m32=$(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)
++MULTILIB_OSDIRNAMES = m64=../lib
++MULTILIB_OSDIRNAMES+= m32=../lib32
+ MULTILIB_OSDIRNAMES+= mx32=../libx32
+
+ LIBGCC = stmp-multilib