From d88f2d3430bbbe285ae3de5fbc1bde34da7f0478 Mon Sep 17 00:00:00 2001 From: Thomas Petazzoni Date: Wed, 22 Feb 2017 17:40:45 -0800 Subject: [PATCH] Add an option to disable expat This patch replaces the existing --with-system-expat option with a --with-expat={system,builtin,none} option, which allows to tell Python whether we want to use the system expat (already installed), the expat builtin the Python sources, or no expat at all (which disables the installation of XML modules). Signed-off-by: Thomas Petazzoni Signed-off-by: Samuel Martin [ Andrey Smirnov: ported to Python 3.6 ] Signed-off-by: Andrey Smirnov --- Makefile.pre.in | 6 +++++- configure.ac | 18 +++++++++++++----- setup.py | 2 +- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/Makefile.pre.in b/Makefile.pre.in index 660c292765..f49abf8395 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -1331,7 +1331,7 @@ LIBSUBDIRS= site-packages \ logging csv wsgiref urllib \ ctypes ctypes/macholib \ idlelib idlelib/Icons \ - distutils distutils/command $(XMLLIBSUBDIRS) \ + distutils distutils/command \ importlib \ turtledemo \ multiprocessing multiprocessing/dummy \ @@ -1416,6 +1416,10 @@ ifeq (@CURSES@,yes) LIBSUBDIRS += curses endif +ifeq (@EXPAT@,yes) +LIBSUBDIRS += $(XMLLIBSUBDIRS) +endif + ifeq (@LIB2TO3@,yes) LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2 TESTSUBDIRS += lib2to3/tests \ diff --git a/configure.ac b/configure.ac index ea422a86a9..3c1e2c088d 100644 --- a/configure.ac +++ b/configure.ac @@ -2955,13 +2955,21 @@ PKG_PROG_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, - AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library]), +AC_MSG_CHECKING(for --with-expat) +AC_ARG_WITH(expat, + AS_HELP_STRING([--with-expat], [select which expat version to use: system, builtin, none]), [], - [with_system_expat="no"]) + [with_expat="builtin"]) -AC_MSG_RESULT($with_system_expat) +AC_MSG_RESULT($with_expat) + +if test "$with_expat" != "none"; then + EXPAT=yes +else + DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} pyexpat" + EXPAT=no +fi +AC_SUBST(EXPAT) # Check for use of the system libffi library AC_MSG_CHECKING(for --with-system-ffi) diff --git a/setup.py b/setup.py index 1669797cad..d2727c0da5 100644 --- a/setup.py +++ b/setup.py @@ -1576,7 +1576,7 @@ class PyBuildExt(build_ext): # # More information on Expat can be found at www.libexpat.org. # - if '--with-system-expat' in sysconfig.get_config_var("CONFIG_ARGS"): + if '--with-expat=system' in sysconfig.get_config_var("CONFIG_ARGS"): expat_inc = [] define_macros = [] extra_compile_args = [] -- 2.20.1