From 262bb77a676492d8bb666325450d853d6344c6d0 Mon Sep 17 00:00:00 2001 From: Kubilay Kocak Date: Wed, 21 Jan 2015 09:40:18 +0000 Subject: lang/python27: Fix packaging for mips64 - Fix packaging for mips64 (Reported by: sbruno) mips64 is also not a 32-bit ${ARCH}, so add it to the list of architectures for which imageop.so and dl.so aren't packaged: %%32BIT_ONLY%%lib/python2.7/lib-dynload/dl.so %%32BIT_ONLY%%lib/python2.7/lib-dynload/imageop.so Both dl and imageop have been removed in Python 3.x [1][2][3][4] Thanks jhibbits@ for his help testing. - Add BROKEN for i386 without LIBFFI option, and add upstream issue references. While I'm here, clean up after the LIBFFI option addition: - Sort options variables: OPTIONS_* and *_DESC - Use OPTIONS helpers References: [1] The :mod:`imageop` module has been removed in Python 3.0. [2] dl Added: https://hg.python.org/cpython/file/aac1ee966f56/setup.py [3] dl Removed: https://hg.python.org/cpython/file/859ff5c7c60a/setup.py [4] PEP-3108: https://www.python.org/dev/peps/pep-3108/ Approved by: python --- lang/python27/Makefile | 25 +++++++++++++++---------- 1 file changed, 15 insertions(+), 10 deletions(-) (limited to 'lang/python27') diff --git a/lang/python27/Makefile b/lang/python27/Makefile index 911571edc87c..070a532811a0 100644 --- a/lang/python27/Makefile +++ b/lang/python27/Makefile @@ -33,21 +33,22 @@ PLIST_SUB= ABI=${ABIFLAGS} \ PORTVERSION=${PORTVERSION} \ OSMAJOR=${OSVERSION:C/([0-9]*)[0-9]{5}/\1/} # For plat-freebsd* in pkg-plist. http://bugs.python.org/issue19554 -OPTIONS_DEFINE= DEBUG IPV6 NLS PYMALLOC SEM THREADS LIBFFI -OPTIONS_DEFAULT= IPV6 NLS PYMALLOC SEM THREADS UCS4 LIBFFI +OPTIONS_DEFINE= DEBUG IPV6 LIBFFI NLS PYMALLOC SEM THREADS +OPTIONS_DEFAULT= IPV6 LIBFFI NLS PYMALLOC SEM THREADS UCS4 OPTIONS_SINGLE= UNICODE OPTIONS_SINGLE_UNICODE= UCS2 UCS4 - OPTIONS_SUB= yes +LIBFFI_DESC= Use libffi from ports instead of bundled version NLS_DESC= Enable gettext support for the locale module UCS2_DESC= Enable UCS2 Unicode Strings UCS4_DESC= Enable UCS4 Unicode Strings PYMALLOC_DESC= Enable specialized mallocs -LIBFFI_DESC= Use libffi from ports instead of bundled version DEBUG_CONFIGURE_WITH= pydebug IPV6_CONFIGURE_ENABLE= ipv6 +LIBFFI_CONFIGURE_ON= --with-system-ffi +LIBFFI_LIB_DEPENDS= libffi.so:${PORTSDIR}/devel/libffi # Use CPPFLAGS over CFLAGS due to -I ordering, causing elementtree and pyexpat # to break in Python 2.7, or preprocessor complaints in Python >= 3.3 @@ -71,28 +72,32 @@ UCS4_CONFIGURE_ON= --enable-unicode=ucs4 .include +# http://bugs.python.org/issue22521 +# http://bugs.python.org/issue23042 +.if !${PORT_OPTIONS:MLIBFFI} && ${ARCH} == i386 +BROKEN= You must use libffi from ports on i386. Enable the LIBFFI option +.endif + .if ${ARCH} == i386 PLIST_SUB+= X86_ONLY="" .else PLIST_SUB+= X86_ONLY="@comment " .endif -.if ${ARCH} == amd64 || ${ARCH} == ia64 || ${ARCH} == sparc64 || ${ARCH} == powerpc64 + +.if ${ARCH} == amd64 || ${ARCH} == ia64 || ${ARCH} == sparc64 || ${ARCH} == powerpc64 || ${ARCH} == mips64 PLIST_SUB+= 32BIT_ONLY="@comment " .else PLIST_SUB+= 32BIT_ONLY="" .endif + .if ${ARCH} == powerpc64 MAKE_ENV+= UNAME_m="powerpc64" .endif + .if ${ARCH} == sparc64 CFLAGS+= -DPYTHON_DEFAULT_RECURSION_LIMIT=900 .endif -.if ${PORT_OPTIONS:MLIBFFI} -CONFIGURE_ARGS+= --with-system-ffi -LIB_DEPENDS+= libffi.so:${PORTSDIR}/devel/libffi -.endif - # See http://bugs.freebsd.org/115940 and http://bugs.freebsd.org/193650 .if !exists(/usr/bin/ypcat) || defined(WITHOUT_NIS) PLIST_SUB+= NO_NIS="@comment " -- cgit v1.2.3