# -*- 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

PortSystem 1.0

name            ncbi_tools
categories      science
license         public-domain
maintainers     nomaintainer

version         20120620
revision        1

description     Blast is a set of tools for doing nucleotide and protein searches
long_description \
                "${description}"
homepage        https://www.ncbi.nlm.nih.gov/blast/

fetch.use_epsv  no
master_sites    ftp://ftp.ncbi.nlm.nih.gov/toolbox/ncbi_tools/old/${version}

distname        ncbi

checksums       sha256 603c9a4ade2a6f2f8e412558b732924d78fae403d225706e2ac38d553b08073c \
                rmd160 b37a6eda9f370d02632c1497cd66a3ca64aa0a36 \
                size 68428744

dist_subdir     ${name}/${version}
extract.mkdir   yes

patchfiles      patch-fix-build.diff

use_configure   no

depends_build-append \
                port:tcsh

build.cmd       ${prefix}/bin/tcsh
build.target

# Need to clear build args, pre and post, as we aren't using Make
build.pre_args
build.post_args
build.args      -f -c ./ncbi/make/makedis.csh

set binaries    \
[list \
    blastall         dosimple         gil2bin \
    asn2ff           entrcmd          idfetch          seedtop \
    asn2gb           blastcl3         impala           seqtest \
    asn2idx          blastclust       errhdr           indexpub         tbl2asn \
    asn2xml          blastpgp         fa2htgs          makemat          test_regexp \
    asndhuff         cdscan           fastacmd         makeset          testcore \
    asntool          checksub         findspl          megablast        testobj \
    bl2bag.cgi       copymat          formatdb         ncbisort         testval \
    bl2seq           formatrpsdb      nph-viewgif.cgi  taxblast \
    debruijn         gene2xml         vecscreen \
    demo_regexp      getmesh          wblast2.REAL \
    demo_regexp_grep getpub           rpsblast         wblast2_cs.REAL \
]

set manpages    \
[list \
    Psequin.1       asnval.1        cleanasn.1      formatdb.1      insdseqget.1    tbl2asn.1 \
    asn2all.1       bl2seq.1        copymat.1       formatrpsdb.1   makemat.1       trna2sap.1 \
    asn2asn.1       ddv.1           gbseqget.1      makeset.1       trna2tbl.1      taxblast.1 \
    asn2ff.1        blastall.1      debruijn.1      gene2xml.1      megablast.1     udv.1 \
    asn2fsa.1       entrez2.1       getmesh.1       nps2gps.1       vecscreen.1 \
    asn2gb.1        blastcl3.1      errhdr.1        getpub.1        rpsblast.1 \
    asn2idx.1       blastclust.1    fa2htgs.1       gil2bin.1       sbtedit.1 \
    asn2xml.1       blastpgp.1      fastacmd.1      idfetch.1       seedtop.1 \
    asndhuff.1      cdscan.1        findspl.1       impala.1        sortbyquote.1 \
    asntool.1       checksub.1      fmerge.1        indexpub.1      spidey.1 \
]

set datafiles   \
[list \
    lat_lon_country.txt \
    16SCore.nhr                        KSesigc.mat          UniVec.nhr             lat_lon_island.txt \
    16SCore.nin                        KSesigl.mat          UniVec.nin             lat_lon_water.txt \
    16SCore.nsq                        KSgc.flt             UniVec.nsq             lineages.txt \
    64-matK-FINAL-aligned-DNA.fas.nhr  KShopp.flt           UniVec_Core.nhr        makerpt.prt \
    64-matK-FINAL-aligned-DNA.fas.nin  KSkyte.flt           UniVec_Core.nin        ncbiendo.dat \
    64-matK-FINAL-aligned-DNA.fas.nsq  KSmtidk.mat          UniVec_Core.nsq        ncbipnam.dat \
    64-rbcL-FINAL-aligned-DNA.fas.nhr  KSmtk.mat            asn2ff.prt             ncbipros.dat \
    64-rbcL-FINAL-aligned-DNA.fas.nin  KSnsigc.mat          autofix.prt            ncbiren.dat \
    64-rbcL-FINAL-aligned-DNA.fas.nsq  KSnsigl.mat          blast.prt              ncbirnam.dat \
    BLOSUM45                           KSpcc.mat            bstdt.prt              objprt.prt \
    BLOSUM50                           KSpsigc.mat          bstdt.val              organelle_products.prt \
    BLOSUM62                           KSpsigl.mat          country_lat_lon.txt    product_rules.prt \
    BLOSUM80                           KSpur.flt            ecnum_ambiguous.txt    pubkey.enc \
    BLOSUM90                           KSpyr.flt            ecnum_deleted.txt      rRNA_blast.nal \
    Combined16SrRNA.nhr                LSURef_93.fasta.nhr  ecnum_replaced.txt     rRNAstrand.nal \
    Combined16SrRNA.nin                LSURef_93.fasta.nin  ecnum_specific.txt     seqcode.prt \
    Combined16SrRNA.nsq                LSURef_93.fasta.nsq  featdef.prt            seqcode.val \
    Combined16SrRNA_2-12-2008.nhr      PAM250               featdef.val            sequin.hlp \
    Combined16SrRNA_2-12-2008.nin      PAM30                gc.prt                 sgmlbb.ent \
    Combined16SrRNA_2-12-2008.nsq      PAM70                gc.val                 taxlist.txt \
    ContactPotential                   SSURef_93.fasta.nhr  humrep.fsa             validrules.prt \
    KSat.flt                           SSURef_93.fasta.nin  institution_codes.txt \
    KSchoth.flt                        SSURef_93.fasta.nsq \
]

set ncbi_dir_doc \
    ${prefix}/share/doc/${name}
set ncbi_dir_man \
    ${prefix}/share/man/man1
set ncbi_dir_data \
    ${prefix}/share/${name}/data

destroot {
    xinstall -m 755 -d ${destroot}${ncbi_dir_doc}
    file copy ${worksrcpath}/ncbi/doc ${destroot}${ncbi_dir_doc}

    foreach binary ${binaries} {
        xinstall -m 755 ${worksrcpath}/ncbi/bin/${binary} ${destroot}${prefix}/bin/
    }

    foreach manpage ${manpages} {
        xinstall -m 444 ${worksrcpath}/ncbi/doc/man/${manpage} ${destroot}${ncbi_dir_man}/
    }

    xinstall -m 755 -d ${destroot}${ncbi_dir_data}
    foreach datafile ${datafiles} {
        xinstall -m 444 ${worksrcpath}/ncbi/data/${datafile} ${destroot}${ncbi_dir_data}/
    }
}

notes "
  Data files have moved from ${prefix}/data to ${ncbi_dir_data}
"

livecheck.type      regex
livecheck.url       ftp://ftp.ncbi.nlm.nih.gov/toolbox/ncbi_tools/
livecheck.regex     old/(\[0-9\]+)
