# -*- 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 90124 2012-02-22 17:45:07Z jwa@macports.org $

PortSystem        1.0

name              slony1
version           2.1.1
categories        databases
platforms         darwin
maintainers       gmail.com:wreese jwa
description       A replication system for PostgreSQL
long_description  Slony-I is a trigger-based master to multiple slaves replication system for PostgreSQL being developed by Jan Wieck.

homepage          http://main.slony.info/
master_sites      ${homepage}/downloads/2.1/source
use_bzip2         yes

checksums           rmd160  ce8d0d7da61314759ba809787572cffc822187b4 \
                    sha256  eb89490731be0f53586e98ae39132a544cee8167dbee77b9ce92800ba9d3bd63

depends_lib	  port:postgresql91

configure.args	  --with-pgconfigdir="${prefix}/lib/postgresql91/bin/" \
    --with-pgsharedir="${prefix}/share/postgresql91/" \
    --with-pgbindir="${prefix}/lib/postgresql91/bin/" \
    --with-pgincludedir="${prefix}/include/postgresql91/" \
    --with-pgincludeserverdir="${prefix}/include/postgresql91/server/" \
    --with-pglibdir="${prefix}/lib/postgresql91/" \
    --with-pgpkglibdir="${prefix}/lib/postgresql91/"

destroot.args     -B

variant postgresql82 conflicts postgresql83 postgresql84 postgresql90 \
    description {support for PostgreSQL 8.2 instead of 9.1} {
    depends_lib-delete	port:postgresql91
    depends_lib-append	port:postgresql82
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql91/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql91/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql91/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql91/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql91/"

    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql82/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql82/" \
	--with-pgbindir="${prefix}/lib/postgresql82/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql82/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql82/server/" \
	--with-pglibdir="${prefix}/lib/postgresql82/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql82/"
}

variant postgresql83 conflicts postgresql82 postgresql84 postgresql90 \
    description {support for PostgreSQL 8.3 instead of 9.1} {
    depends_lib-delete	port:postgresql91
    depends_lib-append	port:postgresql83
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql91/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql91/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql91/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql91/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql91/"

    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql83/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql83/" \
	--with-pgbindir="${prefix}/lib/postgresql83/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql83/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql83/server/" \
	--with-pglibdir="${prefix}/lib/postgresql83/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql83/"
}

variant postgresql84 conflicts postgresql82 postgresql83 postgresql90 \
    description {support for PostgreSQL 8.4 instead of 9.1} {
    depends_lib-delete	port:postgresql91
    depends_lib-append	port:postgresql84
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql91/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql91/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql91/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql91/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql91/"

    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql84/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql84/" \
	--with-pgbindir="${prefix}/lib/postgresql84/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql84/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql84/server/" \
	--with-pglibdir="${prefix}/lib/postgresql84/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql84/"
}

variant postgresql90 conflicts postgresql82 postgresql83 postgresql84 \
    description {support for PostgreSQL 9.0 instead of 9.1} {
    depends_lib-delete	port:postgresql91
    depends_lib-append	port:postgresql90
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql91/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql91/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql91/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql91/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql91/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql91/"

    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql90/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql90/" \
	--with-pgbindir="${prefix}/lib/postgresql90/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql90/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql90/server/" \
	--with-pglibdir="${prefix}/lib/postgresql90/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql90/"
}

#post-destroot {
#    foreach bin { slon slonik } {
#	system "cd ${destroot}${prefix}/bin && ln -s ../lib/postgresql82/bin/${bin}"
#	ln -s ${destroot}${prefix}/lib/postgresql82/bin/${bin} ${destroot}${prefix}/bin
#    }
#}

livecheck.type	regex
livecheck.url	${homepage}
livecheck.regex	(2\\.\[0-9]+\\.\[0-9\]+)\[ 	\]+(\[Rr\]eleased|(now )?available)
