# -*- 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 111008 2013-09-13 12:35:03Z mww@macports.org $

PortSystem          1.0

name                unison
version             2.40.102
revision            1
categories          net
maintainers         nomaintainer
license             GPL-3
description         Unison File Synchronizer
long_description    Unison is a file-synchronization tool for Unix and \
                    Windows. It allows two replicas of a collection of \
                    files and directories to be stored on different \
                    hosts (or different disks on the same host), \
                    modified separately, and then brought up to date by \
                    propagating the changes in each replica to the other.
homepage            http://www.cis.upenn.edu/~bcpierce/unison/
master_sites        ${homepage}download/releases/${name}-${version}/
platforms           darwin openbsd
checksums           rmd160 0231fd41895bde97ad4ae15bdc4994f9c9e27ad6 \
                    sha256 3d4a92f02b6998f156cb714d202d0358dd2846efbdce9de30e2c666d77c1e854

patchfiles          patch-Makefile.diff

use_configure       no

build.args          UISTYLE=text NATIVE=true THREADS=true
depends_build       bin:camlp4:ocaml

destroot.args       PREFIX=${prefix} UISTYLE=text NATIVE=true THREADS=true

variant x11 conflicts aqua {
    patchfiles-append       patch-Makefile.OCaml.diff

    depends_lib-append      port:lablgtk2

    build.args-replace      UISTYLE=text \
                            UISTYLE=gtk2

    destroot.args-replace   UISTYLE=text \
                            UISTYLE=gtk2
}

variant aqua description {Build Aqua front-end} conflicts x11 {
    patchfiles-append       patch-uimacnew-uimacnew.xcodeproj-project.pbxproj.diff

    build.args-replace      UISTYLE=text \
                            UISTYLE=macnew
    destroot {
        system "cd ${worksrcpath}/uimacnew/build && mv Default/* . || true"
        copy ${worksrcpath}/uimacnew/build/Unison.app \
            ${destroot}${applications_dir}
    }
}

livecheck.type      regex
livecheck.url       ${homepage}download/releases/stable/
livecheck.regex     {unison-(\d+(?:\.\d+)*)}
