1 |
commit: 3c8762a46f4ae91d8e5bb71018b244b2f430b7f1 |
2 |
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
3 |
AuthorDate: Sun Sep 2 23:31:23 2018 +0000 |
4 |
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org> |
5 |
CommitDate: Sun Sep 2 23:31:23 2018 +0000 |
6 |
URL: https://gitweb.gentoo.org/proj/gcc-patches.git/commit/?id=3c8762a4 |
7 |
|
8 |
2.95.3: fix stage1 bulding against modern toolchain |
9 |
|
10 |
3 new patches: |
11 |
- 44_all_gcc-texi.patch: fix buuild failure against makeinfo-6.3 |
12 |
- 45_all_libexec-gcc-as.patch: lookup as in /usr/libexec/gcc/<TARGET> |
13 |
- 46_all_libexec-gcc-binutils.patch: add /usr/libexec/gcc/<TARGET> to search path |
14 |
|
15 |
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org> |
16 |
|
17 |
2.95.3/gentoo/44_all_gcc-texi.patch | 14 ++++++ |
18 |
2.95.3/gentoo/45_all_libexec-gcc-as.patch | 26 +++++++++++ |
19 |
2.95.3/gentoo/46_all_libexec-gcc-binutils.patch | 61 +++++++++++++++++++++++++ |
20 |
3 files changed, 101 insertions(+) |
21 |
|
22 |
diff --git a/2.95.3/gentoo/44_all_gcc-texi.patch b/2.95.3/gentoo/44_all_gcc-texi.patch |
23 |
new file mode 100644 |
24 |
index 0000000..a4b7044 |
25 |
--- /dev/null |
26 |
+++ b/2.95.3/gentoo/44_all_gcc-texi.patch |
27 |
@@ -0,0 +1,14 @@ |
28 |
+makeinfo-6.3 allows @itemx only after @item and fails the build as: |
29 |
+ gcc-2.95.3/gcc/install.texi:1607: @itemx must follow @item |
30 |
+ |
31 |
+--- a/gcc/install.texi |
32 |
++++ b/gcc/install.texi |
33 |
+@@ -1604,7 +1604,7 @@ linker that are fixed by using the GNU versions of these tools. |
34 |
+ Embedded PowerPC system in little endian mode for use in running under |
35 |
+ the PSIM simulator. |
36 |
+ |
37 |
+-@itemx powerpcle-*-eabi |
38 |
++@item powerpcle-*-eabi |
39 |
+ Embedded PowerPC system in little endian mode. |
40 |
+ |
41 |
+ You can specify a default version for the @samp{-mcpu=}@var{cpu_type} |
42 |
|
43 |
diff --git a/2.95.3/gentoo/45_all_libexec-gcc-as.patch b/2.95.3/gentoo/45_all_libexec-gcc-as.patch |
44 |
new file mode 100644 |
45 |
index 0000000..e857363 |
46 |
--- /dev/null |
47 |
+++ b/2.95.3/gentoo/45_all_libexec-gcc-as.patch |
48 |
@@ -0,0 +1,26 @@ |
49 |
+Before gcc-3.4 assembler was supposed to be in /usr/lib/gcc-lib/<TARGET> |
50 |
+After gcc-3.4 assembler location moved to /usr/libexec/gcc/<TARGET> |
51 |
+ |
52 |
+Add gcc-3.4-style path. |
53 |
+--- a/gcc/configure |
54 |
++++ b/gcc/configure |
55 |
+@@ -8161,3 +8161,7 @@ elif test x$host = x$target; then |
56 |
+ |
57 |
+- test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \ |
58 |
++ test_dirs="$test_prefix/libexec/gcc/$target/$gcc_version \ |
59 |
++ $test_prefix/libexec/gcc/$target \ |
60 |
++ /usr/libexec/gcc/$target/$gcc_version \ |
61 |
++ /usr/libexec/gcc/$target \ |
62 |
++ $test_prefix/lib/gcc-lib/$target/$gcc_version \ |
63 |
+ $test_prefix/lib/gcc-lib/$target \ |
64 |
+--- a/gcc/configure.in |
65 |
++++ b/gcc/configure.in |
66 |
+@@ -4010,3 +4010,7 @@ elif test x$host = x$target; then |
67 |
+ |
68 |
+- test_dirs="$test_prefix/lib/gcc-lib/$target/$gcc_version \ |
69 |
++ test_dirs="$test_prefix/libexec/gcc/$target/$gcc_version \ |
70 |
++ $test_prefix/libexec/gcc/$target \ |
71 |
++ /usr/libexec/gcc/$target/$gcc_version \ |
72 |
++ /usr/libexec/gcc/$target \ |
73 |
++ $test_prefix/lib/gcc-lib/$target/$gcc_version \ |
74 |
+ $test_prefix/lib/gcc-lib/$target \ |
75 |
|
76 |
diff --git a/2.95.3/gentoo/46_all_libexec-gcc-binutils.patch b/2.95.3/gentoo/46_all_libexec-gcc-binutils.patch |
77 |
new file mode 100644 |
78 |
index 0000000..fb97b42 |
79 |
--- /dev/null |
80 |
+++ b/2.95.3/gentoo/46_all_libexec-gcc-binutils.patch |
81 |
@@ -0,0 +1,61 @@ |
82 |
+Before gcc-3.4 gcc libraries and searched executables |
83 |
+were in /usr/lib/gcc-lib/<TARGET> (STANDARD_EXEC_PREFIX) |
84 |
+ |
85 |
+After gcc-3.4 the split happened: |
86 |
+- /usr/lib/gcc/<TARGET> for libraries (STARDARD_EXEC_PREFIX) |
87 |
+- /usr/libexec/gcc/<TARGET> for executables (STANDARD_LIBEXEC_PREFIX) |
88 |
+ |
89 |
+This patch adds STANDARD_LIBEXEC_PREFIX to allow bootstrapping |
90 |
+on 3.4+-only system. |
91 |
+--- a/gcc/Makefile.in |
92 |
++++ b/gcc/Makefile.in |
93 |
+@@ -271,8 +271,13 @@ exec_prefix = @exec_prefix@ |
94 |
+ bindir = @bindir@ |
95 |
+ # Directory in which to put the directories used by the compiler. |
96 |
+ libdir = @libdir@ |
97 |
++# Directory in which GCC puts its executables. |
98 |
++libexecdir = @libexecdir@ |
99 |
++ |
100 |
+ # Directory in which the compiler finds executables, libraries, etc. |
101 |
+ libsubdir = $(libdir)/gcc-lib/$(target_alias)/$(version) |
102 |
++# Directory in which the compiler finds executables |
103 |
++libexecsubdir = $(libexecdir)/gcc/$(target_alias)/$(version) |
104 |
+ # Used to produce a relative $(gcc_tooldir) in gcc.o |
105 |
+ unlibsubdir = ../../.. |
106 |
+ # Directory in which to find other cross-compilation tools and headers. |
107 |
+@@ -650,6 +655,7 @@ ORDINARY_FLAGS_TO_PASS = \ |
108 |
+ "gcc_tooldir=$(gcc_tooldir)" \ |
109 |
+ "bindir=$(bindir)" \ |
110 |
+ "libsubdir=$(libsubdir)" \ |
111 |
++ "libexecsubdir=$(libsubdir)" \ |
112 |
+ "datadir=$(datadir)" \ |
113 |
+ "distdir=../tmp/\$$(subdir)" \ |
114 |
+ "localedir=$(localedir)" |
115 |
+@@ -1412,6 +1418,7 @@ c-common.o : c-common.c $(CONFIG_H) system.h $(TREE_H) c-tree.h c-lex.h \ |
116 |
+ DRIVER_DEFINES = \ |
117 |
+ -DSTANDARD_STARTFILE_PREFIX=\"$(libdir)/\" \ |
118 |
+ -DSTANDARD_EXEC_PREFIX=\"$(libdir)/gcc-lib/\" \ |
119 |
++ -DSTANDARD_LIBEXEC_PREFIX=\"$(libexecdir)/gcc/\" \ |
120 |
+ -DDEFAULT_TARGET_VERSION=\"$(version)\" \ |
121 |
+ -DDEFAULT_TARGET_MACHINE=\"$(target_alias)\" \ |
122 |
+ -DTOOLDIR_BASE_PREFIX=\"$(exec_prefix)/\" |
123 |
+--- a/gcc/gcc.c |
124 |
++++ b/gcc/gcc.c |
125 |
+@@ -1379,6 +1379,8 @@ static const char *standard_exec_prefix_1 = "/usr/lib/gcc/"; |
126 |
+ static const char *md_exec_prefix = MD_EXEC_PREFIX; |
127 |
+ #endif |
128 |
+ |
129 |
++static const char *standard_libexec_prefix = STANDARD_LIBEXEC_PREFIX; |
130 |
++ |
131 |
+ #ifndef STANDARD_STARTFILE_PREFIX |
132 |
+ #define STANDARD_STARTFILE_PREFIX "/usr/local/lib/" |
133 |
+ #endif /* !defined STANDARD_STARTFILE_PREFIX */ |
134 |
+@@ -3062,6 +3064,8 @@ process_command (argc, argv) |
135 |
+ 0, 2, warn_std_ptr); |
136 |
+ add_prefix (&exec_prefixes, standard_exec_prefix_1, "BINUTILS", |
137 |
+ 0, 2, warn_std_ptr); |
138 |
++ add_prefix (&exec_prefixes, standard_libexec_prefix, "BINUTILS", |
139 |
++ 0, 2, warn_std_ptr); |
140 |
+ #endif |
141 |
+ |
142 |
+ add_prefix (&startfile_prefixes, standard_exec_prefix, "BINUTILS", |