# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
# $Id: Portfile 90820 2012-03-15 03:13:40Z jmr@macports.org $

PortSystem          1.0

name                cfitsio
version             3.280
revision            1
categories          science
license             zlib MIT {LGPL Noncommercial}
platforms           darwin
maintainers         nomaintainer

description         C access to FITS data files with optional Fortran wrappers

long_description    CFITSIO is a library of C and Fortran subroutines for \
                    reading and writing data files in FITS (Flexible Image \
                    Transport System) data format. CFITSIO simplifies the \
                    task of writing software that deals with FITS files by \
                    providing an easy to use set of high-level routines that \
                    insulate the programmer from the internal complexities \
                    of the FITS file format. At the same time, CFITSIO \
                    provides many advanced features that have made it the \
                    most widely used FITS file programming interface in the \
                    astronomical community.

homepage            http://heasarc.gsfc.nasa.gov/fitsio/
master_sites        http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/
distname            ${name}[strsed ${version} {g/\.//}]
worksrcdir          ${name}
#dist_subdir         ${name}/${version}_${revision}

checksums           sha1    1f86e23808c68dc5aa144bd2622de0189beadead \
                    rmd160  66df553d36e1ea51261a9fa6407760014487c535

patchfiles          patch-configure.diff

# turn off FORTRAN compiler wrappers by removing FORTRAN from the path
configure.fc        ${prefix}/bin/no-possible-compiler
configure.cflags    -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
configure.universal_args-delete --disable-dependency-tracking

build.target        all shared

use_parallel_build  no

post-patch {
    reinplace "s|@@MPORTS_PREFIX@@|${prefix}|" ${worksrcpath}/configure
}

post-destroot {
    system "ranlib ${destroot}${prefix}/lib/libcfitsio.a"
    set docdir ${destroot}${prefix}/share/doc/${name}
    xinstall -m 755 -d ${docdir}
    eval xinstall -m 644 \
        ${worksrcpath}/README \
        [glob ${worksrcpath}/*.txt] \
        [glob ${worksrcpath}/*.ps] \
        [glob ${worksrcpath}/*.doc] \
        [glob ${worksrcpath}/*.tex] \
        ${docdir}
}

variant gcc42 description {create Fortran wrappers using gcc42} conflicts gcc43 gcc44 gcc45 g95 {
    depends_lib-append  port:gcc42
    configure.fc        ${prefix}/bin/gfortran-mp-4.2
}

variant gcc43 description {create Fortran wrappers using gcc43} conflicts gcc42 gcc44 gcc45 g95 {
    depends_lib-append  port:gcc43
    configure.fc        ${prefix}/bin/gfortran-mp-4.3
}

variant gcc44 description {create Fortran wrappers using gcc44} conflicts gcc42 gcc43 gcc45 g95 {
    depends_lib-append  port:gcc44
    configure.fc        ${prefix}/bin/gfortran-mp-4.4
}

variant gcc45 description {create Fortran wrappers using gcc45} conflicts gcc42 gcc43 gcc44 g95 {
    depends_lib-append  port:gcc45
    configure.fc        ${prefix}/bin/gfortran-mp-4.5
}

variant g95 description {create Fortran wrappers using f95} conflicts gcc42 gcc43 gcc44 gcc45 {
    depends_lib-append  port:g95
    configure.fc        ${prefix}/bin/g95
}

livecheck.type      regex
livecheck.url       ${master_sites}
livecheck.regex     {cfitsio(\d+).tar.gz}
livecheck.version   [strsed ${version} {g/\.//}]
