toolchain: fix gcc 4.6 build with gcc5

build error:
cfns.gperf:101:1: error: 'gnu_inline' attribute present on 'libc_name_p'
cfns.gperf:26:14: error: but not here
observed on Arch Linux

affected versions gcc 4.6, gcc 4.7

reported & fixed in DragonFlyBSD issue #136
https://github.com/DragonFlyBSD/DPorts/issues/136

Signed-off-by: Dirk Neukirchen <dirkneukirchen@web.de>

SVN-Revision: 46355
This commit is contained in:
John Crispin 2015-07-14 07:43:50 +00:00
parent 16fb050055
commit b2739f37d6
5 changed files with 27 additions and 6 deletions

View file

@ -1,6 +1,6 @@
--- a/gcc/Makefile.in --- a/gcc/Makefile.in
+++ b/gcc/Makefile.in +++ b/gcc/Makefile.in
@@ -4251,18 +4251,10 @@ @@ -4267,18 +4267,10 @@ doc/gcc.info: $(TEXI_GCC_FILES)
doc/gccint.info: $(TEXI_GCCINT_FILES) doc/gccint.info: $(TEXI_GCCINT_FILES)
doc/cppinternals.info: $(TEXI_CPPINT_FILES) doc/cppinternals.info: $(TEXI_CPPINT_FILES)

View file

@ -125,7 +125,7 @@
Assume normal C execution environment Assume normal C execution environment
--- a/gcc/common.opt --- a/gcc/common.opt
+++ b/gcc/common.opt +++ b/gcc/common.opt
@@ -520,6 +520,10 @@ Werror= @@ -523,6 +523,10 @@ Werror=
Common Joined Common Joined
Treat specified warning as error Treat specified warning as error
@ -136,7 +136,7 @@
Wextra Wextra
Common Var(extra_warnings) Warning Common Var(extra_warnings) Warning
Print extra (possibly unwanted) warnings Print extra (possibly unwanted) warnings
@@ -1156,6 +1160,9 @@ fguess-branch-probability @@ -1159,6 +1163,9 @@ fguess-branch-probability
Common Report Var(flag_guess_branch_prob) Optimization Common Report Var(flag_guess_branch_prob) Optimization
Enable guessing of branch probabilities Enable guessing of branch probabilities
@ -232,7 +232,7 @@
@item -Wstack-protector @item -Wstack-protector
@opindex Wstack-protector @opindex Wstack-protector
@opindex Wno-stack-protector @opindex Wno-stack-protector
@@ -6317,7 +6333,7 @@ so, the first branch is redirected to ei @@ -6322,7 +6338,7 @@ so, the first branch is redirected to ei
second branch or a point immediately following it, depending on whether second branch or a point immediately following it, depending on whether
the condition is known to be true or false. the condition is known to be true or false.

View file

@ -1,6 +1,6 @@
--- a/gcc/gcc.c --- a/gcc/gcc.c
+++ b/gcc/gcc.c +++ b/gcc/gcc.c
@@ -7772,7 +7772,10 @@ getenv_spec_function (int argc, const ch @@ -7830,7 +7830,10 @@ getenv_spec_function (int argc, const ch
value = getenv (argv[0]); value = getenv (argv[0]);
if (!value) if (!value)

View file

@ -1,6 +1,6 @@
--- a/gcc/config.gcc --- a/gcc/config.gcc
+++ b/gcc/config.gcc +++ b/gcc/config.gcc
@@ -1805,7 +1805,7 @@ m68k-*-linux*) # Motorola m68k's runnin @@ -1809,7 +1809,7 @@ m68k-*-linux*) # Motorola m68k's runnin
default_m68k_cpu=68020 default_m68k_cpu=68020
default_cf_cpu=5475 default_cf_cpu=5475
with_arch=${with_arch:-m68k} with_arch=${with_arch:-m68k}

View file

@ -0,0 +1,21 @@
--- a/gcc/cp/cfns.h
+++ b/gcc/cp/cfns.h
@@ -53,6 +53,9 @@ __inline
static unsigned int hash (const char *, unsigned int);
#ifdef __GNUC__
__inline
+#ifdef __GNUC_STDC_INLINE__
+__attribute__ ((__gnu_inline__))
+#endif
#endif
const char * libc_name_p (const char *, unsigned int);
/* maximum key range = 391, duplicates = 0 */
@@ -96,7 +99,7 @@ hash (register const char *str, register
400, 400, 400, 400, 400, 400, 400, 400, 400, 400,
400, 400, 400, 400, 400, 400, 400
};
- register int hval = len;
+ register int hval = (int)len;
switch (hval)
{