Revision: 148332 https://trac.macports.org/changeset/148332 Author: ryandesign@macports.org Date: 2016-05-04 10:31:25 -0700 (Wed, 04 May 2016) Log Message: ----------- gcc6: update to 6.1.0 gcc7: new port, version 7-20160501 libgcc: move subport from gcc5 to gcc6 libgcc-devel: move subport from gcc6 to gcc7 Modified Paths: -------------- trunk/dports/lang/gcc5/Portfile trunk/dports/lang/gcc6/Portfile trunk/dports/lang/gcc7/Portfile Added Paths: ----------- trunk/dports/lang/gcc7/ trunk/dports/lang/gcc7/files/mp-gcc7 Removed Paths: ------------- trunk/dports/lang/gcc7/files/mp-gcc6 Modified: trunk/dports/lang/gcc5/Portfile =================================================================== --- trunk/dports/lang/gcc5/Portfile 2016-05-04 17:01:15 UTC (rev 148331) +++ trunk/dports/lang/gcc5/Portfile 2016-05-04 17:31:25 UTC (rev 148332) @@ -6,7 +6,6 @@ PortGroup compiler_blacklist_versions 1.0 name gcc5 -subport libgcc {} epoch 2 version 5.3.0 @@ -120,87 +119,6 @@ destroot.target install install-info-host -if {${subport} eq "libgcc"} { - conflicts libgcc-devel - - # http://trac.macports.org/ticket/35770 - # http://trac.macports.org/ticket/38814 - # While there can be multiple versions of these runtimes in a single - # process, it is not possible to pass objects between different versions, - # so we simplify this by having the libgcc port provide the newest version - # of these runtimes for all versions of gcc to use. - # - # If there is a binary incompatible change to the runtime in a future - # version of gcc, then the latest version of gcc to provide a given ABI - # version should continue to provide a subport for that and older gcc - # versions. - - depends_lib-delete path:lib/libgcc/libgcc_s.1.dylib:libgcc - - configure.args-delete --libdir=${prefix}/lib/${name} - configure.args-append --libdir=${prefix}/lib/libgcc - - configure.args-delete --enable-languages=c,c++,objc,obj-c++,lto,fortran,java - configure.args-append --enable-languages=c,c++,objc,obj-c++,lto,fortran - - # TODO: Possibly disable bootstrap with appropriate configure flags. - # the problem is that libstdc++'s configure script tests for tls support - # using the running compiler (not gcc for which libstdc++ is being built). - # Thus when we build with clang, we get a mismatch - # http://trac.macports.org/ticket/36116 - #compiler.blacklist-append {clang < 425} - #configure.args-append --disable-bootstrap - #build.target all - - post-destroot { - file mkdir ${destroot}${prefix}/lib/libgcc.merged - - # 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. - set dylibs {libgcc_ext.10.4.dylib libgcc_ext.10.5.dylib libgcc_s.1.dylib libgfortran.3.dylib libquadmath.0.dylib libstdc++.6.dylib libobjc-gnu.4.dylib libgomp.1.dylib libitm.1.dylib libssp.0.dylib libasan.0.dylib libatomic.1.dylib} - - foreach dylib ${dylibs} { - # Different OS versions (eg: Leopard) or architectures (eg: PPC) don't produce all the dylibs - # https://trac.macports.org/ticket/40098 - # https://trac.macports.org/ticket/40100 - if {! [file exists ${destroot}${prefix}/lib/libgcc/${dylib}]} { - continue - } - - move ${destroot}${prefix}/lib/libgcc/${dylib} ${destroot}${prefix}/lib/libgcc.merged - if {[variant_isset universal]} { - foreach archdir [glob ${destroot}${prefix}/lib/libgcc/*/] { - set archdir_nodestroot [string map "${destroot}/ /" ${archdir}] - if {[file exists ${archdir}/${dylib}]} { - system "install_name_tool -id ${prefix}/lib/libgcc/${dylib} ${archdir}/${dylib}" - foreach link ${dylibs} { - system "install_name_tool -change ${archdir_nodestroot}${link} ${prefix}/lib/libgcc/${link} ${archdir}/${dylib}" - } - 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}" - } - } - } - - # strip debug symbols to supress debugger warnings: - # http://trac.macports.org/attachment/ticket/34831 - if {! [string match *libgcc_ext* ${dylib}]} { - system "strip -x ${destroot}${prefix}/lib/libgcc.merged/${dylib}" - } - } - - file delete -force ${destroot}${prefix}/bin - file delete -force ${destroot}${prefix}/share - file delete -force ${destroot}${prefix}/include - file delete -force ${destroot}${prefix}/lib/libgcc - file delete -force ${destroot}${prefix}/libexec - - move ${destroot}${prefix}/lib/libgcc.merged ${destroot}${prefix}/lib/libgcc - - # For binary compatibility with binaries that linked against the old libstdcxx port - ln -s libgcc/libstdc++.6.dylib ${destroot}${prefix}/lib/libstdc++.6.dylib - } -} else { depends_run-append port:gcc_select post-destroot { @@ -237,8 +155,6 @@ select.group gcc select.file ${filespath}/mp-${name} -} - platform powerpc { configure.universal_archs ppc ppc64 } Modified: trunk/dports/lang/gcc6/Portfile =================================================================== --- trunk/dports/lang/gcc6/Portfile 2016-05-04 17:01:15 UTC (rev 148331) +++ trunk/dports/lang/gcc6/Portfile 2016-05-04 17:31:25 UTC (rev 148332) @@ -6,36 +6,37 @@ PortGroup compiler_blacklist_versions 1.0 name gcc6 -subport libgcc-devel {} +subport libgcc {} -epoch 1 -version 6-20160421 +epoch 2 +version 6.1.0 platforms darwin categories lang maintainers mww openmaintainer # an exception in the license allows dependents to not be GPL license {GPL-3+ Permissive} -description The GNU compiler collection, prerelease BETA +description The GNU compiler collection long_description The GNU compiler collection, including front ends for \ - C, C++, Objective-C, Objective-C++, Fortran and Java. \ - This is a prerelease BETA version! + C, C++, Objective-C, Objective-C++, Fortran and Java. homepage http://gcc.gnu.org/ -master_sites ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/snapshots/${version}/ \ - ftp://gcc.gnu.org/pub/gcc/snapshots/${version}/ \ - http://gcc.skazkaforyou.com/snapshots/${version}/ +master_sites ftp://ftp.funet.fi/pub/mirrors/sources.redhat.com/pub/gcc/releases/gcc-${version}/ \ + ftp://ftp.gwdg.de/pub/linux/gcc/releases/gcc-${version}/ \ + ftp://gcc.ftp.nluug.nl/mirror/languages/gcc/releases/gcc-${version}/ \ + ftp://gcc.gnu.org/pub/gcc/releases/gcc-${version}/ \ + gnu:gcc/gcc-${version} distname gcc-${version} use_bzip2 yes -checksums rmd160 9e05ea2b59226b479a86a509546d2dc0cd3e1480 \ - sha256 36d733fcb2bdd8decf51bf014b6170c5775e8da64aafb05a95a9ec4bc5adc824 +checksums rmd160 6bf64177557e7485450fa09fb018019f2297f952 \ + sha256 09c4c85cabebb971b1de732a0219609f93fc0af5f86f6e437fd8d7f832f1a351 depends_lib port:cctools \ port:gmp \ path:lib/pkgconfig/isl.pc:isl \ port:ld64 \ - port:libgcc-devel \ + path:lib/libgcc/libgcc_s.1.dylib:libgcc \ port:libiconv \ port:libmpc \ port:mpfr @@ -111,8 +112,8 @@ destroot.target install install-info-host -if {${subport} eq "libgcc-devel"} { - conflicts libgcc +if {${subport} eq "libgcc"} { + conflicts libgcc-devel # http://trac.macports.org/ticket/35770 # http://trac.macports.org/ticket/38814 @@ -126,7 +127,7 @@ # version should continue to provide a subport for that and older gcc # versions. - depends_lib-delete port:libgcc-devel + depends_lib-delete path:lib/libgcc/libgcc_s.1.dylib:libgcc configure.args-delete --libdir=${prefix}/lib/${name} configure.args-append --libdir=${prefix}/lib/libgcc @@ -254,5 +255,5 @@ configure.universal_args livecheck.type regex -livecheck.url ftp://gcc.gnu.org/pub/gcc/snapshots/ -livecheck.regex LATEST-${major} -> (${major}-\[0-9\]+) +livecheck.url http://ftp.gnu.org/gnu/gcc/ +livecheck.regex gcc-(${major}\\.\[0-9.\]+)/ Modified: trunk/dports/lang/gcc7/Portfile =================================================================== --- trunk/dports/lang/gcc6/Portfile 2016-05-04 02:41:26 UTC (rev 148325) +++ trunk/dports/lang/gcc7/Portfile 2016-05-04 17:31:25 UTC (rev 148332) @@ -5,11 +5,11 @@ PortGroup select 1.0 PortGroup compiler_blacklist_versions 1.0 -name gcc6 +name gcc7 subport libgcc-devel {} epoch 1 -version 6-20160421 +version 7-20160501 platforms darwin categories lang maintainers mww openmaintainer @@ -28,8 +28,8 @@ distname gcc-${version} use_bzip2 yes -checksums rmd160 9e05ea2b59226b479a86a509546d2dc0cd3e1480 \ - sha256 36d733fcb2bdd8decf51bf014b6170c5775e8da64aafb05a95a9ec4bc5adc824 +checksums rmd160 ddde377f648956d15a5eaaa32b3bfd0c339813f6 \ + sha256 15cb4d8d4cb912ecd950a9d5c571f573b67cd640e60dbaf1659e234934d72632 depends_lib port:cctools \ port:gmp \ Deleted: trunk/dports/lang/gcc7/files/mp-gcc6 =================================================================== --- trunk/dports/lang/gcc6/files/mp-gcc6 2016-05-04 02:41:26 UTC (rev 148325) +++ trunk/dports/lang/gcc7/files/mp-gcc6 2016-05-04 17:31:25 UTC (rev 148332) @@ -1,7 +0,0 @@ -bin/gcc-mp-6 -bin/cpp-mp-6 -bin/c++-mp-6 -bin/g++-mp-6 -bin/gcj-mp-6 -bin/gcov-mp-6 -bin/gfortran-mp-6 Copied: trunk/dports/lang/gcc7/files/mp-gcc7 (from rev 148325, trunk/dports/lang/gcc6/files/mp-gcc6) =================================================================== --- trunk/dports/lang/gcc7/files/mp-gcc7 (rev 0) +++ trunk/dports/lang/gcc7/files/mp-gcc7 2016-05-04 17:31:25 UTC (rev 148332) @@ -0,0 +1,7 @@ +bin/gcc-mp-7 +bin/cpp-mp-7 +bin/c++-mp-7 +bin/g++-mp-7 +bin/gcj-mp-7 +bin/gcov-mp-7 +bin/gfortran-mp-7