Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Aug 2014 07:59:45 +0000 (UTC)
From:      Kubilay Kocak <koobs@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r366040 - in head/lang/python34: . files
Message-ID:  <201408250759.s7P7xjTA035204@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: koobs
Date: Mon Aug 25 07:59:45 2014
New Revision: 366040
URL: http://svnweb.freebsd.org/changeset/ports/366040
QAT: https://qat.redports.org/buildarchive/r366040/

Log:
  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

Added:
  head/lang/python34/files/patch-issue21704   (contents, props changed)
Modified:
  head/lang/python34/Makefile

Modified: head/lang/python34/Makefile
==============================================================================
--- head/lang/python34/Makefile	Mon Aug 25 07:49:28 2014	(r366039)
+++ head/lang/python34/Makefile	Mon Aug 25 07:59:45 2014	(r366040)
@@ -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}

Added: head/lang/python34/files/patch-issue21704
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/lang/python34/files/patch-issue21704	Mon Aug 25 07:59:45 2014	(r366040)
@@ -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}
+ };
+ 
+



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201408250759.s7P7xjTA035204>