Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. =================================================================== RCS file: /ftp/cvs/cvsroot/pkgsrc/lang/python27/Makefile,v rcsdiff: /ftp/cvs/cvsroot/pkgsrc/lang/python27/Makefile,v: warning: Unknown phrases like `commitid ...;' are present. retrieving revision 1.39 retrieving revision 1.75 diff -u -p -r1.39 -r1.75 --- pkgsrc/lang/python27/Makefile 2014/03/27 05:36:37 1.39 +++ pkgsrc/lang/python27/Makefile 2018/09/28 11:01:37 1.75 @@ -1,26 +1,28 @@ -# $NetBSD: Makefile,v 1.39 2014/03/27 05:36:37 obache Exp $ +# $NetBSD: Makefile,v 1.75 2018/09/28 11:01:37 adam Exp $ .include "dist.mk" PKGNAME= python27-${PY_DISTVERSION} -PKGREVISION= 3 +PKGREVISION= 1 CATEGORIES= lang python MAINTAINER= pkgsrc-users@NetBSD.org -HOMEPAGE= http://www.python.org/ +HOMEPAGE= https://www.python.org/ COMMENT= Interpreted, interactive, object-oriented programming language LICENSE= python-software-foundation +DEPENDS= mozilla-rootcerts>=1.0.20150804nb1:../../security/mozilla-rootcerts + CONFLICTS+= python-[0-9]* +USE_LANGUAGES= c c++ GNU_CONFIGURE= yes -CONFIGURE_ARGS+= --with-threads CONFIGURE_ARGS+= --enable-shared -CONFIGURE_ARGS+= OPT=${CFLAGS:Q} -CONFIGURE_ARGS+= --with-system-ffi CONFIGURE_ARGS+= --with-dbmliborder=ndbm:bdb +CONFIGURE_ARGS+= --with-system-ffi +CONFIGURE_ARGS+= --with-threads CONFIGURE_ENV+= MKDIR_P=${MKDIR:Q} - +CONFIGURE_ENV+= OPT=${CFLAGS:Q} PKGCONFIG_OVERRIDE+= Misc/python.pc.in LDFLAGS+= -L${WRKSRC} @@ -28,9 +30,8 @@ LDFLAGS+= -L${WRKSRC} # $RANDOM usage there is fine CHECK_PORTABILITY_SKIP= Tools/faqwiz/move-faqwiz.sh -USE_LANGUAGES= c c++ - -PTHREAD_OPTS+= require +PTHREAD_OPTS+= require +PTHREAD_AUTO_VARS= yes .include "../../mk/pthread.buildlink3.mk" .if ${PTHREAD_TYPE} == "pth" CONFIGURE_ARGS+= --with-pth @@ -50,16 +51,7 @@ LIBS.SunOS+= -lrt 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 !defined(USE_DESTDIR) || empty(USE_DESTDIR:M[Yy][Ee][Ss]) -PRIVILEGED_STAGES+= clean -. endif # XXX work around a botched autoconf check which ignores libintl CONFIGURE_ENV+= ac_cv_func_bind_textdomain_codeset=yes .endif @@ -75,43 +67,43 @@ PY_PLATNAME= sunos${OS_VERSION:C/\..*//} PY_PLATNAME= hp-ux11 .elif ${OPSYS} == "Linux" PY_PLATNAME= linux2 +.elif ${OS_VARIANT} == "SCOOSR5" +PY_PLATNAME= sco_sv3 .else PY_PLATNAME= ${LOWER_OPSYS}${OS_VERSION:C/\..*//} .endif PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q} -.if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "amd64") || \ - (${MACHINE_ARCH} == "sparc64") || (${MACHINE_ARCH} == "x86_64") || \ - (${MACHINE_ARCH} == "powerpc64") || (defined(ABI) && ${ABI} == "64") +.if !empty(LP64PLATFORMS:@.PLAT.@${MACHINE_PLATFORM:M${.PLAT.}}@) || \ + (defined(ABI) && ${ABI} == "64") IS_64BIT_PLATFORM?= yes .else IS_64BIT_PLATFORM?= no .endif +PLIST_VARS+= dl dll extra-so nis no-nis qt + # the dl module isn't built for 64 bit archs -PLIST_VARS+= dl .if empty(IS_64BIT_PLATFORM:M[yY][eE][sS]) PLIST.dl= yes .endif # 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]) PLIST.extra-so= yes .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 # modules will not be built. -.if ${OPSYS} == "Darwin" && exists(${OSX_SDK_PATH}/usr/include) -CFLAGS+= -I${OSX_SDK_PATH}/usr/include +.if ${OPSYS} == "Darwin" +. 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 -PLIST_VARS+= dll nis no-nis .if ${OPSYS} == "IRIX" . if ${ABI} == "64" PLIST.no-nis= yes @@ -120,7 +112,7 @@ PLIST.nis= yes . endif .else PLIST.dll= yes -. if ${OPSYS} == "MirBSD" +. if ${OPSYS} == "MirBSD" || "${OS_VARIANT}" == "chromeos" # neither nis nor no-nis . elif ${OPSYS} != "NetBSD" || exists(/usr/bin/ypcat) PLIST.nis= yes @@ -129,21 +121,8 @@ PLIST.no-nis= yes . 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_ARGS+= --disable-ipv6 -.endif - -.if defined(BUILDLINK_TRANSFORM) -MAKE_ENV+= PY_BDB_TRANSFORM=${BUILDLINK_TRANSFORM:Q} -.endif +CONFIGURE_ARGS.OSF1+= --disable-ipv6 PLIST_SUBST+= PY_VER_SUFFIX=${PY_VER_SUFFIX:Q} @@ -153,8 +132,44 @@ INSTALL_TARGET= altinstall REPLACE_INTERPRETER+= py27 REPLACE.py27.old= .*python[^ ]* REPLACE.py27.new= ${PREFIX}/bin/python${PY_VER_SUFFIX} -REPLACE_FILES.py27= Lib/*.py Lib/*/*.py Lib/*/*/*.py -REPLACE_FILES.py27+= Lib/*/*/*/*.py +REPLACE_FILES.py27= Lib/UserString.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,' SUBST_CLASSES+= findlib SUBST_MESSAGE.findlib= Fixing find_library_file on Darwin. @@ -162,6 +177,32 @@ SUBST_STAGE.findlib= pre-configure SUBST_FILES.findlib= Lib/distutils/unixccompiler.py SUBST_SED.findlib= -e 's,/usr/local,${PREFIX},' +# XXX: It might be needed to add manually more paths like ${PREFIX}/qt5/lib +# Testing: +# >>> from ctypes.util import find_library +# >>> find_library("m") +# 'libm.so.0' + +SUBST_CLASSES+= pfindlib +SUBST_MESSAGE.pfindlib= Fixing find_library() on POSIX-like (excluding Darwin) systems. +SUBST_STAGE.pfindlib= pre-configure +SUBST_FILES.pfindlib= Lib/ctypes/util.py +SUBST_SED.pfindlib= -e 's!\(-Wl,-t -o\)!${COMPILER_RPATH_FLAG}${PREFIX}/lib -L${PREFIX}/lib \1!' + +.include "options.mk" + +SUBST_CLASSES+= sslbase +SUBST_MESSAGE.sslbase= Fixing find-file for openssl with SSLBASE. +SUBST_STAGE.sslbase= pre-configure +SUBST_FILES.sslbase= setup.py +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: ${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} @@ -173,6 +214,12 @@ post-install: ${DESTDIR}${PREFIX}/lib/libpython2.7.sl.1.0 .endif +.if ${OS_VARIANT} == "SCOOSR5" +# SCO OpenServer 5.0.7/3.2 has no socklen_t in system headers, but has in +# GNU pth's header. It should be used in this case. +CONFIGURE_ENV+= ac_cv_type_socklen_t=yes +.endif + BUILDLINK_DEPMETHOD.readline= build .include "../../archivers/bzip2/buildlink3.mk" @@ -181,5 +228,6 @@ BUILDLINK_DEPMETHOD.readline= build .include "../../devel/readline/buildlink3.mk" .include "../../devel/zlib/buildlink3.mk" .include "../../security/openssl/buildlink3.mk" +.include "../../mk/bdb.buildlink3.mk" .include "../../mk/dlopen.buildlink3.mk" .include "../../mk/bsd.pkg.mk"