Ticket #51550: Portfile-openmpi.diff

File Portfile-openmpi.diff, 3.0 KB (added by dstrubbe (David Strubbe), 8 years ago)
  • Portfile

     
    209209    } else {
    210210        append long_description " (AND THE FORTRAN COMPILER SELECTED BY THE VARIANT, IF ANY)"
    211211
    212         set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9 5 6 7}
    213         set default_fortran_variant +${compilers.gcc_default}
    214         set g95_conflicts {}
     212        compilers.choose   fc
     213        compilers.setup    -dragonegg default_fortran
    215214
    216         foreach ver ${gcc_versions} {
    217             set ver_no_dot [join [split ${ver} "."] ""]
    218 
    219             set variant_line {variant gcc${ver_no_dot} description \
    220               "build with gfortran from gcc${ver_no_dot}" conflicts g95}
    221 
    222             foreach over ${gcc_versions} {
    223                 if {${ver} == ${over}} {
    224                     continue
    225                 }
    226 
    227                 set over_no_dot [join [split ${over} "."] ""]
    228                 append variant_line " conflicts gcc${over_no_dot}"
    229             }
    230             append variant_line { {}}
    231 
    232             eval $variant_line
    233 
    234             append g95_conflicts " conflicts gcc${ver_no_dot}"
    235 
    236             if {[variant_isset gcc${ver_no_dot}]} {
    237                 if {${default_fortran_variant} != "+gcc${ver_no_dot}"} {
    238                     set default_fortran_variant ""
    239                 }
    240             }
    241         }
    242 
    243         eval [concat {variant g95 description {build with g95}} \
    244               $g95_conflicts {{}}]
    245 
    246         if {[variant_isset g95]} {
    247             if {${default_fortran_variant} != "+g95"} {
    248                 set default_fortran_variant ""
    249             }
    250         }
    251 
    252         if {${default_fortran_variant} != ""} {
    253             default_variants "${default_fortran_variant}"
    254         }
    255 
    256         foreach ver ${gcc_versions} {
    257             set ver_no_dot [join [split ${ver} "."] ""]
    258 
    259             if {[variant_isset gcc${ver_no_dot}]} {
    260                 depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \
    261                                    port:gcc${ver_no_dot}
    262 
    263                 configure.args-delete   --disable-mpi-fortran
    264                 configure.args-append   --enable-mpi-fortran
    265                 select.file             ${filespath}/${name}-${cname}-fortran
    266 
    267                 configure.fc  ${prefix}/bin/gfortran-mp-${ver}
    268             }
    269         }
    270 
    271         if {[variant_isset g95]} {
    272             depends_lib-append path:lib/libgcc/libgcc_s.1.dylib:libgcc \
    273                                port:g95
    274 
     215        if {[fortran_variant_isset]} {
    275216            configure.args-delete   --disable-mpi-fortran
    276217            configure.args-append   --enable-mpi-fortran
    277218            select.file             ${filespath}/${name}-${cname}-fortran
    278219
    279             configure.fc ${prefix}/bin/g95
     220            # at least currently, the Fortran variants gccX and g95 match the name of the ports
     221            depends_lib-append      port:[fortran_variant_name]
    280222        }
    281223    }
    282224    set devnotes ""