|
|
|
|
@@ -4,9 +4,9 @@
|
|
|
|
|
PORTNAME= python
|
|
|
|
|
PORTVERSION= ${PYTHON_PORTVERSION}
|
|
|
|
|
CATEGORIES= lang python ipv6
|
|
|
|
|
MASTER_SITES= PYTHON/ftp/python/${PYTHON_PORTVERSION}
|
|
|
|
|
MASTER_SITES= PYTHON/ftp/python/${PORTVERSION}
|
|
|
|
|
PKGNAMESUFFIX= ${PYTHON_SUFFIX}
|
|
|
|
|
DISTNAME= Python-${DISTVERSION}
|
|
|
|
|
DISTNAME= Python-${PORTVERSION}
|
|
|
|
|
DIST_SUBDIR= python
|
|
|
|
|
|
|
|
|
|
MAINTAINER= python@FreeBSD.org
|
|
|
|
|
@@ -16,17 +16,13 @@ LICENSE= PSFL
|
|
|
|
|
|
|
|
|
|
BROKEN_SSL= openssl-devel
|
|
|
|
|
|
|
|
|
|
USES= cpe ncurses pathfix pkgconfig readline:port ssl tar:xz shebangfix
|
|
|
|
|
USES= cpe ncurses pathfix pkgconfig readline:port shebangfix ssl tar:xz
|
|
|
|
|
PATHFIX_MAKEFILEIN= Makefile.pre.in
|
|
|
|
|
USE_LDCONFIG= yes
|
|
|
|
|
GNU_CONFIGURE= yes
|
|
|
|
|
python_CMD= ${PREFIX}/bin/python${PYTHON_PORTVERSION:R}
|
|
|
|
|
SHEBANG_FILES= Lib/*.py Lib/*/*.py Lib/*/*/*.py Lib/*/*/*/*.py
|
|
|
|
|
|
|
|
|
|
CPE_VENDOR= python
|
|
|
|
|
CPE_PRODUCT= ${CPE_VENDOR}
|
|
|
|
|
CPE_VERSION= ${DISTVERSION}
|
|
|
|
|
|
|
|
|
|
# Duplicate python.mk variables. TODO: Let lang/python?? ports use python.mk bits.
|
|
|
|
|
PYTHON_VER= ${PYTHON_PORTVERSION:R}
|
|
|
|
|
PYTHON_VERSION= python${PYTHON_VER}
|
|
|
|
|
@@ -47,9 +43,11 @@ MAKE_JOBS_UNSAFE= yes # Parser/pgen build bug. See Issue: 200622, 201974
|
|
|
|
|
SUB_FILES= pkg-message
|
|
|
|
|
SUB_LIST= PYTHON_SUFFIX=${PYTHON_SUFFIX}
|
|
|
|
|
|
|
|
|
|
PLIST_SUB= XYDOT=${PYTHON_VER} XY=${PYTHON_SUFFIX} \
|
|
|
|
|
XYZDOT=${PYTHON_PORTVERSION} ABI=${ABIFLAGS} \
|
|
|
|
|
OSMAJOR=${OSVERSION:C/([0-9]*)[0-9]{5}/\1/} # For plat-freebsd* in pkg-plist. http://bugs.python.org/issue19554
|
|
|
|
|
PLIST_SUB= ABI=${ABIFLAGS} \
|
|
|
|
|
XY=${PYTHON_SUFFIX} \
|
|
|
|
|
XYDOT=${PYTHON_VER} \
|
|
|
|
|
XYZDOT=${PORTVERSION} \
|
|
|
|
|
OSMAJOR=${OSVERSION:C/([0-9]*)[0-9]{5}/\1/} # For plat-freebsd* in pkg-plist. https://bugs.python.org/issue19554
|
|
|
|
|
|
|
|
|
|
OPTIONS_DEFINE= DEBUG IPV6 LIBFFI NLS PYMALLOC THREADS TSC
|
|
|
|
|
OPTIONS_DEFAULT= LIBFFI PYMALLOC THREADS
|
|
|
|
|
@@ -77,7 +75,7 @@ LIBFFI_LIB_DEPENDS= libffi.so: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
|
|
|
|
|
# Upstream Issue: http://bugs.python.org/issue6299
|
|
|
|
|
# Upstream Issue: https://bugs.python.org/issue6299
|
|
|
|
|
NLS_USES= gettext
|
|
|
|
|
NLS_CPPFLAGS= -I${LOCALBASE}/include
|
|
|
|
|
NLS_LIBS= -L${LOCALBASE}/lib -lintl
|
|
|
|
|
@@ -102,13 +100,13 @@ ABIFLAGS:= d${ABIFLAGS}
|
|
|
|
|
.endif
|
|
|
|
|
|
|
|
|
|
.if !empty(ABIFLAGS)
|
|
|
|
|
PLIST_FILES+= bin/python%%XYDOT%%%%ABI%%
|
|
|
|
|
PLIST_FILES+= bin/python%%XYDOT%%%%ABI%%-config
|
|
|
|
|
PLIST_FILES+= libdata/pkgconfig/python-%%XYDOT%%%%ABI%%.pc
|
|
|
|
|
PLIST_FILES+= bin/python${PYTHON_VER}${ABIFLAGS} \
|
|
|
|
|
bin/python${PYTHON_VER}${ABIFLAGS}-config \
|
|
|
|
|
libdata/pkgconfig/python-${PYTHON_VER}${ABIFLAGS}.pc
|
|
|
|
|
.endif
|
|
|
|
|
|
|
|
|
|
# http://bugs.python.org/issue22521
|
|
|
|
|
# http://bugs.python.org/issue23042
|
|
|
|
|
# https://bugs.python.org/issue22521
|
|
|
|
|
# https://bugs.python.org/issue23042
|
|
|
|
|
.if ${ARCH} == i386 && !${PORT_OPTIONS:MLIBFFI}
|
|
|
|
|
BROKEN= You must use libffi from ports on i386. Enable the LIBFFI option
|
|
|
|
|
.endif
|
|
|
|
|
@@ -117,7 +115,7 @@ BROKEN= You must use libffi from ports on i386. Enable the LIBFFI option
|
|
|
|
|
CFLAGS+= -DPYTHON_DEFAULT_RECURSION_LIMIT=900
|
|
|
|
|
.endif
|
|
|
|
|
|
|
|
|
|
# See http://bugs.freebsd.org/115940 and http://bugs.freebsd.org/193650
|
|
|
|
|
# See https://bugs.freebsd.org/115940 and https://bugs.freebsd.org/193650
|
|
|
|
|
.if !exists(/usr/bin/ypcat) || defined(WITHOUT_NIS)
|
|
|
|
|
PLIST_SUB+= NO_NIS="@comment "
|
|
|
|
|
DISABLED_EXTENSIONS+= nis
|
|
|
|
|
@@ -133,15 +131,11 @@ post-patch:
|
|
|
|
|
"s|lib_dirs,\ \'readline\'|[\'${LOCALBASE}/lib\',\ \'.\'],\ \'readline\'|" \
|
|
|
|
|
${WRKSRC}/setup.py
|
|
|
|
|
.endif
|
|
|
|
|
${REINPLACE_CMD} -e 's|/usr/local/bin/python|${python_CMD}|' \
|
|
|
|
|
${WRKSRC}/Lib/cgi.py
|
|
|
|
|
|
|
|
|
|
post-install:
|
|
|
|
|
.if ! ${PORT_OPTIONS:MDEBUG}
|
|
|
|
|
${RM} ${STAGEDIR}${PREFIX}/lib/libpython3.so # Upstream Issue: http://bugs.python.org/issue17975
|
|
|
|
|
${RM} ${STAGEDIR}${PREFIX}/lib/libpython3.so # Upstream Issue: https://bugs.python.org/issue17975
|
|
|
|
|
.endif
|
|
|
|
|
for i in ${STAGEDIR}${PREFIX}/lib/python${PYTHON_VER}/lib-dynload/*.so; do \
|
|
|
|
|
${STRIP_CMD} $$i; done # Strip shared extensions
|
|
|
|
|
# This code block exists for the qemu-user enabled cross build environment.
|
|
|
|
|
# When using this environment in poudriere, CC is not set to the default
|
|
|
|
|
# of /usr/bin/cc and a cross-compile toolchain is used. We need to hand
|
|
|
|
|
@@ -149,10 +143,12 @@ post-install:
|
|
|
|
|
# FreeBSD base system provides. sbruno 02Aug2017
|
|
|
|
|
.if ${CC} == /nxb-bin/usr/bin/cc
|
|
|
|
|
@${REINPLACE_CMD} -e 's=/nxb-bin==' \
|
|
|
|
|
${STAGEDIR}${PREFIX}/lib/python3.5/_sysconfigdata.py
|
|
|
|
|
${STAGEDIR}${PREFIX}/lib/python${PYTHON_VER}/_sysconfigdata.py
|
|
|
|
|
@${REINPLACE_CMD} -e 's=/nxb-bin==' \
|
|
|
|
|
${STAGEDIR}${PREFIX}/lib/python3.5/config-3.5m/Makefile
|
|
|
|
|
${STAGEDIR}${PREFIX}/lib/python${PYTHON_VER}/config-${PYTHON_VER}m/Makefile
|
|
|
|
|
.endif
|
|
|
|
|
for i in ${STAGEDIR}${PREFIX}/lib/python${PYTHON_VER}/lib-dynload/*.so; do \
|
|
|
|
|
${STRIP_CMD} $$i; done # Strip shared extensions
|
|
|
|
|
${INSTALL_DATA} ${WRKSRC}/Tools/gdb/libpython.py \
|
|
|
|
|
${STAGEDIR}${PREFIX}/lib/libpython${PYTHON_VER}${ABIFLAGS}.so.1.0-gdb.py
|
|
|
|
|
|
|
|
|
|
|