General notes:

* GCC on Darwin depends on the installed “binutils”, typically provided by a 
version of “Xcode" or “Xcode command line tools”.  Unless noted otherwise, the 
bootstrap sequences here make use of the last available xcode command line 
tools and SDK for the platform version.

* Two bootstrap and test sequences;
1) Using a version of GCC+Ada as the bootstrap compiler, allowing a build and 
test for Ada.
2) Using the Apple GCC or clang that relates to the installed command line 
tools.

* In some cases, particularly with the earlier versions, the installed ‘atos’ 
is not really compatible with the versions of libsanitizer that are built with 
GCC8.  In that case, it’s usually better to install a version of 
llvm-symbolizer and set the ASAN_SYMBOLIZER_PATH=/path/to/llvm-symbolizer.

* I don’t have enough physical hardware to cover all of the versions directly, 
so some are (macOS hosted) VMs using VirtualBox.  In these cases, timeouts are 
not necessarily significant (noted in the relevant results).

cheers
Iain

---

Darwin19, (macOS 10.15)
xcode 11.4b3 command line tools and SDK was current

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556866.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556867.html

Darwin18 (10.14)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556864.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556865.html

Darwin17 (10.13)

here I have used XC 9.4, to avoid the errors caused by the deprecation of m32 
flagged by later tools.
(32b multilib still works fine here)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556862.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556863.html

Darwin16

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556860.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556861.html

Darwin15

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556858.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556859.html

Darwin14

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556856.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556857.html

Darwin13

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556853.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556854.html

Darwin12

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556851.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556852.html

Darwin11

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556848.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556849.html

Darwin10 (X86_64)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556846.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556847.html

Darwin10 (i686)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556843.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556844.html

Darwin9 (i686)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556839.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556841.html

Darwin9 (powerpc64)

powercp64-darwin9 will not bootstrap with the system ld64 (the binary size now 
exceeds the [buggy] branch island limit in that tool).  It is possible to make 
the bootstrap with an updated ld64 with that limit fixed, and using -Os for the 
stage1 compiler options.  There are several public branches with fixed ld64 
versions available - I used a version of https://github.com/iains/darwin-xtools

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556845.html

Darwin9 (powerpc)

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556840.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556842.html

Darwin8 (i686, powerpc)

Darwin8 cannot be built with the last release of XCode for the system (2.5)


At least ld64-85.2.1 is needed.
the results here were obtained with the cctools/ld64 sources from the xcode 
3.1.4 source release.

https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556837.html
https://gcc.gnu.org/pipermail/gcc-testresults/2020-March/556838.html

+ two small patches:
(1) for libstdc++

diff --git a/libstdc++-v3/configure.host b/libstdc++-v3/configure.host
index 155a3cdea1b..d16d9519e43 100644
--- a/libstdc++-v3/configure.host
+++ b/libstdc++-v3/configure.host
@@ -240,11 +240,6 @@ case "${host_os}" in
   darwin8 | darwin8.* )
     # For 8+ compatibility is better if not -flat_namespace.
     OPT_LDFLAGS="${OPT_LDFLAGS} -Wl,-single_module"
-    case "${host_cpu}" in
-      i[34567]86 | x86_64)
-        OPTIMIZE_CXXFLAGS="${OPTIMIZE_CXXFLAGS} -fvisibility-inlines-hidden"
-        ;;
-    esac
     os_include_dir="os/bsd/darwin"
     ;;
   darwin*)

====
(2) for Ada

diff --git a/gcc/ada/adaint.c b/gcc/ada/adaint.c
index 41434655865..74f843f2907 100644
--- a/gcc/ada/adaint.c
+++ b/gcc/ada/adaint.c
@@ -2351,7 +2351,10 @@ __gnat_number_of_cpus (void)
 #if defined (__linux__) || defined (__sun__) || defined (_AIX) \
   || defined (__APPLE__) || defined (__FreeBSD__) || defined (__OpenBSD__) \
   || defined (__DragonFly__) || defined (__NetBSD__) || defined (__QNX__)
+
+# ifdef _SC_NPROCESSORS_ONLN
   cores = (int) sysconf (_SC_NPROCESSORS_ONLN);
+# endif
 
 #elif defined (__hpux__)
   struct pst_dynamic psd;






Reply via email to