Ticket #35205: Portfile

File Portfile, 2.2 KB (added by bpanulla (Brian Panulla), 12 years ago)
Line 
1# -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:filetype=tcl:et:sw=4:ts=4:sts=4
2# $Id$
3
4PortSystem          1.0
5
6name                psqlODBC
7version             09.01.0100
8categories          databases
9platforms           darwin
10maintainers         panulla.com:macports
11license             LGPL-2
12
13description         Official ODBC driver for the PostgreSQL database.
14
15long_description \
16    psqlODBC allows ODBC-compliant applications to connect to \
17    PostgreSQL database servers.
18
19homepage            http://psqlODBC.projects.postgresql.org
20master_sites        postgresql:odbc/versions/src/
21
22distname            psqlodbc-${version}
23
24checksums           md5     08121d9d57bb2dbab11c36c2cc8e8edb \
25                    sha1    b9f262bbdb5b449d8c49e73028203945d95ba269 \
26                    rmd160  ca380115aa41263960fcc7d4604e2c2c8fe549d4
27
28variant iodbc conflicts unixodbc description {Use iODBC} {
29    depends_lib-append          port:libiodbc
30    configure.args-append       --with-iodbc=${prefix}
31}
32
33variant unixodbc conflicts iodbc description {Use unixODBC} {
34    depends_lib-append          port:unixODBC
35    configure.args-append       --with-unixodbc=${prefix}
36}
37
38if {![variant_isset iodbc]} {
39    default_variants +unixodbc
40}
41
42set pgsql_suffixes {82 83 84 90 91}
43
44set pgsql_ports {}
45foreach s ${pgsql_suffixes} {
46    lappend pgsql_ports postgresql${s}
47}
48
49foreach s ${pgsql_suffixes} {
50    set p postgresql${s}
51    set v [string index ${s} 0].[string index ${s} 1]
52    set i [lsearch -exact ${pgsql_ports} ${p}]
53    set c [lreplace ${pgsql_ports} ${i} ${i}]
54    eval [subst {
55        variant ${p} description "Build with PostgreSQL ${v}" conflicts ${c} {
56            depends_lib-append  port:${p}
57
58            configure.args-append   --with-libpq=${prefix}/lib/${p}/bin/pg_config
59        }
60    }]
61}
62
63proc has_pgsql_variant {} {
64    global pgsql_ports
65    foreach p ${pgsql_ports} {
66        if {[variant_isset ${p}]} {
67            return 1
68        }
69    }
70    return 0
71}
72
73if {![has_pgsql_variant]} {
74    set p [lindex ${pgsql_ports} end]
75    default_variants +${p}
76
77    if {![has_pgsql_variant]} {
78        error "One of the following variants must be set: [join ${pgsql_ports}]"
79    }
80}
81