# Copyright 1999-2009 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/dev-libs/libpqxx/libpqxx-2.6.9.ebuild,v 1.19 2009/07/19 11:55:30 nixnut Exp $ 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. Supersedes older libpq++ interface." SRC_URI="ftp://pqxx.org/software/${PN}/${P}.tar.gz" HOMEPAGE="http://pqxx.org/development/libpqxx/" LICENSE="BSD" SLOT="0" IUSE="" DEPEND="virtual/postgresql-base" RDEPEND="${DEPEND}" src_unpack() { unpack ${A} cd "${S}" epatch "${FILESDIR}/${P}-gcc43.patch" epatch "${FILESDIR}/${P}-gcc44.patch" # should be safe enough to remove the lines directly from configure, # since it's copied directly from configure.ac sed -i \ -e 's/\(gcc_visibility\)=yes/\1=no/g' \ -e 's@\(#define PQXX_HAVE_GCC_VISIBILITY 1\)@/* \1 */@g' \ -e '/-Werror/d' \ configure || die "sed failed" } src_compile() { econf --enable-shared || die "econf failed" emake || die "emake failed" } src_install () { emake DESTDIR="${D}" install || die "emake install failed" dodoc AUTHORS ChangeLog NEWS README* TODO dohtml -r doc/html/* } src_test() { ewarn "The tests need a running PostgreSQL server and an existing database!" ewarn "You can set the following environment variables to change the connection parameters:" ewarn "PGDATABASE (default: username, probably root)" ewarn "PGHOST (default: localhost)" ewarn "PGPORT (default: pg's UNIX domain-socket)" ewarn "PGUSER (default: username, probably root)" epause 10 if [[ -n ${PGDATABASE} ]] ; then cd "${S}/test" # Working around a mysterious bug in gcc-4.1 sed -i -e 's/-O2/-O1/' Makefile emake -j1 check || die "emake check failed" else ewarn "Tests skipped since PGDATABASE is not defined or empty" fi }