diff options
-rw-r--r-- | tools/depends/Makefile.include.in | 2 | ||||
-rw-r--r-- | tools/depends/target/config.site.in | 2 | ||||
-rw-r--r-- | tools/depends/target/python3/Makefile | 2 | ||||
-rw-r--r-- | tools/depends/target/python3/android.patch | 6 | ||||
-rw-r--r-- | tools/depends/target/python3/apple.patch | 6 | ||||
-rw-r--r-- | tools/depends/target/python3/crosscompile.patch | 21 | ||||
-rw-r--r-- | tools/depends/target/python3/darwin_embedded.patch | 127 | ||||
-rw-r--r-- | tools/depends/target/python3/modules.setup | 38 | ||||
-rw-r--r-- | tools/depends/target/pythonmodule-pil/Makefile | 2 | ||||
-rw-r--r-- | tools/depends/target/pythonmodule-pil/pillow-crosscompile.patch | 5 |
10 files changed, 105 insertions, 106 deletions
diff --git a/tools/depends/Makefile.include.in b/tools/depends/Makefile.include.in index 5930ac3958..d1e6799465 100644 --- a/tools/depends/Makefile.include.in +++ b/tools/depends/Makefile.include.in @@ -103,7 +103,7 @@ VERSION.TXT := $(CMAKE_SOURCE_DIR)/version.txt APP_NAME=$(shell awk '/APP_NAME/ {print tolower($$2)}' $(VERSION.TXT)) # Python related vars -PYTHON_VERSION=3.8 +PYTHON_VERSION=3.9 PYTHON_SITE_PKG=@prefix@/@deps_dir@/lib/python${PYTHON_VERSION}/site-packages ifeq ($(CPU), arm64) diff --git a/tools/depends/target/config.site.in b/tools/depends/target/config.site.in index f0c9fd030c..e641560c78 100644 --- a/tools/depends/target/config.site.in +++ b/tools/depends/target/config.site.in @@ -34,7 +34,7 @@ LIBGCRYPT_CONFIG=@prefix@/@deps_dir@/bin/libgcrypt-config PATH=@prefix@/@tool_dir@/bin:@use_toolchain@/usr/bin:@use_toolchain@/bin:$PATH LD_LIBRARY_PATH=@prefix@/@tool_dir@/lib:$LD_LIBRARY_PATH -PYTHON_VERSION=3.8 +PYTHON_VERSION=3.9 NATIVE_ROOT=@prefix@/@tool_dir@ #libomxil-bellagio diff --git a/tools/depends/target/python3/Makefile b/tools/depends/target/python3/Makefile index f724f581a6..0d9b683c15 100644 --- a/tools/depends/target/python3/Makefile +++ b/tools/depends/target/python3/Makefile @@ -4,7 +4,7 @@ DEPS= ../../Makefile.include Makefile apple.patch crosscompile.patch android.pat # lib name, version LIBNAME=Python -VERSION=3.8.5 +VERSION=3.9.7 SOURCE=$(LIBNAME)-$(VERSION) ARCHIVE=$(SOURCE).tar.xz BASE_URL=https://www.python.org/ftp/python/$(VERSION) diff --git a/tools/depends/target/python3/android.patch b/tools/depends/target/python3/android.patch index 6139e2e221..0d72053d84 100644 --- a/tools/depends/target/python3/android.patch +++ b/tools/depends/target/python3/android.patch @@ -1,6 +1,6 @@ --- a/Modules/termios.c +++ b/Modules/termios.c -@@ -224,6 +224,7 @@ +@@ -239,6 +239,7 @@ Py_RETURN_NONE; } @@ -8,7 +8,7 @@ PyDoc_STRVAR(termios_tcdrain__doc__, "tcdrain(fd) -> None\n\ \n\ -@@ -242,6 +243,7 @@ +@@ -257,6 +257,7 @@ Py_RETURN_NONE; } @@ -16,7 +16,7 @@ PyDoc_STRVAR(termios_tcflush__doc__, "tcflush(fd, queue) -> None\n\ -@@ -295,8 +297,10 @@ +@@ -310,8 +310,10 @@ METH_VARARGS, termios_tcsetattr__doc__}, {"tcsendbreak", termios_tcsendbreak, METH_VARARGS, termios_tcsendbreak__doc__}, diff --git a/tools/depends/target/python3/apple.patch b/tools/depends/target/python3/apple.patch index 8d63246eed..d8ab9fcea1 100644 --- a/tools/depends/target/python3/apple.patch +++ b/tools/depends/target/python3/apple.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -379,6 +379,9 @@ +@@ -400,6 +400,9 @@ *-*-cygwin*) ac_sys_system=Cygwin ;; @@ -10,7 +10,7 @@ *-*-vxworks*) ac_sys_system=VxWorks ;; -@@ -428,6 +431,8 @@ +@@ -449,6 +449,8 @@ *-*-cygwin*) _host_cpu= ;; @@ -19,7 +19,7 @@ *-*-vxworks*) _host_cpu=$host_cpu ;; -@@ -500,6 +505,8 @@ +@@ -521,6 +521,8 @@ define_xopen_source=no;; Darwin/@<:@[12]@:>@@<:@0-9@:>@.*) define_xopen_source=no;; diff --git a/tools/depends/target/python3/crosscompile.patch b/tools/depends/target/python3/crosscompile.patch index a65296ceb6..7c27870fed 100644 --- a/tools/depends/target/python3/crosscompile.patch +++ b/tools/depends/target/python3/crosscompile.patch @@ -1,6 +1,6 @@ --- a/configure.ac +++ b/configure.ac -@@ -1184,15 +1184,6 @@ +@@ -1214,15 +1214,6 @@ ARFLAGS="rcs" fi @@ -26,7 +26,7 @@ SOABI= @SOABI@ LDVERSION= @LDVERSION@ LIBPYTHON= @LIBPYTHON@ -@@ -608,7 +607,7 @@ +@@ -635,7 +635,7 @@ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \ $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \ @@ -35,7 +35,7 @@ # Build static library -@@ -1600,10 +1599,11 @@ +@@ -1695,10 +1595,11 @@ # This goes into $(exec_prefix) sharedinstall: sharedmods $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \ @@ -52,7 +52,7 @@ --- a/setup.py +++ b/setup.py -@@ -21,7 +21,7 @@ +@@ -41,7 +41,7 @@ # Compile extensions used to test Python? @@ -61,7 +61,7 @@ # This global variable is used to hold the list of modules to be disabled. DISABLED_MODULE_LIST = [] -@@ -38,7 +38,7 @@ +@@ -58,7 +58,7 @@ return sys.platform @@ -70,11 +70,12 @@ HOST_PLATFORM = get_platform() MS_WINDOWS = (HOST_PLATFORM == 'win32') CYGWIN = (HOST_PLATFORM == 'cygwin') -@@ -310,6 +310,7 @@ - self.extensions.append(ext) +@@ -442,6 +442,7 @@ + self.compiler.set_executables(**args) def build_extensions(self): + return - self.srcdir = sysconfig.get_config_var('srcdir') - if not self.srcdir: - # Maybe running on Windows but not using CYGWIN? + self.set_srcdir() + + # Detect which modules should be compiled + diff --git a/tools/depends/target/python3/darwin_embedded.patch b/tools/depends/target/python3/darwin_embedded.patch index 6f77fcf2fa..aeadf14dfb 100644 --- a/tools/depends/target/python3/darwin_embedded.patch +++ b/tools/depends/target/python3/darwin_embedded.patch @@ -1,6 +1,6 @@ --- a/Lib/os.py +++ b/Lib/os.py -@@ -599,6 +599,7 @@ +@@ -605,6 +605,7 @@ fullname = path.join(dir, file) try: exec_func(fullname, *argrest) @@ -10,16 +10,7 @@ except OSError as e: --- a/Lib/platform.py +++ b/Lib/platform.py -@@ -604,7 +604,7 @@ - - """ Interface to the system's uname command. - """ -- if sys.platform in ('dos', 'win32', 'win16'): -+ if sys.platform in ('dos', 'win32', 'win16', 'darwin'): - # XXX Others too ? - return default - -@@ -626,7 +626,7 @@ +@@ -614,7 +614,7 @@ default in case the command should fail. """ @@ -30,16 +21,16 @@ --- a/Lib/subprocess.py +++ b/Lib/subprocess.py -@@ -737,6 +737,8 @@ - restore_signals=True, start_new_session=False, - pass_fds=(), *, encoding=None, errors=None, text=None): +@@ -762,6 +762,8 @@ + pass_fds=(), *, user=None, group=None, extra_groups=None, + encoding=None, errors=None, text=None, umask=-1): """Create new Popen instance.""" + raise RuntimeError("Subprocesses are not supported on this platform.") + _cleanup() # Held while anything is calling waitpid before returncode has been # updated to prevent clobbering returncode if wait() or poll() are -@@ -936,6 +936,7 @@ +@@ -1046,6 +1048,7 @@ if not self._child_created: # We didn't get to successfully create a child process. return @@ -47,7 +38,7 @@ if self.returncode is None: # Not reading subprocess exit status creates a zombie process which # is only destroyed at the parent python process exit -@@ -1566,6 +1566,7 @@ +@@ -1679,6 +1682,7 @@ else: args = list(args) @@ -55,15 +46,15 @@ if shell: # On Android the default shell is at '/system/bin/sh'. unix_shell = ('/system/bin/sh' if -@@ -1643,6 +1643,7 @@ - errpipe_read, errpipe_write, - restore_signals, start_new_session, preexec_fn) +@@ -1762,6 +1766,7 @@ + gid, gids, uid, umask, + preexec_fn) self._child_created = True + return finally: # be sure the FD is closed no matter what os.close(errpipe_write) -@@ -1662,6 +1662,7 @@ +@@ -1781,6 +1786,7 @@ finally: # be sure the FD is closed no matter what os.close(errpipe_read) @@ -71,16 +62,16 @@ if errpipe_data: try: -@@ -1721,7 +1724,7 @@ - raise SubprocessError("Unknown child exit status!") - +@@ -1834,7 +1840,7 @@ + else: + self.returncode = waitstatus_to_exitcode(sts) - def _internal_poll(self, _deadstate=None, _waitpid=os.waitpid, + def _internal_poll(self, _deadstate=None, _waitpid=None, _WNOHANG=os.WNOHANG, _ECHILD=errno.ECHILD): """Check if child process has terminated. Returns returncode attribute. -@@ -1730,6 +1733,8 @@ +@@ -1843,6 +1849,8 @@ outside of the local scope (nor can any methods it calls). """ @@ -91,7 +82,7 @@ # Something else is busy calling waitpid. Don't allow two --- a/Lib/urllib/request.py +++ b/Lib/urllib/request.py -@@ -2616,11 +2616,9 @@ +@@ -2617,11 +2617,9 @@ if sys.platform == 'darwin': @@ -104,7 +95,7 @@ def getproxies_macosx_sysconf(): """Return a dictionary of scheme -> proxy server URL mappings. -@@ -2628,7 +2628,7 @@ +@@ -2629,7 +2627,7 @@ This function uses the MacOSX framework SystemConfiguration to fetch the proxy information. """ @@ -113,7 +104,7 @@ -@@ -2641,9 +2641,9 @@ +@@ -2642,9 +2640,9 @@ """ proxies = getproxies_environment() if proxies: @@ -127,17 +118,17 @@ return getproxies_environment() or getproxies_macosx_sysconf() --- a/Modules/_posixsubprocess.c +++ b/Modules/_posixsubprocess.c -@@ -49,6 +49,9 @@ - - #define POSIX_CALL(call) do { if ((call) == -1) goto error; } while (0) +@@ -100,6 +100,9 @@ + return 0; + } +#if defined(__APPLE__) +#include <TargetConditionals.h> +#endif - /* If gc was disabled, call gc.enable(). Return 0 on success. */ + /* Convert ASCII to a positive int, no libc call. no overflow. -1 on error. */ static int -@@ -419,14 +422,14 @@ +@@ -456,14 +459,14 @@ goto error; /* Close parent's pipe ends. */ @@ -154,7 +145,7 @@ /* When duping fds, if there arises a situation where one of the fds is either 0, 1 or 2, it is possible that it is overwritten (#12607). */ if (c2pwrite == 0) { -@@ -471,6 +474,8 @@ +@@ -508,6 +511,8 @@ /* We no longer manually close p2cread, c2pwrite, and errwrite here as * _close_open_fds takes care when it is not already non-inheritable. */ @@ -163,7 +154,7 @@ if (cwd) POSIX_CALL(chdir(cwd)); -@@ -496,13 +501,13 @@ +@@ -552,13 +557,13 @@ errno = 0; /* We don't want to report an OSError. */ goto error; } @@ -179,7 +170,7 @@ } /* This loop matches the Lib/os.py _execvpe()'s PATH search when */ -@@ -511,20 +516,34 @@ +@@ -567,20 +572,34 @@ for (i = 0; exec_array[i] != NULL; ++i) { const char *executable = exec_array[i]; if (envp) { @@ -214,7 +205,7 @@ /* Report the posix error to our parent process. */ /* We ignore all write() return values as the total size of our writes is less than PIPEBUF and we cannot do anything about an error anyways. -@@ -686,11 +705,12 @@ +@@ -837,11 +856,12 @@ preexec_fn_args_tuple = PyTuple_New(0); if (!preexec_fn_args_tuple) goto cleanup; @@ -229,7 +220,7 @@ if (pid == 0) { /* Child process */ /* -@@ -704,7 +724,7 @@ +@@ -855,7 +875,7 @@ * This call may not be async-signal-safe but neither is calling * back into Python. The user asked us to use hope as a strategy * to avoid deadlock... */ @@ -238,7 +229,7 @@ } child_exec(exec_array, argv, envp, cwd, -@@ -723,8 +743,8 @@ +@@ -876,8 +896,8 @@ Py_XDECREF(cwd_obj2); @@ -251,42 +242,42 @@ if (argv) --- a/Modules/getpath.c +++ b/Modules/getpath.c -@@ -806,8 +806,10 @@ - * will fail if a relative path was used. but in that case, - * absolutize() should help us out below - */ -- else if(0 == _NSGetExecutablePath(execpath, &nsexeclength) && -- execpath[0] == SEP) +@@ -935,8 +935,10 @@ + will fail if a relative path was used. but in that case, + absolutize() should help us out below + */ +- if (_NSGetExecutablePath(execpath, &nsexeclength) != 0 +- || (wchar_t)execpath[0] != SEP) + char *iospath = Py_GETENV("PYTHONHOME"); + char *prog = Py_GETENV("PYTHONEXECUTABLE"); + sprintf(execpath, "%s/bin/%s", iospath, prog); -+ if (execpath[0] == SEP) ++ if (execpath[0] != SEP) { - size_t len; - wchar_t *path = Py_DecodeLocale(execpath, &len); + /* _NSGetExecutablePath() failed or the path is relative */ + return _PyStatus_OK(); --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c -@@ -196,8 +196,8 @@ - #else - /* Unix functions that the configure script doesn't check for */ - #ifndef __VXWORKS__ --#define HAVE_EXECV 1 --#define HAVE_FORK 1 -+//#define HAVE_EXECV 0 -+//#define HAVE_FORK 0 - #if defined(__USLC__) && defined(__SCO_VERSION__) /* SCO UDK Compiler */ - #define HAVE_FORK1 1 - #endif -@@ -210,8 +210,8 @@ - #define HAVE_KILL 1 - #define HAVE_OPENDIR 1 - #define HAVE_PIPE 1 --#define HAVE_SYSTEM 1 --#define HAVE_WAIT 1 -+//#define HAVE_SYSTEM 0 -+//#define HAVE_WAIT 0 - #define HAVE_TTYNAME 1 - #endif /* _MSC_VER */ +@@ -313,8 +313,8 @@ + # else + /* Unix functions that the configure script doesn't check for */ + # ifndef __VXWORKS__ +-# define HAVE_EXECV 1 +-# define HAVE_FORK 1 ++//# define HAVE_EXECV 0 ++//# define HAVE_FORK 0 + # if defined(__USLC__) && defined(__SCO_VERSION__) /* SCO UDK Compiler */ + # define HAVE_FORK1 1 + # endif +@@ -327,8 +327,8 @@ + # define HAVE_KILL 1 + # define HAVE_OPENDIR 1 + # define HAVE_PIPE 1 +-# define HAVE_SYSTEM 1 +-# define HAVE_WAIT 1 ++//# define HAVE_SYSTEM 0 ++//# define HAVE_WAIT 0 + # define HAVE_TTYNAME 1 + # endif /* _MSC_VER */ #endif /* ! __WATCOMC__ || __QNX__ */ --- a/Include/intrcheck.h +++ b/Include/intrcheck.h diff --git a/tools/depends/target/python3/modules.setup b/tools/depends/target/python3/modules.setup index 44fea4c8a9..fa52e2160f 100644 --- a/tools/depends/target/python3/modules.setup +++ b/tools/depends/target/python3/modules.setup @@ -111,7 +111,7 @@ _weakref _weakref.c # weak references _functools -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal _functoolsmodule.c # Tools for working with functions and callable objects _operator _operator.c # operator.add() and similar goodies _collections _collectionsmodule.c # Container types -_abc _abc.c # Abstract base classes +_abc _abc.c -DPy_BUILD_CORE_MODULE # Abstract base classes itertools itertoolsmodule.c # Functions creating iterators for efficient looping atexit atexitmodule.c # Register functions to be run at interpreter-shutdown _signal -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal signalmodule.c @@ -132,7 +132,10 @@ faulthandler faulthandler.c # # bpo-35053: The module must be builtin since _Py_NewReference() # can call _PyTraceMalloc_NewReference(). -_tracemalloc _tracemalloc.c hashtable.c +_tracemalloc _tracemalloc.c + +# PEG-based parser module -- slated to be *the* parser +_peg_parser _peg_parser.c # The rest of the modules listed in this file are all commented out by # default. Usually they can be detected and built as dynamically @@ -166,25 +169,26 @@ _symtable symtablemodule.c # Modules that should always be present (non UNIX dependent): -array arraymodule.c # array objects -cmath cmathmodule.c _math.c # -lm # complex math library functions -math mathmodule.c _math.c # -lm # math library functions, e.g. sin() +array arraymodule.c -DPy_BUILD_CORE_MODULE # array objects +cmath cmathmodule.c _math.c -DPy_BUILD_CORE_MODULE # -lm # complex math library functions +math mathmodule.c _math.c -DPy_BUILD_CORE_MODULE # -lm # math library functions, e.g. sin() _contextvars _contextvarsmodule.c # Context Variables _struct _struct.c # binary structure packing/unpacking _weakref _weakref.c # basic weak reference support #_testcapi _testcapimodule.c # Python C API test module #_testinternalcapi _testinternalcapi.c -I$(srcdir)/Include/internal -DPy_BUILD_CORE_MODULE # Python internal C API test module -_random _randommodule.c # Random number generator +_random _randommodule.c -DPy_BUILD_CORE_MODULE # Random number generator _elementtree -I$(srcdir)/Modules/expat -DHAVE_EXPAT_CONFIG_H -DUSE_PYEXPAT_CAPI _elementtree.c # elementtree accelerator -_pickle _pickle.c # pickle accelerator -_datetime _datetimemodule.c # datetime accelerator +_pickle _pickle.c -DPy_BUILD_CORE_MODULE # pickle accelerator +_datetime _datetimemodule.c -DPy_BUILD_CORE_MODULE # datetime accelerator +_zoneinfo _zoneinfo.c -DPy_BUILD_CORE_MODULE # zoneinfo accelerator _bisect _bisectmodule.c # Bisection algorithms -_heapq _heapqmodule.c # Heap queue algorithm -_asyncio _asynciomodule.c # Fast asyncio Future +_heapq _heapqmodule.c -DPy_BUILD_CORE_MODULE # Heap queue algorithm +_asyncio _asynciomodule.c -DPy_BUILD_CORE_MODULE # Fast asyncio Future _json -I$(srcdir)/Include/internal -DPy_BUILD_CORE_BUILTIN _json.c # _json speedups _statistics _statisticsmodule.c # statistics accelerator -unicodedata unicodedata.c # static Unicode character database +unicodedata unicodedata.c -DPy_BUILD_CORE_MODULE # static Unicode character database # Modules with some UNIX dependencies -- on by default: @@ -225,7 +229,7 @@ _ssl _ssl.c \ termios termios.c # Steen Lumholt's termios module resource resource.c # Jeremy Hylton's rlimit interface -_posixsubprocess _posixsubprocess.c # POSIX subprocess module helper +_posixsubprocess _posixsubprocess.c -DPy_BUILD_CORE_MODULE # POSIX subprocess module helper # Multimedia modules -- off by default. # These don't work for 64-bit platforms!!! @@ -247,8 +251,8 @@ _md5 md5module.c # The _sha module implements the SHA checksum algorithms. # (NIST's Secure Hash Algorithms.) _sha1 sha1module.c -_sha256 sha256module.c -_sha512 sha512module.c +_sha256 sha256module.c -DPy_BUILD_CORE_BUILTIN +_sha512 sha512module.c -DPy_BUILD_CORE_BUILTIN _sha3 _sha3/sha3module.c # _blake module @@ -337,7 +341,7 @@ binascii binascii.c parser parsermodule.c # profiling -_lsprof _lsprof.c rotatingtree.c +_lsprof _lsprof.c rotatingtree.c -DPy_BUILD_CORE_MODULE # Andrew Kuchling's zlib module. # This require zlib 1.1.3 (or later). @@ -374,10 +378,10 @@ _sqlite3 _sqlite/connection.c \ -I$(prefix)/include -L$(prefix)/lib -lsqlite3 $(SQLITEDEFINES) _ctypes _ctypes/callbacks.c _ctypes/callproc.c _ctypes/cfield.c _ctypes/_ctypes.c \ - _ctypes/malloc_closure.c _ctypes/stgdict.c \ + _ctypes/malloc_closure.c _ctypes/stgdict.c -DPy_BUILD_CORE_MODULE \ -I$(prefix)/include/ffi -L$(prefix)/lib -lffi -_queue _queuemodule.c +_queue _queuemodule.c -DPy_BUILD_CORE_MODULE _bz2 _bz2module.c -I$(prefix)/include -L$(prefix)/lib -lbz2 _lzma _lzmamodule.c -I$(prefix)/include -L$(prefix)/lib -llzma diff --git a/tools/depends/target/pythonmodule-pil/Makefile b/tools/depends/target/pythonmodule-pil/Makefile index feabc7a791..14bf1a466b 100644 --- a/tools/depends/target/pythonmodule-pil/Makefile +++ b/tools/depends/target/pythonmodule-pil/Makefile @@ -36,7 +36,7 @@ ZLIB_ROOT=ZLIB_ROOT="$(SDKROOT)/usr" endif BUILD_OPTS=--plat-name $(OS)-$(CPU) --disable-jpeg2000 --disable-webp --disable-imagequant --disable-tiff --disable-webp --disable-webpmux --disable-xcb --disable-lcms --disable-platform-guessing -CROSSFLAGS=$(ZLIB_ROOT) PYTHONXCPREFIX="$(PREFIX)" CC="$(CC) $(CFLAGS)" LDSHARED="$(LDSHARED)" LDFLAGS="$(LDFLAGS) $(EXTRALDFLAGS)" PYTHONPATH="$(PYTHONPATH)" +CROSSFLAGS=$(ZLIB_ROOT) PYTHONXINCLUDE="$(PREFIX)/include/python$(PYTHON_VERSION)" PYTHONXCPREFIX="$(PREFIX)" CC="$(CC) $(CFLAGS)" LDSHARED="$(LDSHARED)" LDFLAGS="$(LDFLAGS) $(EXTRALDFLAGS)" PYTHONPATH="$(PYTHONPATH)" all: .installed-$(PLATFORM) diff --git a/tools/depends/target/pythonmodule-pil/pillow-crosscompile.patch b/tools/depends/target/pythonmodule-pil/pillow-crosscompile.patch index b62aa5522e..b1ccdfd3d8 100644 --- a/tools/depends/target/pythonmodule-pil/pillow-crosscompile.patch +++ b/tools/depends/target/pythonmodule-pil/pillow-crosscompile.patch @@ -1,6 +1,6 @@ --- a/setup.py +++ b/setup.py -@@ -363,6 +363,16 @@ +@@ -363,6 +363,19 @@ if _cmd_exists(os.environ.get("PKG_CONFIG", "pkg-config")): pkg_config = _pkg_config @@ -14,6 +14,9 @@ + args['compiler_so'] = compiler + ' ' + ccshared + ' ' + cflags + self.compiler.set_executables(**args) + ++ self.compiler.include_dirs.clear() ++ self.compiler.include_dirs.append(os.environ.get('PYTHONXINCLUDE')) ++ # # add configured kits for root_name, lib_name in dict( |