Wed May 1 15:56:04 2024 UTC (25d)
Add build option "readline". With its help we can build python3.12
with/without support of readline/editline.
Also, always build "_dbm" module on Linux just like on other OS.
Remove ".include ../../devel/gettext-lib..."


(cheusov)
diff -r1.15 -r1.16 pkgsrc/lang/python312/Makefile
diff -r1.5 -r1.6 pkgsrc/lang/python312/PLIST
diff -r1.5 -r1.6 pkgsrc/lang/python312/distinfo
diff -r1.2 -r1.3 pkgsrc/lang/python312/options.mk
diff -r0 -r1.1 pkgsrc/lang/python312/patches/patch-Modules_readline.c

cvs diff -r1.15 -r1.16 pkgsrc/lang/python312/Makefile (expand / switch to unified diff)

--- pkgsrc/lang/python312/Makefile 2024/04/01 23:38:27 1.15
+++ pkgsrc/lang/python312/Makefile 2024/05/01 15:56:03 1.16
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1# $NetBSD: Makefile,v 1.15 2024/04/01 23:38:27 charlotte Exp $ 1# $NetBSD: Makefile,v 1.16 2024/05/01 15:56:03 cheusov Exp $
2 2
3.include "dist.mk" 3.include "dist.mk"
4 4
5PKGNAME= python312-${PY_DISTVERSION} 5PKGNAME= python312-${PY_DISTVERSION}
6CATEGORIES= lang python 6CATEGORIES= lang python
7 7
8MAINTAINER= pkgsrc-users@NetBSD.org 8MAINTAINER= pkgsrc-users@NetBSD.org
9HOMEPAGE= https://www.python.org/ 9HOMEPAGE= https://www.python.org/
10COMMENT= Interpreted, interactive, object-oriented programming language 10COMMENT= Interpreted, interactive, object-oriented programming language
11LICENSE= python-software-foundation 11LICENSE= python-software-foundation
12 12
13CONFLICTS+= python-[0-9]* 13CONFLICTS+= python-[0-9]*
14CONFLICTS+= py312-cElementTree-[0-9]* 14CONFLICTS+= py312-cElementTree-[0-9]*
@@ -37,42 +37,45 @@ USE_TOOLS+= pkg-config @@ -37,42 +37,45 @@ USE_TOOLS+= pkg-config
37USE_CC_FEATURES+= c11 37USE_CC_FEATURES+= c11
38GNU_CONFIGURE= yes 38GNU_CONFIGURE= yes
39CONFIGURE_ARGS+= --enable-shared 39CONFIGURE_ARGS+= --enable-shared
40CONFIGURE_ARGS+= --with-openssl=${BUILDLINK_PREFIX.openssl} 40CONFIGURE_ARGS+= --with-openssl=${BUILDLINK_PREFIX.openssl}
41CONFIGURE_ARGS+= --with-system-expat 41CONFIGURE_ARGS+= --with-system-expat
42CONFIGURE_ARGS+= --without-ensurepip 42CONFIGURE_ARGS+= --without-ensurepip
43CONFIGURE_ENV+= OPT=${CFLAGS:M*:Q} 43CONFIGURE_ENV+= OPT=${CFLAGS:M*:Q}
44CONFIGURE_ENV+= ac_cv_path_mkdir=${TOOLS_PATH.mkdir} 44CONFIGURE_ENV+= ac_cv_path_mkdir=${TOOLS_PATH.mkdir}
45CONFIGURE_ENV+= py_cv_module__gdbm="n/a" 45CONFIGURE_ENV+= py_cv_module__gdbm="n/a"
46# example module 46# example module
47CONFIGURE_ENV+= py_cv_module_xxlimited="n/a" 47CONFIGURE_ENV+= py_cv_module_xxlimited="n/a"
48PKGCONFIG_OVERRIDE+= Misc/python.pc.in Misc/python-embed.pc.in 48PKGCONFIG_OVERRIDE+= Misc/python.pc.in Misc/python-embed.pc.in
49 49
50# NetBSD-8 curses has enough support for py-curses 
51USE_CURSES= getsyx update_panels wide 
52# But we build as ncurses still to get the full feature set easily 
53FAKE_NCURSES= yes 
54# libpanelw seems to be a Linux thing? 50# libpanelw seems to be a Linux thing?
55SUBST_CLASSES+= panel 51SUBST_CLASSES+= panel
56SUBST_MESSAGE.panel= Replacing panelw with panel. 52SUBST_MESSAGE.panel= Replacing panelw with panel.
57SUBST_STAGE.panel= pre-configure 53SUBST_STAGE.panel= pre-configure
58SUBST_FILES.panel+= configure 54SUBST_FILES.panel+= configure
59SUBST_SED.panel+= -e "s,panelw,panel," 55SUBST_SED.panel+= -e "s,panelw,panel,"
60 56
61PTHREAD_OPTS+= require 57PTHREAD_OPTS+= require
62.include "../../mk/pthread.buildlink3.mk" 58.include "../../mk/pthread.buildlink3.mk"
63 59
64.include "../../mk/bsd.prefs.mk" 60.include "../../mk/bsd.prefs.mk"
65 61
 62# NetBSD-8 curses has enough support for py-curses
 63USE_CURSES= getsyx update_panels wide
 64# But we build as ncurses still to get the full feature set easily
 65.if ${OPSYS} == "NetBSD"
 66FAKE_NCURSES= yes
 67.endif
 68
66.if ${USE_CROSS_COMPILE:U:tl} == yes 69.if ${USE_CROSS_COMPILE:U:tl} == yes
67TOOL_DEPENDS+= ${PKGNAME}:../../${PKGPATH} 70TOOL_DEPENDS+= ${PKGNAME}:../../${PKGPATH}
68CONFIGURE_ARGS+= --with-build-python=${TOOLBASE:Q}/bin/python3.12 71CONFIGURE_ARGS+= --with-build-python=${TOOLBASE:Q}/bin/python3.12
69CONFIGURE_ARGS+= MACHDEP=${PY_PLATNAME} 72CONFIGURE_ARGS+= MACHDEP=${PY_PLATNAME}
70CONFIGURE_ARGS+= \ 73CONFIGURE_ARGS+= \
71 _PYTHON_HOST_PLATFORM=${LOWER_OPSYS}-${MACHINE_GNU_ARCH} 74 _PYTHON_HOST_PLATFORM=${LOWER_OPSYS}-${MACHINE_GNU_ARCH}
72CONFIGURE_ARGS+= ac_sys_system=${OPSYS} 75CONFIGURE_ARGS+= ac_sys_system=${OPSYS}
73. if ${OPSYS} == "OSF1" 76. if ${OPSYS} == "OSF1"
74CONFIGURE_ARGS+= ac_cv_buggy_getaddrinfo=true 77CONFIGURE_ARGS+= ac_cv_buggy_getaddrinfo=true
75. else 78. else
76CONFIGURE_ARGS+= ac_cv_buggy_getaddrinfo=false 79CONFIGURE_ARGS+= ac_cv_buggy_getaddrinfo=false
77. endif 80. endif
78CONFIGURE_ARGS.NetBSD+= ac_cv_file__dev_ptmx=yes 81CONFIGURE_ARGS.NetBSD+= ac_cv_file__dev_ptmx=yes
@@ -100,30 +103,27 @@ USE_TOOLS+= gmake @@ -100,30 +103,27 @@ USE_TOOLS+= gmake
100.endif 103.endif
101 104
102.include "platname.mk" 105.include "platname.mk"
103PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q} 106PLIST_SUBST+= PY_PLATNAME=${PY_PLATNAME:Q}
104 107
105# For Xcode 5 and up, we need to search the SDK path for headers, otherwise 108# For Xcode 5 and up, we need to search the SDK path for headers, otherwise
106# certain modules will not be built. 109# certain modules will not be built.
107.if ${OPSYS} == "Darwin" && exists(${OSX_SDK_PATH:Q}/usr/include) 110.if ${OPSYS} == "Darwin" && exists(${OSX_SDK_PATH:Q}/usr/include)
108CFLAGS+= -I${OSX_SDK_PATH:Q}/usr/include 111CFLAGS+= -I${OSX_SDK_PATH:Q}/usr/include
109.endif 112.endif
110 113
111LDFLAGS.SunOS+= -lresolv 114LDFLAGS.SunOS+= -lresolv
112 115
113PLIST_VARS+= dbm nis tkinter 116PLIST_VARS+= nis tkinter
114.if ${OPSYS} != "Linux" 
115PLIST.dbm= yes 
116.endif 
117.for incdir in ${_OPSYS_INCLUDE_DIRS} 117.for incdir in ${_OPSYS_INCLUDE_DIRS}
118. if exists(${incdir}/rpc/rpc.h) 118. if exists(${incdir}/rpc/rpc.h)
119HAVE_RPC_H= yes 119HAVE_RPC_H= yes
120. elif exists(${incdir}/tirpc/rpc/rpc.h) 120. elif exists(${incdir}/tirpc/rpc/rpc.h)
121CPPFLAGS+= -I${incdir}/tirpc 121CPPFLAGS+= -I${incdir}/tirpc
122HAVE_RPC_H= yes 122HAVE_RPC_H= yes
123. endif 123. endif
124. if exists(${incdir}/rpcsvc/yp_prot.h) 124. if exists(${incdir}/rpcsvc/yp_prot.h)
125HAVE_YP_PROT_H= yes 125HAVE_YP_PROT_H= yes
126. elif exists(${incdir}/nsl/rpcsvc/yp_prot.h) 126. elif exists(${incdir}/nsl/rpcsvc/yp_prot.h)
127CPPFLAGS+= -I${incdir}/nsl 127CPPFLAGS+= -I${incdir}/nsl
128HAVE_YP_PROT_H= yes 128HAVE_YP_PROT_H= yes
129. endif 129. endif
@@ -224,31 +224,32 @@ post-install: hpux-postinstall @@ -224,31 +224,32 @@ post-install: hpux-postinstall
224hpux-postinstall: 224hpux-postinstall:
225 ${LN} -fs ${DESTDIR}${PREFIX}/lib/libpython3.12.sl \ 225 ${LN} -fs ${DESTDIR}${PREFIX}/lib/libpython3.12.sl \
226 ${DESTDIR}${PREFIX}/lib/libpython3.12.sl.1.0 226 ${DESTDIR}${PREFIX}/lib/libpython3.12.sl.1.0
227.endif 227.endif
228 228
229INSTALLATION_DIRS+= lib/python${PY_VER_SUFFIX}/site-packages 229INSTALLATION_DIRS+= lib/python${PY_VER_SUFFIX}/site-packages
230 230
231pre-install: setuptools-preinstall 231pre-install: setuptools-preinstall
232.PHONY: setuptools-preinstall 232.PHONY: setuptools-preinstall
233setuptools-preinstall: 233setuptools-preinstall:
234 ${INSTALL_DATA} ${.CURDIR}/../../devel/py-setuptools/files/_distutils_system_mod \ 234 ${INSTALL_DATA} ${.CURDIR}/../../devel/py-setuptools/files/_distutils_system_mod \
235 ${DESTDIR}${PREFIX}/lib/python${PY_VER_SUFFIX}/site-packages/_distutils_system_mod.py 235 ${DESTDIR}${PREFIX}/lib/python${PY_VER_SUFFIX}/site-packages/_distutils_system_mod.py
236 236
 237.if ${OPSYS} == "Linux"
 238.include "../../databases/gdbm_compat/buildlink3.mk"
 239.endif
237.include "../../archivers/bzip2/buildlink3.mk" 240.include "../../archivers/bzip2/buildlink3.mk"
238.include "../../archivers/xz/buildlink3.mk" 241.include "../../archivers/xz/buildlink3.mk"
239.include "../../databases/sqlite3/buildlink3.mk" 242.include "../../databases/sqlite3/buildlink3.mk"
240.include "../../devel/gettext-lib/buildlink3.mk" 
241.if ${USE_BUILTIN.gettext:U:tl} == no 243.if ${USE_BUILTIN.gettext:U:tl} == no
242CONFIGURE_ENV+= ac_cv_lib_intl_textdomain=yes 244CONFIGURE_ENV+= ac_cv_lib_intl_textdomain=yes
243.endif 245.endif
244.include "../../devel/libffi/buildlink3.mk" 246.include "../../devel/libffi/buildlink3.mk"
245.include "../../devel/libuuid/buildlink3.mk" 247.include "../../devel/libuuid/buildlink3.mk"
246.include "../../devel/readline/buildlink3.mk" 
247.include "../../devel/zlib/buildlink3.mk" 248.include "../../devel/zlib/buildlink3.mk"
248.include "../../security/openssl/buildlink3.mk" 249.include "../../security/openssl/buildlink3.mk"
249.include "../../textproc/expat/buildlink3.mk" 250.include "../../textproc/expat/buildlink3.mk"
250.include "../../mk/bdb.buildlink3.mk" 251.include "../../mk/bdb.buildlink3.mk"
251.include "../../mk/curses.buildlink3.mk" 252.include "../../mk/curses.buildlink3.mk"
252.include "../../mk/dlopen.buildlink3.mk" 253.include "../../mk/dlopen.buildlink3.mk"
253.include "../../mk/oss.buildlink3.mk" 254.include "../../mk/oss.buildlink3.mk"
254.include "../../mk/bsd.pkg.mk" 255.include "../../mk/bsd.pkg.mk"

cvs diff -r1.5 -r1.6 pkgsrc/lang/python312/PLIST (expand / switch to unified diff)

--- pkgsrc/lang/python312/PLIST 2024/04/09 16:57:45 1.5
+++ pkgsrc/lang/python312/PLIST 2024/05/01 15:56:03 1.6
@@ -1,14 +1,14 @@ @@ -1,14 +1,14 @@
1@comment $NetBSD: PLIST,v 1.5 2024/04/09 16:57:45 adam Exp $ 1@comment $NetBSD: PLIST,v 1.6 2024/05/01 15:56:03 cheusov Exp $
2bin/2to3-${PY_VER_SUFFIX} 2bin/2to3-${PY_VER_SUFFIX}
3bin/idle${PY_VER_SUFFIX} 3bin/idle${PY_VER_SUFFIX}
4bin/pydoc${PY_VER_SUFFIX} 4bin/pydoc${PY_VER_SUFFIX}
5bin/python${PY_VER_SUFFIX} 5bin/python${PY_VER_SUFFIX}
6bin/python${PY_VER_SUFFIX}-config 6bin/python${PY_VER_SUFFIX}-config
7include/python${PY_VER_SUFFIX}/Python.h 7include/python${PY_VER_SUFFIX}/Python.h
8include/python${PY_VER_SUFFIX}/abstract.h 8include/python${PY_VER_SUFFIX}/abstract.h
9include/python${PY_VER_SUFFIX}/bltinmodule.h 9include/python${PY_VER_SUFFIX}/bltinmodule.h
10include/python${PY_VER_SUFFIX}/boolobject.h 10include/python${PY_VER_SUFFIX}/boolobject.h
11include/python${PY_VER_SUFFIX}/bytearrayobject.h 11include/python${PY_VER_SUFFIX}/bytearrayobject.h
12include/python${PY_VER_SUFFIX}/bytesobject.h 12include/python${PY_VER_SUFFIX}/bytesobject.h
13include/python${PY_VER_SUFFIX}/ceval.h 13include/python${PY_VER_SUFFIX}/ceval.h
14include/python${PY_VER_SUFFIX}/codecs.h 14include/python${PY_VER_SUFFIX}/codecs.h
@@ -1634,27 +1634,27 @@ lib/python${PY_VER_SUFFIX}/lib-dynload/_ @@ -1634,27 +1634,27 @@ lib/python${PY_VER_SUFFIX}/lib-dynload/_
1634lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_hk.so 1634lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_hk.so
1635lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_iso2022.so 1635lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_iso2022.so
1636lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_jp.so 1636lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_jp.so
1637lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_kr.so 1637lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_kr.so
1638lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_tw.so 1638lib/python${PY_VER_SUFFIX}/lib-dynload/_codecs_tw.so
1639lib/python${PY_VER_SUFFIX}/lib-dynload/_contextvars.so 1639lib/python${PY_VER_SUFFIX}/lib-dynload/_contextvars.so
1640lib/python${PY_VER_SUFFIX}/lib-dynload/_crypt.so 1640lib/python${PY_VER_SUFFIX}/lib-dynload/_crypt.so
1641lib/python${PY_VER_SUFFIX}/lib-dynload/_csv.so 1641lib/python${PY_VER_SUFFIX}/lib-dynload/_csv.so
1642lib/python${PY_VER_SUFFIX}/lib-dynload/_ctypes.so 1642lib/python${PY_VER_SUFFIX}/lib-dynload/_ctypes.so
1643lib/python${PY_VER_SUFFIX}/lib-dynload/_ctypes_test.so 1643lib/python${PY_VER_SUFFIX}/lib-dynload/_ctypes_test.so
1644lib/python${PY_VER_SUFFIX}/lib-dynload/_curses.so 1644lib/python${PY_VER_SUFFIX}/lib-dynload/_curses.so
1645lib/python${PY_VER_SUFFIX}/lib-dynload/_curses_panel.so 1645lib/python${PY_VER_SUFFIX}/lib-dynload/_curses_panel.so
1646lib/python${PY_VER_SUFFIX}/lib-dynload/_datetime.so 1646lib/python${PY_VER_SUFFIX}/lib-dynload/_datetime.so
1647${PLIST.dbm}lib/python${PY_VER_SUFFIX}/lib-dynload/_dbm.so 1647lib/python${PY_VER_SUFFIX}/lib-dynload/_dbm.so
1648lib/python${PY_VER_SUFFIX}/lib-dynload/_decimal.so 1648lib/python${PY_VER_SUFFIX}/lib-dynload/_decimal.so
1649lib/python${PY_VER_SUFFIX}/lib-dynload/_elementtree.so 1649lib/python${PY_VER_SUFFIX}/lib-dynload/_elementtree.so
1650lib/python${PY_VER_SUFFIX}/lib-dynload/_hashlib.so 1650lib/python${PY_VER_SUFFIX}/lib-dynload/_hashlib.so
1651lib/python${PY_VER_SUFFIX}/lib-dynload/_heapq.so 1651lib/python${PY_VER_SUFFIX}/lib-dynload/_heapq.so
1652lib/python${PY_VER_SUFFIX}/lib-dynload/_json.so 1652lib/python${PY_VER_SUFFIX}/lib-dynload/_json.so
1653lib/python${PY_VER_SUFFIX}/lib-dynload/_lsprof.so 1653lib/python${PY_VER_SUFFIX}/lib-dynload/_lsprof.so
1654lib/python${PY_VER_SUFFIX}/lib-dynload/_lzma.so 1654lib/python${PY_VER_SUFFIX}/lib-dynload/_lzma.so
1655lib/python${PY_VER_SUFFIX}/lib-dynload/_md5.so 1655lib/python${PY_VER_SUFFIX}/lib-dynload/_md5.so
1656lib/python${PY_VER_SUFFIX}/lib-dynload/_multibytecodec.so 1656lib/python${PY_VER_SUFFIX}/lib-dynload/_multibytecodec.so
1657lib/python${PY_VER_SUFFIX}/lib-dynload/_multiprocessing.so 1657lib/python${PY_VER_SUFFIX}/lib-dynload/_multiprocessing.so
1658lib/python${PY_VER_SUFFIX}/lib-dynload/_opcode.so 1658lib/python${PY_VER_SUFFIX}/lib-dynload/_opcode.so
1659lib/python${PY_VER_SUFFIX}/lib-dynload/_pickle.so 1659lib/python${PY_VER_SUFFIX}/lib-dynload/_pickle.so
1660lib/python${PY_VER_SUFFIX}/lib-dynload/_posixshmem.so 1660lib/python${PY_VER_SUFFIX}/lib-dynload/_posixshmem.so
@@ -1682,27 +1682,27 @@ lib/python${PY_VER_SUFFIX}/lib-dynload/_ @@ -1682,27 +1682,27 @@ lib/python${PY_VER_SUFFIX}/lib-dynload/_
1682lib/python${PY_VER_SUFFIX}/lib-dynload/_xxsubinterpreters.so 1682lib/python${PY_VER_SUFFIX}/lib-dynload/_xxsubinterpreters.so
1683lib/python${PY_VER_SUFFIX}/lib-dynload/_xxtestfuzz.so 1683lib/python${PY_VER_SUFFIX}/lib-dynload/_xxtestfuzz.so
1684lib/python${PY_VER_SUFFIX}/lib-dynload/_zoneinfo.so 1684lib/python${PY_VER_SUFFIX}/lib-dynload/_zoneinfo.so
1685lib/python${PY_VER_SUFFIX}/lib-dynload/array.so 1685lib/python${PY_VER_SUFFIX}/lib-dynload/array.so
1686lib/python${PY_VER_SUFFIX}/lib-dynload/audioop.so 1686lib/python${PY_VER_SUFFIX}/lib-dynload/audioop.so
1687lib/python${PY_VER_SUFFIX}/lib-dynload/binascii.so 1687lib/python${PY_VER_SUFFIX}/lib-dynload/binascii.so
1688lib/python${PY_VER_SUFFIX}/lib-dynload/cmath.so 1688lib/python${PY_VER_SUFFIX}/lib-dynload/cmath.so
1689lib/python${PY_VER_SUFFIX}/lib-dynload/fcntl.so 1689lib/python${PY_VER_SUFFIX}/lib-dynload/fcntl.so
1690lib/python${PY_VER_SUFFIX}/lib-dynload/grp.so 1690lib/python${PY_VER_SUFFIX}/lib-dynload/grp.so
1691lib/python${PY_VER_SUFFIX}/lib-dynload/math.so 1691lib/python${PY_VER_SUFFIX}/lib-dynload/math.so
1692lib/python${PY_VER_SUFFIX}/lib-dynload/mmap.so 1692lib/python${PY_VER_SUFFIX}/lib-dynload/mmap.so
1693${PLIST.nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so 1693${PLIST.nis}lib/python${PY_VER_SUFFIX}/lib-dynload/nis.so
1694lib/python${PY_VER_SUFFIX}/lib-dynload/pyexpat.so 1694lib/python${PY_VER_SUFFIX}/lib-dynload/pyexpat.so
1695lib/python${PY_VER_SUFFIX}/lib-dynload/readline.so 1695${PLIST.readline}lib/python${PY_VER_SUFFIX}/lib-dynload/readline.so
1696lib/python${PY_VER_SUFFIX}/lib-dynload/resource.so 1696lib/python${PY_VER_SUFFIX}/lib-dynload/resource.so
1697lib/python${PY_VER_SUFFIX}/lib-dynload/select.so 1697lib/python${PY_VER_SUFFIX}/lib-dynload/select.so
1698lib/python${PY_VER_SUFFIX}/lib-dynload/syslog.so 1698lib/python${PY_VER_SUFFIX}/lib-dynload/syslog.so
1699lib/python${PY_VER_SUFFIX}/lib-dynload/termios.so 1699lib/python${PY_VER_SUFFIX}/lib-dynload/termios.so
1700lib/python${PY_VER_SUFFIX}/lib-dynload/unicodedata.so 1700lib/python${PY_VER_SUFFIX}/lib-dynload/unicodedata.so
1701lib/python${PY_VER_SUFFIX}/lib-dynload/xxlimited_35.so 1701lib/python${PY_VER_SUFFIX}/lib-dynload/xxlimited_35.so
1702lib/python${PY_VER_SUFFIX}/lib-dynload/xxsubtype.so 1702lib/python${PY_VER_SUFFIX}/lib-dynload/xxsubtype.so
1703lib/python${PY_VER_SUFFIX}/lib-dynload/zlib.so 1703lib/python${PY_VER_SUFFIX}/lib-dynload/zlib.so
1704lib/python${PY_VER_SUFFIX}/lib2to3/Grammar${PKGVERSION}.final.0.pickle 1704lib/python${PY_VER_SUFFIX}/lib2to3/Grammar${PKGVERSION}.final.0.pickle
1705lib/python${PY_VER_SUFFIX}/lib2to3/Grammar.txt 1705lib/python${PY_VER_SUFFIX}/lib2to3/Grammar.txt
1706lib/python${PY_VER_SUFFIX}/lib2to3/PatternGrammar${PKGVERSION}.final.0.pickle 1706lib/python${PY_VER_SUFFIX}/lib2to3/PatternGrammar${PKGVERSION}.final.0.pickle
1707lib/python${PY_VER_SUFFIX}/lib2to3/PatternGrammar.txt 1707lib/python${PY_VER_SUFFIX}/lib2to3/PatternGrammar.txt
1708lib/python${PY_VER_SUFFIX}/lib2to3/__init__.py 1708lib/python${PY_VER_SUFFIX}/lib2to3/__init__.py

cvs diff -r1.5 -r1.6 pkgsrc/lang/python312/distinfo (expand / switch to unified diff)

--- pkgsrc/lang/python312/distinfo 2024/04/09 16:57:45 1.5
+++ pkgsrc/lang/python312/distinfo 2024/05/01 15:56:03 1.6
@@ -1,12 +1,13 @@ @@ -1,12 +1,13 @@
1$NetBSD: distinfo,v 1.5 2024/04/09 16:57:45 adam Exp $ 1$NetBSD: distinfo,v 1.6 2024/05/01 15:56:03 cheusov Exp $
2 2
3BLAKE2s (Python-3.12.3.tar.xz) = 260855a18335d0355f7472b5ff81b1cea27cc9ccbf5c1346322681bb40a510e2 3BLAKE2s (Python-3.12.3.tar.xz) = 260855a18335d0355f7472b5ff81b1cea27cc9ccbf5c1346322681bb40a510e2
4SHA512 (Python-3.12.3.tar.xz) = 4a2213b108e7f1f1525baa8348e68b2a2336d925e60d0a59f0225fc470768a2c8031edafc0b8243f94dbae18afda335ee5adf2785328c2218fd64cbb439f13a4 4SHA512 (Python-3.12.3.tar.xz) = 4a2213b108e7f1f1525baa8348e68b2a2336d925e60d0a59f0225fc470768a2c8031edafc0b8243f94dbae18afda335ee5adf2785328c2218fd64cbb439f13a4
5Size (Python-3.12.3.tar.xz) = 20625068 bytes 5Size (Python-3.12.3.tar.xz) = 20625068 bytes
6SHA1 (patch-Include_pymacro.h) = 271a891892dca1a3aaa3bedcae626a68a36cae0b 6SHA1 (patch-Include_pymacro.h) = 271a891892dca1a3aaa3bedcae626a68a36cae0b
7SHA1 (patch-Lib_ctypes_util.py) = 3dec1b6b7a36e46cbfa0dfcd71c5e7fac9f60764 7SHA1 (patch-Lib_ctypes_util.py) = 3dec1b6b7a36e46cbfa0dfcd71c5e7fac9f60764
8SHA1 (patch-Lib_lib2to3_pgen2_driver.py) = 593c4e93c5653ab400f0a98b91db92630c0a7390 8SHA1 (patch-Lib_lib2to3_pgen2_driver.py) = 593c4e93c5653ab400f0a98b91db92630c0a7390
9SHA1 (patch-Lib_sysconfig.py) = bc6d91bf8f7121456b26ea7f080f588c96f2596f 9SHA1 (patch-Lib_sysconfig.py) = bc6d91bf8f7121456b26ea7f080f588c96f2596f
10SHA1 (patch-Makefile.pre.in) = 03403a42fc77e4d244fe22335563927f97be6980 10SHA1 (patch-Makefile.pre.in) = 03403a42fc77e4d244fe22335563927f97be6980
 11SHA1 (patch-Modules_readline.c) = 232f6ac43b5a0e87c915f13117bae91ef069a6c1
11SHA1 (patch-Modules_socketmodule.c) = 9d88a801af6e2cbd36b9935a46c8a86727222d56 12SHA1 (patch-Modules_socketmodule.c) = 9d88a801af6e2cbd36b9935a46c8a86727222d56
12SHA1 (patch-configure) = b040e4ddffa12d4f1512e8fd8cd2e914e22d5118 13SHA1 (patch-configure) = b040e4ddffa12d4f1512e8fd8cd2e914e22d5118

cvs diff -r1.2 -r1.3 pkgsrc/lang/python312/options.mk (expand / switch to unified diff)

--- pkgsrc/lang/python312/options.mk 2023/12/08 09:22:42 1.2
+++ pkgsrc/lang/python312/options.mk 2024/05/01 15:56:03 1.3
@@ -1,23 +1,23 @@ @@ -1,23 +1,23 @@
1# $NetBSD: options.mk,v 1.2 2023/12/08 09:22:42 adam Exp $ 1# $NetBSD: options.mk,v 1.3 2024/05/01 15:56:03 cheusov Exp $
2 2
3PKG_OPTIONS_VAR= PKG_OPTIONS.python312 3PKG_OPTIONS_VAR= PKG_OPTIONS.python312
4PKG_SUPPORTED_OPTIONS= dtrace pymalloc tkinter x11 4PKG_SUPPORTED_OPTIONS= dtrace pymalloc tkinter x11 readline
5PKG_SUGGESTED_OPTIONS= x11 5PKG_SUGGESTED_OPTIONS= x11
6 6
7.include "../../mk/bsd.prefs.mk" 7.include "../../mk/bsd.prefs.mk"
8.include "../../mk/bsd.options.mk" 8.include "../../mk/bsd.options.mk"
9 9
10PLIST_VARS+= dtrace 10PLIST_VARS+= dtrace readline
11 11
12.if !empty(PKG_OPTIONS:Mdtrace) 12.if !empty(PKG_OPTIONS:Mdtrace)
13CONFIGURE_ARGS+= --with-dtrace 13CONFIGURE_ARGS+= --with-dtrace
14PLIST.dtrace= yes 14PLIST.dtrace= yes
15.endif 15.endif
16 16
17.if !empty(PKG_OPTIONS:Mtkinter) 17.if !empty(PKG_OPTIONS:Mtkinter)
18PLIST.tkinter= yes 18PLIST.tkinter= yes
19.include "../../lang/tcl/buildlink3.mk" 19.include "../../lang/tcl/buildlink3.mk"
20.include "../../x11/tk/buildlink3.mk" 20.include "../../x11/tk/buildlink3.mk"
21.else 21.else
22CONFIGURE_ENV+= py_cv_module__tkinter="n/a" 22CONFIGURE_ENV+= py_cv_module__tkinter="n/a"
23.endif 23.endif
@@ -31,13 +31,27 @@ SUBST_STAGE.xfindlib= pre-configure @@ -31,13 +31,27 @@ SUBST_STAGE.xfindlib= pre-configure
31SUBST_FILES.xfindlib= Lib/ctypes/util.py 31SUBST_FILES.xfindlib= Lib/ctypes/util.py
32SUBST_SED.xfindlib= -e "s!\('-Wl,-t'\)!'${COMPILER_RPATH_FLAG}${X11BASE}/lib', '-L${X11BASE}/lib', \1!" 32SUBST_SED.xfindlib= -e "s!\('-Wl,-t'\)!'${COMPILER_RPATH_FLAG}${X11BASE}/lib', '-L${X11BASE}/lib', \1!"
33 33
34# Required to get definition of X11BASE and retain X11 rpath paths for linker 34# Required to get definition of X11BASE and retain X11 rpath paths for linker
35# We need to pass rpath to _ctypes.so to get functional dlopen(3) for X11 libs 35# We need to pass rpath to _ctypes.so to get functional dlopen(3) for X11 libs
36USE_X11= weak 36USE_X11= weak
37.endif 37.endif
38 38
39.if !empty(PKG_OPTIONS:Mpymalloc) 39.if !empty(PKG_OPTIONS:Mpymalloc)
40CONFIGURE_ARGS+= --with-pymalloc 40CONFIGURE_ARGS+= --with-pymalloc
41.else 41.else
42CONFIGURE_ARGS+= --without-pymalloc 42CONFIGURE_ARGS+= --without-pymalloc
43.endif 43.endif
 44
 45# readline/editline
 46.if empty(PKG_OPTIONS:Mreadline)
 47.info "Disable readline"
 48CONFIGURE_ARGS+= --without-readline
 49.else
 50.include "../../mk/readline.buildlink3.mk"
 51.if ${READLINE_TYPE} == "editline"
 52CONFIGURE_ARGS+= --with-readline=editline
 53.else
 54CONFIGURE_ARGS+= --with-readline
 55.endif
 56PLIST.readline= yes
 57.endif

File Added: pkgsrc/lang/python312/patches/patch-Modules_readline.c
$NetBSD: patch-Modules_readline.c,v 1.1 2024/05/01 15:56:04 cheusov Exp $

pkgsrc buildlink framework installs libedit headers to readline/ subdirectory.

VFunction type is not available on NetBSD`s native libedit.

--- Modules/readline.c.orig	2024-04-02 08:25:04.000000000 +0000
+++ Modules/readline.c
@@ -29,7 +29,7 @@
 #endif
 
 #ifdef WITH_EDITLINE
-#  include <editline/readline.h>
+#  include <readline/readline.h>
 #else
 /* GNU readline definitions */
 #  undef HAVE_CONFIG_H /* Else readline/chardefs.h includes strings.h */
@@ -443,7 +443,7 @@ readline_set_completion_display_matches_
 #if defined(HAVE_RL_COMPDISP_FUNC_T)
         (rl_compdisp_func_t *)on_completion_display_matches_hook : 0;
 #else
-        (VFunction *)on_completion_display_matches_hook : 0;
+        on_completion_display_matches_hook : 0;
 #endif
 #endif
     return result;