On attempting to migrate this to distutils-r1, I found the testsuite to hang in the current mpi4py-1.3.ebuild. testuser@archtester ~/cvsPortage/gentoo-x86/app-emulation/xen-tools $ pushd /mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7 ~/cvsPortage/gentoo-x86/app-emulation/xen-tools $ PYTHONPATH=build/lib/ mpiexec -n 2 python test/runtests.py --exclude=file --exclude=class or $ PYTHONPATH=build/lib/ mpiexec -n 2 python test/runtests.py yields [0@archtester] Python 2.7 (/usr/bin/python2.7) [0@archtester] MPI 2.1 (Open MPI 1.6.4) [0@archtester] mpi4py 1.3 (/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/build/lib/mpi4py) [1@archtester] Python 2.7 (/usr/bin/python2.7) [1@archtester] MPI 2.1 (Open MPI 1.6.4) [1@archtester] mpi4py 1.3 (/mnt/gen2/TmpDir/portage/dev-python/mpi4py-1.3-r1/work/mpi4py-1.3-python2_7/build/lib/mpi4py) ................................................................................................................................................................ x many more lines ---------------------------------------------------------------------- Ran 580 tests in 28.996s OK ---------------------------------------------------------------------- Ran 580 tests in 28.978s OK so the testsuite works perfectly. dev-python/mpi4py $ PYTHON_TARGETS=python2_7 ebuild mpi4py-1.3.ebuild clean test =============================================== >>> Source compiled. * Testing of dev-python/mpi4py-1.3 with CPython 2.7... ^Z [36]+ Stopped PYTHON_TARGETS=python2_7 ebuild mpi4py-1.3.ebuild clean test Identical outcome in the would be migrated mpi4py-1.3-r1.ebuild. I've not seen anything like this before.
This was resolved in bug #462602 in openmpi dev-python/mpi4py $ PYTHON_TARGETS="python2_6 python3_2" ebuild mpi4py-1.3-r1.ebuild clean test yielded =================================================== Traceback (most recent call last): File "./test/runtests.py", line 207, in <module> sys.exit(main()) File "./test/runtests.py", line 198, in main testsuite = load_tests(options, args) File "./test/runtests.py", line 157, in load_tests module = __import__(testname) File "./test/test_subclass.py", line 298, in <module> dummy.setUp() File "./test/test_subclass.py", line 267, in setUp MPI.INFO_NULL) File "File.pyx", line 67, in mpi4py.MPI.File.Open (src/mpi4py.MPI.c:82647) mpi4py.MPI.Exception: MPI_ERR_OTHER: known error not in list Traceback (most recent call last): File "./test/runtests.py", line 207, in <module> sys.exit(main()) File "./test/runtests.py", line 198, in main testsuite = load_tests(options, args) File "./test/runtests.py", line 157, in load_tests module = __import__(testname) File "./test/test_subclass.py", line 298, in <module> dummy.setUp() File "./test/test_subclass.py", line 267, in setUp MPI.INFO_NULL) File "File.pyx", line 67, in mpi4py.MPI.File.Open (src/mpi4py.MPI.c:82647) mpi4py.MPI.Exception: MPI_ERR_OTHER: known error not in list with emerge -1 sys-cluster/openmpi. < metadata.xml, mpi4py-1.3.ebuild: Exclude tests when romio is not set on mpi has_version virtual/mpi[romio] || exclude="--exclude=file --exclude=class" mpiexec -n 2 "${PYTHON}" ./test/runtests.py ${exclude}> I this ever worked, it doesn't now. 26 Jul 2013; Ian Delaney <idella4@gentoo.org> +mpi4py-1.3-r1.ebuild: migrate to distutils-r1, keep old for now considering changes needed