# -*- 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              slony1
version           2.2.5
categories        databases
platforms         darwin
maintainers       gmail.com:wreese
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.2/source
use_bzip2         yes

checksums           rmd160  0a36003db4fcd4faa21054eb8e02d8771152d588 \
                    sha256  6f6dbd9619c615ed68bf6341a8158e42fc0adf6f5b609e6f8e4a0a0e37815241

depends_lib       port:postgresql96

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

destroot.args     -B

variant postgresql92 conflicts postgresql93 postgresql94 postgresql95 \
    description {support for PostgreSQL 9.2} {
    depends_lib-delete	port:postgresql96
    depends_lib-append	port:postgresql92
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql96/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql96/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql96/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql96/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql96/"
    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql92/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql92/" \
	--with-pgbindir="${prefix}/lib/postgresql92/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql92/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql92/server/" \
	--with-pglibdir="${prefix}/lib/postgresql92/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql92/"
}

variant postgresql93 conflicts postgresql92 postgresql94 postgresql95 \
    description {support for PostgreSQL 9.3} {
    depends_lib-delete	port:postgresql96
    depends_lib-append	port:postgresql93
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql96/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql96/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql96/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql96/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql96/"
    configure.args-append	  --with-pgconfigdir="${prefix}/lib/postgresql93/bin/" \
	--with-pgsharedir="${prefix}/share/postgresql93/" \
	--with-pgbindir="${prefix}/lib/postgresql93/bin/" \
	--with-pgincludedir="${prefix}/include/postgresql93/" \
	--with-pgincludeserverdir="${prefix}/include/postgresql93/server/" \
	--with-pglibdir="${prefix}/lib/postgresql93/" \
	--with-pgpkglibdir="${prefix}/lib/postgresql93/"
}

variant postgresql94 conflicts postgresql92 postgresql93 postgresql95 \
    description {support for PostgreSQL 9.4} {
    depends_lib-delete	port:postgresql96
    depends_lib-append	port:postgresql94
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql96/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql96/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql96/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql96/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql96/"

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

variant postgresql95 conflicts postgresql92 postgresql93 postgresql94 \
    description {support for PostgreSQL 9.5} {
    depends_lib-delete	port:postgresql96
    depends_lib-append	port:postgresql95
    configure.args-delete	--with-pgconfigdir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgsharedir="${prefix}/share/postgresql96/"
    configure.args-delete	--with-pgbindir="${prefix}/lib/postgresql96/bin/"
    configure.args-delete	--with-pgincludedir="${prefix}/include/postgresql96/"
    configure.args-delete	--with-pgincludeserverdir="${prefix}/include/postgresql96/server/"
    configure.args-delete	--with-pglibdir="${prefix}/lib/postgresql96/"
    configure.args-delete	--with-pgpkglibdir="${prefix}/lib/postgresql96/"

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

#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)
