diff options
-rw-r--r-- | .SRCINFO | 18 | ||||
-rw-r--r-- | PKGBUILD | 23 | ||||
-rw-r--r-- | Revert-eeb6872bf.patch | 82 |
3 files changed, 106 insertions, 17 deletions
@@ -1,9 +1,9 @@ # Generated by mksrcinfo v8 -# Thu Apr 6 23:37:30 UTC 2017 +# Sun Jul 9 19:27:09 UTC 2017 pkgbase = arm-linux-gnueabihf-gcc-stage1 pkgdesc = The GNU Compiler Collection. Stage 1 for toolchain building (arm-linux-gnueabihf) - pkgver = 6.3.1 - pkgrel = 2 + pkgver = 7.1.1 + pkgrel = 3 url = http://gcc.gnu.org arch = i686 arch = x86_64 @@ -11,16 +11,18 @@ pkgbase = arm-linux-gnueabihf-gcc-stage1 license = LGPL license = FDL license = custom - depends = arm-linux-gnueabihf-binutils>=2.28.0-2 + depends = arm-linux-gnueabihf-binutils>=2.28.0-3 depends = libmpc depends = zlib options = !emptydirs options = !distcc options = !strip - source = https://github.com/gcc-mirror/gcc/archive/4fc407888a30c5d953816b05c8a8e98ec2ab3101.tar.gz - source = http://isl.gforge.inria.fr/isl-0.16.1.tar.bz2 - md5sums = caa9e0f74678087d447d1dd87f358d97 - md5sums = ac1f25a0677912952718a51f5bc20f32 + source = https://github.com/gcc-mirror/gcc/archive/81fc9125b24bba5f2761b7986ff4e3de14740291.tar.gz + source = http://isl.gforge.inria.fr/isl-0.18.tar.bz2 + source = Revert-eeb6872bf.patch + md5sums = 491bb12933ea303bb7313541348032ce + md5sums = 11436d6b205e516635b666090b94ab32 + md5sums = e4c9c8b498b04c0f51d219d025ca8407 pkgname = arm-linux-gnueabihf-gcc-stage1 @@ -6,21 +6,23 @@ _target="arm-linux-gnueabihf" pkgname=${_target}-gcc-stage1 -pkgver=6.3.1 -_pkgver=6 -_islver=0.16.1 -pkgrel=2 -_commit=4fc407888a30c5d953816b05c8a8e98ec2ab3101 +pkgver=7.1.1 +_pkgver=${pkgver:0:1} +_islver=0.18 +pkgrel=3 +_commit=81fc9125b24bba5f2761b7986ff4e3de14740291 pkgdesc="The GNU Compiler Collection. Stage 1 for toolchain building (${_target})" arch=('i686' 'x86_64') license=('GPL' 'LGPL' 'FDL' 'custom') url="http://gcc.gnu.org" -depends=("${_target}-binutils>=2.28.0-2" 'libmpc' 'zlib') +depends=("${_target}-binutils>=2.28.0-3" 'libmpc' 'zlib') options=('!emptydirs' '!distcc' '!strip') source=(https://github.com/gcc-mirror/gcc/archive/${_commit}.tar.gz - http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2) -md5sums=('caa9e0f74678087d447d1dd87f358d97' - 'ac1f25a0677912952718a51f5bc20f32') + http://isl.gforge.inria.fr/isl-${_islver}.tar.bz2 + Revert-eeb6872bf.patch) +md5sums=('491bb12933ea303bb7313541348032ce' + '11436d6b205e516635b666090b94ab32' + 'e4c9c8b498b04c0f51d219d025ca8407') prepare() { mv gcc-${_commit}* gcc @@ -35,6 +37,9 @@ prepare() { # hack! - some configure tests for header files using "$CPP $CPPFLAGS" sed -i "/ac_cpp=/s/\$CPPFLAGS/\$CPPFLAGS -O2/" {libiberty,gcc}/configure + # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80717 + patch -p1 -i ${srcdir}/Revert-eeb6872bf.patch + mkdir ${srcdir}/gcc-build } diff --git a/Revert-eeb6872bf.patch b/Revert-eeb6872bf.patch new file mode 100644 index 000000000000..1688c149a805 --- /dev/null +++ b/Revert-eeb6872bf.patch @@ -0,0 +1,82 @@ +commit 43d83a70267a9e5c456d28de8e7348820446b712 +Author: Bartłomiej Piotrowski <bpiotrowski@archlinux.org> +Date: Tue May 16 07:50:42 2017 +0200 + + Revert "Prevent LTO wrappers to process a recursive execution" + + This reverts commit eeb6872bfdfd1e71b27de6f62a5f5c08a2efb015. + +diff --git a/gcc/file-find.c b/gcc/file-find.c +index b072a4993d76..b5a1fe8494e8 100644 +--- a/gcc/file-find.c ++++ b/gcc/file-find.c +@@ -208,38 +208,3 @@ prefix_from_string (const char *p, struct path_prefix *pprefix) + } + free (nstore); + } +- +-void +-remove_prefix (const char *prefix, struct path_prefix *pprefix) +-{ +- struct prefix_list *remove, **prev, **remove_prev = NULL; +- int max_len = 0; +- +- if (pprefix->plist) +- { +- prev = &pprefix->plist; +- for (struct prefix_list *pl = pprefix->plist; pl->next; pl = pl->next) +- { +- if (strcmp (prefix, pl->prefix) == 0) +- { +- remove = pl; +- remove_prev = prev; +- continue; +- } +- +- int l = strlen (pl->prefix); +- if (l > max_len) +- max_len = l; +- +- prev = &pl; +- } +- +- if (remove_prev) +- { +- *remove_prev = remove->next; +- free (remove); +- } +- +- pprefix->max_len = max_len; +- } +-} +diff --git a/gcc/file-find.h b/gcc/file-find.h +index 8f49a3af273e..407feba26e74 100644 +--- a/gcc/file-find.h ++++ b/gcc/file-find.h +@@ -41,7 +41,6 @@ extern void find_file_set_debug (bool); + extern char *find_a_file (struct path_prefix *, const char *, int); + extern void add_prefix (struct path_prefix *, const char *); + extern void add_prefix_begin (struct path_prefix *, const char *); +-extern void remove_prefix (const char *prefix, struct path_prefix *); + extern void prefix_from_env (const char *, struct path_prefix *); + extern void prefix_from_string (const char *, struct path_prefix *); + +diff --git a/gcc/gcc-ar.c b/gcc/gcc-ar.c +index 78d2fc1ad306..d5d80e042e5a 100644 +--- a/gcc/gcc-ar.c ++++ b/gcc/gcc-ar.c +@@ -194,14 +194,6 @@ main (int ac, char **av) + #ifdef CROSS_DIRECTORY_STRUCTURE + real_exe_name = concat (target_machine, "-", PERSONALITY, NULL); + #endif +- /* Do not search original location in the same folder. */ +- char *exe_folder = lrealpath (av[0]); +- exe_folder[strlen (exe_folder) - strlen (lbasename (exe_folder))] = '\0'; +- char *location = concat (exe_folder, PERSONALITY, NULL); +- +- if (access (location, X_OK) == 0) +- remove_prefix (exe_folder, &path); +- + exe_name = find_a_file (&path, real_exe_name, X_OK); + if (!exe_name) + { |