diff options
author | Aaron W. Swenson <titanofold@gentoo.org> | 2012-01-31 11:18:23 +0000 |
---|---|---|
committer | Aaron W. Swenson <titanofold@gentoo.org> | 2012-01-31 11:18:23 +0000 |
commit | faf832ff070e26b6192d583e3060a614fa1c3ad2 (patch) | |
tree | f87c8c8e13db895f881090daa67768ef7d85fbca /dev-libs/libpqxx | |
parent | Version bump (bug 398519) (diff) | |
download | gentoo-2-faf832ff070e26b6192d583e3060a614fa1c3ad2.tar.gz gentoo-2-faf832ff070e26b6192d583e3060a614fa1c3ad2.tar.bz2 gentoo-2-faf832ff070e26b6192d583e3060a614fa1c3ad2.zip |
Adding back to fix bug 401607.
(Portage version: 2.1.10.41/cvs/Linux i686)
Diffstat (limited to 'dev-libs/libpqxx')
-rw-r--r-- | dev-libs/libpqxx/ChangeLog | 6 | ||||
-rw-r--r-- | dev-libs/libpqxx/files/libpqxx-3.1-gcc46.patch | 24 | ||||
-rw-r--r-- | dev-libs/libpqxx/libpqxx-3.1-r3.ebuild | 94 |
3 files changed, 123 insertions, 1 deletions
diff --git a/dev-libs/libpqxx/ChangeLog b/dev-libs/libpqxx/ChangeLog index e43b8f646965..38e8c6b02aee 100644 --- a/dev-libs/libpqxx/ChangeLog +++ b/dev-libs/libpqxx/ChangeLog @@ -1,6 +1,10 @@ # ChangeLog for dev-libs/libpqxx # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-libs/libpqxx/ChangeLog,v 1.80 2012/01/29 15:42:43 titanofold Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-libs/libpqxx/ChangeLog,v 1.81 2012/01/31 11:18:22 titanofold Exp $ + + 31 Jan 2012; Aaron W. Swenson <titanofold@gentoo.org> +libpqxx-3.1-r3.ebuild, + +files/libpqxx-3.1-gcc46.patch: + Adding back to fix bug 401607. 29 Jan 2012; Aaron W. Swenson <titanofold@gentoo.org> libpqxx-4.0-r1.ebuild: Added static-libs support. diff --git a/dev-libs/libpqxx/files/libpqxx-3.1-gcc46.patch b/dev-libs/libpqxx/files/libpqxx-3.1-gcc46.patch new file mode 100644 index 000000000000..91cd5d24a5f1 --- /dev/null +++ b/dev-libs/libpqxx/files/libpqxx-3.1-gcc46.patch @@ -0,0 +1,24 @@ +--- a/include/pqxx/compiler-internal.hxx ++++ b/include/pqxx/compiler-internal.hxx +@@ -76,7 +76,7 @@ + namespace internal + { + /// Wrapper for std::distance; not all platforms have std::distance(). +-template<typename T> inline ptrdiff_t distance(T first, T last) ++template<typename T> inline PGSTD::ptrdiff_t distance(T first, T last) + { + #ifdef PQXX_HAVE_DISTANCE + return PGSTD::distance(first, last); +--- a/test/unit/test_escape.cxx ++++ b/test/unit/test_escape.cxx +@@ -54,8 +54,8 @@ + PQXX_CHECK_EQUAL(t.quote("x"), "'x'", "Basic quote() fails."); + PQXX_CHECK_EQUAL(t.quote(1), "'1'", "quote() not dealing with int properly."); + PQXX_CHECK_EQUAL(t.quote(0), "'0'", "Quoting zero is a problem."); +- const char *const nullptr = NULL; +- PQXX_CHECK_EQUAL(t.quote(nullptr), "NULL", "Not quoting NULL correctly."); ++ const char *const null_ptr = NULL; ++ PQXX_CHECK_EQUAL(t.quote(null_ptr), "NULL", "Not quoting NULL correctly."); + PQXX_CHECK_EQUAL(t.quote(string("'")), "''''", "Escaping quotes goes wrong."); + + PQXX_CHECK_EQUAL(t.quote("x"), diff --git a/dev-libs/libpqxx/libpqxx-3.1-r3.ebuild b/dev-libs/libpqxx/libpqxx-3.1-r3.ebuild new file mode 100644 index 000000000000..220fb88e450e --- /dev/null +++ b/dev-libs/libpqxx/libpqxx-3.1-r3.ebuild @@ -0,0 +1,94 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-libs/libpqxx/libpqxx-3.1-r3.ebuild,v 1.3 2012/01/31 11:18:22 titanofold Exp $ + +EAPI="4" + +inherit eutils + +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + +DESCRIPTION="C++ client API for PostgreSQL. The standard front-end for writing C++ programs that use PostgreSQL." +SRC_URI="http://pqxx.org/download/software/${PN}/${P}.tar.gz" +HOMEPAGE="http://pqxx.org/development/libpqxx/" +LICENSE="BSD" +SLOT="0" +IUSE="doc" + +DEPEND="dev-db/postgresql-base" +RDEPEND="${DEPEND}" + +# src_test is interactive unless PGDATABASE and PGUSER is set either as an +# environment variable or in /etc/libpqxx_test_env +PROPERTIES="interactive" + +src_prepare() { + epatch "${FILESDIR}/libpqxx-3.1-gcc46.patch" +} + +src_configure() { + econf --enable-shared +} + +src_install () { + emake DESTDIR="${D}" install + + dodoc AUTHORS ChangeLog NEWS README* + use doc && dohtml -r doc/html/* +} + +src_test() { + ewarn "The tests need a running PostgreSQL server version 8.4.x or older" + ewarn "and an existing database." + ewarn "Test requires PGDATABASE and PGUSER to be set at a minimum." + ewarn "Optionally, set PGPORT and PGHOST." + ewarn "Define them at the command line or in:" + ewarn " ${EROOT%/}/etc/libpqxx_test_env" + ewarn "Make sure 'standard_conforming_strings' is set to off in postgresql.conf." + + if [[ -z $PGDATABASE || -z $PGUSER ]] ; then + if [[ -f ${EROOT%/}/etc/libpqxx_test_env ]] ; then + source "${EROOT%/}/etc/libpqxx_test_env" + [[ -n $PGDATABASE ]] && export PGDATABASE + [[ -n $PGHOST ]] && export PGHOST + [[ -n $PGPORT ]] && export PGPORT + [[ -n $PGUSER ]] && export PGUSER + fi + + # In case the file wasn't written properly or doesn't exist + if [[ -z $PGDATABASE || -z $PGUSER ]] ; then + echo -n "Database (Default: $(whoami)): " + read PGDATABASE + [[ -n $PGDATABASE ]] && export PGDATABASE + echo -n "Host (Default: Unix socket): " + read PGHOST + [[ -n $PGHOST ]] && export PGHOST + echo -n "Port (Default: 5432): " + read PGPORT + [[ -n $PGPORT ]] && export PGPORT + echo -n "User (Default: $(whoami)): " + read PGUSER + [[ -n $PGUSER ]] && export PGUSER + fi + fi + + local server_version + server_version=$(psql -Aqwtc 'SELECT version();' 2> /dev/null) + if [[ $? = 0 ]] ; then + server_version=$(echo ${server_version} | cut -d " " -f 2 | cut -d "." -f -2 | tr -d .) + if [[ $server_version < 90 ]] ; then + cd "${S}/test" + emake check + else + eerror "Server version must be 8.4.x or below." + die "Server version isn't 8.4.x or below" + fi + else + eerror "Is the server running?" + eerror "Check that the role and database exist, and authentication method is set to" + eerror "trust for:" + eerror " Role: ${PGUSER}" + eerror " Database: ${PGDATABASE}" + die "Couldn't connect to server." + fi +} |