# -*- coding: utf-8; mode: tcl; tab-width: 4; truncate-lines: t; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:et:sw=4:ts=4:sts=4
# $Id: Portfile 116251 2014-01-23 02:22:44Z aronnax@macports.org $

PortSystem              1.0

name                    ast
version                 7.3.3
categories              science
platforms               darwin
maintainers             aronnax
license                 GPL-2+
description             StarLink Astrometry Library
long_description \
    AST provides a comprehensive range of facilities for attaching world \
    coordinate systems (such as RA/Dec, frequency, etc) to astronomical data, \
    for retrieving and interpreting that information and for generating \
    graphical output based on it.

homepage                http://starlink.jach.hawaii.edu/starlink/AST
master_sites            http://www.starlink.ac.uk/download/ast/
checksums               sha1    213f5182ed666a45f6a5788a1b534ede1c1ec798 \
                        rmd160  3b79b419e84d28c7a64e4be37c3cd7623b37d6d8

universal_variant no

set gcc_versions {4.3 4.4 4.5 4.6 4.7 4.8 4.9}
set default_fortran_variant +gcc48

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}"}

    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

    if {[variant_isset gcc${ver_no_dot}]} {
        if {${default_fortran_variant} != "+gcc${ver_no_dot}"} {
            set default_fortran_variant ""
        }
    }
}

if {${default_fortran_variant} != ""} {
    default_variants-append "${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
        depends_build-append port:gcc${ver_no_dot}

        configure.fc  ${prefix}/bin/gfortran-mp-${ver}
        configure.f77 ${prefix}/bin/gfortran-mp-${ver}
        configure.f90 ${prefix}/bin/gfortran-mp-${ver}
    }
}

destroot.args-append    stardocsdir=${prefix}/share/docs \
                        starexamplesdir=${prefix}/share/examples \
                        starfacsdir=${prefix}/share/help \
                        starhelpdir=${prefix}/share/help \
                        starnewsdir=${prefix}/share/news \
                        STAR_MANIFEST_DIR=${prefix}/share/manifests

livecheck.url           [lindex ${master_sites} 0]
livecheck.regex         [quotemeta ${name}]-(\\d+(\\.\\d+)+)[quotemeta ${extract.suffix}]
