On Wed, Sep 09, 2020 at 11:42:27AM -0700, j...@bitminer.ca wrote: > As recommended by Brad, I've updated the fixes > for all necessary platforms so that -static > works. > > Some platforms already had something like this so this > set of patches is for a subset of all platforms. > > Only tested on amd64. > > John
I had a similar diff as to yours. I also added keeping the PowerPC config in sync which I noticed had not been kept in sync with the rest. I was just waiting for George to do some testing on PowerPC. Index: Makefile =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/Makefile,v retrieving revision 1.34 diff -u -p -u -p -r1.34 Makefile --- Makefile 4 Sep 2020 09:55:34 -0000 1.34 +++ Makefile 13 Sep 2020 00:55:40 -0000 @@ -18,6 +18,7 @@ DPB_PROPERTIES = parallel V = 8.4.0 FULL_VERSION = $V FULL_PKGVERSION = $V +REVISION = 0 ADASTRAP-amd64 = adastrap-amd64-8.3.0-2.tar.xz ADASTRAP-arm = adastrap-arm-4.9.4-0.tar.xz Index: patches/patch-gcc_config_aarch64_openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_aarch64_openbsd_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_aarch64_openbsd_h --- patches/patch-gcc_config_aarch64_openbsd_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_aarch64_openbsd_h 4 Sep 2020 20:18:32 -0000 @@ -57,7 +57,7 @@ Index: gcc/config/aarch64/openbsd.h + %{!static:-Bdynamic} \ + %{rdynamic:-export-dynamic} \ + %{assert*} \ -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}} \ ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}} \ + -L/usr/lib" + +#define OPENBSD_ENTRY_POINT "__start" Index: patches/patch-gcc_config_alpha_openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_alpha_openbsd_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_alpha_openbsd_h --- patches/patch-gcc_config_alpha_openbsd_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_alpha_openbsd_h 13 Sep 2020 00:52:52 -0000 @@ -17,7 +17,7 @@ Index: gcc/config/alpha/openbsd.h + %{!static:-Bdynamic} \ + %{rdynamic:-export-dynamic} \ + %{assert*} \ -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}" ++ %{!shared:%{!static:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}}" + +/* As an elf system, we need crtbegin/crtend stuff. */ +#undef STARTFILE_SPEC Index: patches/patch-gcc_config_arm_openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_arm_openbsd_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_arm_openbsd_h --- patches/patch-gcc_config_arm_openbsd_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_arm_openbsd_h 4 Sep 2020 20:18:32 -0000 @@ -82,7 +82,7 @@ Index: gcc/config/arm/openbsd.h + %{!static:-Bdynamic} \ + %{rdynamic:-export-dynamic} \ + %{assert*} \ -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}} \ ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}} \ + %{!nostdlib:-L/usr/lib}" +#endif + Index: patches/patch-gcc_config_i386_openbsdelf_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_i386_openbsdelf_h,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-gcc_config_i386_openbsdelf_h --- patches/patch-gcc_config_i386_openbsdelf_h 8 Aug 2020 16:48:48 -0000 1.3 +++ patches/patch-gcc_config_i386_openbsdelf_h 9 Sep 2020 22:21:06 -0000 @@ -3,26 +3,28 @@ $OpenBSD: patch-gcc_config_i386_openbsde Index: gcc/config/i386/openbsdelf.h --- gcc/config/i386/openbsdelf.h.orig +++ gcc/config/i386/openbsdelf.h -@@ -97,14 +97,18 @@ along with GCC; see the file COPYING3. If not see +@@ -97,16 +97,20 @@ along with GCC; see the file COPYING3. If not see %{shared:-shared} %{R*} \ %{static:-Bstatic} \ %{!static:-Bdynamic} \ + %{rdynamic:-export-dynamic} \ %{assert*} \ - -dynamic-linker /usr/libexec/ld.so" -+ %{!shared:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}} \ ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}} \ + -L/usr/lib" #undef STARTFILE_SPEC --#define STARTFILE_SPEC "\ + #define STARTFILE_SPEC "\ - %{!shared: %{pg:gcrt0%O%s} %{!pg:%{p:gcrt0%O%s} %{!p:crt0%O%s}} \ - crtbegin%O%s} %{shared:crtbeginS%O%s}" - -+#define SUBTARGET32_DEFAULT_CPU "i586" -+#define STARTFILE_SPEC "\ +- + %{!shared: %{pg:gcrt0%O%s} %{!pg:%{p:gcrt0%O%s} \ + %{!p:%{!static:crt0%O%s} %{static:%{nopie:crt0%O%s} \ + %{!nopie:rcrt0%O%s}}}} crtbegin%O%s} %{shared:crtbeginS%O%s}" #undef ENDFILE_SPEC #define ENDFILE_SPEC "%{!shared:crtend%O%s} %{shared:crtendS%O%s}" ++ ++#define SUBTARGET32_DEFAULT_CPU "i586" + + #define OBSD_HAS_CORRECT_SPECS Index: patches/patch-gcc_config_mips_openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_mips_openbsd_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_mips_openbsd_h --- patches/patch-gcc_config_mips_openbsd_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_mips_openbsd_h 4 Sep 2020 20:18:32 -0000 @@ -142,7 +142,7 @@ Index: gcc/config/mips/openbsd.h + %{!static:-Bdynamic} \ + %{rdynamic:-export-dynamic} \ + %{assert*} \ -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}" ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}}" + +/* As an elf system, we need crtbegin/crtend stuff. */ +#undef STARTFILE_SPEC Index: patches/patch-gcc_config_pa_pa-openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_pa_pa-openbsd_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_pa_pa-openbsd_h --- patches/patch-gcc_config_pa_pa-openbsd_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_pa_pa-openbsd_h 9 Sep 2020 22:21:06 -0000 @@ -9,7 +9,7 @@ Index: gcc/config/pa/pa-openbsd.h + %{rdynamic:-export-dynamic} \ %{assert*} \ - -dynamic-linker /usr/libexec/ld.so" -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}" ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}}" #undef STARTFILE_SPEC #define STARTFILE_SPEC "\ Index: patches/patch-gcc_config_rs6000_openbsd_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_rs6000_openbsd_h,v retrieving revision 1.1.1.1 diff -u -p -u -p -r1.1.1.1 patch-gcc_config_rs6000_openbsd_h --- patches/patch-gcc_config_rs6000_openbsd_h 4 Jan 2019 15:50:39 -0000 1.1.1.1 +++ patches/patch-gcc_config_rs6000_openbsd_h 6 Sep 2020 03:04:37 -0000 @@ -1,7 +1,8 @@ $OpenBSD: patch-gcc_config_rs6000_openbsd_h,v 1.1.1.1 2019/01/04 15:50:39 pascal Exp $ ---- gcc/config/rs6000/openbsd.h.orig Fri Nov 15 12:47:25 2013 -+++ gcc/config/rs6000/openbsd.h Fri Nov 15 12:49:07 2013 -@@ -0,0 +1,129 @@ +Index: gcc/config/rs6000/openbsd.h +--- gcc/config/rs6000/openbsd.h.orig ++++ gcc/config/rs6000/openbsd.h +@@ -0,0 +1,131 @@ +/* Configuration file for an rs6000 OpenBSD target. + Copyright (C) 1999 Free Software Foundation, Inc. + @@ -63,12 +64,14 @@ $OpenBSD: patch-gcc_config_rs6000_openbs +#define CPP_OS_DEFAULT_SPEC "%(cpp_os_openbsd)" + +#undef LINK_SPEC -+#define LINK_SPEC "%{shared:-shared} \ -+ %{!shared: \ -+ %{!static: \ -+ %{rdynamic:-export-dynamic} \ -+ %{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}} \ -+ %{static:-static}}" ++#define LINK_SPEC \ ++ "%{!shared:%{!nostdlib:%{!r:%{!e*:-e __start}}}} \ ++ %{shared:-shared} %{R*} \ ++ %{static:-Bstatic} \ ++ %{!static:-Bdynamic} \ ++ %{rdynamic:-export-dynamic} \ ++ %{assert*} \ ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}}" + +#undef LIB_DEFAULT_SPEC +#define LIB_DEFAULT_SPEC "%(lib_openbsd)" Index: patches/patch-gcc_config_sparc_openbsd64_h =================================================================== RCS file: /home/cvs/ports/lang/gcc/8/patches/patch-gcc_config_sparc_openbsd64_h,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-gcc_config_sparc_openbsd64_h --- patches/patch-gcc_config_sparc_openbsd64_h 20 May 2019 14:59:05 -0000 1.2 +++ patches/patch-gcc_config_sparc_openbsd64_h 9 Sep 2020 22:21:06 -0000 @@ -68,7 +68,7 @@ Index: gcc/config/sparc/openbsd64.h + %{rdynamic:-export-dynamic} \ %{assert*} \ - -dynamic-linker /usr/libexec/ld.so" -+ %{!shared:%{!dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}" ++ %{!shared:%{!static:%{!-dynamic-linker:-dynamic-linker /usr/libexec/ld.so}}}" /* As an elf system, we need crtbegin/crtend stuff. */ #undef STARTFILE_SPEC