#
|
# This file and its contents are supplied under the terms of the
|
# Common Development and Distribution License ("CDDL"), version 1.0.
|
# You may only use this file in accordance with the terms of version
|
# 1.0 of the CDDL.
|
#
|
# A full copy of the text of the CDDL should have accompanied this
|
# source. A copy of the CDDL is also available via the Internet at
|
# http://www.illumos.org/license/CDDL.
|
#
|
|
#
|
# Copyright 2023 Marcel Telka
|
#
|
|
%patch% 01-Cython.patch
|
%patch% 02-test_attributes.patch
|
%patch% 03-no-shebang.patch
|
%patch% 04-check_backend-port.patch
|
%patch% 05-testFDPassSeparate.patch
|
%patch% 06-test-port-8001.patch
|
|
%include-3%
|
# Do not use test concurrency to get predictable order of test results
|
COMPONENT_TEST_ENV += NWORKERS=1
|
|
# Normalize test results
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\x1b\[[0-9;]*m//g'" # remove colors
|
COMPONENT_TEST_TRANSFORMS += "-e '/^Running tests in parallel with concurrency/d'" # drop concurrency report
|
COMPONENT_TEST_TRANSFORMS += "-e 's/0x[0-9a-f]\{12,\}/\$$(POINTER)/g'" # pointers
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\(thread_ident=\)0x[0-9a-f]\{1,\}/\1\$$(ID)/g'" # thread_ident
|
COMPONENT_TEST_TRANSFORMS += "-e 's/[0-9]\{4\}-[0-9][0-9]-[0-9][0-9]T[0-9][0-9]:[0-9][0-9]:[0-9][0-9]Z/\$$(TIMESTAMP)/g'" # timestamps
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\[[0-9]\{4\}-[0-9][0-9]-[0-9][0-9] [0-9][0-9]:[0-9][0-9]:[0-9][0-9]\]/[\$$(TIMESTAMP)]/g'" # timestamps
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\(Ran [0-9]\{1,\} tests\{0,1\}\) in [\.0-9]\{1,\}s/\1/'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/^\(Ran [0-9]\{1,\} tests\{0,1\}.* in [0-9]\{1,\} files\{0,1\}\) in .*\$$/\1/'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\(GET .* HTTP.*\) [\.0-9]\{1,\}\$$/\1/'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/\(reacted\) after [\.0-9]\{1,\} seconds/\1/'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/ \[took [\.0-9]\{1,\}s\]//'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/ \[took [\.0-9]\{1,\}s \([^]]*\)\]/ [\1]/'" # timing
|
COMPONENT_TEST_TRANSFORMS += "-e 's/^\( 127\.0\.0\.1:\)[0-9]\{1,\}\([ -]\)/\1\$$(PORT)\2/'" # source port changes
|
COMPONENT_TEST_TRANSFORMS += "-e '/New connection from 127\.0\.0\.1:/d'" # could be out of order
|
COMPONENT_TEST_TRANSFORMS += "-e '/echoed b/d'" # could be out of order
|
COMPONENT_TEST_TRANSFORMS += "-e '/^Longest-running tests:/,/^\$$/d'" # list changes with every run
|
|
# This project uses both cpython and abi3 ABI depending on particular library.
|
# To deal with this we need to disable automatic ABI library name transforms.
|
PY3_CPYTHON_NAMING=\#
|
%hook-manifest%
|
# ... and use our own transforms.
|
printf '<transform file -> edit path "(usr/lib/python3\\.(\\d)+/vendor-packages/.*)\\.so$" "\\1.cpython-3\\2.so">\n' >> "$DISTRIBUTION-PYVER.p5m"
|
printf '<transform file -> edit path "(usr/lib/python3\\.\\d+/vendor-packages/gevent/lib[eu]v/_corecffi\\.)cpython-3\\d+\\.so$" "\\1abi3.so">\n' >> "$DISTRIBUTION-PYVER.p5m"
|