diff options
-rw-r--r-- | dev-python/psycopg/ChangeLog | 10 | ||||
-rw-r--r-- | dev-python/psycopg/files/psycopg-2.4.2-begin-segfault.patch | 34 | ||||
-rw-r--r-- | dev-python/psycopg/files/psycopg-2.4.2-setup.py.patch | 13 | ||||
-rw-r--r-- | dev-python/psycopg/psycopg-2.4.2.ebuild | 79 |
4 files changed, 135 insertions, 1 deletions
diff --git a/dev-python/psycopg/ChangeLog b/dev-python/psycopg/ChangeLog index a9d7750e683d..6ec51dfa3e95 100644 --- a/dev-python/psycopg/ChangeLog +++ b/dev-python/psycopg/ChangeLog @@ -1,6 +1,14 @@ # ChangeLog for dev-python/psycopg # Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/psycopg/ChangeLog,v 1.131 2011/09/10 17:39:59 jer Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/psycopg/ChangeLog,v 1.132 2011/09/14 07:43:04 djc Exp $ + +*psycopg-2.4.2 (14 Sep 2011) + + 14 Sep 2011; Dirkjan Ochtman <djc@gentoo.org> +psycopg-2.4.2.ebuild, + +files/psycopg-2.4.2-begin-segfault.patch, + +files/psycopg-2.4.2-setup.py.patch: + Version bump to 2.4.2 (fixes bug 379601, thanks jbergstroem and David + Butler). 10 Sep 2011; Jeroen Roovers <jer@gentoo.org> psycopg-2.4.1.ebuild: Marked ~hppa (bug #381709). diff --git a/dev-python/psycopg/files/psycopg-2.4.2-begin-segfault.patch b/dev-python/psycopg/files/psycopg-2.4.2-begin-segfault.patch new file mode 100644 index 000000000000..cbf2278d0bfa --- /dev/null +++ b/dev-python/psycopg/files/psycopg-2.4.2-begin-segfault.patch @@ -0,0 +1,34 @@ +X-Git-Url: https://dndg.it/cgi-bin/gitweb.cgi?p=public%2Fpsycopg2.git;a=blobdiff_plain;f=psycopg%2Fpqpath.c;h=1f0d5da95bd88aa4d5468874047e4b0139ffadd3;hp=cee5ce4c9c053981710959ca28b7e68702c44a97;hb=de6f2ac387231fcd57c05031c82471ea57255e2b;hpb=d9fce1f837151e6eadfd8ca761ef328a721198bd + +diff --git a/psycopg/pqpath.c b/psycopg/pqpath.c +index cee5ce4..1f0d5da 100644 +--- a/psycopg/pqpath.c ++++ b/psycopg/pqpath.c +@@ -344,11 +344,13 @@ pq_execute_command_locked(connectionObject *conn, const char *query, + } + if (*pgres == NULL) { + Dprintf("pq_execute_command_locked: PQexec returned NULL"); ++ PyEval_RestoreThread(*tstate); + if (!PyErr_Occurred()) { + const char *msg; + msg = PQerrorMessage(conn->pgconn); + if (msg && *msg) { *error = strdup(msg); } + } ++ *tstate = PyEval_SaveThread(); + goto cleanup; + } + +@@ -635,11 +637,13 @@ pq_get_guc_locked( + + if (*pgres == NULL) { + Dprintf("pq_get_guc_locked: PQexec returned NULL"); ++ PyEval_RestoreThread(*tstate); + if (!PyErr_Occurred()) { + const char *msg; + msg = PQerrorMessage(conn->pgconn); + if (msg && *msg) { *error = strdup(msg); } + } ++ *tstate = PyEval_SaveThread(); + goto cleanup; + } + if (PQresultStatus(*pgres) != PGRES_TUPLES_OK) {
\ No newline at end of file diff --git a/dev-python/psycopg/files/psycopg-2.4.2-setup.py.patch b/dev-python/psycopg/files/psycopg-2.4.2-setup.py.patch new file mode 100644 index 000000000000..a35502270e1f --- /dev/null +++ b/dev-python/psycopg/files/psycopg-2.4.2-setup.py.patch @@ -0,0 +1,13 @@ +diff --git a/setup.py b/setup.py +index e03876a..f5ec2ac 100644 +--- a/setup.py ++++ b/setup.py +@@ -461,7 +461,7 @@ if parser.has_option('build_ext', 'mx_include_dir'): + mxincludedir = parser.get('build_ext', 'mx_include_dir') + else: + mxincludedir = os.path.join(get_python_inc(plat_specific=1), "mx") +-if os.path.exists(mxincludedir): ++if not use_pydatetime and os.path.exists(mxincludedir): + # Build the support for mx: we will check at runtime if it can be imported + include_dirs.append(mxincludedir) + define_macros.append(('HAVE_MXDATETIME', '1'))
\ No newline at end of file diff --git a/dev-python/psycopg/psycopg-2.4.2.ebuild b/dev-python/psycopg/psycopg-2.4.2.ebuild new file mode 100644 index 000000000000..6d838178d888 --- /dev/null +++ b/dev-python/psycopg/psycopg-2.4.2.ebuild @@ -0,0 +1,79 @@ +# Copyright 1999-2011 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/dev-python/psycopg/psycopg-2.4.2.ebuild,v 1.1 2011/09/14 07:43:04 djc Exp $ + +EAPI="3" +SUPPORT_PYTHON_ABIS="1" +RESTRICT_PYTHON_ABIS="*-jython" + +inherit distutils eutils + +MY_PN="${PN}2" +MY_P="${MY_PN}-${PV}" + +DESCRIPTION="PostgreSQL database adapter for Python" +HOMEPAGE="http://initd.org/psycopg/ http://pypi.python.org/pypi/psycopg2" +SRC_URI="mirror://pypi/${MY_PN:0:1}/${MY_PN}/${MY_P}.tar.gz" + +LICENSE="GPL-2" +SLOT="2" +KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris" +IUSE="debug doc examples mxdatetime" + +RDEPEND=">=dev-db/postgresql-base-8.1 + mxdatetime? ( dev-python/egenix-mx-base )" +DEPEND="${RDEPEND} + doc? ( dev-python/sphinx )" +RESTRICT="test" + +S="${WORKDIR}/${MY_P}" + +PYTHON_CFLAGS=("2.* + -fno-strict-aliasing") + +DOCS="AUTHORS doc/HACKING doc/SUCCESS" +PYTHON_MODNAME="${PN}2" + +src_prepare() { + epatch "${FILESDIR}/${P}-setup.py.patch" + epatch "${FILESDIR}/${P}-begin-segfault.patch" + epatch "${FILESDIR}/${PN}-2.0.9-round-solaris.patch" + + python_convert_shebangs 2 doc/src/tools/stitch_text.py + + if use debug; then + sed -i 's/^\(define=\)/\1PSYCOPG_DEBUG,/' setup.cfg || die "sed failed" + fi + + if use mxdatetime; then + sed -i 's/\(use_pydatetime=\)1/\10/' setup.cfg || die "sed failed" + fi +} + +src_compile() { + distutils_src_compile + + if use doc; then + einfo "Generation of documentation" + pushd doc > /dev/null + emake -j1 html text || die "Generation of documentation failed" + popd > /dev/null + fi +} + +src_install() { + distutils_src_install + + if use doc; then + dodoc doc/psycopg2.txt || die "dodoc failed" + + pushd doc/html > /dev/null + insinto /usr/share/doc/${PF}/html + doins -r [a-z]* _static || die "Installation of documentation failed" + popd > /dev/null + fi + + if use examples; then + insinto /usr/share/doc/${PF}/examples + doins -r examples/* || die "Installation of examples failed" + fi +} |