<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/48084021368e430f889a9bb22983ad0716435555">https://github.com/macports/macports-ports/commit/48084021368e430f889a9bb22983ad0716435555</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 48084021368e430f889a9bb22983ad0716435555
</span>Author: Chris Jones <jonesc@macports.org>
AuthorDate: Sat May 2 18:10:13 2020 +0100
<span style='display:block; white-space:pre;color:#404040;'> gcc-devel: renamed GCC devel port
</span>---
lang/gcc-devel/Portfile | 346 ++++++++++++++++++++++++++++++++++++++
lang/gcc-devel/files/mp-gcc-devel | 7 +
2 files changed, 353 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc-devel/Portfile b/lang/gcc-devel/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..f72a5c3
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc-devel/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,346 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- 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><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</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:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+epoch 4
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+name gcc-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+version 10-20200426
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+subport libgcc-devel { revision 1 }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platforms darwin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories lang
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers nomaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# an exception in the license allows dependents to not be GPL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license {GPL-3+ Permissive}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description The GNU compiler collection, prerelease BETA
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description The GNU compiler collection, including front ends for \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ C, C++, Objective-C, Objective-C++ and Fortran. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ This is a prerelease BETA version!
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://gcc.gnu.org/
</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><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distname gcc-${version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_xz yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 965ae9760221ba8c2e151c9ece109a7facbb9a40 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 30bc86cedeb3067397f6968b5e2f894690422d7eb225ada12423ef987b400864 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 71245664
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_lib port:cctools \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:gmp \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ path:lib/pkgconfig/isl.pc:isl \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:ld64 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libiconv \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libmpc \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:mpfr \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run port:gcc_select \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:libgcc-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_skip_archcheck-append gcc_select ld64 cctools
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license_noconflict gmp mpfr ppl libmpc zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set major [lindex [split ${version} .-] 0]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform darwin {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.pre_args-append --build=${build_arch}-apple-darwin${os.major}
</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;'>+configure.dir ${workpath}/build
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cmd ${worksrcpath}/configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args --enable-languages=c,c++,objc,obj-c++,lto,fortran \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --libdir=${prefix}/lib/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --includedir=${prefix}/include/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --infodir=${prefix}/share/info \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --mandir=${prefix}/share/man \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --datarootdir=${prefix}/share/gcc-devel \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-local-prefix=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-system-zlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-nls \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --program-suffix=-mp-devel \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-gxx-include-dir=${prefix}/include/${name}/c++/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-gmp=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-mpfr=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-mpc=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-isl=${prefix} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-stage1-checking \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-multilib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-lto \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --enable-libstdcxx-time \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-build-config=bootstrap-debug \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-as=${prefix}/bin/as \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-ld=${prefix}/bin/ld \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-ar=${prefix}/bin/ar \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-bugurl=https://trac.macports.org/newticket
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# see https://lists.macports.org/pipermail/macports-dev/2017-August/036209.html
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# --disable-tls does not limit functionality
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# it only determines how std::call_once works
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --disable-tls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AR_FOR_TARGET=${prefix}/bin/ar \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ AS_FOR_TARGET=${prefix}/bin/as \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ LD_FOR_TARGET=${prefix}/bin/ld \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ NM_FOR_TARGET=${prefix}/bin/nm \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OBJDUMP_FOR_TARGET=${prefix}/bin/objdump \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ RANLIB_FOR_TARGET=${prefix}/bin/ranlib \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ STRIP_FOR_TARGET=${prefix}/bin/strip \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL=${prefix}/bin/otool \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ OTOOL64=${prefix}/bin/otool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+pre-configure {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Set package info
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-pkgversion="MacPorts ${name} ${version}_${revision}${portvariants}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {${configure.sdkroot} ne ""} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # We should be using --with-build-sysroot here. Using --with-sysroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # changes the behavior of the installed gcc to look in that sysroot
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # by default instead of /. Using --with-build-sysroot is supposed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # to be used during the build but not impact the installed product.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Unfortunately, the build fails because the value doesn't get
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # plumbed everywhere it is supposed to.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/53726
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=79885
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append --with-sysroot="${configure.sdkroot}"
</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;'>+ # TODO: Remove when base automatically creates configure.dir (2.2.1?).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #file mkdir ${configure.dir}
</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;'>+# Added for gcc9+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append gcc-4.2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# http://trac.macports.org/ticket/29067
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append gcc-4.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# http://trac.macports.org/ticket/29104
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {llvm-gcc-4.2 < 2336.1}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/47996
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {clang < 300}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/58493
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {clang < 800} *gcc-4.2 macports-clang-3.4 macports-clang-3.7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.fallback-append macports-clang-7.0 macports-clang-8.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# at present, clang-9.0+ can't build gcc devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/ticket/59253
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.blacklist-append {macports-clang-[9-10].0}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# "-stdlib" would be passed on to the bootstrap compiler if present
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxx_stdlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.dir ${configure.dir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.target bootstrap-lean
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+use_parallel_build yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.target install install-info-host
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Is this gcc release supported here.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if { ${os.major} < 11 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ known_fail yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ pre-fetch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ui_error "${name} ${version} is not supported on Darwin ${os.major}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return -code error "incompatible OS X version"
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# gcc cannot build if libunwind-headers is active
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+conflicts_build-append libunwind-headers
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# List of dylibs to be installed
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Note that we really don't want to include libgcc_ext.10.[45].dylib here, but install_name_tool
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# doesn't know how to change the id of stubs, and it's easier than recreating them for each
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# gcc port.
</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 "libgcc-devel"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Set conflict against port providing primary runtime
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if { ${os.major} < 10 } {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts libgcc libgcc7
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ conflicts libgcc libgcc10
</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;'>+ # http://trac.macports.org/ticket/35770
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # http://trac.macports.org/ticket/38814
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # While there can be multiple versions of these runtimes in a single
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # process, it is not possible to pass objects between different versions,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # so we simplify this by having the libgcc port provide the newest version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # of these runtimes for all versions of gcc to use.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # If there is a binary incompatible change to the runtime in a future
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # version of gcc, then the latest version of gcc to provide a given ABI
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # version should continue to provide a subport for that and older gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # versions.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_run
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib-delete port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build-append {*}${depends_lib}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_lib port:zlib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --libdir=${prefix}/lib/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --libdir=${prefix}/lib/libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # see https://trac.macports.org/ticket/54766
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --includedir=${prefix}/include/${name} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --includedir=${prefix}/include/gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-replace \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-gxx-include-dir=${prefix}/include/${name}/c++/ \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --with-gxx-include-dir=${prefix}/include/gcc/c++/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # TODO: Possibly disable bootstrap with appropriate configure flags.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # the problem is that libstdc++'s configure script tests for tls support
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # using the running compiler (not gcc for which libstdc++ is being built).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Thus when we build with clang, we get a mismatch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # http://trac.macports.org/ticket/36116
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #compiler.blacklist-append {clang < 425}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #configure.args-append --disable-bootstrap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #build.target all
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Temporary working dir for dylibs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file mkdir ${destroot}${prefix}/lib/libgcc.merged
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # loop over libs to install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach dylib ${dylibs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Different OS versions (e.g. Leopard) or architectures (e.g. PPC) don't produce all the dylibs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/40098
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/40100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {! [file exists ${destroot}${prefix}/lib/libgcc/${dylib}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ continue
</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;'>+ move ${destroot}${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/libgcc.merged
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach archdir [glob ${destroot}${prefix}/lib/libgcc/*/] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set archdir_nodestroot [string map "${destroot}/ /" ${archdir}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${archdir}/${dylib}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "install_name_tool -id ${prefix}/lib/libgcc/${dylib} ${archdir}/${dylib}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach link [glob -tails -directory ${archdir} *.dylib] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "install_name_tool -change ${archdir_nodestroot}${link} ${prefix}/lib/libgcc/${link} ${archdir}/${dylib}"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "lipo -create -output ${destroot}${prefix}/lib/libgcc.merged/${dylib}~ ${destroot}${prefix}/lib/libgcc.merged/${dylib} ${archdir}/${dylib} && mv ${destroot}${prefix}/lib/libgcc.merged/${dylib}~ ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
</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;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # strip debug symbols to supress debugger warnings:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # http://trac.macports.org/attachment/ticket/34831
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {! [string match *libgcc_ext* ${dylib}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}"
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete -force ${destroot}${prefix}/bin
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete -force ${destroot}${prefix}/share
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete -force ${destroot}${prefix}/lib/libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete -force ${destroot}${prefix}/libexec
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ move ${destroot}${prefix}/lib/libgcc.merged ${destroot}${prefix}/lib/libgcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # For binary compatibility with binaries that linked against the old libstdcxx port
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s libgcc/libstdc++.6.dylib ${destroot}${prefix}/lib/libstdc++.6.dylib
</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;'>+} else {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ post-destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file delete ${destroot}${prefix}/share/info/dir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach file [glob ${destroot}${prefix}/share/{info,man/man7}/*] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set extension [file extension ${file}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set newfile [regsub "${extension}$" ${file} "-mp-devel${extension}"]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ file rename ${file} ${newfile}
</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;'>+ # loop over libs to install
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach dylib ${dylibs} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # Different OS versions (e.g. Leopard) or architectures (e.g. PPC) don't produce all the dylibs
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/40098
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # https://trac.macports.org/ticket/40100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${destroot}${prefix}/lib/${name}/${dylib}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ delete ${destroot}${prefix}/lib/${name}/${dylib}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/${name}/${dylib}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach archdir [glob ${destroot}${prefix}/lib/${name}/*/] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if {[file exists ${archdir}/${dylib}]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ delete ${archdir}/${dylib}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ln -s ${prefix}/lib/libgcc/${dylib} ${archdir}/${dylib}
</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;'>+ }
</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;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ select.group gcc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ select.file ${filespath}/mp-${name}
</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;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform powerpc {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.universal_archs ppc ppc64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+platform i386 {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.universal_archs i386 x86_64
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+variant universal {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-delete --disable-multilib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# the generated compiler doesn't accept -arch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "CPP=${configure.cc} -E" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "CXXCPP=${configure.cxx} -E"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.env-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "CPP=${configure.cc} -E" \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ "CXXCPP=${configure.cxx} -E"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cc-append [get_canonical_archflags]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cc_archflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxx-append ${configure.cxx_archflags}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cxx_archflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.objc_archflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.ld_archflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_cflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_cxxflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_ldflags
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.universal_args
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.type regex
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.url ftp://gcc.gnu.org/pub/gcc/snapshots/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+livecheck.regex LATEST-${major} -> (${major}-\[0-9\]+)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/gcc-devel/files/mp-gcc-devel b/lang/gcc-devel/files/mp-gcc-devel
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..b9bb838
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/gcc-devel/files/mp-gcc-devel
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/gcc-mp-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/cpp-mp-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/c++-mp-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/g++-mp-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/gcov-mp-devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+bin/gfortran-mp-devel
</span></pre><pre style='margin:0'>
</pre>