Fix gfortran, patch from 7.3.0 hadn't been applied.

This commit is contained in:
Jessica Hamilton
2019-07-13 16:43:49 +00:00
parent 7d5fb873b7
commit c0c6618cf8
2 changed files with 61 additions and 116 deletions

View File

@@ -5,7 +5,7 @@ HOMEPAGE="https://gcc.gnu.org/"
COPYRIGHT="1988-2019 Free Software Foundation, Inc."
LICENSE="GNU GPL v3
GNU LGPL v3"
REVISION="2"
REVISION="3"
gccVersion="${portVersion%%_*}"
SOURCE_URI="https://ftpmirror.gnu.org/gcc/gcc-$gccVersion/gcc-$gccVersion.tar.xz
https://ftp.gnu.org/gnu/gcc/gcc-$gccVersion/gcc-$gccVersion.tar.xz"

View File

@@ -1,74 +1,8 @@
From 45b750bafb91b055cc5284ef5d5780e6a1194af9 Mon Sep 17 00:00:00 2001
From 5aaa98e8cfcbf1a1a103556ab6e6906229d5f7de Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= <jerome.duval@gmail.com>
Date: Sun, 19 Jul 2015 18:55:34 +0200
Subject: Haiku patch
---
compile | 0
config.rpath | 2 +
config/acx.m4 | 36 +--
configure.ac | 14 +-
gcc/Makefile.in | 12 +-
gcc/config.gcc | 48 ++++
gcc/config.host | 8 +-
gcc/config/arm/haiku.h | 80 ++++++
gcc/config/arm/t-haiku | 21 ++
gcc/config/haiku-stdint.h | 55 +++++
gcc/config/haiku.h | 214 ++++++++++++++++
gcc/config/i386/haiku.h | 77 ++++++
gcc/config/i386/haiku64.h | 135 +++++++++++
gcc/config/i386/host-cygwin.c | 0
gcc/config/i386/t-haiku64 | 16 ++
gcc/config/i386/winnt-cxx.c | 0
gcc/config/i386/winnt-stubs.c | 0
gcc/config/m68k/haiku.h | 268 +++++++++++++++++++++
gcc/config/mips/haiku.h | 44 ++++
gcc/config/rs6000/haiku.h | 56 +++++
gcc/config/t-haiku | 4 +
gcc/configure.ac | 21 +-
gcc/ginclude/stdarg.h | 2 +-
gcc/ginclude/stddef.h | 10 +-
include/filenames.h | 2 +
libatomic/configure.ac | 24 +-
libatomic/configure.tgt | 2 +-
libgcc/Makefile.in | 6 +
libgcc/config.host | 26 ++
libgcc/config/i386/t-cygming | 0
libgcc/config/t-haiku | 3 +
libgcc/crtstuff.c | 2 +
libgomp/configure.ac | 16 +-
libstdc++-v3/config/os/haiku/ctype_base.h | 61 +++++
.../config/os/haiku/ctype_configure_char.cc | 99 ++++++++
libstdc++-v3/config/os/haiku/ctype_inline.h | 173 +++++++++++++
libstdc++-v3/config/os/haiku/error_constants.h | 178 ++++++++++++++
libstdc++-v3/config/os/haiku/os_defines.h | 45 ++++
libstdc++-v3/configure.host | 3 +
libstdc++-v3/crossconfig.m4 | 40 +++
libstdc++-v3/libsupc++/tinfo.cc | 9 +
libtool.m4 | 14 +-
42 files changed, 1775 insertions(+), 51 deletions(-)
mode change 100755 => 100644 compile
create mode 100644 gcc/config/arm/haiku.h
create mode 100644 gcc/config/arm/t-haiku
create mode 100644 gcc/config/haiku-stdint.h
create mode 100644 gcc/config/haiku.h
create mode 100644 gcc/config/i386/haiku.h
create mode 100644 gcc/config/i386/haiku64.h
mode change 100644 => 100755 gcc/config/i386/host-cygwin.c
create mode 100644 gcc/config/i386/t-haiku64
mode change 100644 => 100755 gcc/config/i386/winnt-cxx.c
mode change 100644 => 100755 gcc/config/i386/winnt-stubs.c
create mode 100644 gcc/config/m68k/haiku.h
create mode 100644 gcc/config/mips/haiku.h
create mode 100644 gcc/config/rs6000/haiku.h
create mode 100644 gcc/config/t-haiku
mode change 100644 => 100755 libgcc/config/i386/t-cygming
create mode 100644 libgcc/config/t-haiku
create mode 100644 libstdc++-v3/config/os/haiku/ctype_base.h
create mode 100644 libstdc++-v3/config/os/haiku/ctype_configure_char.cc
create mode 100644 libstdc++-v3/config/os/haiku/ctype_inline.h
create mode 100644 libstdc++-v3/config/os/haiku/error_constants.h
create mode 100644 libstdc++-v3/config/os/haiku/os_defines.h
diff --git a/compile b/compile
old mode 100755
@@ -234,7 +168,7 @@ index 20bee04..f42df7e 100644
cppbuiltin.o: $(BASEVER)
diff --git a/gcc/config.gcc b/gcc/config.gcc
index a5defb0..1f86f57 100644
index 7af8e02..07863ce 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -747,6 +747,19 @@ case ${target} in
@@ -257,7 +191,7 @@ index a5defb0..1f86f57 100644
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
extra_options="$extra_options gnu-user.opt"
gas=yes
@@ -1128,6 +1141,16 @@ arm*-*-netbsdelf*)
@@ -1131,6 +1144,16 @@ arm*-*-netbsdelf*)
tmake_file="${tmake_file} arm/t-arm"
target_cpu_cname="arm6"
;;
@@ -274,7 +208,7 @@ index a5defb0..1f86f57 100644
arm*-*-linux-*) # ARM GNU/Linux with ELF
tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h arm/elf.h arm/linux-gas.h arm/linux-elf.h"
extra_options="${extra_options} linux-android.opt"
@@ -1520,6 +1543,14 @@ i[34567]86-*-freebsd*)
@@ -1523,6 +1546,14 @@ i[34567]86-*-freebsd*)
x86_64-*-freebsd*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${fbsd_tm_file} i386/x86-64.h i386/freebsd.h i386/freebsd64.h"
;;
@@ -289,7 +223,7 @@ index a5defb0..1f86f57 100644
i[34567]86-*-netbsdelf*)
tm_file="${tm_file} i386/unix.h i386/att.h dbxelf.h elfos.h ${nbsd_tm_file} i386/netbsd-elf.h"
extra_options="${extra_options} netbsd.opt netbsd-elf.opt"
@@ -2006,6 +2037,13 @@ m68k-*-rtems*)
@@ -2009,6 +2040,13 @@ m68k-*-rtems*)
tm_file="${tm_file} m68k/m68k-none.h m68k/m68kelf.h dbxelf.h elfos.h m68k/m68kemb.h m68k/m68020-elf.h m68k/rtemself.h rtems.h newlib-stdint.h"
tm_defines="${tm_defines} MOTOROLA=1"
;;
@@ -303,7 +237,7 @@ index a5defb0..1f86f57 100644
mcore-*-elf)
tm_file="dbxelf.h elfos.h newlib-stdint.h ${tm_file} mcore/mcore-elf.h"
tmake_file=mcore/t-mcore
@@ -2124,6 +2162,11 @@ mips*-mti-linux*)
@@ -2129,6 +2167,11 @@ mips*-mti-linux*)
gnu_ld=yes
gas=yes
;;
@@ -315,7 +249,7 @@ index a5defb0..1f86f57 100644
mips*-*-linux*) # Linux MIPS, either endian.
tm_file="dbxelf.h elfos.h gnu-user.h linux.h linux-android.h glibc-stdint.h ${tm_file} mips/gnu-user.h mips/linux.h mips/linux-common.h"
extra_options="${extra_options} linux-android.opt"
@@ -2464,6 +2507,11 @@ powerpc-*-eabi*)
@@ -2469,6 +2512,11 @@ powerpc-*-eabi*)
tmake_file="rs6000/t-fprules rs6000/t-ppcgas rs6000/t-ppccomm"
use_gcc_stdint=wrap
;;
@@ -2321,10 +2255,10 @@ index 0000000..4674f7b
+
+#endif
diff --git a/libstdc++-v3/configure.host b/libstdc++-v3/configure.host
index caea9de..00b70da 100644
index 155a3cd..a1bc55c 100644
--- a/libstdc++-v3/configure.host
+++ b/libstdc++-v3/configure.host
@@ -270,6 +270,9 @@ case "${host_os}" in
@@ -273,6 +273,9 @@ case "${host_os}" in
os_include_dir="os/gnu-linux"
fi
;;
@@ -2335,7 +2269,7 @@ index caea9de..00b70da 100644
os_include_dir="os/hpux"
;;
diff --git a/libstdc++-v3/crossconfig.m4 b/libstdc++-v3/crossconfig.m4
index fa56795..a8f1850 100644
index cb6e3af..23d4810 100644
--- a/libstdc++-v3/crossconfig.m4
+++ b/libstdc++-v3/crossconfig.m4
@@ -141,6 +141,46 @@ case "${host}" in
@@ -2466,20 +2400,14 @@ index 24d13f3..94d96d9 100644
hpux*)
--
2.16.2
2.21.0
From 229e1dff7683fd9f670de5eeb303b5e7e059282b Mon Sep 17 00:00:00 2001
From d062f95f39cb99f5b226b9602c0fae54ce23e2e5 Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Fri, 12 May 2017 23:49:00 +0200
Subject: Haiku: regenerate configure.
---
configure | 50 +++++++++++++++++--------
gcc/configure | 46 +++++++++++++++++------
libatomic/configure | 38 +++++++++++++++----
libgomp/configure | 40 ++++++++++++++------
libstdc++-v3/configure | 100 ++++++++++++++++++++++++++++++++++++++++++++-----
5 files changed, 217 insertions(+), 57 deletions(-)
diff --git a/configure b/configure
index 0601395..052505c 100755
@@ -2955,10 +2883,10 @@ index ced7606..72b692b 100755
conftest$ac_exeext conftest.$ac_ext
esac
diff --git a/libstdc++-v3/configure b/libstdc++-v3/configure
index ba094be..fec9faf 100755
index 5535bfa..55841bf 100755
--- a/libstdc++-v3/configure
+++ b/libstdc++-v3/configure
@@ -8670,8 +8670,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
@@ -8672,8 +8672,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
haiku*)
# PIC is the default for Haiku.
@@ -2967,7 +2895,7 @@ index ba094be..fec9faf 100755
;;
hpux*)
@@ -10792,8 +10790,9 @@ haiku*)
@@ -10794,8 +10792,9 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -2979,7 +2907,7 @@ index ba094be..fec9faf 100755
;;
hpux9* | hpux10* | hpux11*)
@@ -11313,7 +11312,7 @@ else
@@ -11315,7 +11314,7 @@ else
lt_cv_dlopen_libs=
case $host_os in
@@ -2988,7 +2916,7 @@ index ba094be..fec9faf 100755
lt_cv_dlopen="load_add_on"
lt_cv_dlopen_libs=
lt_cv_dlopen_self=yes
@@ -13532,7 +13531,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
@@ -13534,7 +13533,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
;;
esac
;;
@@ -2996,7 +2924,7 @@ index ba094be..fec9faf 100755
beos* | irix5* | irix6* | nonstopux* | osf3* | osf4* | osf5*)
# PIC is the default for these OSes.
;;
@@ -13554,8 +13552,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
@@ -13556,8 +13554,6 @@ $as_echo_n "checking for $compiler option to produce PIC... " >&6; }
;;
haiku*)
# PIC is the default for Haiku.
@@ -3005,7 +2933,7 @@ index ba094be..fec9faf 100755
;;
interix[3-9]*)
# Interix 3.x gcc -fpic/-fPIC options generate broken code.
@@ -14476,8 +14472,9 @@ haiku*)
@@ -14478,8 +14474,9 @@ haiku*)
soname_spec='${libname}${release}${shared_ext}$major'
shlibpath_var=LIBRARY_PATH
shlibpath_overrides_runpath=yes
@@ -3108,16 +3036,14 @@ index ba094be..fec9faf 100755
SECTION_FLAGS='-ffunction-sections -fdata-sections'
--
2.16.2
2.21.0
From 0b9acc512c979693434aa81df5097cdb1076dafc Mon Sep 17 00:00:00 2001
From e5c30fc11a9b9510fe8d6ddfdedaaadf5f3fd722 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= <jerome.duval@gmail.com>
Date: Mon, 27 Jul 2015 16:32:32 +0200
Subject: Haiku: disable -fno-PIE as this fails on x86_64.
---
gcc/Makefile.in | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/gcc/Makefile.in b/gcc/Makefile.in
index f42df7e..74d3ef4 100644
@@ -3146,16 +3072,14 @@ index f42df7e..74d3ef4 100644
# Native compiler that we use. This may be C++ some day.
COMPILER_FOR_BUILD = $(CXX_FOR_BUILD)
--
2.16.2
2.21.0
From d226e420dfda57ab533c62bf2ab97e50ef0635f2 Mon Sep 17 00:00:00 2001
From 0472e8257f7a8b3d04366287564f1f0f1fe392da Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Thu, 5 May 2016 09:03:06 +0000
Subject: fix for libstdc++/69506
---
libstdc++-v3/config/os/haiku/os_defines.h | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libstdc++-v3/config/os/haiku/os_defines.h b/libstdc++-v3/config/os/haiku/os_defines.h
index 4674f7b..02c8693 100644
@@ -3170,16 +3094,14 @@ index 4674f7b..02c8693 100644
+
#endif
--
2.16.2
2.21.0
From a635fecdf48ab04995adc10078407a18abc8eec7 Mon Sep 17 00:00:00 2001
From e073b7b2b69d3eb308bfe3af0afc01cafb15216a Mon Sep 17 00:00:00 2001
From: Jerome Duval <jerome.duval@gmail.com>
Date: Thu, 5 May 2016 15:52:08 +0000
Subject: rename x86_elf_aligned_common.
---
gcc/config/i386/haiku64.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/gcc/config/i386/haiku64.h b/gcc/config/i386/haiku64.h
index 76ba48e..e2fa55a 100644
@@ -3199,22 +3121,20 @@ index 76ba48e..e2fa55a 100644
/* i386 System V Release 4 uses DWARF debugging info.
--
2.16.2
2.21.0
From 018ff618a0eb66d597c0fd3f4b7d13c111c11578 Mon Sep 17 00:00:00 2001
From 1ad6e003adaa4f1225bab7a8e68b9a073df56d0e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zolt=C3=A1n=20Mizsei?= <zmizsei@extrowerk.com>
Date: Wed, 2 May 2018 08:37:20 +0200
Subject: Enable libstdcxx_filesystem_ts for Haiku
---
libstdc++-v3/acinclude.m4 | 3 +++
1 file changed, 3 insertions(+)
diff --git a/libstdc++-v3/acinclude.m4 b/libstdc++-v3/acinclude.m4
index 3bd669a..7cbece9 100644
index 4f37b6a..7d8fd79 100644
--- a/libstdc++-v3/acinclude.m4
+++ b/libstdc++-v3/acinclude.m4
@@ -4300,6 +4300,9 @@ AC_DEFUN([GLIBCXX_ENABLE_FILESYSTEM_TS], [
@@ -4299,6 +4299,9 @@ AC_DEFUN([GLIBCXX_ENABLE_FILESYSTEM_TS], [
solaris*)
enable_libstdcxx_filesystem_ts=yes
;;
@@ -3225,5 +3145,30 @@ index 3bd669a..7cbece9 100644
enable_libstdcxx_filesystem_ts=no
;;
--
2.16.2
2.21.0
From c49bba8701264ef5287bf4262b8056a3fbbac411 Mon Sep 17 00:00:00 2001
From: Jessica Hamilton <jessica.l.hamilton@gmail.com>
Date: Fri, 12 Jul 2019 18:17:00 +0000
Subject: gcc: fix build configuration for libgcc.
* libgcc_s.so now depends on libgcc.a for __cpu_model and friends,
which is needed for gfortran to produce working binaries.
diff --git a/libgcc/config.host b/libgcc/config.host
index 26d080a..bdc2b1c 100644
--- a/libgcc/config.host
+++ b/libgcc/config.host
@@ -240,7 +240,7 @@ case ${host} in
# machine-specific sections may refine and add to this
# configuration.
tmake_file="$tmake_file t-crtstuff-pic t-libgcc-pic t-haiku t-slibgcc t-slibgcc-gld t-slibgcc-elf-ver"
- tmake_file="$tmake_file t-slibgcc-nolc-override"
+ tmake_file="$tmake_file t-slibgcc-libgcc t-slibgcc-nolc-override"
extra_parts="crtbegin.o crtbeginS.o crtend.o crtendS.o"
;;
*-*-linux* | frv-*-*linux* | *-*-kfreebsd*-gnu | *-*-gnu* | *-*-kopensolaris*-gnu)
--
2.21.0