[91295] trunk/dports/databases/libpqxx/Portfile

ryandesign at macports.org ryandesign at macports.org
Wed Mar 28 07:25:40 PDT 2012


Revision: 91295
          https://trac.macports.org/changeset/91295
Author:   ryandesign at macports.org
Date:     2012-03-28 07:25:40 -0700 (Wed, 28 Mar 2012)
Log Message:
-----------
libpqxx: begin to fix tests; see #33673

Modified Paths:
--------------
    trunk/dports/databases/libpqxx/Portfile

Modified: trunk/dports/databases/libpqxx/Portfile
===================================================================
--- trunk/dports/databases/libpqxx/Portfile	2012-03-28 14:24:05 UTC (rev 91294)
+++ trunk/dports/databases/libpqxx/Portfile	2012-03-28 14:25:40 UTC (rev 91295)
@@ -76,29 +76,33 @@
 # http://pqxx.org/development/libpqxx/browser/trunk/README?rev=latest
 # http://pqxx.org/development/libpqxx/wiki/TestDocs
 
-test.run        no
+set dbdir       ${workpath}/db
+set dbname      test_libpqxx
+set dbport      5455
+test.run        yes
 test.cmd        make
 test.target     check
+test.post_args  [portbuild::build_getjobsarg]
 
+# PGDATABASE    (name of database; defaults to your user name)
+# PGHOST        (database server; defaults to local machine)
+# PGPORT        (PostgreSQL port to connect to; default is 5432)
+# PGUSER        (your PostgreSQL user ID; defaults to your login name)
+# PGPASSWORD    (your PostgreSQL password, if needed)
+test.env        PGDATABASE=${dbname} \
+                PGPORT=${dbport}
+                #PGUSER
+                #PGPASSWORD
+
 pre-test {
-    system "initdb -D ${worksrcdir}/test_libpqxx"
-    system "pg_ctl -w -D ${worksrcdir}/test_libpqxx -l ${worksrcdir}/test_libpqxx/logfile -o \"-p 5455\" start"
-    # test for existence of ${worksrcdir}/test_libpqxx/postmaster.pid to indicate success
-
-    # PGDATABASE    (name of database; defaults to your user name)
-    # PGHOST        (database server; defaults to local machine)
-    # PGPORT        (PostgreSQL port to connect to; default is 5432)
-    # PGUSER        (your PostgreSQL user ID; defaults to your login name)
-    # PGPASSWORD    (your PostgreSQL password, if needed)
-    test.env-append \
-        PGDATABASE=${worksrcdir}/test_libpqxx \
-        PGPORT=5455
-        #PGUSER
-        #PGPASSWORD
+    system "${prefix}/lib/${server}/bin/initdb -D ${dbdir}"
+    # "system" doesn't return for some reason, but exec does
+    if {[catch {exec sudo -u ${macportsuser} ${prefix}/lib/${server}/bin/pg_ctl -w -D ${dbdir} -l ${dbdir}/logfile -o "-p ${dbport}" start} result]} {
+        return -code error "could not start postgresql server"
+    }
+    system "${prefix}/lib/${server}/bin/createdb -p ${dbport} ${dbname}"
 }
 
 post-test {
-    system "pg_ctl -w -D ${worksrcdir}/test_libpqxx stop -m fast"
-    system "rm -rf ${worksrcdir}/test_libpqxx"
+    system "${prefix}/lib/${server}/bin/pg_ctl -w -D ${dbdir} stop -m fast"
 }
-
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20120328/ae1ed5d8/attachment-0001.html>


More information about the macports-changes mailing list