summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlejandro W. Sior <aho@sior.be>2023-02-03 10:03:37 +0100
committerAlejandro W. Sior <aho@sior.be>2023-02-03 10:03:37 +0100
commita7417a86fa394efa45dc5a1b87cc10864e2be20f (patch)
tree2bc0d9965931f26eaa263615128e607afe84afcf
parentf368e42a125c34ce7ad628f3051dd7ae730ff8ad (diff)
gcc-7: rename from gcc-7-il, add quality of life patches
-rw-r--r--gcc-7/build (renamed from gcc-7-il/build)10
-rw-r--r--gcc-7/checksums (renamed from gcc-7-il/checksums)0
-rw-r--r--gcc-7/depends (renamed from gcc-7-il/depends)0
-rw-r--r--gcc-7/files/0028-13185-zassert-deflib-does-not-work-for-64-bit-object.patch55
-rw-r--r--gcc-7/files/0029-Use-the-illumos-libc-SSP-implementation-for-fstack-p.patch63
-rw-r--r--gcc-7/files/0030-Add-__illumos__-preprocessor-definition.patch21
-rw-r--r--gcc-7/files/1000-ld-flags.patch24
-rw-r--r--gcc-7/files/1001-values.patch18
-rw-r--r--gcc-7/files/1003-gmp_asm.patch726
-rw-r--r--gcc-7/files/1004-cpu-flags.patch55
-rw-r--r--gcc-7/files/1005-strip.patch13
-rw-r--r--gcc-7/sources (renamed from gcc-7-il/sources)1
-rw-r--r--gcc-7/version (renamed from gcc-7-il/version)0
13 files changed, 984 insertions, 2 deletions
diff --git a/gcc-7-il/build b/gcc-7/build
index ddee51c..e3acc43 100644
--- a/gcc-7-il/build
+++ b/gcc-7/build
@@ -1,12 +1,18 @@
#!/bin/sh -e
-# Make build directory
+cd gcc
+
+for patch in *.patch; do
+ patch -p1 < $patch
+done
+
+cd ..
mkdir build
cd build
# Configure gcc
../gcc/configure \
- --prefix=/usr/gcc/7-il \
+ --prefix=/usr/gcc/7 \
--with-as=/usr/bin/gas \
--with-gnu-as \
--with-ld=/usr/bin/ld \
diff --git a/gcc-7-il/checksums b/gcc-7/checksums
index 7ccf6b3..7ccf6b3 100644
--- a/gcc-7-il/checksums
+++ b/gcc-7/checksums
diff --git a/gcc-7-il/depends b/gcc-7/depends
index ac0a69d..ac0a69d 100644
--- a/gcc-7-il/depends
+++ b/gcc-7/depends
diff --git a/gcc-7/files/0028-13185-zassert-deflib-does-not-work-for-64-bit-object.patch b/gcc-7/files/0028-13185-zassert-deflib-does-not-work-for-64-bit-object.patch
new file mode 100644
index 0000000..03d38d5
--- /dev/null
+++ b/gcc-7/files/0028-13185-zassert-deflib-does-not-work-for-64-bit-object.patch
@@ -0,0 +1,55 @@
+From 2cc1e414c8baf7d2e2b9492d3343b0e84508c186 Mon Sep 17 00:00:00 2001
+From: Andy Fiddaman <omnios@citrus-it.co.uk>
+Date: Mon, 11 Jan 2021 14:09:40 +0000
+Subject: 13185 -zassert-deflib does not work for 64-bit objects
+
+---
+ gcc/gcc.c | 33 ++++++++++++++++++++++++++-------
+ 1 file changed, 26 insertions(+), 7 deletions(-)
+
+diff --git a/gcc/gcc.c b/gcc/gcc.c
+index eced0d53aae..3b74f3c2970 100644
+--- a/gcc/gcc.c
++++ b/gcc/gcc.c
+@@ -7017,15 +7017,34 @@ is_directory (const char *path1, bool linker)
+ *cp = '\0';
+
+ /* Exclude directories that the linker is known to search. */
+- if (linker
+- && IS_DIR_SEPARATOR (path[0])
+- && ((cp - path == 6
+- && filename_ncmp (path + 1, "lib", 3) == 0)
+- || (cp - path == 10
++ if (linker && IS_DIR_SEPARATOR (path[0])) {
++ size_t len = cp - path;
++
++ if (len >= 6 && filename_ncmp (path + 1, "lib", 3) == 0) {
++ if (len == 6)
++ return 0;
++ if (multilib_os_dir != NULL
++ && len == 6 + strlen(multilib_os_dir) + 1
++ && filename_ncmp(path + 5, multilib_os_dir,
++ strlen(multilib_os_dir)) == 0) {
++ return 0;
++ }
++ }
++
++ if (len >= 10
+ && filename_ncmp (path + 1, "usr", 3) == 0
+ && IS_DIR_SEPARATOR (path[4])
+- && filename_ncmp (path + 5, "lib", 3) == 0)))
+- return 0;
++ && filename_ncmp (path + 5, "lib", 3) == 0) {
++ if (len == 10)
++ return 0;
++ if (multilib_os_dir != NULL
++ && len == 10 + strlen(multilib_os_dir) + 1
++ && filename_ncmp(path + 9, multilib_os_dir,
++ strlen(multilib_os_dir)) == 0) {
++ return 0;
++ }
++ }
++ }
+
+ return (stat (path, &st) >= 0 && S_ISDIR (st.st_mode));
+ }
diff --git a/gcc-7/files/0029-Use-the-illumos-libc-SSP-implementation-for-fstack-p.patch b/gcc-7/files/0029-Use-the-illumos-libc-SSP-implementation-for-fstack-p.patch
new file mode 100644
index 0000000..5a7c8fd
--- /dev/null
+++ b/gcc-7/files/0029-Use-the-illumos-libc-SSP-implementation-for-fstack-p.patch
@@ -0,0 +1,63 @@
+From a83e51744e99995d82bbaae2e03999a82f6aae43 Mon Sep 17 00:00:00 2001
+From: Andy Fiddaman <omnios@citrus-it.co.uk>
+Date: Wed, 4 Nov 2020 16:16:25 +0000
+Subject: Use the illumos libc SSP implementation for
+ -fstack-protector
+
+---
+ gcc/config/i386/sol2.h | 17 +++++++++++++++++
+ gcc/configure | 2 +-
+ gcc/configure.ac | 2 +-
+ 3 files changed, 19 insertions(+), 2 deletions(-)
+
+diff --git a/gcc/config/i386/sol2.h b/gcc/config/i386/sol2.h
+index 05e5e1a4949..c95e1ba3046 100644
+--- a/gcc/config/i386/sol2.h
++++ b/gcc/config/i386/sol2.h
+@@ -259,3 +259,20 @@ along with GCC; see the file COPYING3. If not see
+ #ifndef USE_GLD
+ #define USE_HIDDEN_LINKONCE 0
+ #endif
++
++/*
++ * As of 5788, the illumos libc includes support for the stack protector
++ * __stack_chk_fail() function and for the __stack_chk_guard variable.
++ * That means that, for most cases, no extra objects need to be linked in
++ * when compiling with one of the -fstack-protector options.
++ * However, for 32-bit PIC/PIE objects, the gcc stack protector emits a
++ * function call to __stack_chk_fail_local(); this symbol is provided in
++ * illumos via the libssp_ns.a object. The spec below includes this in the
++ * link when appropriate.
++ */
++#if defined(TARGET_LIBC_PROVIDES_SSP)
++#define LINK_SSP_SPEC "%{fstack-protector|fstack-protector-all|" \
++ "fstack-protector-strong|fstack-protector-explicit:" \
++ DEF_ARCH32_SPEC("-lssp_ns") \
++ "}"
++#endif
+diff --git a/gcc/configure b/gcc/configure
+index 15d0d5de891..0c5febd3883 100755
+--- a/gcc/configure
++++ b/gcc/configure
+@@ -28996,7 +28996,7 @@ fi
+ # realistically usable GNU/Hurd configurations.
+ # All supported versions of musl provide it as well
+ gcc_cv_libc_provides_ssp=yes;;
+- *-*-darwin* | *-*-freebsd* | *-*-netbsd*)
++ *-*-darwin* | *-*-freebsd* | *-*-netbsd* | *-*-solaris2*)
+ ac_fn_cxx_check_func "$LINENO" "__stack_chk_fail" "ac_cv_func___stack_chk_fail"
+ if test "x$ac_cv_func___stack_chk_fail" = x""yes; then :
+ gcc_cv_libc_provides_ssp=yes
+diff --git a/gcc/configure.ac b/gcc/configure.ac
+index a11c1a0bebb..3833ccb2499 100644
+--- a/gcc/configure.ac
++++ b/gcc/configure.ac
+@@ -5760,7 +5760,7 @@ AC_CACHE_CHECK(__stack_chk_fail in target C library,
+ # realistically usable GNU/Hurd configurations.
+ # All supported versions of musl provide it as well
+ gcc_cv_libc_provides_ssp=yes;;
+- *-*-darwin* | *-*-freebsd* | *-*-netbsd*)
++ *-*-darwin* | *-*-freebsd* | *-*-netbsd* | *-*-solaris2*)
+ AC_CHECK_FUNC(__stack_chk_fail,[gcc_cv_libc_provides_ssp=yes],
+ [echo "no __stack_chk_fail on this target"])
+ ;;
diff --git a/gcc-7/files/0030-Add-__illumos__-preprocessor-definition.patch b/gcc-7/files/0030-Add-__illumos__-preprocessor-definition.patch
new file mode 100644
index 0000000..87b475a
--- /dev/null
+++ b/gcc-7/files/0030-Add-__illumos__-preprocessor-definition.patch
@@ -0,0 +1,21 @@
+From 5e989249376716b0257a4ca8532c261e09aee2cc Mon Sep 17 00:00:00 2001
+From: Andy Fiddaman <omnios@citrus-it.co.uk>
+Date: Wed, 28 Apr 2021 11:40:25 +0000
+Subject: Add __illumos__ preprocessor definition
+
+---
+ gcc/config/sol2.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/gcc/config/sol2.h b/gcc/config/sol2.h
+index d48e89c4fb0..74e429619b2 100644
+--- a/gcc/config/sol2.h
++++ b/gcc/config/sol2.h
+@@ -85,6 +85,7 @@ along with GCC; see the file COPYING3. If not see
+ do { \
+ builtin_define_std ("unix"); \
+ builtin_define_std ("sun"); \
++ builtin_define ("__illumos__"); \
+ builtin_define ("__svr4__"); \
+ builtin_define ("__SVR4"); \
+ builtin_assert ("system=unix"); \
diff --git a/gcc-7/files/1000-ld-flags.patch b/gcc-7/files/1000-ld-flags.patch
new file mode 100644
index 0000000..fcdde42
--- /dev/null
+++ b/gcc-7/files/1000-ld-flags.patch
@@ -0,0 +1,24 @@
+--- ./gcc/config/sol2.h.orig 2016-05-08 21:13:10.810423614 +0200
++++ ./gcc/config/sol2.h 2016-05-08 21:16:55.681535743 +0200
+@@ -195,8 +195,8 @@
+ "%{G:-G} \
+ %{YP,*} \
+ %{R*} \
+- %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp%R/lib:%R/usr/lib} \
+- %{!p:%{!pg:-Y P,%R/lib:%R/usr/lib}}}"
++ %{!YP,*:%{p|pg:-Y P,%R/usr/gcc/7/lib:%R/lib:%R/usr/lib -R %R/usr/gcc/7/lib -L %R/usr/gcc/7/lib} \
++ %{!p:%{!pg:-Y P,%R/usr/gcc/7/lib:%R/lib:%R/usr/lib -R %R/usr/gcc/7/lib -L %R/usr/gcc/7/lib}}}"
+
+ #undef LINK_ARCH32_SPEC
+ #define LINK_ARCH32_SPEC LINK_ARCH32_SPEC_BASE
+@@ -208,8 +208,8 @@
+ "%{G:-G} \
+ %{YP,*} \
+ %{R*} \
+- %{!YP,*:%{p|pg:-Y P,%R/usr/lib/libp/" ARCH64_SUBDIR ":%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR "} \
+- %{!p:%{!pg:-Y P,%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR "}}}"
++ %{!YP,*:%{p|pg:-Y P,%R/usr/gcc/7/lib/" ARCH64_SUBDIR ":%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR " -R %R/usr/gcc/7/lib/" ARCH64_SUBDIR " -L %R/usr/gcc/7/lib/" ARCH64_SUBDIR "} \
++ %{!p:%{!pg:-Y P,%R/usr/gcc/7/lib/" ARCH64_SUBDIR ":%R/lib/" ARCH64_SUBDIR ":%R/usr/lib/" ARCH64_SUBDIR " -R %R/usr/gcc/7/lib/" ARCH64_SUBDIR " -L %R/usr/gcc/7/lib/" ARCH64_SUBDIR "}}}"
+
+ #undef LINK_ARCH64_SPEC
+ #ifndef USE_GLD
diff --git a/gcc-7/files/1001-values.patch b/gcc-7/files/1001-values.patch
new file mode 100644
index 0000000..e5c7f51
--- /dev/null
+++ b/gcc-7/files/1001-values.patch
@@ -0,0 +1,18 @@
+--- gcc-gcc-7.5.0-oi-0/gcc/config/sol2.h.orig 2020-02-04 12:55:26.262614508 +0000
++++ gcc-gcc-7.5.0-oi-0/gcc/config/sol2.h 2020-02-04 13:26:28.398583069 +0000
+@@ -173,9 +173,13 @@
+ std=c11|std=gnu11:values-Xc.o%s values-xpg6.o%s; \
+ std=c99|std=gnu99:values-Xc.o%s values-xpg6.o%s; \
+ std=c9x|std=gnu9x:values-Xc.o%s values-xpg6.o%s; \
+- std=c++0x|std=gnu++0x:values-Xc.o%s; \
+- std=c++11|std=gnu++11:values-Xc.o%s; \
++ std=c++98|std=gnu++98:values-Xc.o%s; \
+ std=c++03|std=gnu++03:values-Xc.o%s; \
++ std=c++0x|std=gnu++0x:values-Xc.o%s values-xpg6.o%s; \
++ std=c++11|std=gnu++11:values-Xc.o%s values-xpg6.o%s; \
++ std=c++1y|std=gnu++1y:values-Xc.o%s values-xpg6.o%s; \
++ std=c++14|std=gnu++14:values-Xc.o%s values-xpg6.o%s; \
++ std=c++1z|std=gnu++1z:values-Xc.o%s values-xpg6.o%s; \
+ :values-Xa.o%s}"
+
+
diff --git a/gcc-7/files/1003-gmp_asm.patch b/gcc-7/files/1003-gmp_asm.patch
new file mode 100644
index 0000000..ff4b9e8
--- /dev/null
+++ b/gcc-7/files/1003-gmp_asm.patch
@@ -0,0 +1,726 @@
+--- gcc-gcc-7.5.0-oi-0/configure.orig 2019-12-15 20:10:16.000000000 +0000
++++ gcc-gcc-7.5.0-oi-0/configure 2021-02-23 09:19:55.406660423 +0000
+@@ -703,6 +703,7 @@
+ target_alias
+ host_alias
+ build_alias
++gmp_alias
+ LIBS
+ ECHO_T
+ ECHO_N
+@@ -4577,6 +4578,16 @@
+ fi
+ ac_test_CFLAGS=${CFLAGS+set}
+ ac_save_CFLAGS=$CFLAGS
++# set --host/--target GMP configure flags, to use ASM code in gmp subdirs.
++case "${target}" in
++ *-*-solaris2.11) mycpu=`uname -p`
++ if [ "$mycpu" = "sparc" ]; then
++ gmp_alias=ultrasparc2-sun-solaris2.11
++ else
++ gmp_alias=i386-sun-solaris2.11
++ fi
++ ;;
++esac
+ { $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5
+ $as_echo_n "checking whether $CC accepts -g... " >&6; }
+ if test "${ac_cv_prog_cc_g+set}" = set; then :
+--- gcc-gcc-7.5.0-oi-0/Makefile.in.orig 2019-12-15 20:10:16.000000000 +0000
++++ gcc-gcc-7.5.0-oi-0/Makefile.in 2021-02-23 09:21:05.138146075 +0000
+@@ -2410,7 +2410,6 @@
+
+ .PHONY: check-target
+ check-target: \
+- maybe-check-target-libstdc++-v3 \
+ maybe-check-target-libsanitizer \
+ maybe-check-target-libmpx \
+ maybe-check-target-libvtv \
+@@ -12016,8 +12015,8 @@
+ $(SHELL) \
+ $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} --disable-shared LEX="touch lex.yy.c" \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ --target=@gmp_alias@ \
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c" \
+ || exit 1
+ @endif gmp
+
+@@ -12049,11 +12048,9 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- \
+- $(STAGE1_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ $(STAGE1_CONFIGURE_FLAGS) \
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stage2-gmp maybe-configure-stage2-gmp
+@@ -12083,11 +12080,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE2_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stage3-gmp maybe-configure-stage3-gmp
+@@ -12117,11 +12113,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE3_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stage4-gmp maybe-configure-stage4-gmp
+@@ -12151,11 +12146,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGE4_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stageprofile-gmp maybe-configure-stageprofile-gmp
+@@ -12185,11 +12179,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEprofile_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stagefeedback-gmp maybe-configure-stagefeedback-gmp
+@@ -12219,11 +12212,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEfeedback_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stageautoprofile-gmp maybe-configure-stageautoprofile-gmp
+@@ -12253,11 +12245,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEautoprofile_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+ .PHONY: configure-stageautofeedback-gmp maybe-configure-stageautofeedback-gmp
+@@ -12287,11 +12278,10 @@
+ module_srcdir=gmp; \
+ $(SHELL) $$s/$$module_srcdir/configure \
+ --srcdir=$${topdir}/$$module_srcdir \
+- $(HOST_CONFIGARGS) --build=${build_alias} --host=none-${host_vendor}-${host_os} \
+- --target=none-${host_vendor}-${host_os} \
+- --with-build-libsubdir=$(HOST_SUBDIR) \
++ $(HOST_CONFIGARGS) --build=@gmp_alias@ --host=@gmp_alias@ \
++ --target=@gmp_alias@ --with-build-libsubdir=$(HOST_SUBDIR) \
+ $(STAGEautofeedback_CONFIGURE_FLAGS) \
+- --disable-shared LEX="touch lex.yy.c"
++ --disable-shared ABI=32 NM="/usr/bin/nm -p" LEX="touch lex.yy.c"
+ @endif gmp-bootstrap
+
+
+@@ -12311,7 +12301,7 @@
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ $(TARGET-gmp))
+ @endif gmp
+
+@@ -12341,7 +12331,7 @@
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) \
+- $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE1_TFLAGS)" \
+ $(TARGET-stage1-gmp)
+
+@@ -12356,7 +12346,7 @@
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) \
+- $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12384,7 +12374,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE2_TFLAGS)" \
+ $(TARGET-stage2-gmp)
+
+@@ -12398,7 +12388,7 @@
+ $(MAKE) stage2-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12426,7 +12416,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE3_TFLAGS)" \
+ $(TARGET-stage3-gmp)
+
+@@ -12440,7 +12430,7 @@
+ $(MAKE) stage3-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12468,7 +12458,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE4_TFLAGS)" \
+ $(TARGET-stage4-gmp)
+
+@@ -12482,7 +12472,7 @@
+ $(MAKE) stage4-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12510,7 +12500,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEprofile_TFLAGS)" \
+ $(TARGET-stageprofile-gmp)
+
+@@ -12524,7 +12514,7 @@
+ $(MAKE) stageprofile-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12552,7 +12542,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEfeedback_TFLAGS)" \
+ $(TARGET-stagefeedback-gmp)
+
+@@ -12566,7 +12556,7 @@
+ $(MAKE) stagefeedback-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12594,7 +12584,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEautoprofile_TFLAGS)" \
+ $(TARGET-stageautoprofile-gmp)
+
+@@ -12608,7 +12598,7 @@
+ $(MAKE) stageautoprofile-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12636,7 +12626,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEautofeedback_TFLAGS)" PERF_DATA=perf.data \
+ $(TARGET-stageautofeedback-gmp)
+
+@@ -12650,7 +12640,7 @@
+ $(MAKE) stageautofeedback-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif gmp-bootstrap
+
+
+@@ -12668,7 +12658,7 @@
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) $(EXTRA_HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/gmp && \
+- $(MAKE) $(FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" $(EXTRA_BOOTSTRAP_FLAGS) check)
++ $(MAKE) $(FLAGS_TO_PASS) AM_CFLAGS="" $(EXTRA_BOOTSTRAP_FLAGS) check)
+
+ @endif gmp
+
+@@ -12703,7 +12693,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing info in gmp"; \
+@@ -12728,7 +12718,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing dvi in gmp"; \
+@@ -12753,7 +12743,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing pdf in gmp"; \
+@@ -12778,7 +12768,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing html in gmp"; \
+@@ -12803,7 +12793,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing TAGS in gmp"; \
+@@ -12829,7 +12819,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-info in gmp"; \
+@@ -12855,7 +12845,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-pdf in gmp"; \
+@@ -12881,7 +12871,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-html in gmp"; \
+@@ -12906,7 +12896,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing installcheck in gmp"; \
+@@ -12930,7 +12920,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing mostlyclean in gmp"; \
+@@ -12954,7 +12944,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing clean in gmp"; \
+@@ -12978,7 +12968,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing distclean in gmp"; \
+@@ -13002,7 +12992,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing maintainer-clean in gmp"; \
+@@ -13337,7 +13327,7 @@
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(MAKE) $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS) $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ $(TARGET-mpfr))
+ @endif mpfr
+
+@@ -13367,7 +13357,7 @@
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+ $(EXTRA_HOST_FLAGS) \
+- $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE1_TFLAGS)" \
+ $(TARGET-stage1-mpfr)
+
+@@ -13382,7 +13372,7 @@
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+ $(MAKE) $(EXTRA_HOST_FLAGS) \
+- $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(STAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13410,7 +13400,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE2_TFLAGS)" \
+ $(TARGET-stage2-mpfr)
+
+@@ -13424,7 +13414,7 @@
+ $(MAKE) stage2-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13452,7 +13442,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE3_TFLAGS)" \
+ $(TARGET-stage3-mpfr)
+
+@@ -13466,7 +13456,7 @@
+ $(MAKE) stage3-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13494,7 +13484,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGE4_TFLAGS)" \
+ $(TARGET-stage4-mpfr)
+
+@@ -13508,7 +13498,7 @@
+ $(MAKE) stage4-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13536,7 +13526,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEprofile_TFLAGS)" \
+ $(TARGET-stageprofile-mpfr)
+
+@@ -13550,7 +13540,7 @@
+ $(MAKE) stageprofile-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13578,7 +13568,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEfeedback_TFLAGS)" \
+ $(TARGET-stagefeedback-mpfr)
+
+@@ -13592,7 +13582,7 @@
+ $(MAKE) stagefeedback-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13620,7 +13610,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEautoprofile_TFLAGS)" \
+ $(TARGET-stageautoprofile-mpfr)
+
+@@ -13634,7 +13624,7 @@
+ $(MAKE) stageautoprofile-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13662,7 +13652,7 @@
+ CFLAGS_FOR_TARGET="$(CFLAGS_FOR_TARGET)" \
+ CXXFLAGS_FOR_TARGET="$(CXXFLAGS_FOR_TARGET)" \
+ LIBCFLAGS_FOR_TARGET="$(LIBCFLAGS_FOR_TARGET)" \
+- $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" \
++ $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" \
+ TFLAGS="$(STAGEautofeedback_TFLAGS)" PERF_DATA=perf.data \
+ $(TARGET-stageautofeedback-mpfr)
+
+@@ -13676,7 +13666,7 @@
+ $(MAKE) stageautofeedback-start; \
+ fi; \
+ cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" clean
++ $(MAKE) $(EXTRA_HOST_FLAGS) $(POSTSTAGE1_FLAGS_TO_PASS) AM_CFLAGS="" clean
+ @endif mpfr-bootstrap
+
+
+@@ -13694,7 +13684,7 @@
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) $(EXTRA_HOST_EXPORTS) \
+ (cd $(HOST_SUBDIR)/mpfr && \
+- $(MAKE) $(FLAGS_TO_PASS) AM_CFLAGS="-DNO_ASM" $(EXTRA_BOOTSTRAP_FLAGS) check)
++ $(MAKE) $(FLAGS_TO_PASS) AM_CFLAGS="" $(EXTRA_BOOTSTRAP_FLAGS) check)
+
+ @endif mpfr
+
+@@ -13729,7 +13719,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing info in mpfr"; \
+@@ -13754,7 +13744,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing dvi in mpfr"; \
+@@ -13779,7 +13769,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing pdf in mpfr"; \
+@@ -13804,7 +13794,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing html in mpfr"; \
+@@ -13829,7 +13819,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing TAGS in mpfr"; \
+@@ -13855,7 +13845,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-info in mpfr"; \
+@@ -13881,7 +13871,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-pdf in mpfr"; \
+@@ -13907,7 +13897,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing install-html in mpfr"; \
+@@ -13932,7 +13922,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing installcheck in mpfr"; \
+@@ -13956,7 +13946,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing mostlyclean in mpfr"; \
+@@ -13980,7 +13970,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing clean in mpfr"; \
+@@ -14004,7 +13994,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing distclean in mpfr"; \
+@@ -14028,7 +14018,7 @@
+ r=`${PWD_COMMAND}`; export r; \
+ s=`cd $(srcdir); ${PWD_COMMAND}`; export s; \
+ $(HOST_EXPORTS) \
+- for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS="-DNO_ASM"; do \
++ for flag in $(EXTRA_HOST_FLAGS) AM_CFLAGS=""; do \
+ eval `echo "$$flag" | sed -e "s|^\([^=]*\)=\(.*\)|\1='\2'; export \1|"`; \
+ done; \
+ echo "Doing maintainer-clean in mpfr"; \
diff --git a/gcc-7/files/1004-cpu-flags.patch b/gcc-7/files/1004-cpu-flags.patch
new file mode 100644
index 0000000..05073d7
--- /dev/null
+++ b/gcc-7/files/1004-cpu-flags.patch
@@ -0,0 +1,55 @@
+--- gcc-gcc-7.5.0-oi-0/configure.orig 2021-02-23 09:42:49.269846701 +0000
++++ gcc-gcc-7.5.0-oi-0/configure 2021-02-23 09:44:57.981792282 +0000
+@@ -704,6 +704,7 @@
+ host_alias
+ build_alias
+ gmp_alias
++CPU_FLAGS
+ LIBS
+ ECHO_T
+ ECHO_N
+@@ -4579,12 +4580,15 @@
+ ac_test_CFLAGS=${CFLAGS+set}
+ ac_save_CFLAGS=$CFLAGS
+ # set --host/--target GMP configure flags, to use ASM code in gmp subdirs.
++# add CPU_FLAGS to speedup gcc.
+ case "${target}" in
+ *-*-solaris2.11) mycpu=`uname -p`
+ if [ "$mycpu" = "sparc" ]; then
+ gmp_alias=ultrasparc2-sun-solaris2.11
++ CPU_FLAGS="-mcpu=ultrasparc"
+ else
+ gmp_alias=i386-sun-solaris2.11
++ CPU_FLAGS="-mtune=generic"
+ fi
+ ;;
+ esac
+@@ -6715,7 +6719,7 @@
+ if test "x${is_cross_compiler}" = xyes; then
+ CFLAGS_FOR_TARGET="-g -O2"
+ else
+- CFLAGS_FOR_TARGET=$CFLAGS
++ CFLAGS_FOR_TARGET="$CFLAGS $CPU_FLAGS"
+ case " $CFLAGS " in
+ *" -O2 "*) ;;
+ *) CFLAGS_FOR_TARGET="-O2 $CFLAGS_FOR_TARGET" ;;
+@@ -6732,7 +6736,7 @@
+ if test "x${is_cross_compiler}" = xyes; then
+ CXXFLAGS_FOR_TARGET="-g -O2"
+ else
+- CXXFLAGS_FOR_TARGET=$CXXFLAGS
++ CXXFLAGS_FOR_TARGET="$CXXFLAGS $CPU_FLAGS"
+ case " $CXXFLAGS " in
+ *" -O2 "*) ;;
+ *) CXXFLAGS_FOR_TARGET="-O2 $CXXFLAGS_FOR_TARGET" ;;
+--- gcc-gcc-7.5.0-oi-0/Makefile.in.orig 2021-02-23 09:42:49.283116813 +0000
++++ gcc-gcc-7.5.0-oi-0/Makefile.in 2021-02-23 09:45:14.095253002 +0000
+@@ -356,7 +356,7 @@
+
+ # Flags to pass to stage2 and later makes. They are defined
+ # here so that they can be overridden by Makefile fragments.
+-BOOT_CFLAGS= -g -O2
++BOOT_CFLAGS= -g -O2 @CPU_FLAGS@
+ BOOT_LDFLAGS=
+ BOOT_ADAFLAGS= -gnatpg
+
diff --git a/gcc-7/files/1005-strip.patch b/gcc-7/files/1005-strip.patch
new file mode 100644
index 0000000..efc6e3e
--- /dev/null
+++ b/gcc-7/files/1005-strip.patch
@@ -0,0 +1,13 @@
+Make sure the right strip is used regardless of the environment.
+
+--- gcc-gcc-7.5.0-oi-0/install-sh.orig 2021-08-17 16:01:03.765264739 +0000
++++ gcc-gcc-7.5.0-oi-0/install-sh 2021-08-17 15:59:20.045587895 +0000
+@@ -62,7 +62,7 @@
+ mkdirprog=${MKDIRPROG-mkdir}
+ mvprog=${MVPROG-mv}
+ rmprog=${RMPROG-rm}
+-stripprog=${STRIPPROG-strip}
++stripprog="/usr/bin/strip -x"
+
+ posix_mkdir=
+
diff --git a/gcc-7-il/sources b/gcc-7/sources
index b05220c..234b783 100644
--- a/gcc-7-il/sources
+++ b/gcc-7/sources
@@ -2,3 +2,4 @@ https://github.com/illumos/gcc/archive/refs/tags/gcc-7.5.0-il-1.tar.gz $/gcc
https://gmplib.org/download/gmp/gmp-6.2.1.tar.xz $/gcc/gmp
https://www.mpfr.org/mpfr-current/mpfr-4.2.0.tar.xz $/gcc/mpfr
https://ftp.gnu.org/gnu/mpc/mpc-1.3.1.tar.gz $/gcc/mpc
+files/ $/gcc
diff --git a/gcc-7-il/version b/gcc-7/version
index b908cb5..b908cb5 100644
--- a/gcc-7-il/version
+++ b/gcc-7/version