# -*- 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 102865 2013-02-09 19:16:59Z jeremyhu@macports.org $

PortSystem          1.0
PortGroup           active_variants 1.1

name                darktable
version             1.1.2
revision            2
set branch          [join [lrange [split ${version} .] 0 1] .]
categories          graphics
platforms           darwin
maintainers         gmail.com:julians37
license             GPL-3+

description         Virtual lighttable and darkroom for photographers

long_description    Darktable is a virtual lighttable and darkroom for \
                    photographers: it manages your digital negatives in a \
                    database and lets you view them through a zoomable \
                    lighttable. It also enables you to develop raw images \
                    and enhance them.

homepage            http://www.darktable.org/
master_sites        sourceforge:project/darktable/darktable/${branch}

checksums           rmd160  8c4594334f884866b789fedf87093f232c3fb4b4 \
                    sha256  225ebf1bd2ca4cf06aa609f2eda55cb0894ae69bdf4db25fd97b2503c28e1765

depends_build       port:cmake \
                    port:pkgconfig

depends_lib         path:lib/pkgconfig/cairo.pc:cairo \
                    port:curl \
                    port:dbus-glib \
                    port:exiv2 \
                    port:gettext \
                    path:lib/pkgconfig/glib-2.0.pc:glib2 \
                    port:gtk2 \
                    port:gtk-engines2 \
                    port:jpeg \
                    port:json-glib \
                    port:lcms2 \
                    port:lensfun \
                    port:libglade2 \
                    port:libgphoto2 \
                    port:libpng \
                    port:librsvg \
                    port:libxml2 \
                    port:openexr \
                    port:sqlite3 \
                    port:tiff \
                    port:zlib

patchfiles          patch-build.sh.diff

configure.cmd       ./build.sh
configure.pre_args  --prefix ${prefix}
configure.args      --jobs ${build.jobs} \
                    --disable-flickr \
                    --disable-kwallet \
                    --disable-gnome-keyring \
                    --disable-openmp \
                    --disable-opencl \
                    --disable-unity \
                    --disable-tethering \
                    --disable-experimental \
                    --disable-geo

configure.universal_args-delete --disable-dependency-tracking

if {[variant_isset no_x11]} {
    default_variants    +quartz -x11
}

if {![variant_isset quartz]} {
    default_variants    +x11
}

pre-configure {
    if {![variant_isset quartz] && ![variant_isset x11]} {
        return -code error "either +x11 or +quartz is required"
    }
}

build.dir           ${worksrcpath}/build

variant quartz conflicts x11 gcc44 gcc45 {
    require_active_variants gtk2 quartz
}

variant x11 conflicts no_x11 quartz {
    require_active_variants gtk2 x11
}

# no_x11 variant to be removed after January 2014
variant no_x11 conflicts x11 description {Legacy compatibility variant} {}

variant gcc44 conflicts gcc45 gcc46 gcc47 quartz universal description {Build with GCC 4.4} {
    depends_lib-append  port:gcc44
    configure.compiler  macports-gcc-4.4
}

variant gcc45 conflicts gcc44 gcc46 gcc47 quartz universal description {Build with GCC 4.5} {
    depends_lib-append  port:gcc45
    configure.compiler  macports-gcc-4.5
}

variant gcc46 conflicts gcc44 gcc45 gcc47 universal description {Build with GCC 4.6} {
    depends_lib-append  port:gcc46
    configure.compiler  macports-gcc-4.6
}

variant gcc47 conflicts gcc44 gcc45 gcc46 universal description {Build with GCC 4.7} {
    depends_lib-append  port:gcc47
    configure.compiler  macports-gcc-4.7
}

variant gnome_keyring description {Build with gnome-keyring} {
    configure.args-delete   --disable-gnome-keyring
    configure.args-append   --enable-gnome-keyring
    depends_lib-append      port:libgnome-keyring
}

livecheck.url       http://sourceforge.net/api/file/index/project-id/258690/rss
livecheck.regex     {darktable-([0-9.]+?).tar}
