Commits

Nikolaj Sjujskij  committed fdec7a2

Add py3.3-capable dev-python/psycopg

  • Participants
  • Parent commits 88425e6

Comments (0)

Files changed (4)

File dev-python/psycopg/Manifest

+DIST psycopg2-2.4.6.tar.gz 667783 SHA256 4edcb40b0a039b4b559a6bc887b2155db8b6c53d0f55b00af8338c77b725621f SHA512 da23264f66b4054f26b7029b97856cdab91870e8a6c72cd5dabe37b36c96b3cb19a9adebf49844f5330ae3009f1ff4a81cc28eba1c4baf18e099ca7a10c808ad WHIRLPOOL 3896ff4227f4dec22288d70aec792c2df114df00e387d7f1f37a36f91bf7bc0eb5ae3cb5503a180ec1e6a8be15c510d098aa60eac7076b437ae64a76a6e5b521

File dev-python/psycopg/files/psycopg-2.0.9-round-solaris.patch

+round() is available on Solaris
+
+--- psycopg/config.h
++++ psycopg/config.h
+@@ -102,7 +102,7 @@
+ #define inline
+ #endif
+ 
+-#if (defined(__FreeBSD__) && __FreeBSD_version < 503000) || (defined(_WIN32) && !defined(__GNUC__)) || defined(__sun__) || defined(sun)
++#if (defined(__FreeBSD__) && __FreeBSD_version < 503000) || (defined(_WIN32) && !defined(__GNUC__))
+ /* what's this, we have no round function either? */
+ static double round(double num)
+ {

File dev-python/psycopg/files/psycopg-2.4.2-setup.py.patch

+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'))

File dev-python/psycopg/psycopg-2.4.6-r2.ebuild

+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/dev-python/psycopg/psycopg-2.4.6-r1.ebuild,v 1.2 2013/01/15 18:03:38 mgorny Exp $
+
+EAPI=5
+PYTHON_COMPAT=( python{2_5,2_6,2_7,3_1,3_2,3_3} )
+
+inherit distutils-r1 flag-o-matic
+
+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 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~x86-solaris"
+IUSE="debug doc examples"
+
+RDEPEND=">=dev-db/postgresql-base-8.1"
+DEPEND="${RDEPEND}
+	doc? ( dev-python/sphinx[${PYTHON_USEDEP}] )"
+
+RESTRICT="test"
+
+S="${WORKDIR}/${MY_P}"
+
+python_compile() {
+	local CFLAGS=${CFLAGS} CXXFLAGS=${CXXFLAGS}
+
+	[[ ${EPYTHON} != python3* ]] && append-flags -fno-strict-aliasing
+
+	distutils-r1_python_compile
+}
+
+python_prepare_all() {
+	local PATCHES=(
+		"${FILESDIR}/${PN}-2.4.2-setup.py.patch"
+		"${FILESDIR}/${PN}-2.0.9-round-solaris.patch"
+	)
+
+	if use debug; then
+		sed -i 's/^\(define=\)/\1PSYCOPG_DEBUG,/' setup.cfg || die
+	fi
+
+#	if use mxdatetime; then
+#		sed -i 's/\(use_pydatetime=\)1/\10/' setup.cfg || die
+#	fi
+
+	distutils-r1_python_prepare_all
+}
+
+python_compile_all() {
+	use doc && emake -C doc -j1 html text
+}
+
+python_install_all() {
+	distutils-r1_python_install_all
+
+	dodoc doc/{HACKING,SUCCESS}
+
+	if use doc; then
+		dodoc doc/psycopg2.txt
+		dohtml -r doc/html/.
+	fi
+
+	if use examples; then
+		insinto /usr/share/doc/${PF}/examples
+		doins -r examples/.
+	fi
+}