Revision: 149472 https://trac.macports.org/changeset/149472 Author: dstrubbe@macports.org Date: 2016-06-22 10:47:06 -0700 (Wed, 22 Jun 2016) Log Message: ----------- mpich, mpich-devel, openmpi, openmpi-devel: Use compilers portgroup for Fortran variants of non-gcc subports, for simplicity and to avoid having to maintain another list of the available gcc ports. Closes ticket #51550. Modified Paths: -------------- trunk/dports/science/mpich/Portfile trunk/dports/science/openmpi/Portfile Modified: trunk/dports/science/mpich/Portfile =================================================================== --- trunk/dports/science/mpich/Portfile 2016-06-22 16:47:23 UTC (rev 149471) +++ trunk/dports/science/mpich/Portfile 2016-06-22 17:47:06 UTC (rev 149472) @@ -246,80 +246,21 @@ } else { append long_description " (AND THE FORTRAN COMPILER SELECTED BY THE VARIANT, IF ANY)" - set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 6 7} - set default_fortran_variant +${compilers.gcc_default} - set g95_conflicts {} + compilers.choose fc f77 f90 + compilers.setup -dragonegg default_fortran - foreach ver ${gcc_versions} { - set ver_no_dot [join [split ${ver} "."] ""] + if {[fortran_variant_isset]} { + configure.args-delete --disable-f77 --disable-fc + configure.args-append --enable-f77 --enable-fc + select.file ${filespath}/${name}-${cname}-fortran - set variant_line {variant gcc${ver_no_dot} description \ - "build with gfortran from gcc${ver_no_dot}" conflicts g95} + # at least currently, the Fortran variants gccX and g95 match the name of the ports + depends_lib-append port:[fortran_variant_name] - foreach over ${gcc_versions} { - if {${ver} == ${over}} { - continue - } - - set over_no_dot [join [split ${over} "."] ""] - append variant_line " conflicts gcc${over_no_dot}" + if {[variant_isset g95]} { + configure.args-append lt_cv_ld_force_load=no } - append variant_line { {}} - - eval $variant_line - - append g95_conflicts " conflicts gcc${ver_no_dot}" - - if {[variant_isset gcc${ver_no_dot}]} { - if {${default_fortran_variant} != "+gcc${ver_no_dot}"} { - set default_fortran_variant "" - } - } } - - eval [concat {variant g95 description {build with g95}} \ - $g95_conflicts {{}}] - - if {[variant_isset g95]} { - if {${default_fortran_variant} != "+g95"} { - set default_fortran_variant "" - } - } - - if {${default_fortran_variant} != ""} { - default_variants "${default_fortran_variant}" - } - - foreach ver ${gcc_versions} { - set ver_no_dot [join [split ${ver} "."] ""] - - if {[variant_isset gcc${ver_no_dot}]} { - depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \ - port:gcc${ver_no_dot} - - configure.args-delete --disable-f77 --disable-fc - configure.args-append --enable-f77 --enable-fc - select.file ${filespath}/${name}-${cname}-fortran - - configure.fc ${prefix}/bin/gfortran-mp-${ver} - configure.f77 ${prefix}/bin/gfortran-mp-${ver} - configure.f90 ${prefix}/bin/gfortran-mp-${ver} - } - } - - if {[variant_isset g95]} { - depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \ - port:g95 - - configure.args-delete --disable-f77 --disable-fc - configure.args-append \ - --enable-f77 --enable-fc lt_cv_ld_force_load=no - select.file ${filespath}/${name}-${cname}-fortran - - configure.fc ${prefix}/bin/g95 - configure.f77 ${prefix}/bin/g95 - configure.f90 ${prefix}/bin/g95 - } } set devnotes "" Modified: trunk/dports/science/openmpi/Portfile =================================================================== --- trunk/dports/science/openmpi/Portfile 2016-06-22 16:47:23 UTC (rev 149471) +++ trunk/dports/science/openmpi/Portfile 2016-06-22 17:47:06 UTC (rev 149472) @@ -209,74 +209,16 @@ } else { append long_description " (AND THE FORTRAN COMPILER SELECTED BY THE VARIANT, IF ANY)" - set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 6 7} - set default_fortran_variant +${compilers.gcc_default} - set g95_conflicts {} + compilers.choose fc + compilers.setup -dragonegg default_fortran - foreach ver ${gcc_versions} { - set ver_no_dot [join [split ${ver} "."] ""] - - set variant_line {variant gcc${ver_no_dot} description \ - "build with gfortran from gcc${ver_no_dot}" conflicts g95} - - foreach over ${gcc_versions} { - if {${ver} == ${over}} { - continue - } - - set over_no_dot [join [split ${over} "."] ""] - append variant_line " conflicts gcc${over_no_dot}" - } - append variant_line { {}} - - eval $variant_line - - append g95_conflicts " conflicts gcc${ver_no_dot}" - - if {[variant_isset gcc${ver_no_dot}]} { - if {${default_fortran_variant} != "+gcc${ver_no_dot}"} { - set default_fortran_variant "" - } - } - } - - eval [concat {variant g95 description {build with g95}} \ - $g95_conflicts {{}}] - - if {[variant_isset g95]} { - if {${default_fortran_variant} != "+g95"} { - set default_fortran_variant "" - } - } - - if {${default_fortran_variant} != ""} { - default_variants "${default_fortran_variant}" - } - - foreach ver ${gcc_versions} { - set ver_no_dot [join [split ${ver} "."] ""] - - if {[variant_isset gcc${ver_no_dot}]} { - depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \ - port:gcc${ver_no_dot} - - configure.args-delete --disable-mpi-fortran - configure.args-append --enable-mpi-fortran - select.file ${filespath}/${name}-${cname}-fortran - - configure.fc ${prefix}/bin/gfortran-mp-${ver} - } - } - - if {[variant_isset g95]} { - depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \ - port:g95 - + if {[fortran_variant_isset]} { configure.args-delete --disable-mpi-fortran configure.args-append --enable-mpi-fortran select.file ${filespath}/${name}-${cname}-fortran - configure.fc ${prefix}/bin/g95 + # at least currently, the Fortran variants gccX and g95 match the name of the ports + depends_lib-append port:[fortran_variant_name] } } set devnotes ""