version 1.45.2.1, 2014/11/03 14:12:52 |
version 1.76, 2019/03/03 10:44:41 |
|
|
CATEGORIES= lang python |
CATEGORIES= lang python |
|
|
MAINTAINER= pkgsrc-users@NetBSD.org |
MAINTAINER= pkgsrc-users@NetBSD.org |
HOMEPAGE= http://www.python.org/ |
HOMEPAGE= https://www.python.org/ |
COMMENT= Interpreted, interactive, object-oriented programming language |
COMMENT= Interpreted, interactive, object-oriented programming language |
LICENSE= python-software-foundation |
LICENSE= python-software-foundation |
|
|
|
DEPENDS= mozilla-rootcerts>=1.0.20150804nb1:../../security/mozilla-rootcerts |
|
|
CONFLICTS+= python-[0-9]* |
CONFLICTS+= python-[0-9]* |
|
|
|
USE_LANGUAGES= c c++ |
GNU_CONFIGURE= yes |
GNU_CONFIGURE= yes |
CONFIGURE_ARGS+= --with-threads |
|
CONFIGURE_ARGS+= --enable-shared |
CONFIGURE_ARGS+= --enable-shared |
CONFIGURE_ARGS+= OPT=${CFLAGS:Q} |
|
CONFIGURE_ARGS+= --with-system-ffi |
|
CONFIGURE_ARGS+= --with-dbmliborder=ndbm:bdb |
CONFIGURE_ARGS+= --with-dbmliborder=ndbm:bdb |
|
CONFIGURE_ARGS+= --with-system-ffi |
|
CONFIGURE_ARGS+= --with-threads |
CONFIGURE_ENV+= MKDIR_P=${MKDIR:Q} |
CONFIGURE_ENV+= MKDIR_P=${MKDIR:Q} |
|
CONFIGURE_ENV+= OPT=${CFLAGS:Q} |
PKGCONFIG_OVERRIDE+= Misc/python.pc.in |
PKGCONFIG_OVERRIDE+= Misc/python.pc.in |
|
|
LDFLAGS+= -L${WRKSRC} |
LDFLAGS+= -L${WRKSRC} |
Line 28 LDFLAGS+= -L${WRKSRC} |
|
Line 30 LDFLAGS+= -L${WRKSRC} |
|
# $RANDOM usage there is fine |
# $RANDOM usage there is fine |
CHECK_PORTABILITY_SKIP= Tools/faqwiz/move-faqwiz.sh |
CHECK_PORTABILITY_SKIP= Tools/faqwiz/move-faqwiz.sh |
|
|
USE_LANGUAGES= c c++ |
|
|
|
PTHREAD_OPTS+= require |
PTHREAD_OPTS+= require |
PTHREAD_AUTO_VARS= yes |
PTHREAD_AUTO_VARS= yes |
.include "../../mk/pthread.buildlink3.mk" |
.include "../../mk/pthread.buildlink3.mk" |
Line 51 LIBS.SunOS+= -lrt |
|
Line 51 LIBS.SunOS+= -lrt |
|
|
|
PY_VER_SUFFIX= 2.7 |
PY_VER_SUFFIX= 2.7 |
|
|
PLIST_SRC= ${.CURDIR}/../../lang/python27/PLIST.common |
|
.if exists(${.CURDIR}/../../lang/python27/PLIST.${OPSYS}) |
|
PLIST_SRC+= ${.CURDIR}/../../lang/python27/PLIST.${OPSYS} |
|
.endif |
|
PLIST_SRC+= ${.CURDIR}/../../lang/python27/PLIST.common_end |
|
|
|
.if ${OPSYS} == "NetBSD" |
.if ${OPSYS} == "NetBSD" |
. if !defined(USE_DESTDIR) || empty(USE_DESTDIR:M[Yy][Ee][Ss]) |
|
PRIVILEGED_STAGES+= clean |
|
. endif |
|
# XXX work around a botched autoconf check which ignores libintl |
# XXX work around a botched autoconf check which ignores libintl |
CONFIGURE_ENV+= ac_cv_func_bind_textdomain_codeset=yes |
CONFIGURE_ENV+= ac_cv_func_bind_textdomain_codeset=yes |
.endif |
.endif |
Line 83 PY_PLATNAME= ${LOWER_OPSYS}${OS_VERSION: |
|
Line 74 PY_PLATNAME= ${LOWER_OPSYS}${OS_VERSION: |
|
.endif |
.endif |
PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q} |
PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q} |
|
|
.if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "amd64") || \ |
.if !empty(LP64PLATFORMS:@.PLAT.@${MACHINE_PLATFORM:M${.PLAT.}}@) || \ |
(${MACHINE_ARCH} == "sparc64") || (${MACHINE_ARCH} == "x86_64") || \ |
(defined(ABI) && ${ABI} == "64") |
(${MACHINE_ARCH} == "powerpc64") || (defined(ABI) && ${ABI} == "64") |
|
IS_64BIT_PLATFORM?= yes |
IS_64BIT_PLATFORM?= yes |
.else |
.else |
IS_64BIT_PLATFORM?= no |
IS_64BIT_PLATFORM?= no |
.endif |
.endif |
|
|
|
PLIST_VARS+= dl dll extra-so nis no-nis qt |
|
|
# the dl module isn't built for 64 bit archs |
# the dl module isn't built for 64 bit archs |
PLIST_VARS+= dl |
|
.if empty(IS_64BIT_PLATFORM:M[yY][eE][sS]) |
.if empty(IS_64BIT_PLATFORM:M[yY][eE][sS]) |
PLIST.dl= yes |
PLIST.dl= yes |
.endif |
.endif |
|
|
# setup.py causes some modules to be built if the platform is *not* 64bit. |
# setup.py causes some modules to be built if the platform is *not* 64bit. |
PLIST_VARS+= extra-so |
|
.if !empty(IS_64BIT_PLATFORM:M[nN][oO]) |
.if !empty(IS_64BIT_PLATFORM:M[nN][oO]) |
PLIST.extra-so= yes |
PLIST.extra-so= yes |
.endif |
.endif |
|
|
# Make sure python modules can link correctly |
|
.if ${OPSYS} == "Darwin" |
|
INSTALL_UNSTRIPPED= yes |
|
.endif |
|
|
|
# For Xcode 5 we need to search the SDK path for headers, otherwise certain |
# For Xcode 5 we need to search the SDK path for headers, otherwise certain |
# modules will not be built. |
# modules will not be built. |
.if ${OPSYS} == "Darwin" && exists(${OSX_SDK_PATH}/usr/include) |
.if ${OPSYS} == "Darwin" |
CFLAGS+= -I${OSX_SDK_PATH}/usr/include |
. if exists(${OSX_SDK_PATH}/usr/include) |
|
CFLAGS+= -I${OSX_SDK_PATH:Q}/usr/include |
|
. endif |
|
. if exists(${OSX_SDK_PATH}/System/Library/Frameworks/QuickTime.framework) |
|
PLIST.qt= yes |
|
. endif |
.endif |
.endif |
|
|
PLIST_VARS+= dll nis no-nis |
|
.if ${OPSYS} == "IRIX" |
.if ${OPSYS} == "IRIX" |
. if ${ABI} == "64" |
. if ${ABI} == "64" |
PLIST.no-nis= yes |
PLIST.no-nis= yes |
|
|
. endif |
. endif |
.else |
.else |
PLIST.dll= yes |
PLIST.dll= yes |
. if ${OPSYS} == "MirBSD" |
. if ${OPSYS} == "MirBSD" || "${OS_VARIANT}" == "chromeos" |
# neither nis nor no-nis |
# neither nis nor no-nis |
. elif ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat) |
. elif ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat) |
PLIST.nis= yes |
PLIST.nis= yes |
Line 132 PLIST.no-nis= yes |
|
Line 121 PLIST.no-nis= yes |
|
. endif |
. endif |
.endif |
.endif |
|
|
.include "../../mk/bdb.buildlink3.mk" |
|
MAKE_ENV+= PY_BDB_TYPE=${BDB_TYPE} |
|
.if empty(BDB_LIBS) |
|
BUILDLINK_TRANSFORM+= rm:-ldb |
|
.endif |
|
CFLAGS+= -DHAVE_DB_185_H |
|
|
|
.if ${OPSYS} == "OSF1" |
|
# configure complains about buggy getaddrinfo() |
# configure complains about buggy getaddrinfo() |
CONFIGURE_ARGS+= --disable-ipv6 |
CONFIGURE_ARGS.OSF1+= --disable-ipv6 |
.endif |
|
|
|
.if defined(BUILDLINK_TRANSFORM) |
|
MAKE_ENV+= PY_BDB_TRANSFORM=${BUILDLINK_TRANSFORM:Q} |
|
.endif |
|
|
|
PLIST_SUBST+= PY_VER_SUFFIX=${PY_VER_SUFFIX:Q} |
PLIST_SUBST+= PY_VER_SUFFIX=${PY_VER_SUFFIX:Q} |
|
|
Line 156 INSTALL_TARGET= altinstall |
|
Line 132 INSTALL_TARGET= altinstall |
|
REPLACE_INTERPRETER+= py27 |
REPLACE_INTERPRETER+= py27 |
REPLACE.py27.old= .*python[^ ]* |
REPLACE.py27.old= .*python[^ ]* |
REPLACE.py27.new= ${PREFIX}/bin/python${PY_VER_SUFFIX} |
REPLACE.py27.new= ${PREFIX}/bin/python${PY_VER_SUFFIX} |
REPLACE_FILES.py27= Lib/*.py Lib/*/*.py Lib/*/*/*.py |
REPLACE_FILES.py27= Lib/UserString.py |
REPLACE_FILES.py27+= Lib/*/*/*/*.py |
REPLACE_FILES.py27+= Lib/base64.py |
|
REPLACE_FILES.py27+= Lib/cProfile.py |
|
REPLACE_FILES.py27+= Lib/cgi.py |
|
REPLACE_FILES.py27+= Lib/encodings/rot_13.py |
|
REPLACE_FILES.py27+= Lib/idlelib/PyShell.py |
|
REPLACE_FILES.py27+= Lib/keyword.py |
|
REPLACE_FILES.py27+= Lib/lib2to3/pgen2/token.py |
|
REPLACE_FILES.py27+= Lib/lib2to3/tests/data/different_encoding.py |
|
REPLACE_FILES.py27+= Lib/lib2to3/tests/data/false_encoding.py |
|
REPLACE_FILES.py27+= Lib/lib2to3/tests/pytree_idempotency.py |
|
REPLACE_FILES.py27+= Lib/mimify.py |
|
REPLACE_FILES.py27+= Lib/pdb.py |
|
REPLACE_FILES.py27+= Lib/plat-mac/appletrunner.py |
|
REPLACE_FILES.py27+= Lib/plat-mac/bundlebuilder.py |
|
REPLACE_FILES.py27+= Lib/platform.py |
|
REPLACE_FILES.py27+= Lib/profile.py |
|
REPLACE_FILES.py27+= Lib/pydoc.py |
|
REPLACE_FILES.py27+= Lib/quopri.py |
|
REPLACE_FILES.py27+= Lib/smtpd.py |
|
REPLACE_FILES.py27+= Lib/smtplib.py |
|
REPLACE_FILES.py27+= Lib/symbol.py |
|
REPLACE_FILES.py27+= Lib/tabnanny.py |
|
REPLACE_FILES.py27+= Lib/test/bisect.py |
|
REPLACE_FILES.py27+= Lib/test/curses_tests.py |
|
REPLACE_FILES.py27+= Lib/test/re_tests.py |
|
REPLACE_FILES.py27+= Lib/test/pystone.py |
|
REPLACE_FILES.py27+= Lib/test/regrtest.py |
|
REPLACE_FILES.py27+= Lib/timeit.py |
|
REPLACE_FILES.py27+= Lib/trace.py |
|
REPLACE_FILES.py27+= Lib/uu.py |
|
REPLACE_FILES.py27+= Lib/webbrowser.py |
|
|
|
SUBST_CLASSES+= libffi |
|
SUBST_MESSAGE.libffi= Fixing libffi include path on Darwin. |
|
SUBST_STAGE.libffi= pre-configure |
|
SUBST_FILES.libffi= setup.py |
|
SUBST_SED.libffi= -e 's,/usr/include/ffi,${BUILDLINK_PREFIX.libffi}/include,' |
|
|
|
# XXX: It might be needed to add manually more paths like ${PREFIX}/qt5/lib |
|
# Test: python -c 'from ctypes.util import find_library; print(find_library("ffi"));' |
SUBST_CLASSES+= findlib |
SUBST_CLASSES+= findlib |
SUBST_MESSAGE.findlib= Fixing find_library_file on Darwin. |
SUBST_MESSAGE.findlib= Fixing find_library(). |
SUBST_STAGE.findlib= pre-configure |
SUBST_STAGE.findlib= pre-configure |
SUBST_FILES.findlib= Lib/distutils/unixccompiler.py |
SUBST_FILES.findlib= Lib/ctypes/macholib/dyld.py |
|
SUBST_FILES.findlib+= Lib/ctypes/util.py |
|
SUBST_FILES.findlib+= Lib/distutils/unixccompiler.py |
SUBST_SED.findlib= -e 's,/usr/local,${PREFIX},' |
SUBST_SED.findlib= -e 's,/usr/local,${PREFIX},' |
|
SUBST_SED.findlib+= -e 's!\(-Wl,-t -o\)!${COMPILER_RPATH_FLAG}${PREFIX}/lib -L${PREFIX}/lib \1!' |
|
|
|
.include "options.mk" |
|
|
SUBST_CLASSES+= sslbase |
SUBST_CLASSES+= sslbase |
SUBST_MESSAGE.sslbase= Fixing find-file for openssl with SSLBASE. |
SUBST_MESSAGE.sslbase= Fixing find-file for openssl with SSLBASE. |
Line 171 SUBST_STAGE.sslbase= pre-configure |
|
Line 190 SUBST_STAGE.sslbase= pre-configure |
|
SUBST_FILES.sslbase= setup.py |
SUBST_FILES.sslbase= setup.py |
SUBST_VARS.sslbase= SSLBASE |
SUBST_VARS.sslbase= SSLBASE |
|
|
|
SUBST_CLASSES+= cacert |
|
SUBST_MESSAGE.cacert= Configuring location of default CA certificate file. |
|
SUBST_STAGE.cacert= pre-configure |
|
SUBST_FILES.cacert= Modules/_ssl.c |
|
SUBST_SED.cacert= -e 's,@PREFIX@,${PREFIX},' |
|
|
post-extract: |
post-extract: |
${LN} -s ${WRKSRC}/Lib/smtpd.py ${WRKSRC}/Tools/scripts/smtpd${PY_VER_SUFFIX}.py |
${LN} -s ${WRKSRC}/Lib/smtpd.py ${WRKSRC}/Tools/scripts/smtpd${PY_VER_SUFFIX}.py |
${MV} ${WRKSRC}/Tools/scripts/pydoc ${WRKSRC}/Tools/scripts/pydoc${PY_VER_SUFFIX} |
${MV} ${WRKSRC}/Tools/scripts/pydoc ${WRKSRC}/Tools/scripts/pydoc${PY_VER_SUFFIX} |
Line 196 BUILDLINK_DEPMETHOD.readline= build |
|
Line 221 BUILDLINK_DEPMETHOD.readline= build |
|
.include "../../devel/readline/buildlink3.mk" |
.include "../../devel/readline/buildlink3.mk" |
.include "../../devel/zlib/buildlink3.mk" |
.include "../../devel/zlib/buildlink3.mk" |
.include "../../security/openssl/buildlink3.mk" |
.include "../../security/openssl/buildlink3.mk" |
|
.include "../../mk/bdb.buildlink3.mk" |
.include "../../mk/dlopen.buildlink3.mk" |
.include "../../mk/dlopen.buildlink3.mk" |
.include "../../mk/bsd.pkg.mk" |
.include "../../mk/bsd.pkg.mk" |