diff options
Diffstat (limited to 'dev-python/python-gflags')
5 files changed, 112 insertions, 13 deletions
diff --git a/dev-python/python-gflags/ChangeLog b/dev-python/python-gflags/ChangeLog index 6cd495d22a5f..e0db40a8a94e 100644 --- a/dev-python/python-gflags/ChangeLog +++ b/dev-python/python-gflags/ChangeLog @@ -1,6 +1,12 @@ # ChangeLog for dev-python/python-gflags # Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/python-gflags/ChangeLog,v 1.9 2012/12/16 14:15:02 pacho Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/python-gflags/ChangeLog,v 1.10 2012/12/16 16:14:31 mgorny Exp $ + + 16 Dec 2012; Michał Górny <mgorny@gentoo.org> + +files/python-gflags-2.0-scripts-install.patch, + +files/python-gflags-2.0-tests-respect-tmpdir.patch, metadata.xml, + python-gflags-2.0.ebuild: + Migrate to distutils-r1, run tests and make Python team a maintainer. 16 Dec 2012; Pacho Ramos <pacho@gentoo.org> -python-gflags-1.6.ebuild, metadata.xml: diff --git a/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch b/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch new file mode 100644 index 000000000000..357121c61aab --- /dev/null +++ b/dev-python/python-gflags/files/python-gflags-2.0-scripts-install.patch @@ -0,0 +1,26 @@ +From d544cdad63faa5a53ba524e39f091f4a18e1eeb8 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sun, 16 Dec 2012 16:27:13 +0100 +Subject: [PATCH] Install Python scripts using 'scripts' key. + +This is necessary to ensure that the shebangs are properly replaced when +installing for multiple Python implementations. +--- + setup.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/setup.py b/setup.py +index 573db2d..ddad318 100755 +--- a/setup.py ++++ b/setup.py +@@ -39,6 +39,6 @@ setup(name='python-gflags', + author_email='google-gflags@googlegroups.com', + url='http://code.google.com/p/python-gflags', + py_modules=["gflags", "gflags_validators"], +- data_files=[("bin", ["gflags2man.py"])], ++ scripts=["gflags2man.py"], + include_package_data=True, + ) +-- +1.8.0.2 + diff --git a/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch b/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch new file mode 100644 index 000000000000..035b6b6be404 --- /dev/null +++ b/dev-python/python-gflags/files/python-gflags-2.0-tests-respect-tmpdir.patch @@ -0,0 +1,55 @@ +From 4a430830e75bfe2228e9d953b12f74a20ec2cb8f Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> +Date: Sun, 16 Dec 2012 16:53:24 +0100 +Subject: [PATCH] Use tempfile.mkdtemp() to create temporary directory. + +This creates an unique directory, and respects TMPDIR. +--- + tests/gflags_unittest.py | 11 ++++++----- + 1 file changed, 6 insertions(+), 5 deletions(-) + +diff --git a/tests/gflags_unittest.py b/tests/gflags_unittest.py +index 8e948bf..fcddb7b 100755 +--- a/tests/gflags_unittest.py ++++ b/tests/gflags_unittest.py +@@ -38,6 +38,7 @@ import cStringIO + import sys + import os + import shutil ++import tempfile + + import gflags + from flags_modules_for_testing import module_foo +@@ -907,17 +908,16 @@ class LoadFromFlagFileTest(googletest.TestCase): + flag_values=self.flag_values) + self.files_to_delete = [] + ++ # Figure out where to create temporary files ++ self.tmp_path = tempfile.mkdtemp(prefix='gflags_unittest') ++ + def tearDown(self): + self._RemoveTestFiles() + + def _SetupTestFiles(self): + """ Creates and sets up some dummy flagfile files with bogus flags""" + +- # Figure out where to create temporary files +- tmp_path = '/tmp/flags_unittest' +- if os.path.exists(tmp_path): +- shutil.rmtree(tmp_path) +- os.makedirs(tmp_path) ++ tmp_path = self.tmp_path + + try: + tmp_flag_file_1 = open(tmp_path + '/UnitTestFile1.tst', 'w') +@@ -973,6 +973,7 @@ class LoadFromFlagFileTest(googletest.TestCase): + os.remove(file_name) + except OSError, e_msg: + print '%s\n, Problem deleting test file' % e_msg ++ shutil.rmtree(self.tmp_path) + #end RemoveTestFiles def + + def _ReadFlagsFromFiles(self, argv, force_gnu): +-- +1.8.0.2 + diff --git a/dev-python/python-gflags/metadata.xml b/dev-python/python-gflags/metadata.xml index 3aa4bc9253ad..acab986467bf 100644 --- a/dev-python/python-gflags/metadata.xml +++ b/dev-python/python-gflags/metadata.xml @@ -1,9 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <maintainer> - <email>maintainer-needed@gentoo.org</email> - </maintainer> + <herd>python</herd> <upstream> <remote-id type="google-code">python-gflags</remote-id> </upstream> diff --git a/dev-python/python-gflags/python-gflags-2.0.ebuild b/dev-python/python-gflags/python-gflags-2.0.ebuild index f9b910a65105..b48f4fc9800a 100644 --- a/dev-python/python-gflags/python-gflags-2.0.ebuild +++ b/dev-python/python-gflags/python-gflags-2.0.ebuild @@ -1,14 +1,14 @@ # Copyright 1999-2012 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 -# $Header: /var/cvsroot/gentoo-x86/dev-python/python-gflags/python-gflags-2.0.ebuild,v 1.3 2012/06/27 05:05:34 xarthisius Exp $ +# $Header: /var/cvsroot/gentoo-x86/dev-python/python-gflags/python-gflags-2.0.ebuild,v 1.4 2012/12/16 16:14:31 mgorny Exp $ EAPI="4" -PYTHON_COMPAT="python2_5 python2_6 python2_7 pypy1_8 pypy1_9" +PYTHON_COMPAT=( python{2_5,2_6,2_7} pypy{1_8,1_9} ) -inherit python-distutils-ng +inherit distutils-r1 -DESCRIPTION="Google's Python argument parsing library." +DESCRIPTION="Google's Python argument parsing library" HOMEPAGE="http://code.google.com/p/python-gflags/" SRC_URI="http://python-gflags.googlecode.com/files/${P}.tar.gz" @@ -17,11 +17,25 @@ SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="" -DEPEND="dev-python/setuptools" +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" RDEPEND="" -python_prepare_all() { - sed \ - -e 's/data_files=\[("bin", \["gflags2man.py"\])\]/scripts=\["gflags2man.py"\]/' \ - -i setup.py || die "sed failed" +PATCHES=( + # The scripts are installed as 'data' rather than scripts. + # http://code.google.com/p/python-gflags/issues/detail?id=12 + "${FILESDIR}"/${P}-scripts-install.patch + + # Tests try to write to /tmp (sandbox). + # http://code.google.com/p/python-gflags/issues/detail?id=13 + "${FILESDIR}"/${P}-tests-respect-tmpdir.patch +) + +python_test() { + local t + + cd tests || die + for t in *.py; do + # (it's ok to run the gflags_googletest.py too) + "${PYTHON}" "${t}" || die "Tests fail with ${EPYTHON}" + done } |