On Tue, 4 Feb 2020 09:11:07 +0100 Martin Reindl wrote: > Hello ports@ > > attached diff updates math/py-bottleneck to 1.3.1: > > - take MAINTAINER > - BROKEN-powerpc: there have been some changes in upstream, please > retest on powerpc and sparc64, for now I've added COMPILER but we > might be able to do without! > - tests all pass on python3, with python2 one test out of 190 fails > (amd64 tested) > > OK? > > -m
I tried on powerpc and: - it builds and passes all tests, see the logs [0] - it fails with the same error BROKEN-powerpc message when base-gcc is used, so that COMPILER line is needed. I've moved it per Makefile.template recommendations, and added a reason for it - py-nose was not picked up because TEST_DEPENDS is redefined later, i fixed that Below is a diff with these changes made. As far as powerpc goes, i'm fine with it. The diff looks good to me but i know nothing about python porting subtleties. Charlène. [0] https://bin.charlenew.xyz/py-bottleneck.tgz Index: Makefile =================================================================== RCS file: /cvs/ports/math/py-bottleneck/Makefile,v retrieving revision 1.8 diff -u -p -u -p -r1.8 Makefile --- Makefile 12 Jul 2019 20:47:46 -0000 1.8 +++ Makefile 4 Feb 2020 13:13:38 -0000 @@ -1,19 +1,21 @@ # $OpenBSD: Makefile,v 1.8 2019/07/12 20:47:46 sthen Exp $ -BROKEN-powerpc = bottleneck/src/move.c:568: internal compiler error: in extract_insn, at recog.c:2077 - COMMENT = fast NumPy array functions written in C -MODPY_EGG_VERSION = 1.2.1 +MODPY_EGG_VERSION = 1.3.1 DISTNAME = Bottleneck-${MODPY_EGG_VERSION} PKGNAME = py-${DISTNAME:L} CATEGORIES = math -REVISION = 1 + +MAINTAINER = Martin Reindl <mar...@catai.org> # BSD PERMIT_PACKAGE = Yes -WANTLIB += ${MODPY_WANTLIB} pthread +WANTLIB += ${MODPY_WANTLIB} pthread + +# ICE with base-gcc +COMPILER = base-clang ports-gcc MODULES = lang/python @@ -27,8 +29,11 @@ MODPY_SETUPTOOLS = Yes FLAVORS = python3 FLAVOR ?= -# one test fail: -# numpy 1.9.2 - median() don't check if array contains any nan's +MODPY_PYTEST = Yes +TEST_DEPENDS += devel/py-pluggy${MODPY_FLAVOR} \ + devel/py-test${MODPY_FLAVOR} + +# on python2, test_memory_leak fails pre-test: @${MODPY_CMD} build_ext --inplace Index: distinfo =================================================================== RCS file: /cvs/ports/math/py-bottleneck/distinfo,v retrieving revision 1.2 diff -u -p -u -p -r1.2 distinfo --- distinfo 16 May 2017 14:57:28 -0000 1.2 +++ distinfo 4 Feb 2020 13:13:38 -0000 @@ -1,2 +1,2 @@ -SHA256 (Bottleneck-1.2.1.tar.gz) = bvzeX4MK7WT+r8oDWbUdsOGExyr4umZ1tKmfJjki6zY= -SIZE (Bottleneck-1.2.1.tar.gz) = 105225 +SHA256 (Bottleneck-1.3.1.tar.gz) = RRWGNwRiy2I9atYEpUXR6X+1HSq1JSsaxXNQqD5JSig= +SIZE (Bottleneck-1.3.1.tar.gz) = 88192 Index: patches/patch-setup_py =================================================================== RCS file: /cvs/ports/math/py-bottleneck/patches/patch-setup_py,v retrieving revision 1.2 diff -u -p -u -p -r1.2 patch-setup_py --- patches/patch-setup_py 16 May 2017 14:57:28 -0000 1.2 +++ patches/patch-setup_py 4 Feb 2020 13:13:38 -0000 @@ -2,25 +2,39 @@ $OpenBSD: patch-setup_py,v 1.2 2017/05/1 Index: setup.py --- setup.py.orig +++ setup.py -@@ -32,17 +32,17 @@ def prepare_modules(): - make_c_files() - ext = [Extension("bottleneck.reduce", - sources=["bottleneck/src/reduce.c"], -- extra_compile_args=['-O2'])] -+ extra_compile_args=[])] - ext += [Extension("bottleneck.move", - sources=["bottleneck/src/move.c", - "bottleneck/src/move_median/move_median.c"], -- extra_compile_args=['-O2'])] -+ extra_compile_args=[])] - ext += [Extension("bottleneck.nonreduce", - sources=["bottleneck/src/nonreduce.c"], -- extra_compile_args=['-O2'])] -+ extra_compile_args=[])] - ext += [Extension("bottleneck.nonreduce_axis", - sources=["bottleneck/src/nonreduce_axis.c"], -- extra_compile_args=['-O2'])] -+ extra_compile_args=[])] +@@ -108,7 +108,7 @@ def prepare_modules(): + "bottleneck.reduce", + sources=["bottleneck/src/reduce.c"], + depends=base_includes, +- extra_compile_args=["-O2"], ++ extra_compile_args=[], + ) + ] + ext += [ +@@ -119,7 +119,7 @@ def prepare_modules(): + "bottleneck/src/move_median/move_median.c", + ], + depends=base_includes + ["bottleneck/src/move_median/move_median.h"], +- extra_compile_args=["-O2"], ++ extra_compile_args=[], + ) + ] + ext += [ +@@ -127,7 +127,7 @@ def prepare_modules(): + "bottleneck.nonreduce", + sources=["bottleneck/src/nonreduce.c"], + depends=base_includes, +- extra_compile_args=["-O2"], ++ extra_compile_args=[], + ) + ] + ext += [ +@@ -135,7 +135,7 @@ def prepare_modules(): + "bottleneck.nonreduce_axis", + sources=["bottleneck/src/nonreduce_axis.c"], + depends=base_includes, +- extra_compile_args=["-O2"], ++ extra_compile_args=[], + ) + ] return ext - - Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/math/py-bottleneck/pkg/PLIST,v retrieving revision 1.1.1.1 diff -u -p -u -p -r1.1.1.1 PLIST --- pkg/PLIST 20 Nov 2016 10:18:58 -0000 1.1.1.1 +++ pkg/PLIST 4 Feb 2020 13:13:38 -0000 @@ -3,14 +3,17 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/PKG-INFO lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/SOURCES.txt lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/dependency_links.txt +lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/not-zip-safe lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/requires.txt lib/python${MODPY_VERSION}/site-packages/Bottleneck-${MODPY_EGG_VERSION}-py${MODPY_VERSION}.egg-info/top_level.txt lib/python${MODPY_VERSION}/site-packages/bottleneck/ -lib/python${MODPY_VERSION}/site-packages/bottleneck/LICENSE lib/python${MODPY_VERSION}/site-packages/bottleneck/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/bottleneck/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/bottleneck/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/bottleneck/${MODPY_PYCACHE}version.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/${MODPY_PYCACHE}_pytesttester.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/${MODPY_PYCACHE}_version.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/_pytesttester.py +lib/python${MODPY_VERSION}/site-packages/bottleneck/_version.py lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/ lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/${MODPY_PYCACHE}/ @@ -21,10 +24,10 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/autotimeit.py lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/bench.py lib/python${MODPY_VERSION}/site-packages/bottleneck/benchmark/bench_detailed.py -lib/python${MODPY_VERSION}/site-packages/bottleneck/move.so -lib/python${MODPY_VERSION}/site-packages/bottleneck/nonreduce.so -lib/python${MODPY_VERSION}/site-packages/bottleneck/nonreduce_axis.so -lib/python${MODPY_VERSION}/site-packages/bottleneck/reduce.so +@so lib/python${MODPY_VERSION}/site-packages/bottleneck/move.so +@so lib/python${MODPY_VERSION}/site-packages/bottleneck/nonreduce.so +@so lib/python${MODPY_VERSION}/site-packages/bottleneck/nonreduce_axis.so +@so lib/python${MODPY_VERSION}/site-packages/bottleneck/reduce.so lib/python${MODPY_VERSION}/site-packages/bottleneck/slow/ lib/python${MODPY_VERSION}/site-packages/bottleneck/slow/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/bottleneck/slow/${MODPY_PYCACHE}/ @@ -41,26 +44,29 @@ lib/python${MODPY_VERSION}/site-packages lib/python${MODPY_VERSION}/site-packages/bottleneck/src/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/bottleneck/src/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/bottleneck/src/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/bottleneck/src/${MODPY_PYCACHE}template.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/bottleneck/src/template.py +lib/python${MODPY_VERSION}/site-packages/bottleneck/src/${MODPY_PYCACHE}bn_config.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/src/${MODPY_PYCACHE}bn_template.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/src/bn_config.py +lib/python${MODPY_VERSION}/site-packages/bottleneck/src/bn_template.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/ lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/__init__.py ${MODPY_COMMENT}lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}/ lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}__init__.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}input_modifcation_test.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}input_modification_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}list_input_test.${MODPY_PYC_MAGIC_TAG}pyc +lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}memory_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}move_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}nonreduce_axis_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}nonreduce_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}reduce_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}scalar_input_test.${MODPY_PYC_MAGIC_TAG}pyc lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/${MODPY_PYCACHE}util.${MODPY_PYC_MAGIC_TAG}pyc -lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/input_modifcation_test.py +lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/input_modification_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/list_input_test.py +lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/memory_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/move_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/nonreduce_axis_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/nonreduce_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/reduce_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/scalar_input_test.py lib/python${MODPY_VERSION}/site-packages/bottleneck/tests/util.py -lib/python${MODPY_VERSION}/site-packages/bottleneck/version.py