# -*- 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 100034 2012-11-24 22:40:08Z ecronin@macports.org $

PortSystem        1.0

name              unison
version           2.40.102
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-delete       UISTYLE=text
    build.args-append       UISTYLE=gtk2

    destroot.args-delete    UISTYLE=text
    destroot.args-append    UISTYLE=gtk2
}

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

    build.args-delete       UISTYLE=text
    build.args-append       UISTYLE=macnew
    destroot {
        xinstall -d -m 0755 ${destroot}${applications_dir}
        system "cd ${worksrcpath}/uimacnew/build && mv Default/* . || true"
        file copy ${worksrcpath}/uimacnew/build/Unison.app \
            ${destroot}${applications_dir}
    }
}

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