mirror of
https://git.FreeBSD.org/ports.git
synced 2024-11-28 01:06:17 +00:00
lang/python*: Replace DISABLED_EXTENSIONS with Setup.local
Currently, lang/python38 and lang/python39 don't honor
DISABLED_EXTENSIONS because patch-issue20210 was removed when
lang/python38 was added to the ports tree. patch-issue20210 is still
present on lang/python36 and lang/python37.
Building with poudriere is not affected because builds are executed in a
clean environment.
Setup.local is the more canonical and recommended method for customizing
Python builds for shared extensions & third party libraries.
Support for a *disabled* marker in Setup files was introduced in Python
3.7, so backport this fix to it to keep consistency in the ports tree.
PR: 243358 [1]
PR: 243937 [2]
Reported by: ngie [1]
Reported by: jcfyecrayz@liamekaens.com [2]
Reported by: tuxillo (IRC) DPorts
Reviewed by: koobs (python, maintainer)
Approved by: koobs, dbaio (python, maintainer)
Differential Revision: https://reviews.freebsd.org/D31086
(cherry picked from commit a94d4b1005
)
This commit is contained in:
parent
d3cc3920a1
commit
42b74dbb33
@ -31,7 +31,7 @@ PYTHON_SUFFIX= ${PYTHON_VER:S/.//g}
|
||||
|
||||
DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm
|
||||
CONFIGURE_ARGS+= --enable-shared --with-system-ffi --with-system-libmpdec --without-ensurepip
|
||||
CONFIGURE_ENV+= OPT="" DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS}" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
CONFIGURE_ENV+= OPT="" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
|
||||
INSTALL_TARGET= altinstall # Don't want cloberring of unprefixed files
|
||||
|
||||
@ -112,6 +112,11 @@ post-patch:
|
||||
# which introduces hidden dependency and breaks build
|
||||
@${REINPLACE_CMD} -e 's|uuid/uuid.h|ignore_&|' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -e '/find_library_file/ s|uuid|ignore_&|' ${WRKSRC}/setup.py
|
||||
# Apply DISABLED_EXTENSIONS
|
||||
@${ECHO} '*disabled*' > ${WRKSRC}/Modules/Setup.local
|
||||
. for _module in ${DISABLED_EXTENSIONS}
|
||||
@${ECHO} ${_module} >> ${WRKSRC}/Modules/Setup.local
|
||||
. endfor
|
||||
|
||||
post-install:
|
||||
.if ! ${PORT_OPTIONS:MDEBUG}
|
||||
|
@ -1,68 +0,0 @@
|
||||
# Backport patch 0001 from Issue #20210
|
||||
# Issue: https://bugs.python.org/issue20210
|
||||
# By: Thomas Petazzoni
|
||||
|
||||
--- ./Makefile.pre.in.orig 2014-03-24 22:45:17.908886504 +1100
|
||||
+++ ./Makefile.pre.in 2014-03-24 22:47:55.503779805 +1100
|
||||
@@ -172,6 +172,8 @@
|
||||
# configure script arguments
|
||||
CONFIG_ARGS= @CONFIG_ARGS@
|
||||
|
||||
+# disabled extensions
|
||||
+DISABLED_EXTENSIONS= @DISABLED_EXTENSIONS@
|
||||
|
||||
# Subdirectories with code
|
||||
SRCDIRS= @SRCDIRS@
|
||||
@@ -555,6 +557,7 @@
|
||||
esac; \
|
||||
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
|
||||
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
|
||||
+ DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
|
||||
|
||||
# Build static library
|
||||
@@ -1352,7 +1355,8 @@
|
||||
# Install the dynamically loadable modules
|
||||
# This goes into $(exec_prefix)
|
||||
sharedinstall: sharedmods
|
||||
- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
||||
+ $(RUNSHARED) DISABLED_EXTENSIONS="$(DISABLED_EXTENSIONS)" \
|
||||
+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
|
||||
--prefix=$(prefix) \
|
||||
--install-scripts=$(BINDIR) \
|
||||
--install-platlib=$(DESTSHARED) \
|
||||
--- ./configure.ac.orig 2014-03-24 22:48:10.442551831 +1100
|
||||
+++ ./configure.ac 2014-03-24 22:48:42.059827384 +1100
|
||||
@@ -2331,6 +2331,8 @@
|
||||
|
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
|
||||
|
||||
+AC_SUBST(DISABLED_EXTENSIONS)
|
||||
+
|
||||
# Check for use of the system expat library
|
||||
AC_MSG_CHECKING(for --with-system-expat)
|
||||
AC_ARG_WITH(system_expat,
|
||||
--- configure.orig 2015-03-01 13:57:08.000000000 +0300
|
||||
+++ configure 2015-03-01 13:57:30.000000000 +0300
|
||||
@@ -650,6 +650,7 @@
|
||||
TCLTK_LIBS
|
||||
TCLTK_INCLUDES
|
||||
LIBFFI_INCLUDEDIR
|
||||
+DISABLED_EXTENSIONS
|
||||
PKG_CONFIG_LIBDIR
|
||||
PKG_CONFIG_PATH
|
||||
PKG_CONFIG
|
||||
--- ./setup.py.orig 2014-03-24 22:48:48.495472513 +1100
|
||||
+++ ./setup.py 2014-03-24 22:49:20.076122201 +1100
|
||||
@@ -33,7 +33,10 @@
|
||||
COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
|
||||
|
||||
# This global variable is used to hold the list of modules to be disabled.
|
||||
-disabled_module_list = []
|
||||
+try:
|
||||
+ disabled_module_list = sysconfig.get_config_var("DISABLED_EXTENSIONS").split(" ")
|
||||
+except KeyError:
|
||||
+ disabled_module_list = list()
|
||||
|
||||
def add_dir_to_list(dirlist, dir):
|
||||
"""Add the directory 'dir' to the list 'dirlist' (after any relative
|
@ -33,7 +33,7 @@ PYTHON_SUFFIX= ${PYTHON_VER:S/.//g}
|
||||
DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm
|
||||
CONFIGURE_ARGS+= --enable-shared --without-ensurepip \
|
||||
--with-system-ffi
|
||||
CONFIGURE_ENV+= OPT="" DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS}" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
CONFIGURE_ENV+= OPT="" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
|
||||
INSTALL_TARGET= altinstall # Don't want cloberring of unprefixed files
|
||||
|
||||
@ -115,6 +115,11 @@ post-patch:
|
||||
# which introduces hidden dependency and breaks build
|
||||
@${REINPLACE_CMD} -e 's|uuid/uuid.h|ignore_&|' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -e '/find_library_file/ s|uuid|ignore_&|' ${WRKSRC}/setup.py
|
||||
# Apply DISABLED_EXTENSIONS
|
||||
@${ECHO} '*disabled*' > ${WRKSRC}/Modules/Setup.local
|
||||
. for _module in ${DISABLED_EXTENSIONS}
|
||||
@${ECHO} ${_module} >> ${WRKSRC}/Modules/Setup.local
|
||||
. endfor
|
||||
|
||||
post-install:
|
||||
.if ! ${PORT_OPTIONS:MDEBUG}
|
||||
|
@ -34,7 +34,7 @@ PYTHON_SUFFIX= ${PYTHON_VER:S/.//g}
|
||||
DISABLED_EXTENSIONS= _sqlite3 _tkinter _gdbm
|
||||
CONFIGURE_ARGS+= --enable-shared --without-ensurepip \
|
||||
--with-system-ffi
|
||||
CONFIGURE_ENV+= OPT="" DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS}" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
CONFIGURE_ENV+= OPT="" # Null out OPT to respect user CFLAGS and remove optimizations
|
||||
|
||||
INSTALL_TARGET= altinstall # Don't want cloberring of unprefixed files
|
||||
|
||||
@ -116,6 +116,11 @@ post-patch:
|
||||
# which introduces hidden dependency and breaks build
|
||||
@${REINPLACE_CMD} -e 's|uuid/uuid.h|ignore_&|' ${WRKSRC}/configure
|
||||
@${REINPLACE_CMD} -e '/find_library_file/ s|uuid|ignore_&|' ${WRKSRC}/setup.py
|
||||
# Apply DISABLED_EXTENSIONS
|
||||
@${ECHO} '*disabled*' > ${WRKSRC}/Modules/Setup.local
|
||||
. for _module in ${DISABLED_EXTENSIONS}
|
||||
@${ECHO} ${_module} >> ${WRKSRC}/Modules/Setup.local
|
||||
. endfor
|
||||
|
||||
post-install:
|
||||
.if ! ${PORT_OPTIONS:MDEBUG}
|
||||
|
Loading…
Reference in New Issue
Block a user