2017-09-19 00:34:41 +02:00
|
|
|
From 63fc5bc90cb57460552b544cbed0c2939759ab9e Mon Sep 17 00:00:00 2001
|
2016-01-04 19:23:28 +01:00
|
|
|
From: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
|
2017-03-23 16:21:12 +01:00
|
|
|
Date: Wed, 22 Feb 2017 17:40:45 -0800
|
2016-01-04 19:23:28 +01:00
|
|
|
Subject: [PATCH] Add an option to disable expat
|
2013-05-29 10:36:57 +02:00
|
|
|
|
|
|
|
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 <thomas.petazzoni@free-electrons.com>
|
|
|
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
2017-03-23 16:21:12 +01:00
|
|
|
[ Andrey Smirnov: ported to Python 3.6 ]
|
|
|
|
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
|
2013-05-29 10:36:57 +02:00
|
|
|
---
|
2016-01-04 19:23:28 +01:00
|
|
|
Makefile.pre.in | 6 +++++-
|
|
|
|
configure.ac | 18 +++++++++++++-----
|
|
|
|
setup.py | 2 +-
|
2013-05-29 10:36:57 +02:00
|
|
|
3 files changed, 19 insertions(+), 7 deletions(-)
|
|
|
|
|
2016-01-04 19:23:28 +01:00
|
|
|
diff --git a/Makefile.pre.in b/Makefile.pre.in
|
2017-09-19 00:34:41 +02:00
|
|
|
index 6a6bc082cd..dc4b92b6fe 100644
|
2014-02-18 21:40:01 +01:00
|
|
|
--- a/Makefile.pre.in
|
|
|
|
+++ b/Makefile.pre.in
|
2019-07-10 23:21:37 +02:00
|
|
|
@@ -1275,7 +1275,7 @@ LIBSUBDIRS= site-packages \
|
2013-05-29 10:36:57 +02:00
|
|
|
logging csv wsgiref urllib \
|
2014-02-18 21:40:01 +01:00
|
|
|
ctypes ctypes/macholib \
|
|
|
|
idlelib idlelib/Icons \
|
2013-05-29 10:36:57 +02:00
|
|
|
- distutils distutils/command $(XMLLIBSUBDIRS) \
|
|
|
|
+ distutils distutils/command \
|
|
|
|
importlib \
|
|
|
|
turtledemo \
|
|
|
|
multiprocessing multiprocessing/dummy \
|
2019-07-10 23:21:37 +02:00
|
|
|
@@ -1356,6 +1356,10 @@ ifeq (@CURSES@,yes)
|
2013-05-29 10:36:57 +02:00
|
|
|
LIBSUBDIRS += curses
|
|
|
|
endif
|
|
|
|
|
|
|
|
+ifeq (@EXPAT@,yes)
|
|
|
|
+LIBSUBDIRS += $(XMLLIBSUBDIRS)
|
|
|
|
+endif
|
|
|
|
+
|
2017-03-23 16:21:12 +01:00
|
|
|
ifeq (@LIB2TO3@,yes)
|
|
|
|
LIBSUBDIRS += lib2to3 lib2to3/fixes lib2to3/pgen2
|
|
|
|
TESTSUBDIRS += lib2to3/tests \
|
2016-01-04 19:23:28 +01:00
|
|
|
diff --git a/configure.ac b/configure.ac
|
2017-09-19 00:34:41 +02:00
|
|
|
index 5896b39ff9..6f21482207 100644
|
2014-02-18 21:40:01 +01:00
|
|
|
--- a/configure.ac
|
|
|
|
+++ b/configure.ac
|
2019-04-10 17:42:43 +02:00
|
|
|
@@ -2969,13 +2969,21 @@ PKG_PROG_PKG_CONFIG
|
2013-05-29 10:36:57 +02:00
|
|
|
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)
|
2016-01-04 19:23:28 +01:00
|
|
|
diff --git a/setup.py b/setup.py
|
2017-09-19 00:34:41 +02:00
|
|
|
index 76429e1326..38aa5e605e 100644
|
2014-02-18 21:40:01 +01:00
|
|
|
--- a/setup.py
|
|
|
|
+++ b/setup.py
|
2019-07-10 23:21:37 +02:00
|
|
|
@@ -1529,7 +1529,7 @@ class PyBuildExt(build_ext):
|
2013-05-29 10:36:57 +02:00
|
|
|
#
|
|
|
|
# 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 = []
|
python3: bump to 3.7.0
Other changes include:
- Refreshing all necessary patches for 3.7.0
- Add a hash for the license file.
- Python no longer has it's own internal libffi, as such, host-libffi
is now required to build host-python3, and is added as a
dependency.
- Drop PYTHON3_LIBTOOL_PATCH = NO, since there is no longer any
internal libffi copy that was causing the libtool patching process
to fail.
- A new core module "uuid" is now is added in the Config.in file, and
relies on util-linux's uuid library.
- Also, a new patch: 0030-Fix-cross-compiling-the-uuid-module.patch
is required to fix compiling the uuid module, because the include
directory search path for uuid.h is hardcoded to /usr/include/uuid,
which causes an "unsafe for cross-compilation" error during
compiling if the host pc has uuid headers installed.
- 0031-Add-an-option-to-disable-uuid-module.patch is added to allow
disabling the Python3 UUID module, so that when
BR2_PACKAGE_PYTHON3_UUID is disabled by the UUID library is
present, the uuid Python module is not built, as expected.
- 0032-fix-building-on-older-distributions.patch is added to change
os.replace by os.rename in the update_file.py script to fix
building on older Linux distributions that have older versions of
python that don't include os.replace.
os.rename acts in the same way as os.replace, but is cross-platform
compatible. Because Buildroot is guaranteed to be built in a POSIX
environment, it is safe to change replace to rename.
Tested on CentOS6 and Fedora28, All test results passed:
br-arm-full [1/6]: OK
br-arm-cortex-a9-glibc [2/6]: OK
br-arm-cortex-m4-full [3/6]: SKIPPED
br-x86-64-musl [4/6]: OK
br-arm-full-static [5/6]: SKIPPED
armv5-ctng-linux-gnueabi [6/6]: OK
6 builds, 2 skipped, 0 build failed, 0 legal-info failed
Signed-off-by: Adam Duskett <aduskett@gmail.com>
[Thomas:
- remove PYTHON3_LIBTOOL_PATCH = NO
- improve the solution in patch 0030-Fix-cross-compiling-the-uuid-module
- add patch 0031-Add-an-option-to-disable-uuid-module]
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
2018-07-20 18:10:21 +02:00
|
|
|
extra_compile_args = []
|
2016-01-04 19:23:28 +01:00
|
|
|
--
|
2017-09-19 00:34:41 +02:00
|
|
|
2.13.5
|
2016-01-04 19:23:28 +01:00
|
|
|
|