source: trunk/dports/databases/postgresql84/Portfile @ 122597

Last change on this file since 122597 was 122597, checked in by jwa@…, 5 years ago

postgresql84: version bump to 8.4.22, drop an incorporated patchfile

  • Property svn:eol-style set to native
  • Property svn:keywords set to Id
File size: 4.2 KB
Line 
1# -*- 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
2# $Id: Portfile 122597 2014-07-24 14:02:48Z jwa@macports.org $
3
4PortSystem 1.0
5PortGroup select 1.0
6
7name                    postgresql84
8version                 8.4.22
9
10categories              databases
11platforms               darwin
12maintainers             mww jwa
13license                 Permissive
14description             The most advanced open-source database available anywhere.
15long_description PostgreSQL is Object-Relational Database Management System. \
16                                It supports almost all SQL constructs, including transactions, \
17                                subselects, and user-defined types and functions. Write-ahead \
18                                logging means increased performance while retaining data \
19                                integrity.
20
21homepage                http://www.postgresql.org/
22master_sites            http://ftp3.de.postgresql.org/pub/Mirrors/ftp.postgresql.org/source/v${version}/ \
23                        postgresql:source/v${version}/
24distname                postgresql-${version}
25
26checksums           rmd160  c46d1fd3405150f0ed25012dad1ef8110d2c2d64 \
27                    sha256  5c1d56ce77448706d9dd03b2896af19d9ab1b9b8dcdb96c39707c74675ca3826
28
29use_bzip2               yes
30
31depends_lib             port:readline port:openssl port:zlib port:libxml2 port:libxslt port:ossp-uuid
32depends_build           port:bison
33depends_run             port:postgresql_select
34
35worksrcdir              postgresql-${version}
36
37set libdir              ${prefix}/lib/${name}
38configure.args  --sysconfdir=${prefix}/etc/${name} \
39                                --bindir=${libdir}/bin \
40                                --libdir=${libdir} \
41                                --includedir=${prefix}/include/${name} \
42                                --datadir=${prefix}/share/${name} \
43                                --mandir=${prefix}/share/man \
44                                --without-docdir \
45                                --with-includes=${prefix}/include \
46                                --with-libraries=${prefix}/lib \
47                                --with-openssl \
48                                --with-bonjour \
49                                --with-readline \
50                                --with-zlib \
51                                --with-libxml \
52                                --with-libxslt \
53                                --enable-thread-safety \
54                                --enable-integer-datetimes \
55                                --with-ossp-uuid
56configure.cppflags-append       -I${prefix}/include/ossp
57
58if {[variant_isset universal]} {
59    post-configure {
60        system "cd ${worksrcpath}/src/include \
61                && ed - pg_config.h < ${filespath}/pg_config.h.ed \
62                && touch stamp-h"
63        system "cd ${worksrcpath}/src/interfaces/ecpg/include \
64                && ed - ecpg_config.h < ${filespath}/ecpg_config.h.ed \
65                && touch stamp-h"
66    }
67}
68
69build.type              gnu
70build.target
71
72test.run                yes
73test.target             check
74
75livecheck.type  regex
76livecheck.url   ${homepage}
77livecheck.regex (8\\.4\\.\[0-9\]+)
78
79platform darwin 12 {
80    patchfiles-append   postgresql-uuid-ossp.patch
81}
82
83platform darwin 13 {
84    patchfiles-append   postgresql-uuid-ossp.patch
85    configure.args-delete   --with-bonjour
86    configure.args-append   --without-bonjour
87}
88
89# prepare the contrib modules
90set contribs {}
91
92post-build {
93    set contribdirs [glob -nocomplain -type d ${worksrcpath}/contrib/*]
94    foreach d [lsort $contribdirs] {
95        if { [file exists $d/Makefile] } {
96            lappend contribs [file tail $d]
97        }
98    }
99        foreach contrib ${contribs} {
100                system "cd ${worksrcpath}/contrib/${contrib}/ && ${build.cmd}"
101        }
102}
103
104post-destroot {
105        foreach contrib ${contribs} {
106                system "echo contrib: \"${contrib}\""
107                system "cd ${worksrcpath}/contrib/${contrib}/ && \
108                        ${destroot.cmd} install ${destroot.destdir} && touch DONE"
109        }
110        system "cd ${destroot}${prefix}/bin && ln -sf ${libdir}/bin/psql psql84"
111        file delete -force ${destroot}${prefix}/share/doc/postgresql \
112                ${destroot}${prefix}/share/man
113}
114
115select.group    postgresql
116select.file     ${filespath}/${name}
117
118variant python requires python27 description {add support for python} {
119}
120
121variant python27 description {add support for python 2.7} {
122        depends_lib-append              port:python27
123        configure.args-append   --with-python
124        configure.python                ${prefix}/bin/python2.7
125}
126
127variant krb5 description {add support for Kerberos 5 authentication} {
128        configure.args-append   --with-krb5
129}
130
131variant perl description {add Perl support} {
132        depends_lib-append                      bin:perl:perl5
133        configure.args-append           --with-perl
134}
135
136variant tcl description {add Tcl support} {
137        depends_lib-append                      port:tcl
138        configure.args-append           --with-tcl --with-tclconfig=${prefix}/lib
139        configure.env-append            TCLSH=${prefix}/bin/tclsh
140}
141
142variant earthdistance description {add earthdistance contrib module} {
143    lappend contribs cube earthdistance
144}
145
146post-install {
147        ui_msg "\nTo use the postgresql server, install the postgresql84-server port"
148}
149
Note: See TracBrowser for help on using the repository browser.