Ticket #16990: Portfile.2

File Portfile.2, 2.9 KB (added by dweber@…, 16 years ago)

port:libpqxx26

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
3# $Id$
4
5PortSystem 1.0
6
7name        libpqxx26
8version     2.6.9
9
10categories  databases devel
11
12maintainers dweber
13
14description Official C++ client API for PostgreSQL
15
16long_description \
17libpqxx is the official C++ client API for PostgreSQL, the enterprise-strength \
18open-source database software.  There are many similar libraries for PostgreSQL \
19and for other databases, some of them database independent.  Most of these, \
20however, are fairly C like in their programming style, and fail to take \
21advantage of the full power of the C++ language as it has matured since \
22the acceptance of the Standard in 1996.  What libpqxx brings you is effective \
23use of templates to reduce the inconvenience of dealing with type conversions, \
24standard C++ strings to keep you from having to worry about buffer allocation \
25and overflow attacks, exceptions to take the tedious and error prone plumbing \
26around error handling out of your hands, constructors and destructors to bring \
27resource management under control, and even basic object orientation to give \
28you some extra reliability features that would be hard to get with most other \
29database interfaces.
30
31homepage        http://pqxx.org/development/libpqxx/
32master_sites    http://pqxx.org/download/software/libpqxx/
33
34distname        libpqxx-${version}
35
36checksums \
37    md5 0b0c64af41dfdeea8556dc359994e1cb \
38    sha1 8be9dcd0375337b170d5c94370fa896911d361f1 \
39    rmd160 c456b5a3ed3c96963aad334d3504ed0443a8f63e
40
41set server      postgresql83
42
43platforms       darwin
44depends_lib     port:pkgconfig \
45                port:${server}
46
47configure.env-append \
48    PG_CONFIG=${prefix}/lib/${server}/bin/pg_config
49
50configure.args-append \
51    --enable-shared
52
53# Enable tests after the build phase; see
54# http://guide.macports.org/#reference.phases.test
55# http://pqxx.org/development/libpqxx/browser/trunk/README?rev=latest
56# http://pqxx.org/development/libpqxx/wiki/TestDocs
57
58test.run        no
59test.cmd        make
60test.target     check
61
62pre-test {
63    system "initdb -D ${worksrcdir}/test_libpqxx"
64    system "pg_ctl -w -D ${worksrcdir}/test_libpqxx -l ${worksrcdir}/test_libpqxx/logfile -o \"-p 5455\" start"
65    # test for existence of ${worksrcdir}/test_libpqxx/postmaster.pid to indicate success
66
67    # PGDATABASE    (name of database; defaults to your user name)
68    # PGHOST        (database server; defaults to local machine)
69    # PGPORT        (PostgreSQL port to connect to; default is 5432)
70    # PGUSER        (your PostgreSQL user ID; defaults to your login name)
71    # PGPASSWORD    (your PostgreSQL password, if needed)
72    test.env-append \
73        PGDATABASE=${worksrcdir}/test_libpqxx \
74        PGPORT=5455
75        #PGUSER
76        #PGPASSWORD
77}
78
79post-test {
80    system "pg_ctl -w -D ${worksrcdir}/test_libpqxx stop -m fast"
81    system "rm -rf ${worksrcdir}/test_libpqxx"
82}
83