# -*- 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                vlfeat
version             0.9.20
revision            0
categories          graphics devel
platforms           darwin
license             BSD

maintainers         {stromnov @stromnov} openmaintainer

description         Implementation of SIFT, MSER and other CV algorithms.

long_description \
    The VLFeat open source library implements popular computer vision \
    algorithms including SIFT, MSER, k-means, hierarchical k-means, \
    agglomerative information bottleneck, and quick shift.

homepage            http://vlfeat.org/
master_sites        http://vlfeat.org/download/

checksums           rmd160  f0a6343ef404a7fa26c96be0a2233c94621583c2 \
                    sha256  9399199689a7dd180acea7207fb3c1678a75ae15fbd2f120b195316dd73b306a

use_configure       no

supported_archs     x86_64 i386

if {${build_arch} eq "x86_64"} {
    set vlfeat_arch maci64
} elseif {${build_arch} eq "i386"} {
    set vlfeat_arch maci
}
if {[info exists vlfeat_arch]} {
    build.args-append   ARCH=${vlfeat_arch}
}

if {${configure.sdkroot} != ""} {
    build.args-append   SDKROOT="${configure.sdkroot}"
} else {
    build.args-append   SDKROOT=/
}

build.args-append       CC="${configure.cc}"

# disable silent rules
build.args-append       VERB=1

use_parallel_build      no

post-patch {
    reinplace "s|-install_name @loader_path/|-install_name ${prefix}/lib/|g" ${worksrcpath}/make/dll.mak
}

destroot {
    xinstall -m 755 -W ${worksrcpath}/bin/${vlfeat_arch} libvl.dylib ${destroot}${prefix}/lib
    xinstall -m 755 -W ${worksrcpath}/bin/${vlfeat_arch} sift mser ${destroot}${prefix}/bin
    xinstall -d -m 755 ${destroot}${prefix}/include/vl
    foreach header [glob -directory ${worksrcpath}/vl *.h] {
         xinstall -m 644 $header ${destroot}${prefix}/include/vl
    }
}

livecheck.type      regex
livecheck.url       ${master_sites}
livecheck.regex     "${name}-(\\d+(?:\\.\\d+)*)${extract.suffix}"
