<pre style='margin:0'>
Chris Jones (cjones051073) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e78156acf4a51d65721bc3213f7770ab5657e2f4">https://github.com/macports/macports-ports/commit/e78156acf4a51d65721bc3213f7770ab5657e2f4</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit e78156acf4a51d65721bc3213f7770ab5657e2f4
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sat May 2 18:03:15 2020 +0100

<span style='display:block; white-space:pre;color:#404040;'>    gcc10: Update to 10.1 RC, make default runtime provider
</span>---
 lang/gcc10/Portfile | 102 +++++++++++++++++++++++++++++++++-------------------
 1 file changed, 65 insertions(+), 37 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc10/Portfile b/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index c7f60d8..dbe9e0d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc10/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,37 +1,51 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortSystem                                      1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           select                      1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           compiler_blacklist_versions 1.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           active_variants             1.1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup           conflicts_build             1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem                                       1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           select                       1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           compiler_blacklist_versions  1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           active_variants              1.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           conflicts_build              1.0
</span> 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-epoch               3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+epoch               4
</span> name                gcc10
<span style='display:block; white-space:pre;background:#ffe0e0;'>-version             10-20200426
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version             10.1.0-RC-20200430
</span> revision            0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-subport             libgcc-devel { revision 0 }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport             libgcc10 { revision 0 }
</span> platforms           darwin
 categories          lang
 maintainers         nomaintainer
 # an exception in the license allows dependents to not be GPL
 license             {GPL-3+ Permissive}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-description         The GNU compiler collection, prerelease BETA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description         The GNU compiler collection
</span> long_description    The GNU compiler collection, including front ends for \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    C, C++, Objective-C, Objective-C++ and Fortran. \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    This is a prerelease BETA version!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    C, C++, Objective-C, Objective-C++ and Fortran.
</span> 
 homepage            https://gcc.gnu.org/
<span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites        ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/snapshots/${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    ftp://gcc.gnu.org/pub/gcc/snapshots/${version}/ \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    http://mirror.koddos.net/gcc/snapshots/${version}/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Primary releases
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        https://ftpmirror.gnu.org/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://mirror.its.dal.ca/gnu/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://mirrors.kernel.org/gnu/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://www.mirrorservice.org/sites/ftp.gnu.org/gnu/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://ftp-stud.hs-esslingen.de/pub/Mirrors/ftp.gnu.org/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://mirror.yongbok.net/gnu/gcc/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    http://mirror.koddos.net/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    gnu:gcc/gcc-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# snapshots and RC candidates
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites-append https://mirror.koddos.net/gcc/snapshots/${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://bigsearcher.com/mirrors/gcc/snapshots/${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/snapshots/${version}/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ftp://gcc.gnu.org/pub/gcc/snapshots/${version}/
</span> 
 distname            gcc-${version}
 use_xz              yes
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  965ae9760221ba8c2e151c9ece109a7facbb9a40 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  30bc86cedeb3067397f6968b5e2f894690422d7eb225ada12423ef987b400864 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    71245664
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  46ed31df944c2fb6b9285c307f73f944cccd825b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  486dd2593597dedadcd0fcce8d6ec71ade39d249d3dbe4be05fa5c2d4e1578e3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    74595432
</span> 
 depends_lib         port:cctools \
                     port:gmp \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -42,7 +56,7 @@ depends_lib         port:cctools \
</span>                     port:mpfr \
                     port:zlib
 depends_run         port:gcc_select \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                    port:libgcc-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    path:lib/libgcc/libgcc_s.1.dylib:libgcc
</span> 
 depends_skip_archcheck-append gcc_select ld64 cctools
 license_noconflict  gmp mpfr ppl libmpc zlib
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -115,8 +129,6 @@ pre-configure {
</span>         configure.args-append --with-sysroot="${configure.sdkroot}"
     }
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    # TODO: Remove when base automatically creates configure.dir (2.2.1?).
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    file mkdir ${configure.dir}
</span> }
 
 # Added for gcc9+
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -135,9 +147,9 @@ compiler.blacklist-append {clang < 300}
</span> compiler.blacklist-append {clang < 800} *gcc-4.2 macports-clang-3.4 macports-clang-3.7
 compiler.fallback-append macports-clang-7.0 macports-clang-8.0
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# at present, clang-9.0 can't build gcc10
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# at present, clang-9.0+ can't build gcc
</span> # https://trac.macports.org/ticket/59253
<span style='display:block; white-space:pre;background:#ffe0e0;'>-compiler.blacklist-append macports-clang-9.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {macports-clang-[9-10].0}
</span> 
 # "-stdlib" would be passed on to the bootstrap compiler if present
 configure.cxx_stdlib
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -150,7 +162,7 @@ destroot.target     install install-info-host
</span> 
 # Is this gcc release supported here.
 if { ${os.major} < 11 } {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    known_fail      yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    known_fail  yes
</span>     pre-fetch {
         ui_error "${name} ${version} is not supported on Darwin ${os.major}"
         return -code error "incompatible OS X version"
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -160,19 +172,36 @@ if { ${os.major} < 11 } {
</span> # gcc cannot build if libunwind-headers is active
 conflicts_build-append libunwind-headers
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# dylibs to install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# List of dylibs to be installed
</span> # Note that we really don't want to include libgcc_ext.10.[45].dylib here, but install_name_tool
 # doesn't know how to change the id of stubs, and it's easier than recreating them for each
 # gcc port.
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set dylibs {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.5.dylib libquadmath.0.dylib libstdc++.6.dylib libobjc-gnu.4.dylib libgomp.1.dylib libitm.1.dylib libssp.0.dylib libasan.5.dylib libubsan.1.dylib libatomic.1.dylib}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${subport} eq "libgcc-devel"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    # Set conflict against port providing primary runtime
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    if { ${os.major} < 10 } {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        conflicts libgcc libgcc7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-        conflicts libgcc libgcc9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set dylibs {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.5.dylib libquadmath.0.dylib libstdc++.6.dylib libobjc-gnu.4.dylib libgomp.1.dylib libitm.1.dylib libssp.0.dylib libasan.6.dylib libubsan.1.dylib libatomic.1.dylib}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${subport} eq "libgcc10"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Always provides primary runtime so always in conflict
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    conflicts libgcc-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # Activate hack for new libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    # https://trac.macports.org/wiki/PortfileRecipes#deactivatehack
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    pre-activate {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![catch {set installed [lindex [registry_active libgcc9] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # Extract the epoch of the installed libgcc9
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set _epoch [lindex $installed 5]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # If < 3 need to deactivate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[vercmp $_epoch 3] < 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                registry_deactivate_composite libgcc9 "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        if {![catch {set installed [lindex [registry_active libgcc-devel] 0]}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # Extract the epoch of the installed libgcc-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            set _epoch [lindex $installed 5]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            # If < 4 need to deactivate
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            if {[vercmp $_epoch 4] < 0} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                registry_deactivate_composite libgcc-devel "" [list ports_nodepcheck 1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        }
</span>     }
 
     # http://trac.macports.org/ticket/35770
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -216,6 +245,7 @@ if {${subport} eq "libgcc-devel"} {
</span> 
     post-destroot {
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+        # Temporary working dir for dylibs
</span>         file mkdir ${destroot}${prefix}/lib/libgcc.merged
 
         # loop over libs to install
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -269,7 +299,6 @@ if {${subport} eq "libgcc-devel"} {
</span>         foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
             set extension [file extension ${file}]
             set newfile [regsub "${extension}$" ${file} "-mp-${major}${extension}"]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>             file rename ${file} ${newfile}
         }
 
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -282,7 +311,6 @@ if {${subport} eq "libgcc-devel"} {
</span>                 delete ${destroot}${prefix}/lib/${name}/${dylib}
                 ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
             }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span>             if {[variant_isset universal]} {
                 foreach archdir [glob ${destroot}${prefix}/lib/${name}/*/] {
                     if {[file exists ${archdir}/${dylib}]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -328,5 +356,5 @@ configure.universal_ldflags
</span> configure.universal_args
 
 livecheck.type      regex
<span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.url       ftp://gcc.gnu.org/pub/gcc/snapshots/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-livecheck.regex     LATEST-${major} -> (${major}-\[0-9\]+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url       https://ftp.gnu.org/gnu/gcc/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex     gcc-(${major}\\.\[0-9.\]+)/
</span></pre><pre style='margin:0'>

</pre>