diff options
author | koobs <koobs@FreeBSD.org> | 2014-08-25 15:59:45 +0800 |
---|---|---|
committer | koobs <koobs@FreeBSD.org> | 2014-08-25 15:59:45 +0800 |
commit | 137ebc5c076d3f673becd8309fe7d48ebf5e6224 (patch) | |
tree | fad42bb416bffdade3409ddc0e6eb0d9c711c3e0 /lang/python34 | |
parent | 4103edad8b7592254487a18776e958507cd99c84 (diff) | |
download | freebsd-ports-gnome-137ebc5c076d3f673becd8309fe7d48ebf5e6224.tar.gz freebsd-ports-gnome-137ebc5c076d3f673becd8309fe7d48ebf5e6224.tar.zst freebsd-ports-gnome-137ebc5c076d3f673becd8309fe7d48ebf5e6224.zip |
lang/python34: Fix build when semaphores are not enabled
Backport fix [1] for upstream Python Issue #21704 [2]: Fix build error for
_multiprocessing when semaphores are not available.
The symptom was originally reported by RedPorts 8.4-QAT/i386,
ultimately resulting in a packaging error:
...
checking for sem_open... yes
checking for sem_timedwait... yes
checking for sem_getvalue... yes
checking for sem_unlink... yes
...
checking whether POSIX semaphores are enabled... no
checking for broken sem_getvalue... yes
...
*** WARNING: renaming "_multiprocessing" since importing it failed:
build/lib.freebsd-8.4-RELEASE-i386-3.4/_multiprocessing.so: Undefined
symbol "_PyMp_sem_unlink"
...
pkg-static: lstat(/work/a/ports/lang/python34/work/stage/usr/local/lib/
python3.4/lib-dynload/_multiprocessing.so): No such file or directory
Something is funny for Jail-based systems when it comes to host/jail
semaphore detection. A config.log would be handy to help determine why.
[1] http://hg.python.org/cpython/rev/f618f6739200
[2] http://bugs.python.org/issue21704
Diffstat (limited to 'lang/python34')
-rw-r--r-- | lang/python34/Makefile | 2 | ||||
-rw-r--r-- | lang/python34/files/patch-issue21704 | 22 |
2 files changed, 23 insertions, 1 deletions
diff --git a/lang/python34/Makefile b/lang/python34/Makefile index 1550c27cc154..066220fdb19a 100644 --- a/lang/python34/Makefile +++ b/lang/python34/Makefile @@ -3,7 +3,7 @@ PORTNAME= python34 PORTVERSION= 3.4.1 -PORTREVISION= 4 +PORTREVISION= 5 CATEGORIES= lang python ipv6 MASTER_SITES= PYTHON MASTER_SITE_SUBDIR= ftp/python/${PORTVERSION} diff --git a/lang/python34/files/patch-issue21704 b/lang/python34/files/patch-issue21704 new file mode 100644 index 000000000000..f072564fc15c --- /dev/null +++ b/lang/python34/files/patch-issue21704 @@ -0,0 +1,22 @@ +# HG changeset patch +# User Richard Oudkerk <shibturn@gmail.com> +# Date 1406584862 -3600 +# Node ID f618f673920043e31d8dee20b35c3e6f3e271178 +# Parent a1e01081e731a1214793cd4b5b4fc89fe6202357 +Issue #21704: Fix build error for _multiprocessing when semaphores +are not available. Patch by Arfrever Frehtes Taifersar Arahesis. + +diff --git a/Modules/_multiprocessing/multiprocessing.c b/Modules/_multiprocessing/multiprocessing.c +--- Modules/_multiprocessing/multiprocessing.c ++++ Modules/_multiprocessing/multiprocessing.c +@@ -128,7 +128,9 @@ static PyMethodDef module_methods[] = { + {"recv", multiprocessing_recv, METH_VARARGS, ""}, + {"send", multiprocessing_send, METH_VARARGS, ""}, + #endif ++#ifndef POSIX_SEMAPHORES_NOT_ENABLED + {"sem_unlink", _PyMp_sem_unlink, METH_VARARGS, ""}, ++#endif + {NULL} + }; + + |