diff --git a/mingw-w64-python3/0000-make-_sysconfigdata.py-relocatable.patch b/mingw-w64-python3/0000-make-_sysconfigdata.py-relocatable.patch index b5846b5079..bb238fed55 100644 --- a/mingw-w64-python3/0000-make-_sysconfigdata.py-relocatable.patch +++ b/mingw-w64-python3/0000-make-_sysconfigdata.py-relocatable.patch @@ -1,5 +1,6 @@ ---- Python-3.7.2\Lib\sysconfig_old.py Fri Mar 15 19:42:37 2019 -+++ Python-3.7.2\Lib\sysconfig.py Fri Mar 15 19:42:10 2019 +diff -Naur Python-3.8.0-orig/Lib/sysconfig.py Python-3.8.0/Lib/sysconfig.py +--- Python-3.8.0-orig/Lib/sysconfig.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/sysconfig.py 2019-10-22 10:00:17.317067000 +0300 @@ -2,6 +2,7 @@ import os @@ -8,7 +9,7 @@ from os.path import pardir, realpath __all__ = [ -@@ -398,11 +399,29 @@ +@@ -405,11 +406,29 @@ os.makedirs(pybuilddir, exist_ok=True) destfile = os.path.join(pybuilddir, name + '.py') @@ -37,4 +38,4 @@ + f.write('\n%s' % textwrap.dedent(replacement)) # Create file used for sys.path fixup -- see Modules/getpath.c - with open('pybuilddir.txt', 'w', encoding='ascii') as f: \ No newline at end of file + with open('pybuilddir.txt', 'w', encoding='utf8') as f: diff --git a/mingw-w64-python3/0001-fix-_nt_quote_args-using-subprocess-list2cmdline.patch b/mingw-w64-python3/0001-fix-_nt_quote_args-using-subprocess-list2cmdline.patch index 9fb21c35b5..7bd9490c67 100644 --- a/mingw-w64-python3/0001-fix-_nt_quote_args-using-subprocess-list2cmdline.patch +++ b/mingw-w64-python3/0001-fix-_nt_quote_args-using-subprocess-list2cmdline.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/spawn.py Python-3.7.0/Lib/distutils/spawn.py ---- Python-3.7.0-orig/Lib/distutils/spawn.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/spawn.py 2018-07-12 10:20:40.437481700 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/spawn.py Python-3.8.0/Lib/distutils/spawn.py +--- Python-3.8.0-orig/Lib/distutils/spawn.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/spawn.py 2019-10-22 10:00:23.260677500 +0300 @@ -12,6 +12,7 @@ from distutils.errors import DistutilsPlatformError, DistutilsExecError from distutils.debug import DEBUG @@ -32,15 +32,15 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/spawn.py Python-3.7.0/Lib/distutils/s return args def _spawn_nt(cmd, search_path=1, verbose=0, dry_run=0): -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:20:40.437481700 +0300 -@@ -1198,11 +1198,7 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:00:23.666278200 +0300 +@@ -1421,11 +1421,7 @@ '_sqlite/statement.c', '_sqlite/util.c', ] - sqlite_defines = [] -- if host_platform != "win32": +- if not MS_WINDOWS: - sqlite_defines.append(('MODULE_NAME', '"sqlite3"')) - else: - sqlite_defines.append(('MODULE_NAME', '\\"sqlite3\\"')) diff --git a/mingw-w64-python3/0002-restore-setup-config.patch b/mingw-w64-python3/0002-restore-setup-config.patch index 81c6cdfc61..0cb775058b 100644 --- a/mingw-w64-python3/0002-restore-setup-config.patch +++ b/mingw-w64-python3/0002-restore-setup-config.patch @@ -1,60 +1,59 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:42.122284700 +0300 -@@ -5619,7 +5619,7 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:26.817483700 +0300 +@@ -5624,7 +5624,7 @@ # generate output files --AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-config.sh) -+AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh) +-AC_CONFIG_FILES(Makefile.pre Misc/python.pc Misc/python-embed.pc Misc/python-config.sh) ++AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-embed.pc Misc/python-config.sh) AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix]) AC_OUTPUT -@@ -5637,7 +5637,7 @@ +@@ -5636,7 +5636,7 @@ echo "creating Makefile" >&AS_MESSAGE_FD $SHELL $srcdir/Modules/makesetup -c $srcdir/Modules/config.c.in \ - -s Modules \ + -s Modules Modules/Setup.config \ - Modules/Setup.local Modules/Setup + Modules/Setup.local $srcdir/Modules/Setup mv config.c Modules -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:20:42.122284700 +0300 -@@ -687,10 +687,12 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:00:27.207484400 +0300 +@@ -683,10 +683,12 @@ Makefile Modules/config.c: Makefile.pre \ $(srcdir)/Modules/config.c.in \ $(MAKESETUP) \ + Modules/Setup.config \ - Modules/Setup \ + $(srcdir)/Modules/Setup \ Modules/Setup.local $(SHELL) $(MAKESETUP) -c $(srcdir)/Modules/config.c.in \ -s Modules \ + Modules/Setup.config \ Modules/Setup.local \ - Modules/Setup + $(srcdir)/Modules/Setup @mv config.c Modules -@@ -1482,6 +1484,7 @@ +@@ -1574,6 +1576,7 @@ $(INSTALL_DATA) Makefile $(DESTDIR)$(LIBPL)/Makefile - $(INSTALL_DATA) Modules/Setup $(DESTDIR)$(LIBPL)/Setup + $(INSTALL_DATA) $(srcdir)/Modules/Setup $(DESTDIR)$(LIBPL)/Setup $(INSTALL_DATA) Modules/Setup.local $(DESTDIR)$(LIBPL)/Setup.local + $(INSTALL_DATA) Modules/Setup.config $(DESTDIR)$(LIBPL)/Setup.config $(INSTALL_DATA) Misc/python.pc $(DESTDIR)$(LIBPC)/python-$(VERSION).pc + $(INSTALL_DATA) Misc/python-embed.pc $(DESTDIR)$(LIBPC)/python-$(VERSION)-embed.pc $(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup - $(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh -@@ -1704,7 +1707,7 @@ +@@ -1789,6 +1792,7 @@ if test "$$file" != "$(srcdir)/Lib/test/data/README"; then rm "$$file"; fi; \ done - -rm -f core Makefile Makefile.pre config.status \ -- Modules/Setup Modules/Setup.local \ -+ Modules/Setup Modules/Setup.local Modules/Setup.config \ + -rm -f core Makefile Makefile.pre config.status Modules/Setup.local \ ++ Modules/Setup.config \ Modules/ld_so_aix Modules/python.exp Misc/python.pc \ - Misc/python-config.sh + Misc/python-embed.pc Misc/python-config.sh -rm -f python*-gdb.py -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:20:42.122284700 +0300 +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 1970-01-01 03:00:00.000000000 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:00:27.613085100 +0300 @@ -0,0 +1,5 @@ +# This file is transmogrified into Setup.config by config.status. + diff --git a/mingw-w64-python3/0100-MINGW-BASE-use-NT-thread-model.patch b/mingw-w64-python3/0100-MINGW-BASE-use-NT-thread-model.patch index 31020428b7..bdc68917fb 100644 --- a/mingw-w64-python3/0100-MINGW-BASE-use-NT-thread-model.patch +++ b/mingw-w64-python3/0100-MINGW-BASE-use-NT-thread-model.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:43.495087100 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:43.807087600 +0300 -@@ -1944,6 +1944,46 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:29.329088100 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:31.778292400 +0300 +@@ -1960,6 +1960,46 @@ BASECFLAGS="$BASECFLAGS $ac_arch_flags" fi @@ -48,7 +48,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # On some compilers, pthreads are available without further options # (e.g. MacOS X). On some of these systems, the compiler will not # complain if unaccepted options are passed (e.g. gcc on Mac OS X). -@@ -2062,6 +2102,8 @@ +@@ -2078,6 +2118,8 @@ AC_MSG_RESULT($ac_cv_pthread) fi @@ -57,7 +57,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # If we have set a CC compiler flag for thread support then # check if it works for CXX, too. ac_cv_cxx_thread=no -@@ -2082,6 +2124,10 @@ +@@ -2098,6 +2140,10 @@ then CXX="$CXX -pthread" ac_cv_cxx_thread=yes @@ -68,7 +68,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi if test $ac_cv_cxx_thread = yes -@@ -2114,8 +2160,8 @@ +@@ -2130,8 +2176,8 @@ AC_HEADER_STDC AC_CHECK_HEADERS(asm/types.h crypt.h conio.h direct.h dlfcn.h errno.h \ fcntl.h grp.h \ @@ -76,10 +76,10 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac -sched.h shadow.h signal.h stropts.h termios.h \ +ieeefp.h io.h langinfo.h libintl.h process.h \ +shadow.h signal.h stropts.h termios.h \ - unistd.h utime.h \ + utime.h \ poll.h sys/devpoll.h sys/epoll.h sys/poll.h \ sys/audioio.h sys/xattr.h sys/bsdtty.h sys/event.h sys/file.h sys/ioctl.h \ -@@ -2129,6 +2175,14 @@ +@@ -2145,6 +2191,14 @@ AC_HEADER_DIRENT AC_HEADER_MAJOR @@ -94,7 +94,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # bluetooth/bluetooth.h has been known to not compile with -std=c99. # http://permalink.gmane.org/gmane.linux.bluez.kernel/22294 SAVE_CFLAGS=$CFLAGS -@@ -2324,6 +2378,10 @@ +@@ -2342,6 +2396,10 @@ AC_MSG_CHECKING(for pthread_t) have_pthread_t=no @@ -105,7 +105,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_COMPILE_IFELSE([ AC_LANG_PROGRAM([[#include ]], [[pthread_t x; x = *(pthread_t*)0;]]) ],[have_pthread_t=yes],[]) -@@ -2354,6 +2412,7 @@ +@@ -2372,6 +2430,7 @@ else AC_MSG_RESULT(no) fi @@ -113,7 +113,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac CC="$ac_save_cc" AC_SUBST(OTHER_LIBTOOL_OPT) -@@ -2790,10 +2849,15 @@ +@@ -2814,10 +2873,15 @@ [AC_MSG_RESULT(no)] ) @@ -129,7 +129,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # check if we need libintl for locale functions AC_CHECK_LIB(intl, textdomain, -@@ -3036,6 +3100,11 @@ +@@ -3087,6 +3151,11 @@ CXX="$CXX -pthread" fi posix_threads=yes @@ -141,7 +141,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac else if test ! -z "$withval" -a -d "$withval" then LDFLAGS="$LDFLAGS -L$withval" -@@ -3505,6 +3574,15 @@ +@@ -3538,6 +3607,15 @@ fi # checks for library functions @@ -155,9 +155,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac + ac_cv_func_sched_setscheduler=skip +fi AC_CHECK_FUNCS(alarm accept4 setitimer getitimer bind_textdomain_codeset chown \ - clock confstr ctermid dup3 execv faccessat fchmod fchmodat fchown fchownat \ - fexecve fdopendir fork fpathconf fstatat ftime ftruncate futimesat \ -@@ -4495,6 +4573,10 @@ + clock confstr copy_file_range ctermid dup3 execv explicit_bzero explicit_memset \ + faccessat fchmod fchmodat fchown fchownat \ +@@ -4462,6 +4540,10 @@ # the kernel module that provides POSIX semaphores # isn't loaded by default, so an attempt to call # sem_open results in a 'Signal 12' error. @@ -168,7 +168,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_MSG_CHECKING(whether POSIX semaphores are enabled) AC_CACHE_VAL(ac_cv_posix_semaphores_enabled, AC_RUN_IFELSE([AC_LANG_SOURCE([[ -@@ -4528,6 +4610,14 @@ +@@ -4495,6 +4577,14 @@ # Multiprocessing check for broken sem_getvalue AC_MSG_CHECKING(for broken sem_getvalue) @@ -183,9 +183,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_CACHE_VAL(ac_cv_broken_sem_getvalue, AC_RUN_IFELSE([AC_LANG_SOURCE([[ #include -diff -Naur Python-3.7.0-orig/Modules/_multiprocessing/multiprocessing.h Python-3.7.0/Modules/_multiprocessing/multiprocessing.h ---- Python-3.7.0-orig/Modules/_multiprocessing/multiprocessing.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_multiprocessing/multiprocessing.h 2018-07-12 10:20:43.807087600 +0300 +diff -Naur Python-3.8.0-orig/Modules/_multiprocessing/multiprocessing.h Python-3.8.0/Modules/_multiprocessing/multiprocessing.h +--- Python-3.8.0-orig/Modules/_multiprocessing/multiprocessing.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_multiprocessing/multiprocessing.h 2019-10-22 10:00:32.168293100 +0300 @@ -21,6 +21,9 @@ # endif # define SEM_HANDLE HANDLE @@ -196,10 +196,10 @@ diff -Naur Python-3.7.0-orig/Modules/_multiprocessing/multiprocessing.h Python-3 #else # include /* O_CREAT and O_EXCL */ # if defined(HAVE_SEM_OPEN) && !defined(POSIX_SEMAPHORES_NOT_ENABLED) -diff -Naur Python-3.7.0-orig/pyconfig.h.in Python-3.7.0/pyconfig.h.in ---- Python-3.7.0-orig/pyconfig.h.in 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/pyconfig.h.in 2018-07-12 10:20:43.807087600 +0300 -@@ -1281,6 +1281,9 @@ +diff -Naur Python-3.8.0-orig/pyconfig.h.in Python-3.8.0/pyconfig.h.in +--- Python-3.8.0-orig/pyconfig.h.in 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/pyconfig.h.in 2019-10-22 10:00:32.558293800 +0300 +@@ -1352,6 +1352,9 @@ /* Define if mvwdelch in curses.h is an expression. */ #undef MVWDELCH_IS_EXPRESSION diff --git a/mingw-w64-python3/0110-MINGW-translate-gcc-internal-defines-to-python-platf.patch b/mingw-w64-python3/0110-MINGW-translate-gcc-internal-defines-to-python-platf.patch index 864ac0d228..65ab5aa747 100644 --- a/mingw-w64-python3/0110-MINGW-translate-gcc-internal-defines-to-python-platf.patch +++ b/mingw-w64-python3/0110-MINGW-translate-gcc-internal-defines-to-python-platf.patch @@ -1,9 +1,9 @@ -diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h ---- Python-3.7.0-orig/Include/pyport.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/pyport.h 2018-07-12 10:20:45.523090700 +0300 -@@ -5,6 +5,21 @@ +diff -Naur Python-3.8.0-orig/Include/pyport.h Python-3.8.0/Include/pyport.h +--- Python-3.8.0-orig/Include/pyport.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/pyport.h 2019-10-22 10:00:36.224300300 +0300 +@@ -26,6 +26,21 @@ + #endif - #include +#ifdef __MINGW32__ +/* Translate GCC[mingw*] platform specific defines to those diff --git a/mingw-w64-python3/0130-MINGW-configure-MACHDEP-and-platform-for-build.patch b/mingw-w64-python3/0130-MINGW-configure-MACHDEP-and-platform-for-build.patch index 2da6a1ba93..45acd7442d 100644 --- a/mingw-w64-python3/0130-MINGW-configure-MACHDEP-and-platform-for-build.patch +++ b/mingw-w64-python3/0130-MINGW-configure-MACHDEP-and-platform-for-build.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:45.226690100 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:47.176693600 +0300 +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:34.321096900 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:39.843506600 +0300 @@ -362,6 +362,17 @@ # Set name for machine-dependent library files AC_ARG_VAR([MACHDEP], [name for machine-dependent library files]) @@ -19,9 +19,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac if test -z "$MACHDEP" then # avoid using uname for cross builds -@@ -423,12 +434,23 @@ - *-*-cygwin*) - _host_cpu= +@@ -431,12 +442,23 @@ + *-*-vxworks*) + _host_cpu=$host_cpu ;; + *-*-mingw*) + _host_cpu= @@ -43,9 +43,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi # Some systems cannot stand _XOPEN_SOURCE being defined at all; they -diff -Naur Python-3.7.0-orig/Python/getplatform.c Python-3.7.0/Python/getplatform.c ---- Python-3.7.0-orig/Python/getplatform.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/getplatform.c 2018-07-12 10:20:47.176693600 +0300 +diff -Naur Python-3.8.0-orig/Python/getplatform.c Python-3.8.0/Python/getplatform.c +--- Python-3.8.0-orig/Python/getplatform.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/getplatform.c 2019-10-22 10:00:40.249107300 +0300 @@ -1,6 +1,12 @@ #include "Python.h" diff --git a/mingw-w64-python3/0140-MINGW-preset-configure-defaults.patch b/mingw-w64-python3/0140-MINGW-preset-configure-defaults.patch index 28b88f519b..cc9f8db4e2 100644 --- a/mingw-w64-python3/0140-MINGW-preset-configure-defaults.patch +++ b/mingw-w64-python3/0140-MINGW-preset-configure-defaults.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:48.533895900 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:48.845896500 +0300 -@@ -915,6 +915,28 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:41.996310400 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:43.025912200 +0300 +@@ -893,6 +893,28 @@ fi AC_SUBST(MULTIARCH_CPPFLAGS) @@ -30,9 +30,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_MSG_CHECKING([for -Wl,--no-as-needed]) save_LDFLAGS="$LDFLAGS" LDFLAGS="$LDFLAGS -Wl,--no-as-needed" -diff -Naur Python-3.7.0-orig/Misc/config_mingw Python-3.7.0/Misc/config_mingw ---- Python-3.7.0-orig/Misc/config_mingw 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Misc/config_mingw 2018-07-12 10:20:48.861496500 +0300 +diff -Naur Python-3.8.0-orig/Misc/config_mingw Python-3.8.0/Misc/config_mingw +--- Python-3.8.0-orig/Misc/config_mingw 1970-01-01 03:00:00.000000000 +0300 ++++ Python-3.8.0/Misc/config_mingw 2019-10-22 10:00:43.415912900 +0300 @@ -0,0 +1,12 @@ +# configure defaults for mingw* hosts + @@ -46,9 +46,9 @@ diff -Naur Python-3.7.0-orig/Misc/config_mingw Python-3.7.0/Misc/config_mingw +# files to ignore +ac_cv_file__dev_ptmx=ignore #NOTE: under MSYS environment device exist +ac_cv_file__dev_ptc=no -diff -Naur Python-3.7.0-orig/Misc/cross_mingw32 Python-3.7.0/Misc/cross_mingw32 ---- Python-3.7.0-orig/Misc/cross_mingw32 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Misc/cross_mingw32 2018-07-12 10:20:48.861496500 +0300 +diff -Naur Python-3.8.0-orig/Misc/cross_mingw32 Python-3.8.0/Misc/cross_mingw32 +--- Python-3.8.0-orig/Misc/cross_mingw32 1970-01-01 03:00:00.000000000 +0300 ++++ Python-3.8.0/Misc/cross_mingw32 2019-10-22 10:00:43.837113600 +0300 @@ -0,0 +1,11 @@ +# configure defaults for mingw32 host if cross-build + diff --git a/mingw-w64-python3/0150-MINGW-configure-largefile-support-for-windows-builds.patch b/mingw-w64-python3/0150-MINGW-configure-largefile-support-for-windows-builds.patch index 93b9240d7b..4874784a8f 100644 --- a/mingw-w64-python3/0150-MINGW-configure-largefile-support-for-windows-builds.patch +++ b/mingw-w64-python3/0150-MINGW-configure-largefile-support-for-windows-builds.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:50.203098900 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:50.530699400 +0300 -@@ -2389,8 +2389,20 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:45.568716700 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:47.456320000 +0300 +@@ -2407,8 +2407,20 @@ ]) AC_MSG_CHECKING(whether to enable large file support) @@ -21,4 +21,4 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac +if test $have_largefile_support = yes ; then AC_DEFINE(HAVE_LARGEFILE_SUPPORT, 1, [Defined to enable large file support when an off_t is bigger than a long - and long long is available and at least as big as an off_t. You may need + and long long is at least as big as an off_t. You may need diff --git a/mingw-w64-python3/0170-MINGW-add-srcdir-PC-to-CPPFLAGS.patch b/mingw-w64-python3/0170-MINGW-add-srcdir-PC-to-CPPFLAGS.patch index 346e3e9e1b..2c25012c6e 100644 --- a/mingw-w64-python3/0170-MINGW-add-srcdir-PC-to-CPPFLAGS.patch +++ b/mingw-w64-python3/0170-MINGW-add-srcdir-PC-to-CPPFLAGS.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:51.934701900 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:52.262302500 +0300 -@@ -5468,8 +5468,21 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:49.172323000 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:50.295525000 +0300 +@@ -5450,8 +5450,21 @@ THREADHEADERS="$THREADHEADERS \$(srcdir)/$h" done diff --git a/mingw-w64-python3/0180-MINGW-init-system-calls.patch b/mingw-w64-python3/0180-MINGW-init-system-calls.patch index 64607dde5b..72ffe5c85a 100644 --- a/mingw-w64-python3/0180-MINGW-init-system-calls.patch +++ b/mingw-w64-python3/0180-MINGW-init-system-calls.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:53.635104900 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:53.947105500 +0300 -@@ -561,6 +561,14 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:52.028128100 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:53.198130100 +0300 +@@ -574,6 +574,14 @@ AC_DEFINE(_INCLUDE__STDC_A1_SOURCE, 1, Define to include mbstate_t for mbrtowc) fi @@ -16,10 +16,10 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # Record the configure-time value of MACOSX_DEPLOYMENT_TARGET, # it may influence the way we can build extensions, so distutils # needs to check it -diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmodule.c ---- Python-3.7.0-orig/Modules/posixmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/posixmodule.c 2018-07-12 10:20:53.947105500 +0300 -@@ -173,6 +173,27 @@ +diff -Naur Python-3.8.0-orig/Modules/posixmodule.c Python-3.8.0/Modules/posixmodule.c +--- Python-3.8.0-orig/Modules/posixmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/posixmodule.c 2019-10-22 10:00:53.603730800 +0300 +@@ -193,6 +193,27 @@ #define HAVE_CWAIT 1 #define HAVE_FSYNC 1 #define fsync _commit @@ -46,8 +46,8 @@ diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmod +#endif #else /* Unix functions that the configure script doesn't check for */ - #define HAVE_EXECV 1 -@@ -289,7 +310,7 @@ + #ifndef __VXWORKS__ +@@ -292,7 +313,7 @@ #endif #endif @@ -56,33 +56,45 @@ diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmod #ifdef HAVE_DIRECT_H #include #endif -@@ -1297,7 +1318,7 @@ +@@ -314,7 +335,7 @@ + #include /* for ShellExecute() */ + #include /* for UNLEN */ + #define HAVE_SYMLINK +-#endif /* _MSC_VER */ ++#endif /* MS_WINDOWS */ + + #ifndef MAXPATHLEN + #if defined(PATH_MAX) && PATH_MAX > 1024 +@@ -1373,9 +1394,9 @@ */ #include static char **environ; --#elif !defined(_MSC_VER) && ( !defined(__WATCOMC__) || defined(__QNX__) ) -+#elif !defined(MS_WINDOWS) && ( !defined(__WATCOMC__) || defined(__QNX__) ) +-#elif !defined(_MSC_VER) && (!defined(__WATCOMC__) || defined(__QNX__) || defined(__VXWORKS__)) ++#elif !defined(MS_WINDOWS) && (!defined(__WATCOMC__) || defined(__QNX__) || defined(__VXWORKS__)) extern char **environ; - #endif /* !_MSC_VER */ +-#endif /* !_MSC_VER */ ++#endif /* !MS_WINDOWS */ -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 2018-07-12 10:20:43.495087100 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:20:53.962705500 +0300 + static PyObject * + convertenviron(void) +diff -Naur Python-3.8.0-orig/Modules/Setup Python-3.8.0/Modules/Setup +--- Python-3.8.0-orig/Modules/Setup 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/Setup 2019-10-22 10:00:54.430532300 +0300 +@@ -101,7 +101,6 @@ + # This only contains the minimal set of modules required to run the + # setup.py script in the root of the Python source tree. + +-posix -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal posixmodule.c # posix (UNIX) system calls + errno errnomodule.c # posix (UNIX) errno values + pwd pwdmodule.c # this is needed to find out the user's home dir + # if $HOME is not set +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 2019-10-22 10:00:30.171489600 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:00:54.009331600 +0300 @@ -3,3 +3,6 @@ # The purpose of this file is to conditionally enable certain modules # based on configure-time options. +# init system calls(posix/nt/...) for INITFUNC (used by makesetup) -+@INITSYS@ -DPy_BUILD_CORE posixmodule.c # system calls ++@INITSYS@ -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal posixmodule.c + -diff -Naur Python-3.7.0-orig/Modules/Setup.dist Python-3.7.0/Modules/Setup.dist ---- Python-3.7.0-orig/Modules/Setup.dist 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/Setup.dist 2018-07-12 10:20:53.978305500 +0300 -@@ -104,7 +104,6 @@ - # This only contains the minimal set of modules required to run the - # setup.py script in the root of the Python source tree. - --posix -DPy_BUILD_CORE posixmodule.c # posix (UNIX) system calls - errno errnomodule.c # posix (UNIX) errno values - pwd pwdmodule.c # this is needed to find out the user's home dir - # if $HOME is not set diff --git a/mingw-w64-python3/0200-MINGW-build-in-windows-modules-winreg.patch b/mingw-w64-python3/0200-MINGW-build-in-windows-modules-winreg.patch index 3a321ed30b..9ee4b813cf 100644 --- a/mingw-w64-python3/0200-MINGW-build-in-windows-modules-winreg.patch +++ b/mingw-w64-python3/0200-MINGW-build-in-windows-modules-winreg.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:55.319907900 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:55.663108500 +0300 -@@ -3131,6 +3131,13 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:00:56.583336100 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:00:58.938940200 +0300 +@@ -3181,6 +3181,13 @@ fi]) AC_MSG_RESULT($with_dbmliborder) @@ -12,23 +12,23 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac + *-*-mingw*) USE_WIN32_MODULE=;; +esac + - AC_SUBST(LDLAST) - # Templates for things AC_DEFINEd more than once. -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 2018-07-12 10:20:55.351107900 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:20:55.678708500 +0300 + # For a single AC_DEFINE, no template is needed. + AH_TEMPLATE(_REENTRANT, +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 2019-10-22 10:00:57.800138200 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:00:59.328940900 +0300 @@ -6,3 +6,6 @@ # init system calls(posix/nt/...) for INITFUNC (used by makesetup) - @INITSYS@ -DPy_BUILD_CORE posixmodule.c # system calls + @INITSYS@ -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal posixmodule.c +# build-in modules for windows platform: +@USE_WIN32_MODULE@winreg ../PC/winreg.c + -diff -Naur Python-3.7.0-orig/PC/winreg.c Python-3.7.0/PC/winreg.c ---- Python-3.7.0-orig/PC/winreg.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/PC/winreg.c 2018-07-12 10:20:55.678708500 +0300 -@@ -16,6 +16,25 @@ +diff -Naur Python-3.8.0-orig/PC/winreg.c Python-3.8.0/PC/winreg.c +--- Python-3.8.0-orig/PC/winreg.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/PC/winreg.c 2019-10-22 10:00:59.734541600 +0300 +@@ -17,6 +17,25 @@ #include "structmember.h" #include "windows.h" diff --git a/mingw-w64-python3/0210-MINGW-determine-if-pwdmodule-should-be-used.patch b/mingw-w64-python3/0210-MINGW-determine-if-pwdmodule-should-be-used.patch index 4cff38fde5..fc37f869fd 100644 --- a/mingw-w64-python3/0210-MINGW-determine-if-pwdmodule-should-be-used.patch +++ b/mingw-w64-python3/0210-MINGW-determine-if-pwdmodule-should-be-used.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:57.098311000 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:20:57.472711600 +0300 -@@ -3138,6 +3138,13 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:01.887345400 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:01:03.821748800 +0300 +@@ -3188,6 +3188,13 @@ *-*-mingw*) USE_WIN32_MODULE=;; esac @@ -12,26 +12,13 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac + *-*-mingw*) USE_PWD_MODULE='#';; +esac + - AC_SUBST(LDLAST) - # Templates for things AC_DEFINEd more than once. -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 2018-07-12 10:20:57.098311000 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:20:57.472711600 +0300 -@@ -6,6 +6,9 @@ - # init system calls(posix/nt/...) for INITFUNC (used by makesetup) - @INITSYS@ -DPy_BUILD_CORE posixmodule.c # system calls - -+# This is needed to find out the user's home dir if $HOME is not set -+@USE_PWD_MODULE@pwd pwdmodule.c -+ - # build-in modules for windows platform: - @USE_WIN32_MODULE@winreg ../PC/winreg.c - -diff -Naur Python-3.7.0-orig/Modules/Setup.dist Python-3.7.0/Modules/Setup.dist ---- Python-3.7.0-orig/Modules/Setup.dist 2018-07-12 10:20:55.351107900 +0300 -+++ Python-3.7.0/Modules/Setup.dist 2018-07-12 10:20:57.472711600 +0300 -@@ -105,8 +105,6 @@ + # For a single AC_DEFINE, no template is needed. + AH_TEMPLATE(_REENTRANT, +diff -Naur Python-3.8.0-orig/Modules/Setup Python-3.8.0/Modules/Setup +--- Python-3.8.0-orig/Modules/Setup 2019-10-22 10:00:57.394537500 +0300 ++++ Python-3.8.0/Modules/Setup 2019-10-22 10:01:04.227349500 +0300 +@@ -102,8 +102,6 @@ # setup.py script in the root of the Python source tree. errno errnomodule.c # posix (UNIX) errno values @@ -40,3 +27,16 @@ diff -Naur Python-3.7.0-orig/Modules/Setup.dist Python-3.7.0/Modules/Setup.dist _sre _sre.c # Fredrik Lundh's new regular expressions _codecs _codecsmodule.c # access to the builtin codecs and codec registry _weakref _weakref.c # weak references +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 2019-10-22 10:01:02.292946100 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:01:05.038550900 +0300 +@@ -6,6 +6,9 @@ + # init system calls(posix/nt/...) for INITFUNC (used by makesetup) + @INITSYS@ -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal posixmodule.c + ++# This is needed to find out the user's home dir if $HOME is not set ++@USE_PWD_MODULE@pwd pwdmodule.c ++ + # build-in modules for windows platform: + @USE_WIN32_MODULE@winreg ../PC/winreg.c + diff --git a/mingw-w64-python3/0230-MINGW-AC_LIBOBJ-replacement-of-fileblocks.patch b/mingw-w64-python3/0230-MINGW-AC_LIBOBJ-replacement-of-fileblocks.patch deleted file mode 100644 index 002a6d1247..0000000000 --- a/mingw-w64-python3/0230-MINGW-AC_LIBOBJ-replacement-of-fileblocks.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur Python-3.7.0-orig/Python/fileblocks.c Python-3.7.0/Python/fileblocks.c ---- Python-3.7.0-orig/Python/fileblocks.c 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Python/fileblocks.c 2018-07-12 10:20:59.095114500 +0300 -@@ -0,0 +1,17 @@ -+/* -+-- Macro: AC_STRUCT_ST_BLOCKS -+ If 'struct stat' contains an 'st_blocks' member, define -+ 'HAVE_STRUCT_STAT_ST_BLOCKS'. Otherwise, require an 'AC_LIBOBJ' -+ replacement of 'fileblocks'. -+*/ -+ -+#if !HAVE_STRUCT_STAT_ST_BLOCKS -+/* If necessary you may see gnulib for replacement function: -+ * off_t st_blocks (off_t size). -+ * You may found code available under GPL2 or GPL3. -+ */ -+ -+/* This declaration is solely to ensure that after preprocessing -+ this file is never empty. */ -+typedef int textutils_fileblocks_unused; -+#endif diff --git a/mingw-w64-python3/0250-MINGW-compiler-customize-mingw-cygwin-compilers.patch b/mingw-w64-python3/0250-MINGW-compiler-customize-mingw-cygwin-compilers.patch index e0d9600050..eb8d0205b4 100644 --- a/mingw-w64-python3/0250-MINGW-compiler-customize-mingw-cygwin-compilers.patch +++ b/mingw-w64-python3/0250-MINGW-compiler-customize-mingw-cygwin-compilers.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distutils/sysconfig.py ---- Python-3.7.0-orig/Lib/distutils/sysconfig.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/sysconfig.py 2018-07-12 10:21:00.764317400 +0300 -@@ -153,7 +153,23 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/sysconfig.py Python-3.8.0/Lib/distutils/sysconfig.py +--- Python-3.8.0-orig/Lib/distutils/sysconfig.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/sysconfig.py 2019-10-22 10:01:09.125758100 +0300 +@@ -170,7 +170,23 @@ Mainly needed on Unix, so we can plug in the information that varies across Unices and is stored in Python's Makefile. """ @@ -26,7 +26,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti if sys.platform == "darwin": # Perform first-time customization of compiler-related # config vars on OS X now that we know we need a compiler. -@@ -163,7 +179,6 @@ +@@ -180,7 +196,6 @@ # that Python itself was built on. Also the user OS # version and build tools may not support the same set # of CPU architectures for universal builds. diff --git a/mingw-w64-python3/0260-MINGW-compiler-enable-new-dtags.patch b/mingw-w64-python3/0260-MINGW-compiler-enable-new-dtags.patch index e42ea23dab..88cb08f06e 100644 --- a/mingw-w64-python3/0260-MINGW-compiler-enable-new-dtags.patch +++ b/mingw-w64-python3/0260-MINGW-compiler-enable-new-dtags.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/unixccompiler.py Python-3.7.0/Lib/distutils/unixccompiler.py ---- Python-3.7.0-orig/Lib/distutils/unixccompiler.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/unixccompiler.py 2018-07-12 10:21:02.449120400 +0300 -@@ -240,9 +240,13 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/unixccompiler.py Python-3.8.0/Lib/distutils/unixccompiler.py +--- Python-3.8.0-orig/Lib/distutils/unixccompiler.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/unixccompiler.py 2019-10-22 10:01:11.964963100 +0300 +@@ -248,9 +248,13 @@ # -Wl whenever gcc was used in the past it is probably # safest to keep doing so. if sysconfig.get_config_var("GNULD") == "yes": diff --git a/mingw-w64-python3/0290-issue6672-v2-Add-Mingw-recognition-to-pyport.h-to-al.patch b/mingw-w64-python3/0290-issue6672-v2-Add-Mingw-recognition-to-pyport.h-to-al.patch index 2818e0ea1f..65d1e3ad39 100644 --- a/mingw-w64-python3/0290-issue6672-v2-Add-Mingw-recognition-to-pyport.h-to-al.patch +++ b/mingw-w64-python3/0290-issue6672-v2-Add-Mingw-recognition-to-pyport.h-to-al.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h ---- Python-3.7.0-orig/Include/pyport.h 2018-07-12 10:20:46.864693000 +0300 -+++ Python-3.7.0/Include/pyport.h 2018-07-12 10:21:04.118323300 +0300 -@@ -624,37 +624,39 @@ +diff -Naur Python-3.8.0-orig/Include/pyport.h Python-3.8.0/Include/pyport.h +--- Python-3.8.0-orig/Include/pyport.h 2019-10-22 10:00:37.955903300 +0300 ++++ Python-3.8.0/Include/pyport.h 2019-10-22 10:01:14.850968200 +0300 +@@ -651,12 +651,12 @@ */ /* @@ -17,11 +17,7 @@ diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h # define HAVE_DECLSPEC_DLL #endif - /* only get special linkage if built as shared or platform is Cygwin */ - #if defined(Py_ENABLE_SHARED) || defined(__CYGWIN__) - # if defined(HAVE_DECLSPEC_DLL) --# if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) -+# if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) +@@ -667,21 +667,23 @@ # define PyAPI_FUNC(RTYPE) __declspec(dllexport) RTYPE # define PyAPI_DATA(RTYPE) extern __declspec(dllexport) RTYPE /* module init functions inside the core need no external linkage */ @@ -51,16 +47,16 @@ diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h # define PyAPI_DATA(RTYPE) extern __declspec(dllimport) RTYPE /* module init functions outside the core must be exported */ # if defined(__cplusplus) -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:20:41.825884200 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:04.133923300 +0300 -@@ -224,6 +224,9 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:00:25.787881900 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:15.256568900 +0300 +@@ -316,6 +316,9 @@ + raise ValueError("No source directory; cannot proceed.") + self.srcdir = os.path.abspath(self.srcdir) - def build_extensions(self): - -+ if host_platform.startswith(('mingw', 'win', 'cygwin')): ++ if MS_WINDOWS: + self.compiler.define_macro("Py_BUILD_CORE_MODULE") + # Detect which modules should be compiled - missing = self.detect_modules() + self.detect_modules() diff --git a/mingw-w64-python3/0300-MINGW-configure-for-shared-build.patch b/mingw-w64-python3/0300-MINGW-configure-for-shared-build.patch index de59e78f4d..1b81791f85 100644 --- a/mingw-w64-python3/0300-MINGW-configure-for-shared-build.patch +++ b/mingw-w64-python3/0300-MINGW-configure-for-shared-build.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:20:58.876714100 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:05.771926200 +0300 -@@ -1226,6 +1226,13 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:07.206954700 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:01:18.470174500 +0300 +@@ -1204,6 +1204,13 @@ ;; esac @@ -15,7 +15,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac else # shared is disabled PY_ENABLE_SHARED=0 case $ac_sys_system in -@@ -1234,6 +1241,10 @@ +@@ -1212,6 +1219,10 @@ LDLIBRARY='libpython$(LDVERSION).dll.a' ;; esac @@ -26,7 +26,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi if test "$cross_compiling" = yes; then -@@ -2742,6 +2753,12 @@ +@@ -2760,6 +2771,12 @@ LDCXXSHARED="g++ -shared -Wl,--enable-auto-image-base";; *) LDSHARED="ld";; esac @@ -39,7 +39,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi AC_MSG_RESULT($LDSHARED) LDCXXSHARED=${LDCXXSHARED-$LDSHARED} -@@ -5496,7 +5513,8 @@ +@@ -5478,7 +5495,8 @@ dnl "errmap.h" from $srcdir/PC. dnl Note we cannot use BASECPPFLAGS as autogenerated pyconfig.h dnl has to be before customized located in ../PC. diff --git a/mingw-w64-python3/0310-MINGW-dynamic-loading-support.patch b/mingw-w64-python3/0310-MINGW-dynamic-loading-support.patch index 181c878183..791c700515 100644 --- a/mingw-w64-python3/0310-MINGW-dynamic-loading-support.patch +++ b/mingw-w64-python3/0310-MINGW-dynamic-loading-support.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:07.175928700 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:07.519129300 +0300 -@@ -2617,6 +2617,9 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:20.201777600 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:01:21.340579600 +0300 +@@ -2635,6 +2635,9 @@ CYGWIN*) SHLIB_SUFFIX=.dll;; *) SHLIB_SUFFIX=.so;; esac @@ -11,7 +11,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi AC_MSG_RESULT($SHLIB_SUFFIX) -@@ -3644,6 +3647,12 @@ +@@ -3677,6 +3680,12 @@ fi ;; esac @@ -24,7 +24,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi AC_MSG_RESULT($DYNLOADFILE) if test "$DYNLOADFILE" != "dynload_stub.o" -@@ -4860,6 +4869,12 @@ +@@ -4837,6 +4846,12 @@ *) EXT_SUFFIX=${SHLIB_SUFFIX};; esac @@ -37,10 +37,10 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_MSG_CHECKING(LDVERSION) LDVERSION='$(VERSION)$(ABIFLAGS)' -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:20:43.495087100 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:21:07.519129300 +0300 -@@ -791,6 +791,12 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:00:29.734688900 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:01:21.746180300 +0300 +@@ -784,6 +784,12 @@ -DSHLIB_EXT='"$(EXT_SUFFIX)"' \ -o $@ $(srcdir)/Python/dynload_hpux.c @@ -50,13 +50,13 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in + -DEXT_SUFFIX='"$(EXT_SUFFIX)"' \ + -o $@ $(srcdir)/Python/dynload_win.c + - Python/sysmodule.o: $(srcdir)/Python/sysmodule.c Makefile + Python/sysmodule.o: $(srcdir)/Python/sysmodule.c Makefile $(srcdir)/Include/pydtrace.h $(CC) -c $(PY_CORE_CFLAGS) \ -DABIFLAGS='"$(ABIFLAGS)"' \ -diff -Naur Python-3.7.0-orig/Python/dynload_win.c Python-3.7.0/Python/dynload_win.c ---- Python-3.7.0-orig/Python/dynload_win.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/dynload_win.c 2018-07-12 10:21:07.534729300 +0300 -@@ -33,11 +33,21 @@ +diff -Naur Python-3.8.0-orig/Python/dynload_win.c Python-3.8.0/Python/dynload_win.c +--- Python-3.8.0-orig/Python/dynload_win.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/dynload_win.c 2019-10-22 10:01:22.151781000 +0300 +@@ -33,6 +33,12 @@ #define PYD_UNTAGGED_SUFFIX PYD_DEBUG_SUFFIX ".pyd" const char *_PyImport_DynLoadFiletab[] = { @@ -69,12 +69,13 @@ diff -Naur Python-3.7.0-orig/Python/dynload_win.c Python-3.7.0/Python/dynload_wi PYD_TAGGED_SUFFIX, PYD_UNTAGGED_SUFFIX, NULL - }; - -+#if defined(__MINGW32__) -+/* avoid compile error: conflicting types for 'strcasecmp' */ -+# define strcasecmp fake_strcasecmp -+#endif - /* Case insensitive string compare, to avoid any dependencies on particular - C RTL implementations */ - +@@ -203,8 +209,7 @@ + ensure DLLs adjacent to the PYD are preferred. */ + Py_BEGIN_ALLOW_THREADS + hDLL = LoadLibraryExW(wpathname, NULL, +- LOAD_LIBRARY_SEARCH_DEFAULT_DIRS | +- LOAD_LIBRARY_SEARCH_DLL_LOAD_DIR); ++ LOAD_WITH_ALTERED_SEARCH_PATH); + Py_END_ALLOW_THREADS + #if HAVE_SXS + _Py_DeactivateActCtx(cookie); diff --git a/mingw-w64-python3/0330-MINGW-ignore-main-program-for-frozen-scripts.patch b/mingw-w64-python3/0330-MINGW-ignore-main-program-for-frozen-scripts.patch index a7328f1167..b58c402d34 100644 --- a/mingw-w64-python3/0330-MINGW-ignore-main-program-for-frozen-scripts.patch +++ b/mingw-w64-python3/0330-MINGW-ignore-main-program-for-frozen-scripts.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:08.954331800 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:09.313132400 +0300 -@@ -5533,6 +5533,16 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:23.898984100 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:01:25.833387400 +0300 +@@ -5515,6 +5515,16 @@ ;; esac @@ -16,13 +16,13 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac +esac + AC_SUBST(SRCDIRS) - SRCDIRS="Parser Objects Python Modules Programs" + SRCDIRS="Parser Objects Python Modules Modules/_io Programs" case $host in -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:21:08.969931800 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:21:09.328732500 +0300 -@@ -333,7 +333,7 @@ - Python/codecs.o \ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:01:24.304584800 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:01:26.238988200 +0300 +@@ -327,7 +327,7 @@ + Python/context.o \ Python/dynamic_annotations.o \ Python/errors.o \ - Python/frozenmain.o \ diff --git a/mingw-w64-python3/0340-MINGW-setup-exclude-termios-module.patch b/mingw-w64-python3/0340-MINGW-setup-exclude-termios-module.patch deleted file mode 100644 index ec976d371f..0000000000 --- a/mingw-w64-python3/0340-MINGW-setup-exclude-termios-module.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:05.491125700 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:11.075935500 +0300 -@@ -1321,7 +1321,7 @@ - missing.append('_gdbm') - - # Unix-only modules -- if host_platform != 'win32': -+ if not host_platform.startswith(('mingw', 'win')): - # Steen Lumholt's termios module - exts.append( Extension('termios', ['termios.c']) ) - # Jeremy Hylton's rlimit interface diff --git a/mingw-w64-python3/0350-MINGW-setup-_multiprocessing-module.patch b/mingw-w64-python3/0350-MINGW-setup-_multiprocessing-module.patch index b1b7713e1a..3df91065dc 100644 --- a/mingw-w64-python3/0350-MINGW-setup-_multiprocessing-module.patch +++ b/mingw-w64-python3/0350-MINGW-setup-_multiprocessing-module.patch @@ -1,25 +1,16 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:12.479938000 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:12.823138600 +0300 -@@ -1584,7 +1584,7 @@ - macros = dict() - libraries = ['rt'] - -- if host_platform == 'win32': -+ if host_platform.startswith(('mingw', 'win')): - multiprocessing_srcs = [ '_multiprocessing/multiprocessing.c', - '_multiprocessing/semaphore.c', - ] -@@ -1596,8 +1596,12 @@ - sysconfig.get_config_var('POSIX_SEMAPHORES_NOT_ENABLED')): - multiprocessing_srcs.append('_multiprocessing/semaphore.c') +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:17.378172600 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:29.904994600 +0300 +@@ -1667,7 +1667,12 @@ + libraries=libs, + include_dirs=["Modules/_multiprocessing"])) + multiprocessing_libs = [] -+ if host_platform.startswith(('mingw', 'win')): ++ if MS_WINDOWS: + multiprocessing_libs += ['ws2_32'] - exts.append ( Extension('_multiprocessing', multiprocessing_srcs, - define_macros=list(macros.items()), -+ libraries=multiprocessing_libs, - include_dirs=["Modules/_multiprocessing"])) - # End multiprocessing + self.add(Extension('_multiprocessing', multiprocessing_srcs, ++ define_macros={}, ++ libraries=multiprocessing_libs, + include_dirs=["Modules/_multiprocessing"])) + def detect_uuid(self): diff --git a/mingw-w64-python3/0360-MINGW-setup-select-module.patch b/mingw-w64-python3/0360-MINGW-setup-select-module.patch index 0f34374f63..e8b9763925 100644 --- a/mingw-w64-python3/0360-MINGW-setup-select-module.patch +++ b/mingw-w64-python3/0360-MINGW-setup-select-module.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Modules/selectmodule.c Python-3.7.0/Modules/selectmodule.c ---- Python-3.7.0-orig/Modules/selectmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/selectmodule.c 2018-07-12 10:21:14.476741500 +0300 -@@ -106,9 +106,9 @@ +diff -Naur Python-3.8.0-orig/Modules/selectmodule.c Python-3.8.0/Modules/selectmodule.c +--- Python-3.8.0-orig/Modules/selectmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/selectmodule.c 2019-10-22 10:01:32.759799600 +0300 +@@ -134,9 +134,9 @@ v = PyObject_AsFileDescriptor( o ); if (v == -1) goto finally; @@ -13,7 +13,7 @@ diff -Naur Python-3.7.0-orig/Modules/selectmodule.c Python-3.7.0/Modules/selectm if (!_PyIsSelectable_fd(v)) { PyErr_SetString(PyExc_ValueError, "filedescriptor out of range in select()"); -@@ -116,7 +116,7 @@ +@@ -144,7 +144,7 @@ } if (v > max) max = v; @@ -22,19 +22,19 @@ diff -Naur Python-3.7.0-orig/Modules/selectmodule.c Python-3.7.0/Modules/selectm FD_SET(v, set); /* add object and its file descriptor to the list */ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:14.180341000 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:14.476741500 +0300 -@@ -742,7 +742,11 @@ - missing.append('spwd') +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:31.636597600 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:33.181000400 +0300 +@@ -817,7 +817,11 @@ + self.missing.append('spwd') # select(2); not on ancient System V -- exts.append( Extension('select', ['selectmodule.c']) ) +- self.add(Extension('select', ['selectmodule.c'])) + select_libs = [] -+ if host_platform.startswith(('mingw', 'win')): ++ if MS_WINDOWS: + select_libs += ['ws2_32'] -+ exts.append( Extension('select', ['selectmodule.c'], -+ libraries=select_libs) ) ++ self.add(Extension('select', ['selectmodule.c'], ++ libraries=select_libs)) # Fred Drake's interface to the Python parser - exts.append( Extension('parser', ['parsermodule.c']) ) + self.add(Extension('parser', ['parsermodule.c'])) diff --git a/mingw-w64-python3/0370-MINGW-setup-_ctypes-module-with-system-libffi.patch b/mingw-w64-python3/0370-MINGW-setup-_ctypes-module-with-system-libffi.patch index 31d5185858..e7366f0176 100644 --- a/mingw-w64-python3/0370-MINGW-setup-_ctypes-module-with-system-libffi.patch +++ b/mingw-w64-python3/0370-MINGW-setup-_ctypes-module-with-system-libffi.patch @@ -1,81 +1,25 @@ -diff -Naur Python-3.7.0-orig/Modules/_ctypes/callproc.c Python-3.7.0/Modules/_ctypes/callproc.c ---- Python-3.7.0-orig/Modules/_ctypes/callproc.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_ctypes/callproc.c 2018-07-12 10:21:16.161544500 +0300 -@@ -725,6 +725,21 @@ - } +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:35.318204100 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:36.394606000 +0300 +@@ -2043,9 +2043,12 @@ + self.add(ext) + if TEST_EXTENSIONS: + # function my_sqrt() needs libm for sqrt() ++ ffi_test_libs = ['m'] ++ if MS_WINDOWS: ++ ffi_test_libs += ['oleaut32'] + self.add(Extension('_ctypes_test', + sources=['_ctypes/_ctypes_test.c'], +- libraries=['m'])) ++ libraries=ffi_test_libs)) - -+#undef USE_PYFFI_DELTA -+#ifdef MS_WIN32 -+#ifdef X86_ANY -+/* NOTE: -+ * - Standard library does not calculate stack pointer difference -+ * unlike python specific for MSVC source. -+ * - As X86_ANY is defined in standard libffi only we will use as flag -+ * to distinguish between standard and customized sources. -+ */ -+#else -+/* use customized python libffi source */ -+# define USE_PYFFI_DELTA -+#endif -+#endif -+ - /* - * libffi uses: - * -@@ -751,7 +766,9 @@ - ffi_cif cif; - int cc; - #ifdef MS_WIN32 -+#ifdef USE_PYFFI_DELTA - int delta; -+#endif /* USE_PYFFI_DELTA */ - #ifndef DONT_USE_SEH - DWORD dwExceptionCode = 0; - EXCEPTION_RECORD record; -@@ -800,7 +817,9 @@ - #ifndef DONT_USE_SEH - __try { - #endif -+#ifdef USE_PYFFI_DELTA - delta = -+#endif /* USE_PYFFI_DELTA */ - #endif - ffi_call(&cif, (void *)pProc, resmem, avalues); - #ifdef MS_WIN32 -@@ -832,6 +851,7 @@ - return -1; - } - #endif -+#ifdef USE_PYFFI_DELTA - #ifdef MS_WIN64 - if (delta != 0) { - PyErr_Format(PyExc_RuntimeError, -@@ -861,6 +881,7 @@ - return -1; - } - #endif -+#endif /* USE_PYFFI_DELTA */ - #endif - if ((flags & FUNCFLAG_PYTHONAPI) && PyErr_Occurred()) - return -1; -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:15.802743800 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:16.161544500 +0300 -@@ -1979,6 +1979,8 @@ - ext_test = Extension('_ctypes_test', - sources=['_ctypes/_ctypes_test.c'], - libraries=['m']) -+ if host_platform.startswith(('mingw', 'win')): -+ ext_test.libraries.extend(['oleaut32']) - self.extensions.extend([ext, ext_test]) - - if host_platform == 'darwin': -@@ -2006,6 +2008,8 @@ + ffi_inc_dirs = self.inc_dirs.copy() + if MACOS: +@@ -2073,6 +2076,8 @@ if ffi_inc and ffi_lib: ext.include_dirs.extend(ffi_inc) ext.libraries.append(ffi_lib) -+ if host_platform.startswith(('mingw', 'win')): ++ if MS_WINDOWS: + ext.libraries.extend(['ole32', 'oleaut32', 'uuid']) self.use_system_libffi = True diff --git a/mingw-w64-python3/0380-MINGW-defect-winsock2-and-setup-_socket-module.patch b/mingw-w64-python3/0380-MINGW-defect-winsock2-and-setup-_socket-module.patch index bb37c2e355..1dab81e86b 100644 --- a/mingw-w64-python3/0380-MINGW-defect-winsock2-and-setup-_socket-module.patch +++ b/mingw-w64-python3/0380-MINGW-defect-winsock2-and-setup-_socket-module.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:10.748335000 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:17.971147600 +0300 -@@ -4217,21 +4217,36 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:27.970591200 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:01:39.327411100 +0300 +@@ -4291,21 +4291,36 @@ ],[]) AC_MSG_RESULT($was_it_defined) @@ -42,7 +42,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac [ac_cv_struct_sockaddr_storage=yes], [ac_cv_struct_sockaddr_storage=no])) AC_MSG_RESULT($ac_cv_struct_sockaddr_storage) -@@ -5429,7 +5444,10 @@ +@@ -5411,7 +5426,10 @@ AC_CHECK_TYPE(socklen_t,, AC_DEFINE(socklen_t,int, @@ -54,9 +54,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac #ifdef HAVE_SYS_TYPES_H #include #endif -diff -Naur Python-3.7.0-orig/Misc/config_mingw Python-3.7.0/Misc/config_mingw ---- Python-3.7.0-orig/Misc/config_mingw 2018-07-12 10:20:50.218698900 +0300 -+++ Python-3.7.0/Misc/config_mingw 2018-07-12 10:21:17.971147600 +0300 +diff -Naur Python-3.8.0-orig/Misc/config_mingw Python-3.8.0/Misc/config_mingw +--- Python-3.8.0-orig/Misc/config_mingw 2019-10-22 10:00:45.989917400 +0300 ++++ Python-3.8.0/Misc/config_mingw 2019-10-22 10:01:39.733011900 +0300 @@ -10,3 +10,6 @@ # files to ignore ac_cv_file__dev_ptmx=ignore #NOTE: under MSYS environment device exist @@ -64,10 +64,28 @@ diff -Naur Python-3.7.0-orig/Misc/config_mingw Python-3.7.0/Misc/config_mingw + +# force detection of winsock2 functionality - require wxp or newer +ac_cv_func_getpeername=yes -diff -Naur Python-3.7.0-orig/Modules/socketmodule.c Python-3.7.0/Modules/socketmodule.c ---- Python-3.7.0-orig/Modules/socketmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/socketmodule.c 2018-07-12 10:21:17.971147600 +0300 -@@ -387,6 +387,10 @@ +diff -Naur Python-3.8.0-orig/Modules/socketmodule.c Python-3.8.0/Modules/socketmodule.c +--- Python-3.8.0-orig/Modules/socketmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/socketmodule.c 2019-10-22 10:01:40.123012500 +0300 +@@ -310,7 +310,7 @@ + # endif + + /* Macros based on the IPPROTO enum, see: https://bugs.python.org/issue29515 */ +-#ifdef MS_WINDOWS ++#ifdef _MSC_VER + #define IPPROTO_ICMP IPPROTO_ICMP + #define IPPROTO_IGMP IPPROTO_IGMP + #define IPPROTO_GGP IPPROTO_GGP +@@ -341,7 +341,7 @@ + #define IPPROTO_PGM IPPROTO_PGM // WinSock2 only + #define IPPROTO_L2TP IPPROTO_L2TP // WinSock2 only + #define IPPROTO_SCTP IPPROTO_SCTP // WinSock2 only +-#endif /* MS_WINDOWS */ ++#endif /* _MSC_VER */ + + /* Provides the IsWindows7SP1OrGreater() function */ + #include +@@ -434,6 +434,10 @@ /* Do not include addrinfo.h for MSVC7 or greater. 'addrinfo' and * EAI_* constants are defined in (the already included) ws2tcpip.h. */ @@ -78,10 +96,10 @@ diff -Naur Python-3.7.0-orig/Modules/socketmodule.c Python-3.7.0/Modules/socketm #else # include "addrinfo.h" #endif -diff -Naur Python-3.7.0-orig/pyconfig.h.in Python-3.7.0/pyconfig.h.in ---- Python-3.7.0-orig/pyconfig.h.in 2018-07-12 10:20:45.226690100 +0300 -+++ Python-3.7.0/pyconfig.h.in 2018-07-12 10:21:17.971147600 +0300 -@@ -46,7 +46,7 @@ +diff -Naur Python-3.8.0-orig/pyconfig.h.in Python-3.8.0/pyconfig.h.in +--- Python-3.8.0-orig/pyconfig.h.in 2019-10-22 10:00:35.132298300 +0300 ++++ Python-3.8.0/pyconfig.h.in 2019-10-22 10:01:40.513013200 +0300 +@@ -54,7 +54,7 @@ /* Define to 1 if you have the `acosh' function. */ #undef HAVE_ACOSH @@ -90,7 +108,7 @@ diff -Naur Python-3.7.0-orig/pyconfig.h.in Python-3.7.0/pyconfig.h.in #undef HAVE_ADDRINFO /* Define to 1 if you have the `alarm' function. */ -@@ -1261,6 +1261,9 @@ +@@ -1335,6 +1335,9 @@ /* Define if libssl has X509_VERIFY_PARAM_set1_host and related function */ #undef HAVE_X509_VERIFY_PARAM_SET1_HOST @@ -100,7 +118,7 @@ diff -Naur Python-3.7.0-orig/pyconfig.h.in Python-3.7.0/pyconfig.h.in /* Define if the zlib library has inflateCopy */ #undef HAVE_ZLIB_COPY -@@ -1573,7 +1576,7 @@ +@@ -1644,7 +1647,7 @@ /* Define to `unsigned int' if does not define. */ #undef size_t @@ -109,18 +127,18 @@ diff -Naur Python-3.7.0-orig/pyconfig.h.in Python-3.7.0/pyconfig.h.in #undef socklen_t /* Define to `int' if doesn't define. */ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:17.534346900 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:17.986747700 +0300 -@@ -879,7 +879,11 @@ - exts.append( Extension('_posixsubprocess', ['_posixsubprocess.c']) ) - +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:38.141809100 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:40.934214000 +0300 +@@ -1050,7 +1050,11 @@ + def detect_socket(self): # socket(2) -+ socket_libs = [] -+ if host_platform.startswith(('mingw', 'win')): -+ socket_libs += ['ws2_32'] - exts.append( Extension('_socket', ['socketmodule.c'], + if not VXWORKS: ++ socket_libs = [] ++ if MS_WINDOWS: ++ socket_libs += ['ws2_32', 'iphlpapi'] + self.add(Extension('_socket', ['socketmodule.c'], + libraries = socket_libs, - depends = ['socketmodule.h']) ) - # Detect SSL support for the socket module (via _ssl) - ssl_ext, hashlib_ext = self._detect_openssl(inc_dirs, lib_dirs) + depends=['socketmodule.h'])) + elif self.compiler.find_library_file(self.lib_dirs, 'net'): + libs = ['net'] diff --git a/mingw-w64-python3/0390-MINGW-exclude-unix-only-modules.patch b/mingw-w64-python3/0390-MINGW-exclude-unix-only-modules.patch index 65cdd9ae09..624f08cf24 100644 --- a/mingw-w64-python3/0390-MINGW-exclude-unix-only-modules.patch +++ b/mingw-w64-python3/0390-MINGW-exclude-unix-only-modules.patch @@ -1,68 +1,76 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:19.468750300 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:19.733950700 +0300 -@@ -729,11 +729,20 @@ - if (config_h_vars.get('FLOCK_NEEDS_LIBBSD', False)): +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:44.336020000 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:45.428021900 +0300 +@@ -800,13 +800,21 @@ + if (self.config_h_vars.get('FLOCK_NEEDS_LIBBSD', False)): # May be necessary on AIX for flock function libs = ['bsd'] -- exts.append( Extension('fcntl', ['fcntlmodule.c'], libraries=libs) ) -+ if not host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('fcntl', ['fcntlmodule.c'], libraries=libs) ) +- self.add(Extension('fcntl', ['fcntlmodule.c'], +- libraries=libs)) ++ if not MS_WINDOWS: ++ self.add(Extension('fcntl', ['fcntlmodule.c'], ++ libraries=libs)) + else: -+ missing.append('fcntl') ++ self.missing.append('fcntl') # pwd(3) -- exts.append( Extension('pwd', ['pwdmodule.c']) ) -+ if not host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('pwd', ['pwdmodule.c']) ) +- self.add(Extension('pwd', ['pwdmodule.c'])) ++ if not MS_WINDOWS: ++ self.add(Extension('pwd', ['pwdmodule.c'])) + else: -+ missing.append('pwd') ++ self.missing.append('pwd') # grp(3) -- exts.append( Extension('grp', ['grpmodule.c']) ) -+ if not host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('grp', ['grpmodule.c']) ) +- if not VXWORKS: ++ if not VXWORKS and not MS_WINDOWS: + self.add(Extension('grp', ['grpmodule.c'])) + else: -+ missing.append('grp') ++ self.missing.append('grp') # spwd, shadow passwords - if (config_h_vars.get('HAVE_GETSPNAM', False) or - config_h_vars.get('HAVE_GETSPENT', False)): -@@ -756,7 +765,10 @@ + if (self.config_h_vars.get('HAVE_GETSPNAM', False) or + self.config_h_vars.get('HAVE_GETSPENT', False)): +@@ -831,7 +839,10 @@ # Lance Ellinghaus's syslog module # syslog daemon interface -- exts.append( Extension('syslog', ['syslogmodule.c']) ) -+ if not host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('syslog', ['syslogmodule.c']) ) +- self.add(Extension('syslog', ['syslogmodule.c'])) ++ if not MS_WINDOWS: ++ self.add(Extension('syslog', ['syslogmodule.c'])) + else: -+ missing.append('syslog') ++ self.missing.append('syslog') - # Fuzz tests. - exts.append( Extension( -@@ -866,17 +878,23 @@ + # Python interface to subinterpreter C-API. + self.add(Extension('_xxsubinterpreters', ['_xxsubinterpretersmodule.c'])) +@@ -857,7 +868,10 @@ + self.add(Extension('_csv', ['_csv.c'])) - # crypt module. + # POSIX subprocess module helper. +- self.add(Extension('_posixsubprocess', ['_posixsubprocess.c'])) ++ if not MS_WINDOWS: ++ self.add(Extension('_posixsubprocess', ['_posixsubprocess.c'])) ++ else: ++ self.missing.append('_posixsubprocess') -- if self.compiler.find_library_file(lib_dirs, 'crypt'): + def detect_test_extensions(self): + # Python C API test module +@@ -1039,13 +1053,16 @@ + # the encryption. + return + +- if self.compiler.find_library_file(self.lib_dirs, 'crypt'): - libs = ['crypt'] -+ if not host_platform.startswith(('mingw', 'win')): -+ if self.compiler.find_library_file(lib_dirs, 'crypt'): +- else: +- libs = [] ++ if not MS_WINDOWS: ++ if self.compiler.find_library_file(self.lib_dirs, 'crypt'): + libs = ['crypt'] + else: + libs = [] -+ exts.append( Extension('_crypt', ['_cryptmodule.c'], libraries=libs) ) - else: -- libs = [] -- exts.append( Extension('_crypt', ['_cryptmodule.c'], libraries=libs) ) -+ missing.append('_crypt') - # CSV files - exts.append( Extension('_csv', ['_csv.c']) ) - - # POSIX subprocess module helper. -- exts.append( Extension('_posixsubprocess', ['_posixsubprocess.c']) ) -+ if not host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('_posixsubprocess', ['_posixsubprocess.c']) ) +- self.add(Extension('_crypt', ['_cryptmodule.c'], +- libraries=libs)) ++ self.add(Extension('_crypt', ['_cryptmodule.c'], ++ libraries=libs)) + else: -+ missing.append('_posixsubprocess') ++ self.missing.append('_crypt') + def detect_socket(self): # socket(2) - socket_libs = [] diff --git a/mingw-w64-python3/0400-MINGW-setup-msvcrt-and-_winapi-modules.patch b/mingw-w64-python3/0400-MINGW-setup-msvcrt-and-_winapi-modules.patch index e71b2f24d4..e3bdf4fc3e 100644 --- a/mingw-w64-python3/0400-MINGW-setup-msvcrt-and-_winapi-modules.patch +++ b/mingw-w64-python3/0400-MINGW-setup-msvcrt-and-_winapi-modules.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Modules/_winapi.c Python-3.7.0/Modules/_winapi.c ---- Python-3.7.0-orig/Modules/_winapi.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_winapi.c 2018-07-12 10:21:21.496753800 +0300 +diff -Naur Python-3.8.0-orig/Modules/_winapi.c Python-3.8.0/Modules/_winapi.c +--- Python-3.8.0-orig/Modules/_winapi.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_winapi.c 2019-10-22 10:01:48.485627300 +0300 @@ -39,7 +39,9 @@ #define WINDOWS_LEAN_AND_MEAN @@ -11,9 +11,9 @@ diff -Naur Python-3.7.0-orig/Modules/_winapi.c Python-3.7.0/Modules/_winapi.c #include "winreparse.h" #if defined(MS_WIN32) && !defined(MS_WIN64) -diff -Naur Python-3.7.0-orig/PC/msvcrtmodule.c Python-3.7.0/PC/msvcrtmodule.c ---- Python-3.7.0-orig/PC/msvcrtmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/PC/msvcrtmodule.c 2018-07-12 10:21:21.512353900 +0300 +diff -Naur Python-3.8.0-orig/PC/msvcrtmodule.c Python-3.8.0/PC/msvcrtmodule.c +--- Python-3.8.0-orig/PC/msvcrtmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/PC/msvcrtmodule.c 2019-10-22 10:01:48.891228000 +0300 @@ -21,7 +21,9 @@ #include #include @@ -24,9 +24,9 @@ diff -Naur Python-3.7.0-orig/PC/msvcrtmodule.c Python-3.7.0/PC/msvcrtmodule.c #include #ifdef _MSC_VER -diff -Naur Python-3.7.0-orig/Python/dynamic_annotations.c Python-3.7.0/Python/dynamic_annotations.c ---- Python-3.7.0-orig/Python/dynamic_annotations.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/dynamic_annotations.c 2018-07-12 10:21:21.465553800 +0300 +diff -Naur Python-3.8.0-orig/Python/dynamic_annotations.c Python-3.8.0/Python/dynamic_annotations.c +--- Python-3.8.0-orig/Python/dynamic_annotations.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/dynamic_annotations.c 2019-10-22 10:01:49.296828700 +0300 @@ -27,7 +27,7 @@ * Author: Kostya Serebryany */ @@ -36,31 +36,34 @@ diff -Naur Python-3.7.0-orig/Python/dynamic_annotations.c Python-3.7.0/Python/dy # include #endif -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:21.106753200 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:21.512353900 +0300 -@@ -962,6 +962,24 @@ - min_db_ver = (3, 3) - db_setup_debug = False # verbose debug prints from this script? +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:47.378025300 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:01:49.702429400 +0300 +@@ -1540,6 +1540,27 @@ + '-framework', 'SystemConfiguration', + '-framework', 'CoreFoundation'])) + # Modules with some Windows dependencies: -+ if host_platform.startswith(('mingw', 'win')): ++ if MS_WINDOWS: + srcdir = sysconfig.get_config_var('srcdir') + pc_srcdir = os.path.abspath(os.path.join(srcdir, 'PC')) + -+ exts.append( Extension('msvcrt', [os.path.join(pc_srcdir, p) -+ for p in ['msvcrtmodule.c']]) ) ++ self.add(Extension('msvcrt', [os.path.join(pc_srcdir, p) ++ for p in ['msvcrtmodule.c']])) + -+ exts.append( Extension('_winapi', ['_winapi.c']) ) ++ self.add(Extension('_winapi', ['_winapi.c'])) + -+ exts.append( Extension('_msi', [os.path.join(pc_srcdir, p) -+ for p in ['_msi.c']], -+ libraries=['msi','cabinet','rpcrt4']) ) # To link with lib(msi|cabinet|rpcrt4).a ++ self.add(Extension('_msi', [os.path.join(pc_srcdir, p) ++ for p in ['_msi.c']], ++ libraries=['msi','cabinet','rpcrt4'])) # To link with lib(msi|cabinet|rpcrt4).a + -+ exts.append( Extension('winsound', [os.path.join(pc_srcdir, p) -+ for p in ['winsound.c']], -+ libraries=['winmm']) ) ++ self.add(Extension('winsound', [os.path.join(pc_srcdir, p) ++ for p in ['winsound.c']], ++ libraries=['winmm'])) + - def allow_db_ver(db_ver): - """Returns a boolean if the given BerkeleyDB version is acceptable. - ++ self.add(Extension('_overlapped', ['overlapped.c'], ++ libraries=['ws2_32'])) ++ + def detect_compress_exts(self): + # Andrew Kuchling's zlib module. Note that some versions of zlib + # 1.1.3 have security problems. See CERT Advisory CA-2002-07: diff --git a/mingw-w64-python3/0410-MINGW-build-extensions-with-GCC.patch b/mingw-w64-python3/0410-MINGW-build-extensions-with-GCC.patch index 9e41ad6bda..436f2c442d 100644 --- a/mingw-w64-python3/0410-MINGW-build-extensions-with-GCC.patch +++ b/mingw-w64-python3/0410-MINGW-build-extensions-with-GCC.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib/distutils/command/build_ext.py ---- Python-3.7.0-orig/Lib/distutils/command/build_ext.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/command/build_ext.py 2018-07-12 10:21:23.275157000 +0300 -@@ -185,7 +185,7 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/command/build_ext.py Python-3.8.0/Lib/distutils/command/build_ext.py +--- Python-3.8.0-orig/Lib/distutils/command/build_ext.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/command/build_ext.py 2019-10-22 10:01:53.789636600 +0300 +@@ -186,7 +186,7 @@ # for extensions under windows use different directories # for Release and Debug builds. # also Python's library directory must be appended to library_dirs @@ -10,7 +10,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib # the 'libs' directory is for binary installs - we assume that # must be the *native* platform. But we don't really support # cross-compiling via a binary install anyway, so we let it go. -@@ -702,6 +702,20 @@ +@@ -703,6 +703,20 @@ # pyconfig.h that MSVC groks. The other Windows compilers all seem # to need it mentioned explicitly, though, so that's what we do. # Append '_d' to the python import library on debug builds. @@ -31,9 +31,9 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib if sys.platform == "win32": from distutils._msvccompiler import MSVCCompiler if not isinstance(self.compiler, MSVCCompiler): -diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/util.py ---- Python-3.7.0-orig/Lib/distutils/util.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/util.py 2018-07-12 10:21:23.275157000 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/util.py Python-3.8.0/Lib/distutils/util.py +--- Python-3.8.0-orig/Lib/distutils/util.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/util.py 2019-10-22 10:01:54.210837300 +0300 @@ -36,6 +36,8 @@ """ @@ -42,11 +42,11 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/ut + return 'mingw' if 'amd64' in sys.version.lower(): return 'win-amd64' - return sys.platform -diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py ---- Python-3.7.0-orig/Lib/sysconfig.py 2018-07-12 10:20:40.125481200 +0300 -+++ Python-3.7.0/Lib/sysconfig.py 2018-07-12 10:21:23.290757000 +0300 -@@ -631,6 +631,8 @@ + if '(arm)' in sys.version.lower(): +diff -Naur Python-3.8.0-orig/Lib/sysconfig.py Python-3.8.0/Lib/sysconfig.py +--- Python-3.8.0-orig/Lib/sysconfig.py 2019-10-22 10:00:21.731874800 +0300 ++++ Python-3.8.0/Lib/sysconfig.py 2019-10-22 10:01:54.600838000 +0300 +@@ -643,6 +643,8 @@ """ if os.name == 'nt': @@ -54,4 +54,4 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py + return 'mingw' if 'amd64' in sys.version.lower(): return 'win-amd64' - return sys.platform + if '(arm)' in sys.version.lower(): diff --git a/mingw-w64-python3/0420-MINGW-use-Mingw32CCompiler-as-default-compiler-for-m.patch b/mingw-w64-python3/0420-MINGW-use-Mingw32CCompiler-as-default-compiler-for-m.patch index 345875a377..e75f0871a3 100644 --- a/mingw-w64-python3/0420-MINGW-use-Mingw32CCompiler-as-default-compiler-for-m.patch +++ b/mingw-w64-python3/0420-MINGW-use-Mingw32CCompiler-as-default-compiler-for-m.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/ccompiler.py Python-3.7.0/Lib/distutils/ccompiler.py ---- Python-3.7.0-orig/Lib/distutils/ccompiler.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/ccompiler.py 2018-07-12 10:21:25.022360000 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/ccompiler.py Python-3.8.0/Lib/distutils/ccompiler.py +--- Python-3.8.0-orig/Lib/distutils/ccompiler.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/ccompiler.py 2019-10-22 10:01:58.266844500 +0300 @@ -9,7 +9,7 @@ from distutils.file_util import move_file from distutils.dir_util import mkpath @@ -10,7 +10,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/ccompiler.py Python-3.7.0/Lib/distuti from distutils import log class CCompiler: -@@ -947,6 +947,8 @@ +@@ -948,6 +948,8 @@ osname = os.name if platform is None: platform = sys.platform @@ -19,9 +19,9 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/ccompiler.py Python-3.7.0/Lib/distuti for pattern, compiler in _default_compilers: if re.match(pattern, platform) is not None or \ re.match(pattern, osname) is not None: -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:25.022360000 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:01:58.656845200 +0300 @@ -255,11 +255,16 @@ output_dir = '' obj_names = [] diff --git a/mingw-w64-python3/0430-MINGW-find-import-library.patch b/mingw-w64-python3/0430-MINGW-find-import-library.patch index b36686fdf4..f9cdb180b4 100644 --- a/mingw-w64-python3/0430-MINGW-find-import-library.patch +++ b/mingw-w64-python3/0430-MINGW-find-import-library.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:26.379562400 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:26.707163000 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:02:00.856449000 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:02:01.979651000 +0300 @@ -93,6 +93,7 @@ obj_extension = ".o" static_lib_extension = ".a" diff --git a/mingw-w64-python3/0440-MINGW-setup-_ssl-module.patch b/mingw-w64-python3/0440-MINGW-setup-_ssl-module.patch index dc68770838..04a1b188da 100644 --- a/mingw-w64-python3/0440-MINGW-setup-_ssl-module.patch +++ b/mingw-w64-python3/0440-MINGW-setup-_ssl-module.patch @@ -1,12 +1,12 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:22.900756300 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:28.345165900 +0300 -@@ -2192,6 +2192,8 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:01:52.635234600 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:02:04.772055900 +0300 +@@ -2257,6 +2257,8 @@ openssl_includes = split_var('OPENSSL_INCLUDES', '-I') openssl_libdirs = split_var('OPENSSL_LDFLAGS', '-L') openssl_libs = split_var('OPENSSL_LIBS', '-l') -+ if host_platform.startswith(('mingw', 'win')): ++ if MS_WINDOWS: + openssl_libs += ['ws2_32'] if not openssl_libs: # libssl and libcrypto not found - return None, None + self.missing.extend(['_ssl', '_hashlib']) diff --git a/mingw-w64-python3/0460-MINGW-generalization-of-posix-build-in-sysconfig.py.patch b/mingw-w64-python3/0460-MINGW-generalization-of-posix-build-in-sysconfig.py.patch index b5e4c19f62..ed8eced239 100644 --- a/mingw-w64-python3/0460-MINGW-generalization-of-posix-build-in-sysconfig.py.patch +++ b/mingw-w64-python3/0460-MINGW-generalization-of-posix-build-in-sysconfig.py.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py ---- Python-3.7.0-orig/Lib/sysconfig.py 2018-07-12 10:21:24.710359500 +0300 -+++ Python-3.7.0/Lib/sysconfig.py 2018-07-12 10:21:29.967568700 +0300 -@@ -96,6 +96,9 @@ +diff -Naur Python-3.8.0-orig/Lib/sysconfig.py Python-3.8.0/Lib/sysconfig.py +--- Python-3.8.0-orig/Lib/sysconfig.py 2019-10-22 10:01:57.159242500 +0300 ++++ Python-3.8.0/Lib/sysconfig.py 2019-10-22 10:02:07.580060800 +0300 +@@ -97,6 +97,9 @@ _CONFIG_VARS = None _USER_BASE = None @@ -11,7 +11,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py def _safe_realpath(path): try: -@@ -172,7 +175,7 @@ +@@ -180,7 +183,7 @@ def _get_default_scheme(): @@ -20,7 +20,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py # the default scheme for posix is posix_prefix return 'posix_prefix' return os.name -@@ -188,7 +191,7 @@ +@@ -196,7 +199,7 @@ def joinuser(*args): return os.path.expanduser(os.path.join(*args)) @@ -29,7 +29,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py base = os.environ.get("APPDATA") or "~" return joinuser(base, "Python") -@@ -481,7 +484,7 @@ +@@ -493,7 +496,7 @@ def get_config_h_filename(): """Return the path of pyconfig.h.""" if _PYTHON_BUILD: @@ -38,7 +38,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py inc_dir = os.path.join(_sys_home or _PROJECT_BASE, "PC") else: inc_dir = _sys_home or _PROJECT_BASE -@@ -552,9 +555,9 @@ +@@ -564,9 +567,9 @@ # sys.abiflags may not be defined on all platforms. _CONFIG_VARS['abiflags'] = '' @@ -50,7 +50,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py _init_posix(_CONFIG_VARS) # For backward compatibility, see issue19555 SO = _CONFIG_VARS.get('EXT_SUFFIX') -@@ -567,7 +570,7 @@ +@@ -579,7 +582,7 @@ # Always convert srcdir to an absolute path srcdir = _CONFIG_VARS.get('srcdir', _PROJECT_BASE) diff --git a/mingw-w64-python3/0462-MINGW-support-stdcall-without-underscore.patch b/mingw-w64-python3/0462-MINGW-support-stdcall-without-underscore.patch index 738354c81f..bcd83aaf58 100644 --- a/mingw-w64-python3/0462-MINGW-support-stdcall-without-underscore.patch +++ b/mingw-w64-python3/0462-MINGW-support-stdcall-without-underscore.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Modules/_ctypes/_ctypes.c Python-3.7.0/Modules/_ctypes/_ctypes.c ---- Python-3.7.0-orig/Modules/_ctypes/_ctypes.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_ctypes/_ctypes.c 2018-07-12 10:21:31.621171600 +0300 -@@ -3187,11 +3187,28 @@ +diff -Naur Python-3.8.0-orig/Modules/_ctypes/_ctypes.c Python-3.8.0/Modules/_ctypes/_ctypes.c +--- Python-3.8.0-orig/Modules/_ctypes/_ctypes.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_ctypes/_ctypes.c 2019-10-22 10:02:10.434865800 +0300 +@@ -3342,11 +3342,30 @@ mangled_name = alloca(strlen(name) + 1 + 1 + 1 + 3); /* \0 _ @ %d */ if (!mangled_name) return NULL; @@ -19,14 +19,16 @@ diff -Naur Python-3.7.0-orig/Modules/_ctypes/_ctypes.c Python-3.7.0/Modules/_cty + */ for (i = 0; i < 32; ++i) { sprintf(mangled_name, "_%s@%d", name, i*4); + Py_BEGIN_ALLOW_THREADS address = (PPROC)GetProcAddress(handle, mangled_name); - if (address) - return address; -+ /* search for function without underscore as weel */ -+ sprintf(mangled_name, "%s@%d", name, i*4); -+ address = (PPROC)GetProcAddress(handle, mangled_name); + Py_END_ALLOW_THREADS + if (address) + return address; ++ /* search for function without underscore as weel */ ++ sprintf(mangled_name, "%s@%d", name, i*4); ++ Py_BEGIN_ALLOW_THREADS ++ address = (PPROC)GetProcAddress(handle, mangled_name); ++ Py_END_ALLOW_THREADS + if (address) + return address; } - return NULL; - #endif diff --git a/mingw-w64-python3/0464-use-replace-instead-rename-to-avoid-failure-on-windo.patch b/mingw-w64-python3/0464-use-replace-instead-rename-to-avoid-failure-on-windo.patch index d0070428a9..36e1e375ef 100644 --- a/mingw-w64-python3/0464-use-replace-instead-rename-to-avoid-failure-on-windo.patch +++ b/mingw-w64-python3/0464-use-replace-instead-rename-to-avoid-failure-on-windo.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:29.655568200 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:33.259174500 +0300 -@@ -2345,7 +2345,7 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:02:06.503658900 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:02:13.258470800 +0300 +@@ -2434,7 +2434,7 @@ else: newfilename = filename + minoronly log.info('renaming %s to %s', filename, newfilename) diff --git a/mingw-w64-python3/0470-MINGW-avoid-circular-dependency-from-time-module-dur.patch b/mingw-w64-python3/0470-MINGW-avoid-circular-dependency-from-time-module-dur.patch index 5d03ae1a59..89a9968b7f 100644 --- a/mingw-w64-python3/0470-MINGW-avoid-circular-dependency-from-time-module-dur.patch +++ b/mingw-w64-python3/0470-MINGW-avoid-circular-dependency-from-time-module-dur.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:28.033165300 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:34.865977300 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:02:03.680054000 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:02:16.066475700 +0300 @@ -48,7 +48,6 @@ import os import sys diff --git a/mingw-w64-python3/0480-MINGW-generalization-of-posix-build-in-distutils-sys.patch b/mingw-w64-python3/0480-MINGW-generalization-of-posix-build-in-distutils-sys.patch index 52745c5e86..d4753273a0 100644 --- a/mingw-w64-python3/0480-MINGW-generalization-of-posix-build-in-distutils-sys.patch +++ b/mingw-w64-python3/0480-MINGW-generalization-of-posix-build-in-distutils-sys.patch @@ -1,10 +1,10 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distutils/sysconfig.py ---- Python-3.7.0-orig/Lib/distutils/sysconfig.py 2018-07-12 10:21:02.105919800 +0300 -+++ Python-3.7.0/Lib/distutils/sysconfig.py 2018-07-12 10:21:36.519580200 +0300 -@@ -53,6 +53,17 @@ - return _is_python_source_dir(project_base) +diff -Naur Python-3.8.0-orig/Lib/distutils/sysconfig.py Python-3.8.0/Lib/distutils/sysconfig.py +--- Python-3.8.0-orig/Lib/distutils/sysconfig.py 2019-10-22 10:01:10.872961200 +0300 ++++ Python-3.8.0/Lib/distutils/sysconfig.py 2019-10-22 10:02:18.890080700 +0300 +@@ -65,6 +65,17 @@ python_build = _python_build() + +def _posix_build(): + # GCC[mingw*] use posix build system + # Check for cross builds explicitly @@ -19,7 +19,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti # Calculate the build qualifier flags if they are defined. Adding the flags # to the include and lib directories only makes sense for an installation, not # an in-source build. -@@ -86,7 +97,7 @@ +@@ -98,7 +109,7 @@ """ if prefix is None: prefix = plat_specific and BASE_EXEC_PREFIX or BASE_PREFIX @@ -28,7 +28,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti if python_build: # Assume the executable is in the build directory. The # pyconfig.h file should be in the same directory. Since -@@ -128,7 +139,7 @@ +@@ -145,7 +156,7 @@ else: prefix = plat_specific and EXEC_PREFIX or PREFIX @@ -37,7 +37,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti libpython = os.path.join(prefix, "lib", "python" + get_python_version()) if standard_lib: -@@ -238,7 +249,7 @@ +@@ -255,7 +266,7 @@ def get_config_h_filename(): """Return full pathname of installed pyconfig.h file.""" if python_build: @@ -46,7 +46,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti inc_dir = os.path.join(_sys_home or project_base, "PC") else: inc_dir = _sys_home or project_base -@@ -444,6 +455,9 @@ +@@ -461,6 +472,9 @@ def _init_nt(): @@ -56,7 +56,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti """Initialize the module as appropriate for NT""" g = {} # set basic install directories -@@ -493,7 +507,7 @@ +@@ -510,7 +524,7 @@ # Always convert srcdir to an absolute path srcdir = _config_vars.get('srcdir', project_base) @@ -65,7 +65,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/sysconfig.py Python-3.7.0/Lib/distuti if python_build: # If srcdir is a relative path (typically '.' or '..') # then it should be interpreted relative to the directory -@@ -512,7 +526,7 @@ +@@ -529,7 +543,7 @@ # Normally it is relative to the build directory. However, during # testing, for example, we might be running a non-installed python # from a different directory. diff --git a/mingw-w64-python3/0490-MINGW-customize-site.patch b/mingw-w64-python3/0490-MINGW-customize-site.patch index 9fa6ba8c22..52752ec221 100644 --- a/mingw-w64-python3/0490-MINGW-customize-site.patch +++ b/mingw-w64-python3/0490-MINGW-customize-site.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/site.py Python-3.7.0/Lib/site.py ---- Python-3.7.0-orig/Lib/site.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/site.py 2018-07-12 10:21:38.157583100 +0300 -@@ -250,7 +250,8 @@ +diff -Naur Python-3.8.0-orig/Lib/site.py Python-3.8.0/Lib/site.py +--- Python-3.8.0-orig/Lib/site.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/site.py 2019-10-22 10:02:21.776085800 +0300 +@@ -251,7 +251,8 @@ def joinuser(*args): return os.path.expanduser(os.path.join(*args)) @@ -11,7 +11,7 @@ diff -Naur Python-3.7.0-orig/Lib/site.py Python-3.7.0/Lib/site.py base = os.environ.get("APPDATA") or "~" return joinuser(base, "Python") -@@ -265,7 +266,8 @@ +@@ -266,7 +267,8 @@ def _get_path(userbase): version = sys.version_info @@ -21,7 +21,7 @@ diff -Naur Python-3.7.0-orig/Lib/site.py Python-3.7.0/Lib/site.py return f'{userbase}\\Python{version[0]}{version[1]}\\site-packages' if sys.platform == 'darwin' and sys._framework: -@@ -328,12 +330,13 @@ +@@ -329,12 +331,13 @@ if prefixes is None: prefixes = PREFIXES diff --git a/mingw-w64-python3/0500-add-python-config-sh.patch b/mingw-w64-python3/0500-add-python-config-sh.patch index af65d877ca..be9fa77862 100644 --- a/mingw-w64-python3/0500-add-python-config-sh.patch +++ b/mingw-w64-python3/0500-add-python-config-sh.patch @@ -1,5 +1,6 @@ ---- Python-3.7.0/Misc/python-config.sh.in.orig 2018-06-27 05:07:35.000000000 +0200 -+++ Python-3.7.0/Misc/python-config.sh.in 2018-07-27 21:58:05.397283200 +0200 +diff -Naur Python-3.8.0-orig/Misc/python-config.sh.in Python-3.8.0/Misc/python-config.sh.in +--- Python-3.8.0-orig/Misc/python-config.sh.in 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Misc/python-config.sh.in 2019-10-22 10:02:24.584090700 +0300 @@ -1,32 +1,44 @@ #!/bin/sh @@ -7,7 +8,7 @@ - exit_with_usage () { - echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--abiflags|--configdir" + echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--abiflags|--configdir|--embed" - exit $1 + exit 1 } @@ -55,7 +56,7 @@ # locations. Keep prefix & exec_prefix using their original values in case # they are referenced in other configure variables, to prevent double # substitution, issue #22140. -@@ -41,12 +53,16 @@ +@@ -41,13 +53,17 @@ LIBC="@LIBC@" SYSLIBS="$LIBM $LIBC" ABIFLAGS="@ABIFLAGS@" @@ -63,7 +64,8 @@ +if [ "$ABIFLAGS" = "@""ABIFLAGS""@" ] ; then + ABIFLAGS= +fi - LIBS="-lpython${VERSION}${ABIFLAGS} @LIBS@ $SYSLIBS" + LIBS="@LIBPYTHON@ @LIBS@ $SYSLIBS" + LIBS_EMBED="-lpython${VERSION}${ABIFLAGS} @LIBS@ $SYSLIBS" BASECFLAGS="@BASECFLAGS@" -LDLIBRARY="@LDLIBRARY@" OPT="@OPT@" @@ -73,13 +75,16 @@ LIBDEST=${prefix_real}/lib/python${VERSION} LIBPL=$(echo "@LIBPL@" | sed "s#$prefix#$prefix_real#") SO="@EXT_SUFFIX@" -@@ -60,33 +76,33 @@ +@@ -61,7 +77,7 @@ do case $ARG in --help) - exit_with_usage 0 + exit_with_usage ;; + --embed) + PY_EMBED=1 +@@ -69,7 +85,7 @@ --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--abiflags|--configdir) ;; *) @@ -88,6 +93,7 @@ ;; esac done +@@ -80,37 +96,37 @@ for ARG in "$@" do @@ -114,8 +120,7 @@ + echo -ne "$LIBS" ;; --ldflags) - LINKFORSHAREDUSED= -@@ -97,16 +113,16 @@ + LIBPLUSED= if [ "$PY_ENABLE_SHARED" = "0" ] ; then LIBPLUSED="-L$LIBPL" fi diff --git a/mingw-w64-python3/0510-cross-darwin-feature.patch b/mingw-w64-python3/0510-cross-darwin-feature.patch index 0d5d2827a2..30ae92c9ba 100644 --- a/mingw-w64-python3/0510-cross-darwin-feature.patch +++ b/mingw-w64-python3/0510-cross-darwin-feature.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:19.453150200 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:41.464788900 +0300 +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:01:42.698017100 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:02:27.392095600 +0300 @@ -377,6 +377,7 @@ then # avoid using uname for cross builds @@ -9,7 +9,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # ac_sys_system and ac_sys_release are used for setting # a lot of different things including 'define_xopen_source' # in the case statement below. -@@ -390,12 +391,32 @@ +@@ -390,6 +391,27 @@ *-*-cygwin*) ac_sys_system=Cygwin ;; @@ -34,8 +34,10 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac + ac_sys_release=${ac_sys_release}.0.0 + fi + ;; - *) - # for now, limit cross builds to known configurations + *-*-vxworks*) + ac_sys_system=VxWorks + ;; +@@ -398,7 +420,6 @@ MACHDEP="unknown" AC_MSG_ERROR([cross build not supported for $host]) esac @@ -43,7 +45,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac else ac_sys_system=`uname -s` if test "$ac_sys_system" = "AIX" \ -@@ -437,6 +458,9 @@ +@@ -445,6 +466,9 @@ *-*-mingw*) _host_cpu= ;; @@ -53,9 +55,9 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac *) # for now, limit cross builds to known configurations MACHDEP="unknown" -@@ -1582,6 +1606,26 @@ - AC_SUBST(BASECFLAGS) +@@ -1619,6 +1643,26 @@ AC_SUBST(CFLAGS_NODIST) + AC_SUBST(LDFLAGS_NODIST) +if test "x$cross_compiling" = xyes; then + function cross_arch @@ -80,7 +82,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # The -arch flags for universal builds on OSX UNIVERSAL_ARCH_FLAGS= AC_SUBST(UNIVERSAL_ARCH_FLAGS) -@@ -1954,7 +1998,7 @@ +@@ -1970,7 +2014,7 @@ ;; esac else @@ -89,7 +91,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac then # 10.4 was the first release to support Intel archs cur_target="10.4" -@@ -2508,7 +2552,7 @@ +@@ -2526,7 +2570,7 @@ if test "${enable_universalsdk}"; then : else @@ -98,7 +100,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac fi LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -install_name $(PYTHONFRAMEWORKINSTALLDIR)/Versions/$(VERSION)/$(PYTHONFRAMEWORK)' LIBTOOL_CRUFT=$LIBTOOL_CRUFT' -compatibility_version $(VERSION) -current_version $(VERSION)';; -@@ -2533,7 +2577,7 @@ +@@ -2551,7 +2595,7 @@ ]])],[ac_osx_32bit=yes],[ac_osx_32bit=no],[ac_osx_32bit=yes]) if test "${ac_osx_32bit}" = "yes"; then @@ -107,7 +109,7 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac i386) MACOSX_DEFAULT_ARCH="i386" ;; -@@ -2545,7 +2589,7 @@ +@@ -2563,7 +2607,7 @@ ;; esac else diff --git a/mingw-w64-python3/0520-py3k-mingw-ntthreads-vs-pthreads.patch b/mingw-w64-python3/0520-py3k-mingw-ntthreads-vs-pthreads.patch index 51daf7fc90..24c444f86e 100644 --- a/mingw-w64-python3/0520-py3k-mingw-ntthreads-vs-pthreads.patch +++ b/mingw-w64-python3/0520-py3k-mingw-ntthreads-vs-pthreads.patch @@ -1,9 +1,9 @@ -diff -Naur Python-3.7.0-orig/Include/internal/condvar.h Python-3.7.0/Include/internal/condvar.h ---- Python-3.7.0-orig/Include/internal/condvar.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/internal/condvar.h 2018-07-12 10:21:43.180791900 +0300 -@@ -1,6 +1,12 @@ - #ifndef Py_INTERNAL_CONDVAR_H - #define Py_INTERNAL_CONDVAR_H +diff -Naur Python-3.8.0-orig/Include/internal/pycore_condvar.h Python-3.8.0/Include/internal/pycore_condvar.h +--- Python-3.8.0-orig/Include/internal/pycore_condvar.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/internal/pycore_condvar.h 2019-10-22 10:02:30.231300600 +0300 +@@ -5,6 +5,12 @@ + # error "this header requires Py_BUILD_CORE define" + #endif +#ifdef __MINGW32__ +# if !defined(HAVE_PTHREAD_H) || defined(NT_THREADS) @@ -14,7 +14,7 @@ diff -Naur Python-3.7.0-orig/Include/internal/condvar.h Python-3.7.0/Include/int #ifndef _POSIX_THREADS /* This means pthreads are not implemented in libc headers, hence the macro not present in unistd.h. But they still can be implemented as an external -@@ -33,6 +39,10 @@ +@@ -37,6 +43,10 @@ /* include windows if it hasn't been done before */ #define WIN32_LEAN_AND_MEAN #include @@ -25,9 +25,9 @@ diff -Naur Python-3.7.0-orig/Include/internal/condvar.h Python-3.7.0/Include/int /* options */ /* non-emulated condition variables are provided for those that want -diff -Naur Python-3.7.0-orig/Include/pythread.h Python-3.7.0/Include/pythread.h ---- Python-3.7.0-orig/Include/pythread.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/pythread.h 2018-07-12 10:21:43.165191900 +0300 +diff -Naur Python-3.8.0-orig/Include/pythread.h Python-3.8.0/Include/pythread.h +--- Python-3.8.0-orig/Include/pythread.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/pythread.h 2019-10-22 10:02:30.652501400 +0300 @@ -9,6 +9,12 @@ extern "C" { #endif diff --git a/mingw-w64-python3/0530-mingw-system-libffi.patch b/mingw-w64-python3/0530-mingw-system-libffi.patch index 446ecfdf73..be9ca93b68 100644 --- a/mingw-w64-python3/0530-mingw-system-libffi.patch +++ b/mingw-w64-python3/0530-mingw-system-libffi.patch @@ -1,14 +1,14 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:34.569576800 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:44.834394800 +0300 -@@ -1967,6 +1967,10 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:02:14.974473800 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:02:33.866107000 +0300 +@@ -2030,6 +2030,10 @@ return True def configure_ctypes(self, ext): -+ if host_platform == 'win32': ++ if MS_WINDOWS: + ext.libraries.extend(['ole32', 'oleaut32', 'uuid']) + ext.export_symbols.extend(['DllGetClassObject PRIVATE', + 'DllCanUnloadNow PRIVATE']) if not self.use_system_libffi: - if host_platform == 'darwin': + if MACOS: return self.configure_ctypes_darwin(ext) diff --git a/mingw-w64-python3/0555-msys-mingw-prefer-unix-sep-if-MSYSTEM.patch b/mingw-w64-python3/0555-msys-mingw-prefer-unix-sep-if-MSYSTEM.patch index 5639069ebe..0c20d2064d 100644 --- a/mingw-w64-python3/0555-msys-mingw-prefer-unix-sep-if-MSYSTEM.patch +++ b/mingw-w64-python3/0555-msys-mingw-prefer-unix-sep-if-MSYSTEM.patch @@ -1,9 +1,9 @@ -diff -Naur Python-3.7.0-orig/Include/pylifecycle.h Python-3.7.0/Include/pylifecycle.h ---- Python-3.7.0-orig/Include/pylifecycle.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/pylifecycle.h 2018-07-12 10:21:46.643998000 +0300 -@@ -36,6 +36,12 @@ - - #endif +diff -Naur Python-3.8.0-orig/Include/pylifecycle.h Python-3.8.0/Include/pylifecycle.h +--- Python-3.8.0-orig/Include/pylifecycle.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/pylifecycle.h 2019-10-22 10:02:36.752112100 +0300 +@@ -21,6 +21,12 @@ + PyAPI_FUNC(PyThreadState *) Py_NewInterpreter(void); + PyAPI_FUNC(void) Py_EndInterpreter(PyThreadState *); +PyAPI_FUNC(wchar_t) Py_GetSepW(const wchar_t *); +PyAPI_FUNC(char) Py_GetSepA(const char *); @@ -12,11 +12,11 @@ diff -Naur Python-3.7.0-orig/Include/pylifecycle.h Python-3.7.0/Include/pylifecy +PyAPI_FUNC(void) Py_NormalizeSepsA(char *); + - PyAPI_FUNC(void) Py_SetProgramName(const wchar_t *); - PyAPI_FUNC(wchar_t *) Py_GetProgramName(void); -diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py ---- Python-3.7.0-orig/Lib/ntpath.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/ntpath.py 2018-07-12 10:21:46.643998000 +0300 + /* Py_PyAtExit is for the atexit module, Py_AtExit is for low-level + * exit functions. +diff -Naur Python-3.8.0-orig/Lib/ntpath.py Python-3.8.0/Lib/ntpath.py +--- Python-3.8.0-orig/Lib/ntpath.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/ntpath.py 2019-10-22 10:02:37.157712800 +0300 @@ -11,9 +11,7 @@ curdir = '.' pardir = '..' @@ -61,31 +61,31 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py +def _get_altsep(path): + if isinstance(path, bytes): + return baltsep - else: -- return '\\/' ++ else: + return altsep + +def _get_colon(path): + if isinstance(path, bytes): + return b':' -+ else: + else: +- return '\\/' + return ':' # Normalize the case of a pathname and map slashes to backslashes. # Other normalizations (such as optimizing '../' away) are not done -@@ -48,9 +73,9 @@ +@@ -47,9 +72,9 @@ + Makes all characters lowercase and all slashes into backslashes.""" s = os.fspath(s) - try: - if isinstance(s, bytes): -- return s.replace(b'/', b'\\').lower() -+ return s.replace(baltsep, bsep).lower() - else: -- return s.replace('/', '\\').lower() -+ return s.replace(altsep, sep).lower() - except (TypeError, AttributeError): - if not isinstance(s, (bytes, str)): - raise TypeError("normcase() argument must be str or bytes, " -@@ -74,14 +99,9 @@ + if isinstance(s, bytes): +- return s.replace(b'/', b'\\').lower() ++ return s.replace(baltsep, bsep).lower() + else: +- return s.replace('/', '\\').lower() ++ return s.replace(altsep, sep).lower() + + + # Return whether a path is absolute. +@@ -68,14 +93,9 @@ # Join two (or more) paths. def join(path, *paths): path = os.fspath(path) @@ -103,7 +103,7 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py try: if not paths: path[:0] + sep #23780: Ensure compatible data type even if p is null. -@@ -140,14 +160,9 @@ +@@ -134,14 +154,9 @@ """ p = os.fspath(p) if len(p) >= 2: @@ -121,7 +121,7 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py normp = p.replace(altsep, sep) if (normp[0:2] == sep*2) and (normp[2:3] != sep): # is a UNC path: -@@ -201,9 +216,9 @@ +@@ -195,9 +210,9 @@ def splitext(p): p = os.fspath(p) if isinstance(p, bytes): @@ -133,7 +133,7 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py splitext.__doc__ = genericpath._splitext.__doc__ -@@ -450,15 +465,13 @@ +@@ -442,15 +457,13 @@ def normpath(path): """Normalize path, eliminating double slashes, etc.""" path = os.fspath(path) @@ -151,7 +151,7 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py curdir = '.' pardir = '..' special_prefixes = ('\\\\.\\', '\\\\?\\') -@@ -538,12 +551,11 @@ +@@ -645,12 +658,11 @@ def relpath(path, start=None): """Return a relative version of a path""" path = os.fspath(path) @@ -165,7 +165,7 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py curdir = '.' pardir = '..' -@@ -598,13 +610,11 @@ +@@ -705,13 +717,11 @@ raise ValueError('commonpath() arg is an empty sequence') paths = tuple(map(os.fspath, paths)) @@ -181,39 +181,18 @@ diff -Naur Python-3.7.0-orig/Lib/ntpath.py Python-3.7.0/Lib/ntpath.py curdir = '.' try: -diff -Naur Python-3.7.0-orig/Modules/main.c Python-3.7.0/Modules/main.c ---- Python-3.7.0-orig/Modules/main.c 2018-07-12 10:21:22.900756300 +0300 -+++ Python-3.7.0/Modules/main.c 2018-07-12 10:21:46.659598000 +0300 -@@ -26,7 +26,7 @@ - # include - #endif - --#if defined(MS_WINDOWS) -+#if defined(_MSC_VER) - # define PYTHONHOMEHELP "\\python{major}{minor}" - #else - # define PYTHONHOMEHELP "/lib/pythonX.X" -@@ -1197,7 +1197,7 @@ +diff -Naur Python-3.8.0-orig/Modules/posixmodule.c Python-3.8.0/Modules/posixmodule.c +--- Python-3.8.0-orig/Modules/posixmodule.c 2019-10-22 10:00:56.988936800 +0300 ++++ Python-3.8.0/Modules/posixmodule.c 2019-10-22 10:02:37.547713500 +0300 +@@ -3438,6 +3438,7 @@ + return PyErr_SetFromWindowsErr(0); } - /* Last fall back: hardcoded string */ --#ifdef MS_WINDOWS -+#ifdef _MSC_VER - const wchar_t *default_program_name = L"python"; - #else - const wchar_t *default_program_name = L"python3"; -diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmodule.c ---- Python-3.7.0-orig/Modules/posixmodule.c 2018-07-12 10:20:55.335507900 +0300 -+++ Python-3.7.0/Modules/posixmodule.c 2018-07-12 10:21:46.659598000 +0300 -@@ -3288,6 +3288,7 @@ - PyMem_RawFree(wbuf2); - return PyErr_SetFromWindowsErr(0); - } -+ Py_NormalizeSepsW(wbuf2); - resobj = PyUnicode_FromWideChar(wbuf2, len); - if (wbuf2 != wbuf) - PyMem_RawFree(wbuf2); -@@ -3717,6 +3718,7 @@ ++ Py_NormalizeSepsW(wbuf2); + PyObject *resobj = PyUnicode_FromWideChar(wbuf2, len); + if (wbuf2 != wbuf) { + PyMem_RawFree(wbuf2); +@@ -3886,6 +3887,7 @@ result = GetFullPathNameW(path->wide, result, woutbufp, &wtemp); } if (result) { @@ -221,18 +200,39 @@ diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmod v = PyUnicode_FromWideChar(woutbufp, wcslen(woutbufp)); if (path->narrow) Py_SETREF(v, PyUnicode_EncodeFSDefault(v)); -@@ -3793,6 +3795,7 @@ +@@ -3962,6 +3964,7 @@ target_path = tmp; } + Py_NormalizeSepsW(target_path); result = PyUnicode_FromWideChar(target_path, result_length); - if (path->narrow) + if (result && path->narrow) { Py_SETREF(result, PyUnicode_EncodeFSDefault(result)); -diff -Naur Python-3.7.0-orig/Python/pathconfig.c Python-3.7.0/Python/pathconfig.c ---- Python-3.7.0-orig/Python/pathconfig.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/pathconfig.c 2018-07-12 10:21:46.675198100 +0300 -@@ -9,6 +9,114 @@ +diff -Naur Python-3.8.0-orig/Python/initconfig.c Python-3.8.0/Python/initconfig.c +--- Python-3.8.0-orig/Python/initconfig.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/initconfig.c 2019-10-22 10:02:37.968914200 +0300 +@@ -98,7 +98,7 @@ + "PYTHONDEVMODE: enable the development mode.\n" + "PYTHONPYCACHEPREFIX: root directory for bytecode cache (pyc) files.\n"; + +-#if defined(MS_WINDOWS) ++#if defined(_MSC_VER) + # define PYTHONHOMEHELP "\\python{major}{minor}" + #else + # define PYTHONHOMEHELP "/lib/pythonX.X" +@@ -1129,7 +1129,7 @@ + } + + /* Last fall back: hardcoded name */ +-#ifdef MS_WINDOWS ++#ifdef _MSC_VER + const wchar_t *default_program_name = L"python"; + #else + const wchar_t *default_program_name = L"python3"; +diff -Naur Python-3.8.0-orig/Python/pathconfig.c Python-3.8.0/Python/pathconfig.c +--- Python-3.8.0-orig/Python/pathconfig.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/pathconfig.c 2019-10-22 10:02:38.358914900 +0300 +@@ -13,6 +13,114 @@ extern "C" { #endif @@ -346,19 +346,19 @@ diff -Naur Python-3.7.0-orig/Python/pathconfig.c Python-3.7.0/Python/pathconfig. +} _PyPathConfig _Py_path_config = _PyPathConfig_INIT; - -@@ -202,6 +310,7 @@ + #ifdef MS_WINDOWS +@@ -560,6 +668,7 @@ if (_Py_path_config.program_name == NULL) { Py_FatalError("Py_SetProgramName() failed: out of memory"); } + Py_NormalizeSepsW(_Py_path_config.program_name); } - -diff -Naur Python-3.7.0-orig/Python/traceback.c Python-3.7.0/Python/traceback.c ---- Python-3.7.0-orig/Python/traceback.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/traceback.c 2018-07-12 10:21:46.675198100 +0300 -@@ -303,7 +303,7 @@ + void +diff -Naur Python-3.8.0-orig/Python/traceback.c Python-3.8.0/Python/traceback.c +--- Python-3.8.0-orig/Python/traceback.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/traceback.c 2019-10-22 10:02:39.170116300 +0300 +@@ -315,7 +315,7 @@ filepath = PyBytes_AS_STRING(filebytes); /* Search tail of filename in sys.path before giving up */ @@ -367,14 +367,3 @@ diff -Naur Python-3.7.0-orig/Python/traceback.c Python-3.7.0/Python/traceback.c if (tail == NULL) tail = filepath; else -@ -337,8 +337,8 @@ - Py_DECREF(path); - if (strlen(namebuf) != (size_t)len) - continue; /* v contains '\0' */ -- if (len > 0 && namebuf[len-1] != SEP) -- namebuf[len++] = SEP; -+ if (len > 0 && namebuf[len-1] != Py_GetSepA(NULL)) -+ namebuf[len++] = Py_GetSepA(NULL); - strcpy(namebuf+len, tail); - - binary = _PyObject_CallMethodId(io, &PyId_open, "ss", namebuf, "rb"); diff --git a/mingw-w64-python3/0560-mingw-use-posix-getpath.patch b/mingw-w64-python3/0560-mingw-use-posix-getpath.patch index fcda33052d..b108e3e37a 100644 --- a/mingw-w64-python3/0560-mingw-use-posix-getpath.patch +++ b/mingw-w64-python3/0560-mingw-use-posix-getpath.patch @@ -1,32 +1,19 @@ -diff -Naur Python-3.7.0-orig/Include/internal/pystate.h Python-3.7.0/Include/internal/pystate.h ---- Python-3.7.0-orig/Include/internal/pystate.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/internal/pystate.h 2018-07-12 10:21:48.703201600 +0300 -@@ -43,7 +43,8 @@ - wchar_t *prefix; - #ifdef MS_WINDOWS - wchar_t *dll_path; --#else -+#endif -+#ifndef _MSC_VER - wchar_t *exec_prefix; - #endif - /* Set by Py_SetPath(), or computed by _PyPathConfig_Init() */ -diff -Naur Python-3.7.0-orig/Include/pylifecycle.h Python-3.7.0/Include/pylifecycle.h ---- Python-3.7.0-orig/Include/pylifecycle.h 2018-07-12 10:21:48.141600600 +0300 -+++ Python-3.7.0/Include/pylifecycle.h 2018-07-12 10:21:48.718801700 +0300 -@@ -131,7 +131,7 @@ - size_t value_size); - #endif +diff -Naur Python-3.8.0-orig/Include/pylifecycle.h Python-3.8.0/Include/pylifecycle.h +--- Python-3.8.0-orig/Include/pylifecycle.h 2019-10-22 10:02:41.276120000 +0300 ++++ Python-3.8.0/Include/pylifecycle.h 2019-10-22 10:02:44.427325500 +0300 +@@ -53,7 +53,7 @@ + PyAPI_FUNC(wchar_t *) Py_GetExecPrefix(void); + PyAPI_FUNC(wchar_t *) Py_GetPath(void); PyAPI_FUNC(void) Py_SetPath(const wchar_t *); -#ifdef MS_WINDOWS +#ifdef _MSC_VER int _Py_CheckPython3(void); #endif -diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c ---- Python-3.7.0-orig/Modules/getpath.c 2018-07-12 10:21:48.157200700 +0300 -+++ Python-3.7.0/Modules/getpath.c 2018-07-12 10:21:48.734401700 +0300 -@@ -11,6 +11,11 @@ +diff -Naur Python-3.8.0-orig/Modules/getpath.c Python-3.8.0/Modules/getpath.c +--- Python-3.8.0-orig/Modules/getpath.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/getpath.c 2019-10-22 10:02:44.848526300 +0300 +@@ -14,6 +14,11 @@ # include #endif @@ -38,7 +25,13 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c /* Search in some common locations for the associated Python libraries. * * Two directories must be found, the platform independent directory -@@ -131,8 +136,33 @@ +@@ -132,13 +137,39 @@ + int prefix_found; /* found platform independent libraries? */ + int exec_prefix_found; /* found the platform dependent libraries? */ + ++ wchar_t *dll_path; + int warnings; + const wchar_t *pythonpath_env; } PyCalculatePath; static const wchar_t delimiter[2] = {DELIM, '\0'}; @@ -56,7 +49,7 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c +} + +static int -+is_absolute(wchar_t *path) ++is_absolute(const wchar_t *path) +{ +#ifdef _WIN32 + size_t i = wcslen(path); @@ -73,76 +66,77 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c /* Get file status. Encode the path to the locale encoding. */ static int -@@ -155,7 +185,7 @@ +@@ -161,7 +192,7 @@ reduce(wchar_t *dir) { size_t i = wcslen(dir); -- while (i > 0 && dir[i] != SEP) -+ while (i > 0 && !is_sep(dir[i])) +- while (i > 0 && dir[i] != SEP) { ++ while (i > 0 && !is_sep(dir[i])) { --i; + } dir[i] = '\0'; - } -@@ -239,13 +269,13 @@ - joinpath(wchar_t *buffer, wchar_t *stuff) +@@ -241,14 +272,14 @@ + joinpath(wchar_t *buffer, const wchar_t *stuff, size_t buflen) { size_t n, k; -- if (stuff[0] == SEP) { -+ if (is_sep(stuff[0])) { - n = 0; - } - else { +- if (stuff[0] != SEP) { ++ if (!is_sep(stuff[0])) { n = wcslen(buffer); -- if (n > 0 && buffer[n-1] != SEP && n < MAXPATHLEN) { + if (n >= buflen) { + return PATHLEN_ERR(); + } + +- if (n > 0 && buffer[n-1] != SEP) { - buffer[n++] = SEP; -+ if (n > 0 && !is_sep(buffer[n-1]) && n < MAXPATHLEN) { ++ if (n > 0 && !is_sep(buffer[n-1]) != SEP) { + buffer[n++] = Py_GetSepW(buffer); } } - if (n > MAXPATHLEN) { -@@ -265,7 +295,7 @@ - static void - copy_absolute(wchar_t *path, wchar_t *p, size_t pathlen) + else { +@@ -284,7 +315,7 @@ + static PyStatus + copy_absolute(wchar_t *path, const wchar_t *p, size_t pathlen) { - if (p[0] == SEP) { + if (is_absolute(p)) { - wcscpy(path, p); - } - else { -@@ -274,7 +304,7 @@ - wcscpy(path, p); - return; + if (safe_wcscpy(path, p, pathlen) < 0) { + return PATHLEN_ERR(); + } +@@ -297,7 +328,7 @@ + } + return _PyStatus_OK(); } - if (p[0] == '.' && p[1] == SEP) { + if (p[0] == '.' && is_sep(p[1])) { p += 2; } - joinpath(path, p); -@@ -288,7 +318,7 @@ + PyStatus status = joinpath(path, p, pathlen); +@@ -313,7 +344,7 @@ + static PyStatus + absolutize(wchar_t *path, size_t path_len) { - wchar_t buffer[MAXPATHLEN+1]; - - if (path[0] == SEP) { + if (is_absolute(path)) { - return; + return _PyStatus_OK(); } - copy_absolute(buffer, path, MAXPATHLEN+1); -@@ -323,6 +353,7 @@ - wcsncpy(prefix, calculate->argv0_path, MAXPATHLEN); - prefix[MAXPATHLEN] = L'\0'; - joinpath(prefix, L"Modules/Setup"); -+ Py_NormalizeSepsW(prefix); - if (isfile(prefix)) { - /* Check VPATH to see if argv0_path is in the build directory. */ - vpath = Py_DecodeLocale(VPATH, NULL); -@@ -333,6 +364,7 @@ - PyMem_RawFree(vpath); - joinpath(prefix, L"Lib"); - joinpath(prefix, LANDMARK); -+ Py_NormalizeSepsW(prefix); - if (ismodule(prefix)) { - return -1; + +@@ -403,6 +434,7 @@ + return status; + } + ++ Py_NormalizeSepsW(path); + if (isfile(path)) { + /* Check VPATH to see if argv0_path is in the build directory. + VPATH can be empty. */ +@@ -427,6 +459,7 @@ + return status; } -@@ -394,12 +426,21 @@ + ++ Py_NormalizeSepsW(prefix); + if (ismodule(prefix, prefix_len)) { + *found = -1; + reduce(prefix); +@@ -529,12 +562,21 @@ * return the compiled-in defaults instead. */ if (calculate->prefix_found > 0) { @@ -162,26 +156,26 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c wcscpy(prefix, separator); +#endif } + pathconfig->prefix = _PyMem_RawWcsdup(prefix); } - else { -@@ -454,6 +495,7 @@ - wcsncpy(exec_prefix, calculate->argv0_path, MAXPATHLEN); - exec_prefix[MAXPATHLEN] = L'\0'; - joinpath(exec_prefix, rel_builddir_path); -+ Py_NormalizeSepsW(exec_prefix); - PyMem_RawFree(rel_builddir_path ); - return -1; - } -@@ -501,6 +543,7 @@ +@@ -649,6 +691,7 @@ + + /* Check for pybuilddir.txt */ + assert(*found == 0); ++ Py_NormalizeSepsW(exec_prefix); + status = calculate_pybuilddir(argv0_path, exec_prefix, exec_prefix_len, + found); + if (_PyStatus_EXCEPTION(status)) { +@@ -734,6 +777,7 @@ + if (_PyStatus_EXCEPTION(status)) { + return status; } - wcsncpy(exec_prefix, calculate->exec_prefix, MAXPATHLEN); - joinpath(exec_prefix, L"lib/lib-dynload"); + Py_NormalizeSepsW(exec_prefix); } /* If we found EXEC_PREFIX do *not* reduce it! (Yet.) */ - } -@@ -510,11 +553,20 @@ - calculate_reduce_exec_prefix(PyCalculatePath *calculate, wchar_t *exec_prefix) + return _PyStatus_OK(); +@@ -746,11 +790,20 @@ + wchar_t *exec_prefix) { if (calculate->exec_prefix_found > 0) { +#ifdef _WIN32 @@ -199,9 +193,9 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c wcscpy(exec_prefix, separator); +#endif } - } - else { -@@ -523,6 +575,52 @@ + + pathconfig->exec_prefix = _PyMem_RawWcsdup(exec_prefix); +@@ -767,6 +820,48 @@ } @@ -223,8 +217,8 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c +} + + -+static _PyInitError -+get_dll_path(_PyPathConfig *config) ++wchar_t* ++_Py_GetDLLPath(void) +{ + wchar_t dll_path[MAXPATHLEN+1]; + memset(dll_path, 0, sizeof(dll_path)); @@ -242,28 +236,24 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c + dll_path[0] = 0; +#endif + -+ config->dll_path = _PyMem_RawWcsdup(dll_path); -+ if (config->dll_path == NULL) { -+ return _Py_INIT_NO_MEMORY(); -+ } -+ return _Py_INIT_OK(); ++ return _PyMem_RawWcsdup(dll_path); +} +#endif /* MS_WINDOWS */ + + - static _PyInitError - calculate_program_full_path(const _PyCoreConfig *core_config, - PyCalculatePath *calculate, _PyPathConfig *config) -@@ -544,7 +642,7 @@ + static PyStatus + calculate_program_full_path(PyCalculatePath *calculate, _PyPathConfig *pathconfig) + { +@@ -789,7 +884,7 @@ * other way to find a directory to start the search from. If * $PATH isn't exported, you lose. */ -- if (wcschr(core_config->program_name, SEP)) { -+ if (wcschr(core_config->program_name, Py_GetSepW(core_config->program_name))) { - wcsncpy(program_full_path, core_config->program_name, MAXPATHLEN); - } - #ifdef __APPLE__ -@@ -570,6 +668,10 @@ +- if (wcschr(pathconfig->program_name, SEP)) { ++ if (wcschr(pathconfig->program_name, Py_GetSepW(pathconfig->program_name))) { + if (safe_wcscpy(program_full_path, pathconfig->program_name, + program_full_path_len) < 0) { + return PATHLEN_ERR(); +@@ -821,6 +916,10 @@ PyMem_RawFree(path); } #endif /* __APPLE__ */ @@ -274,24 +264,24 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c else if (calculate->path_env) { wchar_t *path = calculate->path_env; while (1) { -@@ -602,7 +704,7 @@ +@@ -861,7 +960,7 @@ else { program_full_path[0] = '\0'; } - if (program_full_path[0] != SEP && program_full_path[0] != '\0') { + if (!is_absolute(program_full_path)) { - absolutize(program_full_path); + status = absolutize(program_full_path, program_full_path_len); + if (_PyStatus_EXCEPTION(status)) { + return status; +@@ -1071,6 +1170,7 @@ + if (_PyStatus_EXCEPTION(status)) { + return status; } - -@@ -743,6 +845,7 @@ - wcsncpy(calculate->zip_path, calculate->prefix, MAXPATHLEN); - } - joinpath(calculate->zip_path, L"lib/python00.zip"); -+ Py_NormalizeSepsW(calculate->zip_path); ++ Py_NormalizeSepsW(zip_path); /* Replace "00" with version */ - size_t bufsz = wcslen(calculate->zip_path); -@@ -768,7 +871,7 @@ + size_t bufsz = wcslen(zip_path); +@@ -1098,7 +1198,7 @@ while (1) { wchar_t *delim = wcschr(defpath, DELIM); @@ -300,22 +290,19 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c /* Paths are relative to prefix */ bufsz += prefixsz; } -@@ -785,6 +888,14 @@ +@@ -1115,6 +1215,11 @@ - bufsz += wcslen(calculate->zip_path) + 1; + bufsz += wcslen(zip_path) + 1; bufsz += wcslen(exec_prefix) + 1; +#ifdef MS_WINDOWS + if (is_absolute(prefix)) { + bufsz += wcslen(prefix) + 1; + } -+ if (is_absolute(calculate->argv0_path)) { -+ bufsz += wcslen(calculate->argv0_path) + 1; -+ } +#endif /* Allocate the buffer */ wchar_t *buf = PyMem_RawMalloc(bufsz * sizeof(wchar_t)); -@@ -810,9 +921,9 @@ +@@ -1140,9 +1245,9 @@ while (1) { wchar_t *delim = wcschr(defpath, DELIM); @@ -327,7 +314,7 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c defpath[0] != (delim ? DELIM : L'\0')) { /* not empty */ -@@ -833,6 +944,16 @@ +@@ -1163,6 +1268,12 @@ defpath = delim + 1; } wcscat(buf, delimiter); @@ -336,19 +323,16 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c + wcscat(buf, prefix); + wcscat(buf, delimiter); + } -+ if (is_absolute(calculate->argv0_path)) { -+ wcscat(buf, calculate->argv0_path); -+ wcscat(buf, delimiter); -+ } +#endif /* Finally, on goes the directory for dynamic-load modules */ wcscat(buf, exec_prefix); -@@ -859,15 +980,19 @@ +@@ -1188,16 +1299,20 @@ if (!calculate->pythonpath) { return DECODE_LOCALE_ERR("PYTHONPATH define", len); } + Py_NormalizeSepsW(calculate->pythonpath); + calculate->prefix = Py_DecodeLocale(PREFIX, &len); if (!calculate->prefix) { return DECODE_LOCALE_ERR("PREFIX define", len); @@ -365,32 +349,35 @@ diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c if (!calculate->lib_python) { return DECODE_LOCALE_ERR("EXEC_PREFIX define", len); } -@@ -892,6 +1017,13 @@ +@@ -1215,6 +1330,7 @@ + PyMem_RawFree(calculate->pythonpath); + PyMem_RawFree(calculate->prefix); + PyMem_RawFree(calculate->exec_prefix); ++ PyMem_RawFree(calculate->dll_path); + PyMem_RawFree(calculate->lib_python); + PyMem_RawFree(calculate->path_env); + } +@@ -1225,6 +1341,8 @@ { - _PyInitError err; + PyStatus status; -+#ifdef MS_WINDOWS -+ err = get_dll_path(config); -+ if (_Py_INIT_FAILED(err)) { -+ return err; -+ } -+#endif ++ calculate->dll_path = _Py_GetDLLPath(); + - err = calculate_program_full_path(core_config, calculate, config); - if (_Py_INIT_FAILED(err)) { - return err; -@@ -949,6 +1106,7 @@ - _PyPathConfig_Calculate(_PyPathConfig *config, const _PyCoreConfig *core_config) + if (pathconfig->program_full_path == NULL) { + status = calculate_program_full_path(calculate, pathconfig); + if (_PyStatus_EXCEPTION(status)) { +@@ -1343,6 +1461,7 @@ { + PyStatus status; PyCalculatePath calculate; + separator[0] = Py_GetSepW(NULL); memset(&calculate, 0, sizeof(calculate)); - _PyInitError err = calculate_init(&calculate, core_config); -diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmodule.c ---- Python-3.7.0-orig/Modules/posixmodule.c 2018-07-12 10:21:48.204000700 +0300 -+++ Python-3.7.0/Modules/posixmodule.c 2018-07-12 10:21:48.765601700 +0300 -@@ -3526,7 +3526,7 @@ + status = calculate_init(&calculate, config); +diff -Naur Python-3.8.0-orig/Modules/posixmodule.c Python-3.8.0/Modules/posixmodule.c +--- Python-3.8.0-orig/Modules/posixmodule.c 2019-10-22 10:02:42.087321400 +0300 ++++ Python-3.8.0/Modules/posixmodule.c 2019-10-22 10:02:45.238527000 +0300 +@@ -3691,7 +3691,7 @@ Py_END_ALLOW_THREADS /* FindNextFile sets error to ERROR_NO_MORE_FILES if it got to the end of the directory. */ @@ -399,10 +386,10 @@ diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmod Py_DECREF(list); list = path_error(path); goto exit; -diff -Naur Python-3.7.0-orig/Python/dynload_win.c Python-3.7.0/Python/dynload_win.c ---- Python-3.7.0-orig/Python/dynload_win.c 2018-07-12 10:21:08.969931800 +0300 -+++ Python-3.7.0/Python/dynload_win.c 2018-07-12 10:21:48.781201800 +0300 -@@ -202,7 +202,7 @@ +diff -Naur Python-3.8.0-orig/Python/dynload_win.c Python-3.8.0/Python/dynload_win.c +--- Python-3.8.0-orig/Python/dynload_win.c 2019-10-22 10:01:24.710185500 +0300 ++++ Python-3.8.0/Python/dynload_win.c 2019-10-22 10:02:45.644127700 +0300 +@@ -180,7 +180,7 @@ char funcname[258], *import_python; const wchar_t *wpathname; @@ -411,35 +398,3 @@ diff -Naur Python-3.7.0-orig/Python/dynload_win.c Python-3.7.0/Python/dynload_wi _Py_CheckPython3(); #endif -diff -Naur Python-3.7.0-orig/Python/pathconfig.c Python-3.7.0/Python/pathconfig.c ---- Python-3.7.0-orig/Python/pathconfig.c 2018-07-12 10:21:48.235200800 +0300 -+++ Python-3.7.0/Python/pathconfig.c 2018-07-12 10:21:48.796801800 +0300 -@@ -140,7 +140,8 @@ - CLEAR(config->program_full_path); - #ifdef MS_WINDOWS - CLEAR(config->dll_path); --#else -+#endif -+#ifndef _MSC_VER - CLEAR(config->exec_prefix); - #endif - CLEAR(config->module_search_path); -@@ -253,7 +254,8 @@ - new_config.prefix = _PyMem_RawWcsdup(L""); - #ifdef MS_WINDOWS - new_config.dll_path = _PyMem_RawWcsdup(L""); --#else -+#endif -+#ifndef _MSC_VER - new_config.exec_prefix = _PyMem_RawWcsdup(L""); - #endif - new_config.module_search_path = _PyMem_RawWcsdup(path); -@@ -333,7 +335,7 @@ - wchar_t * - Py_GetExecPrefix(void) - { --#ifdef MS_WINDOWS -+#ifdef _MSC_VER - return Py_GetPrefix(); - #else - pathconfig_global_init(); diff --git a/mingw-w64-python3/0565-mingw-add-ModuleFileName-dir-to-PATH.patch b/mingw-w64-python3/0565-mingw-add-ModuleFileName-dir-to-PATH.patch index 64017bc3c5..3c09b265bb 100644 --- a/mingw-w64-python3/0565-mingw-add-ModuleFileName-dir-to-PATH.patch +++ b/mingw-w64-python3/0565-mingw-add-ModuleFileName-dir-to-PATH.patch @@ -1,15 +1,16 @@ ---- Python-3.7.3/Modules/getpath.c.orig 2019-03-25 21:21:05.000000000 +0100 -+++ Python-3.7.3/Modules/getpath.c 2019-04-16 21:51:06.279967700 +0200 -@@ -959,6 +1091,36 @@ - memset(exec_prefix, 0, sizeof(exec_prefix)); - calculate_exec_prefix(core_config, calculate, exec_prefix); +diff -Naur Python-3.8.0-orig/Modules/getpath.c Python-3.8.0/Modules/getpath.c +--- Python-3.8.0-orig/Modules/getpath.c 2019-10-22 10:02:47.765731400 +0300 ++++ Python-3.8.0/Modules/getpath.c 2019-10-22 10:02:49.637734700 +0300 +@@ -1393,6 +1393,36 @@ + return status; + } +#ifdef MS_WINDOWS + if (calculate->path_env) { + wchar_t *module_path, *norm_path; + // Add path of executable/dll to system path. This + // is so that the correct tcl??.dll and tk??.dll get used. -+ module_path = config->dll_path[0] ? config->dll_path : config->program_full_path; ++ module_path = calculate->dll_path[0] ? calculate->dll_path : pathconfig->program_full_path; + norm_path = (wchar_t *)alloca(sizeof(wchar_t) * (wcslen(module_path) + 1)); + if (norm_path) { + wchar_t *slashes, *end, *new_path; @@ -35,5 +36,5 @@ +#endif + if ((!calculate->prefix_found || !calculate->exec_prefix_found) && - !Py_FrozenFlag) + calculate->warnings) { diff --git a/mingw-w64-python3/0570-mingw-add-BUILDIN_WIN32_MODULEs-time-msvcrt.patch b/mingw-w64-python3/0570-mingw-add-BUILDIN_WIN32_MODULEs-time-msvcrt.patch index 8bc605a3b4..ca32a62e8e 100644 --- a/mingw-w64-python3/0570-mingw-add-BUILDIN_WIN32_MODULEs-time-msvcrt.patch +++ b/mingw-w64-python3/0570-mingw-add-BUILDIN_WIN32_MODULEs-time-msvcrt.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 2018-07-12 10:20:58.876714100 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:21:52.353608000 +0300 +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 2019-10-22 10:01:08.018156200 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:02:53.303741100 +0300 @@ -11,4 +11,5 @@ # build-in modules for windows platform: diff --git a/mingw-w64-python3/0610-msys-cygwin-semi-native-build-sysconfig.patch b/mingw-w64-python3/0610-msys-cygwin-semi-native-build-sysconfig.patch index bde290dd24..76957662b6 100644 --- a/mingw-w64-python3/0610-msys-cygwin-semi-native-build-sysconfig.patch +++ b/mingw-w64-python3/0610-msys-cygwin-semi-native-build-sysconfig.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:42.899991400 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:21:54.054011000 +0300 -@@ -585,6 +585,65 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:02:29.123698700 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:02:56.595346900 +0300 +@@ -598,6 +598,65 @@ AC_DEFINE(_INCLUDE__STDC_A1_SOURCE, 1, Define to include mbstate_t for mbrtowc) fi @@ -67,10 +67,10 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac AC_MSG_CHECKING([for init system calls]) AC_SUBST(INITSYS) case $host in -diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py ---- Python-3.7.0-orig/Lib/sysconfig.py 2018-07-12 10:21:31.340371100 +0300 -+++ Python-3.7.0/Lib/sysconfig.py 2018-07-12 10:21:54.054011000 +0300 -@@ -322,6 +322,14 @@ +diff -Naur Python-3.8.0-orig/Lib/sysconfig.py Python-3.8.0/Lib/sysconfig.py +--- Python-3.8.0-orig/Lib/sysconfig.py 2019-10-22 10:02:09.342863900 +0300 ++++ Python-3.8.0/Lib/sysconfig.py 2019-10-22 10:02:57.000947600 +0300 +@@ -329,6 +329,14 @@ if isinstance(v, str): done[k] = v.strip() @@ -85,10 +85,10 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py # save the results in the global dictionary vars.update(done) return vars -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:21:10.763935000 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:21:54.054011000 +0300 -@@ -128,6 +128,13 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:01:28.376191900 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:02:57.390948300 +0300 +@@ -137,6 +137,13 @@ # Install prefix for data files datarootdir= @datarootdir@ diff --git a/mingw-w64-python3/0620-mingw-sysconfig-like-posix.patch b/mingw-w64-python3/0620-mingw-sysconfig-like-posix.patch index 6c789d0d10..33a1a95bc5 100644 --- a/mingw-w64-python3/0620-mingw-sysconfig-like-posix.patch +++ b/mingw-w64-python3/0620-mingw-sysconfig-like-posix.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib/distutils/command/build_ext.py ---- Python-3.7.0-orig/Lib/distutils/command/build_ext.py 2018-07-12 10:21:24.694759500 +0300 -+++ Python-3.7.0/Lib/distutils/command/build_ext.py 2018-07-12 10:21:55.832414100 +0300 -@@ -220,9 +220,10 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/command/build_ext.py Python-3.8.0/Lib/distutils/command/build_ext.py +--- Python-3.8.0-orig/Lib/distutils/command/build_ext.py 2019-10-22 10:01:56.348041100 +0300 ++++ Python-3.8.0/Lib/distutils/command/build_ext.py 2019-10-22 10:03:01.072554800 +0300 +@@ -221,9 +221,10 @@ if sys.platform[:6] == 'cygwin': if sys.executable.startswith(os.path.join(sys.exec_prefix, "bin")): # building third party extensions @@ -13,10 +13,10 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib else: # building python standard extensions self.library_dirs.append('.') -diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py ---- Python-3.7.0-orig/Lib/sysconfig.py 2018-07-12 10:21:55.536013600 +0300 -+++ Python-3.7.0/Lib/sysconfig.py 2018-07-12 10:21:55.848014200 +0300 -@@ -42,23 +42,23 @@ +diff -Naur Python-3.8.0-orig/Lib/sysconfig.py Python-3.8.0/Lib/sysconfig.py +--- Python-3.8.0-orig/Lib/sysconfig.py 2019-10-22 10:02:59.528152100 +0300 ++++ Python-3.8.0/Lib/sysconfig.py 2019-10-22 10:03:01.462555500 +0300 +@@ -43,23 +43,23 @@ 'data': '{base}', }, 'nt': { @@ -53,7 +53,7 @@ diff -Naur Python-3.7.0-orig/Lib/sysconfig.py Python-3.7.0/Lib/sysconfig.py 'data': '{userbase}', }, 'posix_user': { -@@ -449,7 +449,7 @@ +@@ -461,7 +461,7 @@ vars['INCLUDEPY'] = get_path('include') vars['EXT_SUFFIX'] = '.pyd' vars['EXE'] = '.exe' diff --git a/mingw-w64-python3/0630-mingw-_winapi_as_builtin_for_Popen_in_cygwinccompiler.patch b/mingw-w64-python3/0630-mingw-_winapi_as_builtin_for_Popen_in_cygwinccompiler.patch index 064b81bf3d..72c9f610af 100644 --- a/mingw-w64-python3/0630-mingw-_winapi_as_builtin_for_Popen_in_cygwinccompiler.patch +++ b/mingw-w64-python3/0630-mingw-_winapi_as_builtin_for_Popen_in_cygwinccompiler.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:36.223179700 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:57.517217100 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:02:17.798078800 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:03:04.738561200 +0300 @@ -58,6 +58,7 @@ from distutils import log from distutils.version import LooseVersion @@ -36,26 +36,26 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/d return tuple([_find_exe_version(cmd) for cmd in commands]) def is_cygwingcc(): -diff -Naur Python-3.7.0-orig/Modules/Setup.config.in Python-3.7.0/Modules/Setup.config.in ---- Python-3.7.0-orig/Modules/Setup.config.in 2018-07-12 10:21:53.726410400 +0300 -+++ Python-3.7.0/Modules/Setup.config.in 2018-07-12 10:21:57.532817100 +0300 +diff -Naur Python-3.8.0-orig/Modules/Setup.config.in Python-3.8.0/Modules/Setup.config.in +--- Python-3.8.0-orig/Modules/Setup.config.in 2019-10-22 10:02:55.456544900 +0300 ++++ Python-3.8.0/Modules/Setup.config.in 2019-10-22 10:03:05.159762000 +0300 @@ -12,4 +12,5 @@ # build-in modules for windows platform: @USE_WIN32_MODULE@winreg ../PC/winreg.c @USE_WIN32_MODULE@msvcrt -DPy_BUILD_CORE ../PC/msvcrtmodule.c +@USE_WIN32_MODULE@_winapi _winapi.c -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:46.175997200 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:21:57.532817100 +0300 -@@ -970,7 +970,9 @@ - exts.append( Extension('msvcrt', [os.path.join(pc_srcdir, p) - for p in ['msvcrtmodule.c']]) ) +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:02:35.597710000 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:03:05.939763300 +0300 +@@ -1545,7 +1545,9 @@ + self.add(Extension('msvcrt', [os.path.join(pc_srcdir, p) + for p in ['msvcrtmodule.c']])) -- exts.append( Extension('_winapi', ['_winapi.c']) ) +- self.add(Extension('_winapi', ['_winapi.c'])) + # Added to Setup.config.in as now needed earlier since I + # use subprocess (which uses Popen) in cygwinccompiler.py -+ # exts.append( Extension('_winapi', ['_winapi.c']) ) ++ # self.add(Extension('_winapi', ['_winapi.c'])) - exts.append( Extension('_msi', [os.path.join(pc_srcdir, p) - for p in ['_msi.c']], + self.add(Extension('_msi', [os.path.join(pc_srcdir, p) + for p in ['_msi.c']], diff --git a/mingw-w64-python3/0640-mingw-x86_64-size_t-format-specifier-pid_t.patch b/mingw-w64-python3/0640-mingw-x86_64-size_t-format-specifier-pid_t.patch index babddd3f1e..d0d23f0f91 100644 --- a/mingw-w64-python3/0640-mingw-x86_64-size_t-format-specifier-pid_t.patch +++ b/mingw-w64-python3/0640-mingw-x86_64-size_t-format-specifier-pid_t.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h ---- Python-3.7.0-orig/Include/pyport.h 2018-07-12 10:21:05.491125700 +0300 -+++ Python-3.7.0/Include/pyport.h 2018-07-12 10:21:59.124019900 +0300 -@@ -156,6 +156,8 @@ +diff -Naur Python-3.8.0-orig/Include/pyport.h Python-3.8.0/Include/pyport.h +--- Python-3.8.0-orig/Include/pyport.h 2019-10-22 10:01:16.988171900 +0300 ++++ Python-3.8.0/Include/pyport.h 2019-10-22 10:03:09.574569700 +0300 +@@ -177,6 +177,8 @@ # define PY_FORMAT_SIZE_T "l" # elif defined(MS_WINDOWS) # define PY_FORMAT_SIZE_T "I" diff --git a/mingw-w64-python3/0650-cross-dont-add-multiarch-paths-if-cross-compiling.patch b/mingw-w64-python3/0650-cross-dont-add-multiarch-paths-if-cross-compiling.patch index c1ea342ec4..45aee2d6af 100644 --- a/mingw-w64-python3/0650-cross-dont-add-multiarch-paths-if-cross-compiling.patch +++ b/mingw-w64-python3/0650-cross-dont-add-multiarch-paths-if-cross-compiling.patch @@ -1,15 +1,15 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:21:58.858819500 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:00.699622700 +0300 -@@ -546,10 +546,10 @@ - if not cross_compiling: +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:03:08.498167800 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:03:12.382574600 +0300 +@@ -654,10 +654,10 @@ + if not CROSS_COMPILING: add_dir_to_list(self.compiler.library_dirs, '/usr/local/lib') add_dir_to_list(self.compiler.include_dirs, '/usr/local/include') + self.add_multiarch_paths() # only change this for cross builds for 3.3, issues on Mageia - if cross_compiling: - self.add_gcc_paths() + if CROSS_COMPILING: + self.add_cross_compiling_paths() - self.add_multiarch_paths() + self.add_ldflags_cppflags() - # Add paths specified in the environment variables LDFLAGS and - # CPPFLAGS for header and library files. + def init_inc_lib_dirs(self): diff --git a/mingw-w64-python3/0660-mingw-use-backslashes-in-compileall-py.patch b/mingw-w64-python3/0660-mingw-use-backslashes-in-compileall-py.patch index 7e825111ee..1b146b2765 100644 --- a/mingw-w64-python3/0660-mingw-use-backslashes-in-compileall-py.patch +++ b/mingw-w64-python3/0660-mingw-use-backslashes-in-compileall-py.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/compileall.py Python-3.7.0/Lib/compileall.py ---- Python-3.7.0-orig/Lib/compileall.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/compileall.py 2018-07-12 10:22:02.322025500 +0300 -@@ -40,6 +40,8 @@ +diff -Naur Python-3.8.0-orig/Lib/compileall.py Python-3.8.0/Lib/compileall.py +--- Python-3.8.0-orig/Lib/compileall.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/compileall.py 2019-10-22 10:03:15.206179600 +0300 +@@ -36,6 +36,8 @@ if name == '__pycache__': continue fullname = os.path.join(dir, name) diff --git a/mingw-w64-python3/0670-msys-convert_path-fix-and-root-hack.patch b/mingw-w64-python3/0670-msys-convert_path-fix-and-root-hack.patch index b92fe2ca4a..8785a6ee7b 100644 --- a/mingw-w64-python3/0670-msys-convert_path-fix-and-root-hack.patch +++ b/mingw-w64-python3/0670-msys-convert_path-fix-and-root-hack.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/command/install.py Python-3.7.0/Lib/distutils/command/install.py ---- Python-3.7.0-orig/Lib/distutils/command/install.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/distutils/command/install.py 2018-07-12 10:22:03.975628400 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/command/install.py Python-3.8.0/Lib/distutils/command/install.py +--- Python-3.8.0-orig/Lib/distutils/command/install.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/command/install.py 2019-10-22 10:03:18.045384600 +0300 @@ -341,7 +341,8 @@ # Convert directories from Unix /-separated syntax to the local @@ -11,10 +11,10 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/command/install.py Python-3.7.0/Lib/d 'scripts', 'data', 'headers', 'userbase', 'usersite') -diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/util.py ---- Python-3.7.0-orig/Lib/distutils/util.py 2018-07-12 10:21:24.710359500 +0300 -+++ Python-3.7.0/Lib/distutils/util.py 2018-07-12 10:22:03.991228500 +0300 -@@ -118,6 +118,13 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/util.py Python-3.8.0/Lib/distutils/util.py +--- Python-3.8.0-orig/Lib/distutils/util.py 2019-10-22 10:01:56.753641800 +0300 ++++ Python-3.8.0/Lib/distutils/util.py 2019-10-22 10:03:18.450985300 +0300 +@@ -130,6 +130,13 @@ paths.remove('.') if not paths: return os.curdir @@ -28,7 +28,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/ut return os.path.join(*paths) # convert_path () -@@ -128,6 +135,10 @@ +@@ -140,6 +147,10 @@ relative, this is equivalent to "os.path.join(new_root,pathname)". Otherwise, it requires making 'pathname' relative and then joining the two, which is tricky on DOS/Windows and Mac OS. @@ -39,7 +39,7 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/ut """ if os.name == 'posix': if not os.path.isabs(pathname): -@@ -137,9 +148,20 @@ +@@ -149,9 +160,20 @@ elif os.name == 'nt': (drive, path) = os.path.splitdrive(pathname) @@ -62,10 +62,10 @@ diff -Naur Python-3.7.0-orig/Lib/distutils/util.py Python-3.7.0/Lib/distutils/ut else: raise DistutilsPlatformError("nothing known about platform '%s'" % os.name) -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:21:55.551613700 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:22:03.991228500 +0300 -@@ -1519,6 +1519,12 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:02:59.949352800 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:03:18.840986000 +0300 +@@ -1612,6 +1612,12 @@ else true; \ fi @@ -78,7 +78,7 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in # Install the dynamically loadable modules # This goes into $(exec_prefix) sharedinstall: sharedmods -@@ -1526,9 +1532,9 @@ +@@ -1619,9 +1625,9 @@ --prefix=$(prefix) \ --install-scripts=$(BINDIR) \ --install-platlib=$(DESTSHARED) \ @@ -91,12 +91,3 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in # Here are a couple of targets for MacOSX again, to install a full # framework-based Python. frameworkinstall installs everything, the -@@ -1609,7 +1615,7 @@ - $(PYTHON_FOR_BUILD) $(srcdir)/Tools/scripts/setup.py install \ - --prefix=$(prefix) \ - --install-scripts=$(BINDIR) \ -- --root=$(DESTDIR)/ -+ --root=$(DESTDIRFINAL) - - # Build the toplevel Makefile - Makefile.pre: $(srcdir)/Makefile.pre.in config.status diff --git a/mingw-w64-python3/0690-allow-static-tcltk.patch b/mingw-w64-python3/0690-allow-static-tcltk.patch index 2dc7a4da7c..377abb8fa8 100644 --- a/mingw-w64-python3/0690-allow-static-tcltk.patch +++ b/mingw-w64-python3/0690-allow-static-tcltk.patch @@ -1,16 +1,16 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:02.025625000 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:05.722831500 +0300 -@@ -631,7 +631,7 @@ - if host_platform == 'hp-ux11': - lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32'] +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:03:14.129777700 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:03:22.475792400 +0300 +@@ -703,7 +703,7 @@ + if HOST_PLATFORM == 'hp-ux11': + self.lib_dirs += ['/usr/lib/hpux64', '/usr/lib/hpux32'] -- if host_platform == 'darwin': -+ if host_platform in ['darwin', 'mingw', 'win32']: +- if MACOS: ++ if MACOS or MS_WINDOWS: # This should work on any unixy platform ;-) # If the user has bothered specifying additional -I and -L flags # in OPT and LDFLAGS we might as well use them here. -@@ -641,6 +641,8 @@ +@@ -713,6 +713,8 @@ # directories with whitespace in the name to store libraries. cflags, ldflags = sysconfig.get_config_vars( 'CFLAGS', 'LDFLAGS') @@ -18,16 +18,16 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py + ldflags = ldflags + ' ' + ('',os.environ.get('LDSHARED'))[os.environ.get('LDSHARED') != None] for item in cflags.split(): if item.startswith('-I'): - inc_dirs.append(item[2:]) -@@ -1842,14 +1844,19 @@ + self.inc_dirs.append(item[2:]) +@@ -1907,14 +1909,19 @@ # The versions with dots are used on Unix, and the versions without # dots on Windows, for detection by cygwin. tcllib = tklib = tcl_includes = tk_includes = None - for version in ['8.6', '86', '8.5', '85', '8.4', '84', '8.3', '83', - '8.2', '82', '8.1', '81', '8.0', '80']: -- tklib = self.compiler.find_library_file(lib_dirs, +- tklib = self.compiler.find_library_file(self.lib_dirs, - 'tk' + version) -- tcllib = self.compiler.find_library_file(lib_dirs, +- tcllib = self.compiler.find_library_file(self.lib_dirs, - 'tcl' + version) - if tklib and tcllib: - # Exit the loop when we've found the Tcl/Tk libraries @@ -35,9 +35,9 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py + for suffix in ['', 's']: + for version in ['8.6', '86', '8.5', '85', '8.4', '84', '8.3', '83', + '8.2', '82', '8.1', '81', '8.0', '80', '']: -+ tklib = self.compiler.find_library_file(lib_dirs, ++ tklib = self.compiler.find_library_file(self.lib_dirs, + 'tk' + version + suffix) -+ tcllib = self.compiler.find_library_file(lib_dirs, ++ tcllib = self.compiler.find_library_file(self.lib_dirs, + 'tcl' + version + suffix) + if tklib and tcllib: + # Exit the loop when we've found the Tcl/Tk libraries @@ -47,26 +47,23 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py break # Now check for the header files -@@ -1917,13 +1924,21 @@ +@@ -1985,10 +1992,18 @@ # Add the Tcl/Tk libraries libs.append('tk'+ version) libs.append('tcl'+ version) + libs.append('tk'+ version + tcltk_suffix) + libs.append('tcl'+ version + tcltk_suffix) -+ if host_platform in ['mingw', 'win32']: ++ if MS_WINDOWS: + for winlib in ['ws2_32','gdi32','comctl32','comdlg32','imm32','uuid','oleaut32','ole32']: + libs.append( winlib ) - if host_platform in ['aix3', 'aix4']: - libs.append('ld') - # Finally, link with the X11 libraries (not appropriate on cygwin) -- if host_platform != "cygwin": +- if not CYGWIN: + # ...on those platforms, define STATIC_BUILD if linking to static tcl/tk. -+ if not host_platform in ['cygwin', 'mingw', 'win32']: ++ if not CYGWIN and not MS_WINDOWS: libs.append('X11') + elif tcllib.endswith('s.a'): + defs.append( ('STATIC_BUILD',1) ) - ext = Extension('_tkinter', ['_tkinter.c', 'tkappinit.c'], - define_macros=[('WITH_APPINIT', 1)] + defs, + # XXX handle these, but how to detect? + # *** Uncomment and edit for PIL (TkImaging) extension only: diff --git a/mingw-w64-python3/0720-mingw-pdcurses_ISPAD.patch b/mingw-w64-python3/0720-mingw-pdcurses_ISPAD.patch index 312baf7ece..e78c029252 100644 --- a/mingw-w64-python3/0720-mingw-pdcurses_ISPAD.patch +++ b/mingw-w64-python3/0720-mingw-pdcurses_ISPAD.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Include/py_curses.h Python-3.7.0/Include/py_curses.h ---- Python-3.7.0-orig/Include/py_curses.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/py_curses.h 2018-07-12 10:22:07.314034300 +0300 +diff -Naur Python-3.8.0-orig/Include/py_curses.h Python-3.8.0/Include/py_curses.h +--- Python-3.8.0-orig/Include/py_curses.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/py_curses.h 2019-10-22 10:03:25.689398000 +0300 @@ -36,6 +36,13 @@ #include #endif diff --git a/mingw-w64-python3/0740-grammar-fixes.patch b/mingw-w64-python3/0740-grammar-fixes.patch index 8d2e62dcf5..7198d9d0de 100644 --- a/mingw-w64-python3/0740-grammar-fixes.patch +++ b/mingw-w64-python3/0740-grammar-fixes.patch @@ -1,33 +1,25 @@ -diff -Naur Python-3.7.0-orig/Modules/parsermodule.c Python-3.7.0/Modules/parsermodule.c ---- Python-3.7.0-orig/Modules/parsermodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/parsermodule.c 2018-07-12 10:22:08.967637200 +0300 -@@ -42,7 +42,7 @@ - #undef Yield - #include "ast.h" +diff -Naur Python-3.8.0-orig/Python/graminit.c Python-3.8.0/Python/graminit.c +--- Python-3.8.0-orig/Python/graminit.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/graminit.c 2019-10-22 10:03:28.497403000 +0300 +@@ -1,7 +1,8 @@ + /* Generated by Parser/pgen */ + + #include "grammar.h" +-grammar _PyParser_Grammar; ++#include "pyport.h" ++PyAPI_DATA(grammar) _PyParser_Grammar; + static const arc arcs_0_0[3] = { + {2, 1}, + {3, 2}, +diff -Naur Python-3.8.0-orig/Modules/parsermodule.c Python-3.8.0/Modules/parsermodule.c +--- Python-3.8.0-orig/Modules/parsermodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/parsermodule.c 2019-10-22 10:03:28.497403000 +0300 +@@ -38,7 +38,7 @@ + #include "grammar.h" + #include "parsetok.h" -extern grammar _PyParser_Grammar; /* From graminit.c */ +PyAPI_DATA(grammar) _PyParser_Grammar; /* From graminit.c */ #ifdef lint #include -diff -Naur Python-3.7.0-orig/Parser/metagrammar.c Python-3.7.0/Parser/metagrammar.c ---- Python-3.7.0-orig/Parser/metagrammar.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Parser/metagrammar.c 2018-07-12 10:22:08.967637200 +0300 -@@ -139,7 +139,7 @@ - {7, 0}, - {8, 0}, - }; --static grammar _PyParser_Grammar = { -+static grammar _PyParser_MetaGrammar = { - 6, - dfas, - {19, labels}, -@@ -149,7 +149,7 @@ - grammar * - meta_grammar(void) - { -- return &_PyParser_Grammar; -+ return &_PyParser_MetaGrammar; - } - - grammar * diff --git a/mingw-w64-python3/0750-builddir-fixes.patch b/mingw-w64-python3/0750-builddir-fixes.patch index 7e25be548f..9544f8fa96 100644 --- a/mingw-w64-python3/0750-builddir-fixes.patch +++ b/mingw-w64-python3/0750-builddir-fixes.patch @@ -1,32 +1,32 @@ -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:22:05.442031000 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:22:10.636840100 +0300 -@@ -724,20 +724,20 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:03:21.368190400 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:03:31.336607900 +0300 +@@ -710,20 +710,20 @@ Programs/_freeze_importlib.o: Programs/_freeze_importlib.c Makefile -Programs/_freeze_importlib: Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) +Programs/_freeze_importlib$(EXE): Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) - $(LINKCC) $(PY_CORE_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) + $(LINKCC) $(PY_CORE_LDFLAGS) -o $@ Programs/_freeze_importlib.o $(LIBRARY_OBJS_OMIT_FROZEN) $(LIBS) $(MODLIBS) $(SYSLIBS) .PHONY: regen-importlib -regen-importlib: Programs/_freeze_importlib +regen-importlib: Programs/_freeze_importlib$(EXE) # Regenerate Python/importlib_external.h # from Lib/importlib/_bootstrap_external.py using _freeze_importlib -- ./Programs/_freeze_importlib \ -+ ./Programs/_freeze_importlib$(EXE) \ +- ./Programs/_freeze_importlib importlib._bootstrap_external \ ++ ./Programs/_freeze_importlib$(EXE) importlib._bootstrap_external \ $(srcdir)/Lib/importlib/_bootstrap_external.py \ $(srcdir)/Python/importlib_external.h.new $(UPDATE_FILE) $(srcdir)/Python/importlib_external.h $(srcdir)/Python/importlib_external.h.new # Regenerate Python/importlib.h from Lib/importlib/_bootstrap.py # using _freeze_importlib -- ./Programs/_freeze_importlib \ -+ ./Programs/_freeze_importlib$(EXE) \ +- ./Programs/_freeze_importlib importlib._bootstrap \ ++ ./Programs/_freeze_importlib$(EXE) importlib._bootstrap \ $(srcdir)/Lib/importlib/_bootstrap.py \ $(srcdir)/Python/importlib.h.new $(UPDATE_FILE) $(srcdir)/Python/importlib.h $(srcdir)/Python/importlib.h.new -@@ -1696,7 +1696,7 @@ +@@ -1781,7 +1781,7 @@ find build -name '*.py[co]' -exec rm -f {} ';' || true -rm -f pybuilddir.txt -rm -f Lib/lib2to3/*Grammar*.pickle @@ -35,9 +35,9 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in -find build -type f -a ! -name '*.gc??' -exec rm -f {} ';' -rm -f Include/pydtrace_probes.h -rm -f profile-gen-stamp -diff -Naur Python-3.7.0-orig/Programs/_freeze_importlib.c Python-3.7.0/Programs/_freeze_importlib.c ---- Python-3.7.0-orig/Programs/_freeze_importlib.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Programs/_freeze_importlib.c 2018-07-12 10:22:10.636840100 +0300 +diff -Naur Python-3.8.0-orig/Programs/_freeze_importlib.c Python-3.8.0/Programs/_freeze_importlib.c +--- Python-3.8.0-orig/Programs/_freeze_importlib.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Programs/_freeze_importlib.c 2019-10-22 10:03:31.757808700 +0300 @@ -20,7 +20,7 @@ {0, 0, 0} /* sentinel */ }; diff --git a/mingw-w64-python3/0760-msys-monkeypatch-os-system-via-sh-exe.patch b/mingw-w64-python3/0760-msys-monkeypatch-os-system-via-sh-exe.patch index 75cb0c2044..db89e15b76 100644 --- a/mingw-w64-python3/0760-msys-monkeypatch-os-system-via-sh-exe.patch +++ b/mingw-w64-python3/0760-msys-monkeypatch-os-system-via-sh-exe.patch @@ -1,9 +1,9 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:07.080033900 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:12.368443200 +0300 -@@ -39,6 +39,17 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:03:24.597396100 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:03:35.002614400 +0300 +@@ -38,6 +38,17 @@ return sys.platform - host_platform = get_platform() + +# On MSYS, os.system needs to be wrapped with sh.exe +# as otherwise all the io redirection will fail. @@ -16,6 +16,6 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py + return os_system(command_in_sh) + os.system = msys_system + - # Were we compiled --with-pydebug or with #define Py_DEBUG? - COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS")) - + CROSS_COMPILING = ("_PYTHON_HOST_PLATFORM" in os.environ) + HOST_PLATFORM = get_platform() + MS_WINDOWS = (HOST_PLATFORM == 'win32') diff --git a/mingw-w64-python3/0770-msys-replace-slashes-used-in-io-redirection.patch b/mingw-w64-python3/0770-msys-replace-slashes-used-in-io-redirection.patch index fd86c69646..dd264cab47 100644 --- a/mingw-w64-python3/0770-msys-replace-slashes-used-in-io-redirection.patch +++ b/mingw-w64-python3/0770-msys-replace-slashes-used-in-io-redirection.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:13.756845600 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:14.037646100 +0300 -@@ -476,7 +476,7 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:03:36.718617400 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:03:37.795019300 +0300 +@@ -563,7 +563,7 @@ # Debian/Ubuntu multiarch support. # https://wiki.ubuntu.com/MultiarchSpec cc = sysconfig.get_config_var('CC') @@ -10,25 +10,25 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) ret = os.system( -@@ -501,7 +501,7 @@ +@@ -588,7 +588,7 @@ opt = '' - if cross_compiling: + if CROSS_COMPILING: opt = '-t' + sysconfig.get_config_var('HOST_GNU_TYPE') - tmpfile = os.path.join(self.build_temp, 'multiarch') + tmpfile = os.path.join(self.build_temp, 'multiarch').replace('\\','/') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) ret = os.system( -@@ -520,7 +520,7 @@ +@@ -607,7 +607,7 @@ - def add_gcc_paths(self): - gcc = sysconfig.get_config_var('CC') -- tmpfile = os.path.join(self.build_temp, 'gccpaths') -+ tmpfile = os.path.join(self.build_temp, 'gccpaths').replace('\\','/') + def add_cross_compiling_paths(self): + cc = sysconfig.get_config_var('CC') +- tmpfile = os.path.join(self.build_temp, 'ccpaths') ++ tmpfile = os.path.join(self.build_temp, 'ccpaths').replace('\\','/') if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) - ret = os.system('%s -E -v - %s 1>/dev/null' % (gcc, tmpfile)) -@@ -811,7 +811,7 @@ + ret = os.system('%s -E -v - %s 1>/dev/null' % (cc, tmpfile)) +@@ -915,7 +915,7 @@ readline_termcap_library = "" curses_library = "" # Cannot use os.popen here in py3k. @@ -37,7 +37,7 @@ diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py if not os.path.exists(self.build_temp): os.makedirs(self.build_temp) # Determine if readline is already linked against curses or tinfo. -@@ -1801,16 +1801,16 @@ +@@ -1869,16 +1869,16 @@ cflags = sysconfig.get_config_vars('CFLAGS')[0] archs = re.findall(r'-arch\s+(\w+)', cflags) diff --git a/mingw-w64-python3/0790-mingw-add-_exec_prefix-for-tcltk-dlls.patch b/mingw-w64-python3/0790-mingw-add-_exec_prefix-for-tcltk-dlls.patch deleted file mode 100644 index 4c7c1ca36d..0000000000 --- a/mingw-w64-python3/0790-mingw-add-_exec_prefix-for-tcltk-dlls.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff -Naur Python-3.7.0-orig/Modules/getpath.c Python-3.7.0/Modules/getpath.c ---- Python-3.7.0-orig/Modules/getpath.c 2018-06-30 11:17:05.435508900 +0300 -+++ Python-3.7.0/Modules/getpath.c 2018-06-30 11:17:35.839962300 +0300 -@@ -884,6 +884,10 @@ - - bufsz += wcslen(calculate->zip_path) + 1; - bufsz += wcslen(exec_prefix) + 1; -+#ifdef MS_WINDOWS -+ if (calculate->exec_prefix) -+ bufsz += wcslen(calculate->exec_prefix) + 1; -+#endif - - /* Allocate the buffer */ - wchar_t *buf = PyMem_RawMalloc(bufsz * sizeof(wchar_t)); -@@ -931,6 +935,13 @@ - } - defpath = delim + 1; - } -+#ifdef MS_WINDOWS -+ if (calculate->exec_prefix) { -+ /* Next add bin folder where the exe was found, for System DLLs e.g. tcl86.dll, tk86.dll */ -+ wcscat(buf, delimiter); -+ wcscat(buf, calculate->exec_prefix); -+ } -+#endif - wcscat(buf, delimiter); - - /* Finally, on goes the directory for dynamic-load modules */ diff --git a/mingw-w64-python3/0800-mingw-install-layout-as-posix.patch b/mingw-w64-python3/0800-mingw-install-layout-as-posix.patch index 7224485e38..597a58b3b5 100644 --- a/mingw-w64-python3/0800-mingw-install-layout-as-posix.patch +++ b/mingw-w64-python3/0800-mingw-install-layout-as-posix.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/command/install.py Python-3.7.0/Lib/distutils/command/install.py ---- Python-3.7.0-orig/Lib/distutils/command/install.py 2018-07-12 10:22:05.442031000 +0300 -+++ Python-3.7.0/Lib/distutils/command/install.py 2018-07-12 10:22:15.769249200 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/command/install.py Python-3.8.0/Lib/distutils/command/install.py +--- Python-3.8.0-orig/Lib/distutils/command/install.py 2019-10-22 10:03:20.572589000 +0300 ++++ Python-3.8.0/Lib/distutils/command/install.py 2019-10-22 10:03:40.618624200 +0300 @@ -20,10 +20,10 @@ HAS_USER_SITE = True diff --git a/mingw-w64-python3/0810-remove_path_max.default.patch b/mingw-w64-python3/0810-remove_path_max.default.patch index ee9521c3f3..101b1921d3 100644 --- a/mingw-w64-python3/0810-remove_path_max.default.patch +++ b/mingw-w64-python3/0810-remove_path_max.default.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Include/osdefs.h Python-3.7.0/Include/osdefs.h ---- Python-3.7.0-orig/Include/osdefs.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/osdefs.h 2018-07-12 10:22:17.422852100 +0300 +diff -Naur Python-3.8.0-orig/Include/osdefs.h Python-3.8.0/Include/osdefs.h +--- Python-3.8.0-orig/Include/osdefs.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/osdefs.h 2019-10-22 10:03:43.426629200 +0300 @@ -10,7 +10,6 @@ #ifdef MS_WINDOWS #define SEP L'\\' diff --git a/mingw-w64-python3/0820-dont-link-with-gettext.patch b/mingw-w64-python3/0820-dont-link-with-gettext.patch index 4dcd7ea326..50251a2c4b 100644 --- a/mingw-w64-python3/0820-dont-link-with-gettext.patch +++ b/mingw-w64-python3/0820-dont-link-with-gettext.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:21:55.536013600 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:22:19.107655000 +0300 -@@ -3047,10 +3047,19 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:02:59.122551400 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:03:46.312634200 +0300 +@@ -3071,10 +3071,19 @@ fi # check if we need libintl for locale functions @@ -21,13 +21,13 @@ diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac # checks for system dependent C++ extensions support case "$ac_sys_system" in -diff -Naur Python-3.7.0-orig/Modules/_localemodule.c Python-3.7.0/Modules/_localemodule.c ---- Python-3.7.0-orig/Modules/_localemodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_localemodule.c 2018-07-12 10:22:19.123255100 +0300 -@@ -11,6 +11,13 @@ - +diff -Naur Python-3.8.0-orig/Modules/_localemodule.c Python-3.8.0/Modules/_localemodule.c +--- Python-3.8.0-orig/Modules/_localemodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_localemodule.c 2019-10-22 10:03:46.718235000 +0300 +@@ -12,6 +12,13 @@ #define PY_SSIZE_T_CLEAN #include "Python.h" + #include "pycore_fileutils.h" +#ifdef __MINGW32__ +/* The header libintl.h and library libintl may exist on mingw host. + * To be compatible with MSVC build we has to undef some defines. diff --git a/mingw-w64-python3/0830-ctypes-python-dll.patch b/mingw-w64-python3/0830-ctypes-python-dll.patch index 060b508dfe..ec7985102c 100644 --- a/mingw-w64-python3/0830-ctypes-python-dll.patch +++ b/mingw-w64-python3/0830-ctypes-python-dll.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/ctypes/__init__.py Python-3.7.0/Lib/ctypes/__init__.py ---- Python-3.7.0-orig/Lib/ctypes/__init__.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/ctypes/__init__.py 2018-07-12 10:22:20.870458100 +0300 -@@ -436,7 +436,9 @@ +diff -Naur Python-3.8.0-orig/Lib/ctypes/__init__.py Python-3.8.0/Lib/ctypes/__init__.py +--- Python-3.8.0-orig/Lib/ctypes/__init__.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/ctypes/__init__.py 2019-10-22 10:03:49.931840600 +0300 +@@ -449,7 +449,9 @@ cdll = LibraryLoader(CDLL) pydll = LibraryLoader(PyDLL) diff --git a/mingw-w64-python3/0840-gdbm-module-includes.patch b/mingw-w64-python3/0840-gdbm-module-includes.patch index 7dcdabbcaf..7c28266fa8 100644 --- a/mingw-w64-python3/0840-gdbm-module-includes.patch +++ b/mingw-w64-python3/0840-gdbm-module-includes.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Modules/_gdbmmodule.c Python-3.7.0/Modules/_gdbmmodule.c ---- Python-3.7.0-orig/Modules/_gdbmmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_gdbmmodule.c 2018-07-12 10:22:22.461660900 +0300 +diff -Naur Python-3.8.0-orig/Modules/_gdbmmodule.c Python-3.8.0/Modules/_gdbmmodule.c +--- Python-3.8.0-orig/Modules/_gdbmmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_gdbmmodule.c 2019-10-22 10:03:53.161046300 +0300 @@ -11,7 +11,7 @@ #include #include "gdbm.h" diff --git a/mingw-w64-python3/0850-use-gnu_printf-in-format.patch b/mingw-w64-python3/0850-use-gnu_printf-in-format.patch index 807c38db9f..f9a52548cd 100644 --- a/mingw-w64-python3/0850-use-gnu_printf-in-format.patch +++ b/mingw-w64-python3/0850-use-gnu_printf-in-format.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Include/bytesobject.h Python-3.7.0/Include/bytesobject.h ---- Python-3.7.0-orig/Include/bytesobject.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/bytesobject.h 2018-07-12 10:22:25.800066800 +0300 +diff -Naur Python-3.8.0-orig/Include/bytesobject.h Python-3.8.0/Include/bytesobject.h +--- Python-3.8.0-orig/Include/bytesobject.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/bytesobject.h 2019-10-22 10:03:56.031451300 +0300 @@ -52,9 +52,9 @@ PyAPI_FUNC(PyObject *) PyBytes_FromString(const char *); PyAPI_FUNC(PyObject *) PyBytes_FromObject(PyObject *); @@ -13,25 +13,10 @@ diff -Naur Python-3.7.0-orig/Include/bytesobject.h Python-3.7.0/Include/bytesobj PyAPI_FUNC(Py_ssize_t) PyBytes_Size(PyObject *); PyAPI_FUNC(char *) PyBytes_AsString(PyObject *); PyAPI_FUNC(PyObject *) PyBytes_Repr(PyObject *, int); -diff -Naur Python-3.7.0-orig/Include/pgenheaders.h Python-3.7.0/Include/pgenheaders.h ---- Python-3.7.0-orig/Include/pgenheaders.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/pgenheaders.h 2018-07-12 10:22:25.815666800 +0300 -@@ -10,9 +10,9 @@ - #include "Python.h" - - PyAPI_FUNC(void) PySys_WriteStdout(const char *format, ...) -- Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -+ Py_GCC_ATTRIBUTE((format(gnu_printf, 1, 2))); - PyAPI_FUNC(void) PySys_WriteStderr(const char *format, ...) -- Py_GCC_ATTRIBUTE((format(printf, 1, 2))); -+ Py_GCC_ATTRIBUTE((format(gnu_printf, 1, 2))); - - #define addarc _Py_addarc - #define addbit _Py_addbit -diff -Naur Python-3.7.0-orig/Include/pyerrors.h Python-3.7.0/Include/pyerrors.h ---- Python-3.7.0-orig/Include/pyerrors.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/pyerrors.h 2018-07-12 10:22:25.815666800 +0300 -@@ -494,9 +494,9 @@ +diff -Naur Python-3.8.0-orig/Include/pyerrors.h Python-3.8.0/Include/pyerrors.h +--- Python-3.8.0-orig/Include/pyerrors.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/pyerrors.h 2019-10-22 10:03:56.437052000 +0300 +@@ -319,9 +319,9 @@ #include PyAPI_FUNC(int) PyOS_snprintf(char *str, size_t size, const char *format, ...) @@ -41,12 +26,12 @@ diff -Naur Python-3.7.0-orig/Include/pyerrors.h Python-3.7.0/Include/pyerrors.h - Py_GCC_ATTRIBUTE((format(printf, 3, 0))); + Py_GCC_ATTRIBUTE((format(gnu_printf, 3, 0))); - #ifdef __cplusplus - } -diff -Naur Python-3.7.0-orig/Include/sysmodule.h Python-3.7.0/Include/sysmodule.h ---- Python-3.7.0-orig/Include/sysmodule.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/sysmodule.h 2018-07-12 10:22:25.815666800 +0300 -@@ -19,9 +19,9 @@ + #ifndef Py_LIMITED_API + # define Py_CPYTHON_ERRORS_H +diff -Naur Python-3.8.0-orig/Include/sysmodule.h Python-3.8.0/Include/sysmodule.h +--- Python-3.8.0-orig/Include/sysmodule.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/sysmodule.h 2019-10-22 10:03:56.858252800 +0300 +@@ -15,9 +15,9 @@ PyAPI_FUNC(void) PySys_SetPath(const wchar_t *); PyAPI_FUNC(void) PySys_WriteStdout(const char *format, ...) diff --git a/mingw-w64-python3/0870-mingw-fix-ssl-dont-use-enum_certificates.patch b/mingw-w64-python3/0870-mingw-fix-ssl-dont-use-enum_certificates.patch index 052e84c809..67498a7c3b 100644 --- a/mingw-w64-python3/0870-mingw-fix-ssl-dont-use-enum_certificates.patch +++ b/mingw-w64-python3/0870-mingw-fix-ssl-dont-use-enum_certificates.patch @@ -1,8 +1,8 @@ -diff -Naur Python-3.7.0-orig/Lib/ssl.py Python-3.7.0/Lib/ssl.py ---- Python-3.7.0-orig/Lib/ssl.py 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Lib/ssl.py 2018-07-12 10:22:27.484869700 +0300 -@@ -165,7 +165,7 @@ - MAXIMUM_SUPPORTED = _ssl.PROTO_MAXIMUM_SUPPORTED +diff -Naur Python-3.8.0-orig/Lib/ssl.py Python-3.8.0/Lib/ssl.py +--- Python-3.8.0-orig/Lib/ssl.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/ssl.py 2019-10-22 10:04:00.493059100 +0300 +@@ -249,7 +249,7 @@ + CHANGE_CIPHER_SPEC = 0x0101 -if sys.platform == "win32": @@ -10,7 +10,7 @@ diff -Naur Python-3.7.0-orig/Lib/ssl.py Python-3.7.0/Lib/ssl.py from _ssl import enum_certificates, enum_crls from socket import socket, AF_INET, SOCK_STREAM, create_connection -@@ -474,7 +474,7 @@ +@@ -569,7 +569,7 @@ def load_default_certs(self, purpose=Purpose.SERVER_AUTH): if not isinstance(purpose, _ASN1Object): raise TypeError(purpose) diff --git a/mingw-w64-python3/0890-mingw-build-optimized-ext.patch b/mingw-w64-python3/0890-mingw-build-optimized-ext.patch index fdf55ea1c2..5ba3ad4cca 100644 --- a/mingw-w64-python3/0890-mingw-build-optimized-ext.patch +++ b/mingw-w64-python3/0890-mingw-build-optimized-ext.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-07-12 10:21:58.843219400 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:22:29.122872600 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:03:07.686966400 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:04:03.316664100 +0300 @@ -305,9 +305,9 @@ raise CCompilerError( 'Cygwin gcc cannot be used with --compiler=mingw32') diff --git a/mingw-w64-python3/0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch b/mingw-w64-python3/0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch index 981c163e4b..a002f9866d 100644 --- a/mingw-w64-python3/0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch +++ b/mingw-w64-python3/0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py Python-3.7.0/Lib/distutils/cygwinccompiler.py ---- Python-3.7.0-orig/Lib/distutils/cygwinccompiler.py 2018-07-12 10:22:30.511275100 +0300 -+++ Python-3.7.0/Lib/distutils/cygwinccompiler.py 2018-07-12 10:22:30.838875600 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:04:05.048267100 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:04:06.140269100 +0300 @@ -238,7 +238,7 @@ # (On my machine: 10KiB < stripped_file < ??100KiB # unstripped_file = stripped_file + XXX KiB diff --git a/mingw-w64-python3/0910-fix-using-dllhandle-and-winver-mingw.patch b/mingw-w64-python3/0910-fix-using-dllhandle-and-winver-mingw.patch index 9c22d0bbd3..b2462b7118 100644 --- a/mingw-w64-python3/0910-fix-using-dllhandle-and-winver-mingw.patch +++ b/mingw-w64-python3/0910-fix-using-dllhandle-and-winver-mingw.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Python/sysmodule.c Python-3.7.0/Python/sysmodule.c ---- Python-3.7.0-orig/Python/sysmodule.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/sysmodule.c 2018-07-12 10:22:32.476878500 +0300 -@@ -28,7 +28,7 @@ +diff -Naur Python-3.8.0-orig/Python/sysmodule.c Python-3.8.0/Python/sysmodule.c +--- Python-3.8.0-orig/Python/sysmodule.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/sysmodule.c 2019-10-22 10:04:08.995074100 +0300 +@@ -34,7 +34,7 @@ #include #endif /* MS_WINDOWS */ @@ -10,7 +10,7 @@ diff -Naur Python-3.7.0-orig/Python/sysmodule.c Python-3.7.0/Python/sysmodule.c extern void *PyWin_DLLhModule; /* A string loaded from the DLL at startup: */ extern const char *PyWin_DLLVersionString; -@@ -2333,7 +2333,7 @@ +@@ -2694,7 +2694,7 @@ PyUnicode_FromString("little")); #endif diff --git a/mingw-w64-python3/0920-mingw-add-LIBPL-to-library-dirs.patch b/mingw-w64-python3/0920-mingw-add-LIBPL-to-library-dirs.patch index 3a915d8b6d..e58e64e3d5 100644 --- a/mingw-w64-python3/0920-mingw-add-LIBPL-to-library-dirs.patch +++ b/mingw-w64-python3/0920-mingw-add-LIBPL-to-library-dirs.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Lib/distutils/command/build_ext.py Python-3.7.0/Lib/distutils/command/build_ext.py ---- Python-3.7.0-orig/Lib/distutils/command/build_ext.py 2018-07-12 10:21:57.205216600 +0300 -+++ Python-3.7.0/Lib/distutils/command/build_ext.py 2018-07-12 10:22:34.130481400 +0300 -@@ -217,7 +217,7 @@ +diff -Naur Python-3.8.0-orig/Lib/distutils/command/build_ext.py Python-3.8.0/Lib/distutils/command/build_ext.py +--- Python-3.8.0-orig/Lib/distutils/command/build_ext.py 2019-10-22 10:03:03.194158500 +0300 ++++ Python-3.8.0/Lib/distutils/command/build_ext.py 2019-10-22 10:04:11.803079000 +0300 +@@ -218,7 +218,7 @@ # For extensions under Cygwin, Python's library directory must be # appended to library_dirs diff --git a/mingw-w64-python3/0930-mingw-w64-build-overlapped-module.patch b/mingw-w64-python3/0930-mingw-w64-build-overlapped-module.patch deleted file mode 100644 index ef62f838cd..0000000000 --- a/mingw-w64-python3/0930-mingw-w64-build-overlapped-module.patch +++ /dev/null @@ -1,14 +0,0 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:15.504048700 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:35.815284400 +0300 -@@ -1678,6 +1678,10 @@ - '-framework', 'CoreFoundation', - ])) - -+ if host_platform.startswith(('mingw', 'win')): -+ exts.append( Extension('_overlapped', ['overlapped.c'], -+ libraries=['ws2_32'])) -+ - self.extensions.extend(exts) - - # Call the method for detecting whether _tkinter can be compiled diff --git a/mingw-w64-python3/0940-mingw-w64-Also-define-_Py_BEGIN_END_SUPPRESS_IPH-when-Py_BUILD_CORE_MODULE.patch b/mingw-w64-python3/0940-mingw-w64-Also-define-_Py_BEGIN_END_SUPPRESS_IPH-when-Py_BUILD_CORE_MODULE.patch deleted file mode 100644 index dccf088eb8..0000000000 --- a/mingw-w64-python3/0940-mingw-w64-Also-define-_Py_BEGIN_END_SUPPRESS_IPH-when-Py_BUILD_CORE_MODULE.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur Python-3.7.0-orig/Include/pyport.h Python-3.7.0/Include/pyport.h ---- Python-3.7.0-orig/Include/pyport.h 2018-07-12 10:22:00.418822200 +0300 -+++ Python-3.7.0/Include/pyport.h 2018-07-12 10:22:37.468887300 +0300 -@@ -772,7 +772,7 @@ - #define PY_LITTLE_ENDIAN 1 - #endif - --#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) -+#if defined(Py_BUILD_CORE) || defined(Py_BUILD_CORE_BUILTIN) || defined(Py_BUILD_CORE_MODULE) - /* - * Macros to protect CRT calls against instant termination when passed an - * invalid parameter (issue23524). diff --git a/mingw-w64-python3/0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch b/mingw-w64-python3/0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch index c93ed4c6f4..023463b4a1 100644 --- a/mingw-w64-python3/0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch +++ b/mingw-w64-python3/0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Python/getcompiler.c Python-3.7.0/Python/getcompiler.c ---- Python-3.7.0-orig/Python/getcompiler.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/getcompiler.c 2018-07-12 10:22:39.091290100 +0300 +diff -Naur Python-3.8.0-orig/Python/getcompiler.c Python-3.8.0/Python/getcompiler.c +--- Python-3.8.0-orig/Python/getcompiler.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/getcompiler.c 2019-10-22 10:04:17.450288900 +0300 @@ -10,7 +10,22 @@ #if defined(__clang__) #define COMPILER "\n[Clang " __clang_version__ "]" diff --git a/mingw-w64-python3/0990-MINGW-link-with-additional-library.patch b/mingw-w64-python3/0990-MINGW-link-with-additional-library.patch index 002dff68b8..238555e9f1 100644 --- a/mingw-w64-python3/0990-MINGW-link-with-additional-library.patch +++ b/mingw-w64-python3/0990-MINGW-link-with-additional-library.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/configure.ac Python-3.7.0/configure.ac ---- Python-3.7.0-orig/configure.ac 2018-07-12 10:22:20.589657600 +0300 -+++ Python-3.7.0/configure.ac 2018-07-12 10:22:40.729293000 +0300 -@@ -5686,6 +5686,15 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:03:48.434238000 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:04:20.273893900 +0300 +@@ -5668,6 +5668,15 @@ done AC_MSG_RESULT(done) diff --git a/mingw-w64-python3/1010-install-msilib.patch b/mingw-w64-python3/1010-install-msilib.patch index b137902f88..65a82a0dc0 100644 --- a/mingw-w64-python3/1010-install-msilib.patch +++ b/mingw-w64-python3/1010-install-msilib.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:22:12.056442600 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:22:42.429696000 +0300 -@@ -1334,6 +1334,7 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:03:33.473811700 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:04:23.315899200 +0300 +@@ -1404,6 +1404,7 @@ distutils distutils/command distutils/tests $(XMLLIBSUBDIRS) \ test/test_tools test/test_warnings test/test_warnings/data \ turtledemo \ diff --git a/mingw-w64-python3/1060-dont-include-system-ncurses-path.patch b/mingw-w64-python3/1060-dont-include-system-ncurses-path.patch index a398bec065..99f6a8593a 100644 --- a/mingw-w64-python3/1060-dont-include-system-ncurses-path.patch +++ b/mingw-w64-python3/1060-dont-include-system-ncurses-path.patch @@ -1,6 +1,7 @@ ---- Python-3.7.3/configure.ac.orig 2019-05-28 11:29:47.194040000 +0300 -+++ Python-3.7.3/configure.ac 2019-05-28 11:32:34.312240800 +0300 -@@ -5383,9 +5383,15 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:04:22.223897300 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:04:26.170704200 +0300 +@@ -5293,9 +5293,15 @@ # first curses header check ac_save_cppflags="$CPPFLAGS" diff --git a/mingw-w64-python3/1620-fix-signal-module-build.patch b/mingw-w64-python3/1620-fix-signal-module-build.patch index af99022e0b..a35aeec7ae 100644 --- a/mingw-w64-python3/1620-fix-signal-module-build.patch +++ b/mingw-w64-python3/1620-fix-signal-module-build.patch @@ -1,12 +1,12 @@ -diff -Naur Python-3.7.0-orig/Modules/Setup.dist Python-3.7.0/Modules/Setup.dist ---- Python-3.7.0-orig/Modules/Setup.dist 2018-07-12 10:20:58.876714100 +0300 -+++ Python-3.7.0/Modules/Setup.dist 2018-07-12 10:22:44.098898900 +0300 -@@ -114,7 +114,7 @@ +diff -Naur Python-3.8.0-orig/Modules/Setup Python-3.8.0/Modules/Setup +--- Python-3.8.0-orig/Modules/Setup 2019-10-22 10:01:07.612555400 +0300 ++++ Python-3.8.0/Modules/Setup 2019-10-22 10:04:29.009909200 +0300 +@@ -111,7 +111,7 @@ _abc _abc.c # 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 signalmodule.c -+_signal -DPy_BUILD_CORE signalmodule.c -lws2_32 +-_signal -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal signalmodule.c ++_signal -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal signalmodule.c -lws2_32 _stat _stat.c # stat.h interface - time -DPy_BUILD_CORE timemodule.c # -lm # time operations and variables - _thread -DPy_BUILD_CORE _threadmodule.c # low-level threading interface + time -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal timemodule.c # -lm # time operations and variables + _thread -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal _threadmodule.c # low-level threading interface diff --git a/mingw-w64-python3/1630-build-winconsoleio.patch b/mingw-w64-python3/1630-build-winconsoleio.patch index 12b4b8d722..196592ad3d 100644 --- a/mingw-w64-python3/1630-build-winconsoleio.patch +++ b/mingw-w64-python3/1630-build-winconsoleio.patch @@ -1,12 +1,12 @@ -diff -Naur Python-3.7.0-orig/Modules/Setup.dist Python-3.7.0/Modules/Setup.dist ---- Python-3.7.0-orig/Modules/Setup.dist 2018-07-12 10:22:45.440501300 +0300 -+++ Python-3.7.0/Modules/Setup.dist 2018-07-12 10:22:45.736901800 +0300 -@@ -123,7 +123,7 @@ - _locale _localemodule.c # -lintl +diff -Naur Python-3.8.0-orig/Modules/Setup Python-3.8.0/Modules/Setup +--- Python-3.8.0-orig/Modules/Setup 2019-10-22 10:04:31.147113000 +0300 ++++ Python-3.8.0/Modules/Setup 2019-10-22 10:04:32.223514900 +0300 +@@ -120,7 +120,7 @@ + _locale -DPy_BUILD_CORE_BUILTIN _localemodule.c # -lintl # Standard I/O baseline --_io -DPy_BUILD_CORE -I$(srcdir)/Modules/_io _io/_iomodule.c _io/iobase.c _io/fileio.c _io/bytesio.c _io/bufferedio.c _io/textio.c _io/stringio.c -+_io -DPy_BUILD_CORE -I$(srcdir)/Modules/_io _io/_iomodule.c _io/iobase.c _io/fileio.c _io/bytesio.c _io/bufferedio.c _io/textio.c _io/stringio.c _io/winconsoleio.c +-_io -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal -I$(srcdir)/Modules/_io _io/_iomodule.c _io/iobase.c _io/fileio.c _io/bytesio.c _io/bufferedio.c _io/textio.c _io/stringio.c ++_io -DPy_BUILD_CORE_BUILTIN -I$(srcdir)/Include/internal -I$(srcdir)/Modules/_io _io/_iomodule.c _io/iobase.c _io/fileio.c _io/bytesio.c _io/bufferedio.c _io/textio.c _io/stringio.c _io/winconsoleio.c - # The zipimport module is always imported at startup. Having it as a - # builtin module avoids some bootstrapping problems and reduces overhead. + # faulthandler module + faulthandler faulthandler.c diff --git a/mingw-w64-python3/1650-expose-sem_unlink.patch b/mingw-w64-python3/1650-expose-sem_unlink.patch index 9f4f70ef96..16c91759f0 100644 --- a/mingw-w64-python3/1650-expose-sem_unlink.patch +++ b/mingw-w64-python3/1650-expose-sem_unlink.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Modules/_multiprocessing/multiprocessing.c Python-3.7.0/Modules/_multiprocessing/multiprocessing.c ---- Python-3.7.0-orig/Modules/_multiprocessing/multiprocessing.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_multiprocessing/multiprocessing.c 2018-07-12 10:22:47.328104600 +0300 +diff -Naur Python-3.8.0-orig/Modules/_multiprocessing/multiprocessing.c Python-3.8.0/Modules/_multiprocessing/multiprocessing.c +--- Python-3.8.0-orig/Modules/_multiprocessing/multiprocessing.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_multiprocessing/multiprocessing.c 2019-10-22 10:04:35.437120500 +0300 @@ -128,7 +128,7 @@ {"recv", multiprocessing_recv, METH_VARARGS, ""}, {"send", multiprocessing_send, METH_VARARGS, ""}, diff --git a/mingw-w64-python3/1700-cygpty-isatty.patch b/mingw-w64-python3/1700-cygpty-isatty.patch index aecb991b89..4f450ff1b3 100644 --- a/mingw-w64-python3/1700-cygpty-isatty.patch +++ b/mingw-w64-python3/1700-cygpty-isatty.patch @@ -1,6 +1,6 @@ -diff -Naur Python-3.7.0-orig/Include/iscygpty.h Python-3.7.0/Include/iscygpty.h ---- Python-3.7.0-orig/Include/iscygpty.h 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Include/iscygpty.h 2018-07-12 10:22:48.966107500 +0300 +diff -Naur Python-3.8.0-orig/Include/iscygpty.h Python-3.8.0/Include/iscygpty.h +--- Python-3.8.0-orig/Include/iscygpty.h 1970-01-01 03:00:00.000000000 +0300 ++++ Python-3.8.0/Include/iscygpty.h 2019-10-22 10:04:39.461927600 +0300 @@ -0,0 +1,41 @@ +/* + * iscygpty.h -- part of ptycheck @@ -43,29 +43,29 @@ diff -Naur Python-3.7.0-orig/Include/iscygpty.h Python-3.7.0/Include/iscygpty.h +#endif + +#endif /* _ISCYGPTY_H */ -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:22:43.802498400 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:22:48.966107500 +0300 -@@ -350,6 +350,7 @@ - Python/graminit.o \ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:04:25.063102300 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:04:39.867528300 +0300 +@@ -346,6 +346,7 @@ Python/import.o \ Python/importdl.o \ + Python/initconfig.o \ + Python/iscygpty.o \ Python/marshal.o \ Python/modsupport.o \ Python/mysnprintf.o \ -@@ -984,6 +985,7 @@ - $(srcdir)/Include/genobject.h \ +@@ -1011,6 +1012,7 @@ $(srcdir)/Include/import.h \ + $(srcdir)/Include/interpreteridobject.h \ $(srcdir)/Include/intrcheck.h \ + $(srcdir)/Include/iscygpty.h \ $(srcdir)/Include/iterobject.h \ $(srcdir)/Include/listobject.h \ $(srcdir)/Include/longintrepr.h \ -diff -Naur Python-3.7.0-orig/Modules/_io/fileio.c Python-3.7.0/Modules/_io/fileio.c ---- Python-3.7.0-orig/Modules/_io/fileio.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/_io/fileio.c 2018-07-12 10:22:48.981707500 +0300 -@@ -17,6 +17,7 @@ +diff -Naur Python-3.8.0-orig/Modules/_io/fileio.c Python-3.8.0/Modules/_io/fileio.c +--- Python-3.8.0-orig/Modules/_io/fileio.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/_io/fileio.c 2019-10-22 10:04:40.273129000 +0300 +@@ -18,6 +18,7 @@ #endif #include /* For offsetof */ #include "_iomodule.h" @@ -73,7 +73,7 @@ diff -Naur Python-3.7.0-orig/Modules/_io/fileio.c Python-3.7.0/Modules/_io/filei /* * Known likely problems: -@@ -1116,7 +1117,7 @@ +@@ -1119,7 +1120,7 @@ return err_closed(); Py_BEGIN_ALLOW_THREADS _Py_BEGIN_SUPPRESS_IPH @@ -82,37 +82,38 @@ diff -Naur Python-3.7.0-orig/Modules/_io/fileio.c Python-3.7.0/Modules/_io/filei _Py_END_SUPPRESS_IPH Py_END_ALLOW_THREADS return PyBool_FromLong(res); -diff -Naur Python-3.7.0-orig/Modules/main.c Python-3.7.0/Modules/main.c ---- Python-3.7.0-orig/Modules/main.c 2018-07-12 10:21:48.188400700 +0300 -+++ Python-3.7.0/Modules/main.c 2018-07-12 10:22:49.012907600 +0300 +diff -Naur Python-3.8.0-orig/Modules/main.c Python-3.8.0/Modules/main.c +--- Python-3.8.0-orig/Modules/main.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/main.c 2019-10-22 10:04:41.068730400 +0300 @@ -5,6 +5,7 @@ - #include "internal/import.h" - #include "internal/pygetopt.h" - #include "internal/pystate.h" + #include "pycore_pylifecycle.h" + #include "pycore_pymem.h" + #include "pycore_pystate.h" +#include "iscygpty.h" - #include - -@@ -1093,6 +1094,7 @@ - pymain_init_stdio(_PyMain *pymain) + #ifdef __FreeBSD__ + # include /* fedisableexcept() */ +@@ -103,7 +104,7 @@ + static int + stdin_is_interactive(const PyConfig *config) { - pymain->stdin_is_interactive = (isatty(fileno(stdin)) -+ || is_cygpty(fileno(stdin)) - || Py_InteractiveFlag); +- return (isatty(fileno(stdin)) || config->interactive); ++ return (isatty(fileno(stdin)) || config->interactive || is_cygpty(fileno(stdin))); + } - #if defined(MS_WINDOWS) || defined(__CYGWIN__) -diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmodule.c ---- Python-3.7.0-orig/Modules/posixmodule.c 2018-07-12 10:21:50.372404600 +0300 -+++ Python-3.7.0/Modules/posixmodule.c 2018-07-12 10:22:48.997307500 +0300 -@@ -32,6 +32,7 @@ - #else - #include "winreparse.h" + +diff -Naur Python-3.8.0-orig/Modules/posixmodule.c Python-3.8.0/Modules/posixmodule.c +--- Python-3.8.0-orig/Modules/posixmodule.c 2019-10-22 10:02:48.171332100 +0300 ++++ Python-3.8.0/Modules/posixmodule.c 2019-10-22 10:04:41.489931200 +0300 +@@ -34,6 +34,7 @@ + FSCTL_GET_REPARSE_POINT is not exported with WIN32_LEAN_AND_MEAN. */ + # include #endif +#include "iscygpty.h" - /* On android API level 21, 'AT_EACCESS' is not declared although - * HAVE_FACCESSAT is defined. */ -@@ -8547,7 +8548,7 @@ + #include "pycore_ceval.h" /* _PyEval_ReInitThreads() */ + #include "pycore_pystate.h" /* _PyRuntime */ +@@ -9258,7 +9259,7 @@ { int return_value; _Py_BEGIN_SUPPRESS_IPH @@ -121,18 +122,18 @@ diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmod _Py_END_SUPPRESS_IPH return return_value; } -diff -Naur Python-3.7.0-orig/Python/frozenmain.c Python-3.7.0/Python/frozenmain.c ---- Python-3.7.0-orig/Python/frozenmain.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/frozenmain.c 2018-07-12 10:22:49.012907600 +0300 +diff -Naur Python-3.8.0-orig/Python/frozenmain.c Python-3.8.0/Python/frozenmain.c +--- Python-3.8.0-orig/Python/frozenmain.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/frozenmain.c 2019-10-22 10:04:41.895531900 +0300 @@ -4,6 +4,7 @@ #include "Python.h" - #include "internal/pystate.h" + #include "pycore_pystate.h" #include +#include "iscygpty.h" #ifdef MS_WINDOWS extern void PyWinFreeze_ExeInit(void); -@@ -101,7 +102,7 @@ +@@ -107,7 +108,7 @@ else sts = 0; @@ -141,9 +142,9 @@ diff -Naur Python-3.7.0-orig/Python/frozenmain.c Python-3.7.0/Python/frozenmain. sts = PyRun_AnyFile(stdin, "") != 0; #ifdef MS_WINDOWS -diff -Naur Python-3.7.0-orig/Python/iscygpty.c Python-3.7.0/Python/iscygpty.c ---- Python-3.7.0-orig/Python/iscygpty.c 1970-01-01 03:00:00.000000000 +0300 -+++ Python-3.7.0/Python/iscygpty.c 2018-07-12 10:22:49.012907600 +0300 +diff -Naur Python-3.8.0-orig/Python/iscygpty.c Python-3.8.0/Python/iscygpty.c +--- Python-3.8.0-orig/Python/iscygpty.c 1970-01-01 03:00:00.000000000 +0300 ++++ Python-3.8.0/Python/iscygpty.c 2019-10-22 10:04:42.301132600 +0300 @@ -0,0 +1,185 @@ +/* + * iscygpty.c -- part of ptycheck @@ -330,10 +331,10 @@ diff -Naur Python-3.7.0-orig/Python/iscygpty.c Python-3.7.0/Python/iscygpty.c +#endif /* _WIN32 */ + +/* vim: set ts=4 sw=4: */ -diff -Naur Python-3.7.0-orig/Python/pylifecycle.c Python-3.7.0/Python/pylifecycle.c ---- Python-3.7.0-orig/Python/pylifecycle.c 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/pylifecycle.c 2018-07-12 10:22:49.012907600 +0300 -@@ -17,6 +17,7 @@ +diff -Naur Python-3.8.0-orig/Python/pylifecycle.c Python-3.8.0/Python/pylifecycle.c +--- Python-3.8.0-orig/Python/pylifecycle.c 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/pylifecycle.c 2019-10-22 10:04:42.691133300 +0300 +@@ -24,6 +24,7 @@ #include "ast.h" #include "marshal.h" #include "osdefs.h" @@ -341,7 +342,7 @@ diff -Naur Python-3.7.0-orig/Python/pylifecycle.c Python-3.7.0/Python/pylifecycl #include #ifdef HAVE_SIGNAL_H -@@ -2187,7 +2188,7 @@ +@@ -2349,7 +2350,7 @@ int Py_FdIsInteractive(FILE *fp, const char *filename) { diff --git a/mingw-w64-python3/1701-disable-broken-gdbm-module.patch b/mingw-w64-python3/1701-disable-broken-gdbm-module.patch index fa1a43a226..bde9685754 100644 --- a/mingw-w64-python3/1701-disable-broken-gdbm-module.patch +++ b/mingw-w64-python3/1701-disable-broken-gdbm-module.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:37.188086800 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:50.869310800 +0300 -@@ -1306,7 +1306,7 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:04:16.342687000 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:04:48.353943200 +0300 +@@ -1331,7 +1331,7 @@ if dbm_args: dbm_order = [arg.split('=')[-1] for arg in dbm_args][-1].split(":") else: diff --git a/mingw-w64-python3/1800-link-win-resource-files-and-build-pythonw.patch b/mingw-w64-python3/1800-link-win-resource-files-and-build-pythonw.patch index 80be83d15b..a50a3fc8e6 100644 --- a/mingw-w64-python3/1800-link-win-resource-files-and-build-pythonw.patch +++ b/mingw-w64-python3/1800-link-win-resource-files-and-build-pythonw.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in ---- Python-3.7.0-orig/Makefile.pre.in 2018-07-12 10:22:50.494910200 +0300 -+++ Python-3.7.0/Makefile.pre.in 2018-07-12 10:22:52.632113900 +0300 -@@ -240,6 +240,7 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:04:44.812737000 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:04:51.177548200 +0300 +@@ -249,6 +249,7 @@ PYTHON= python$(EXE) BUILDPYTHON= python$(BUILDEXE) @@ -9,7 +9,7 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in PYTHON_FOR_REGEN=@PYTHON_FOR_REGEN@ UPDATE_FILE=@PYTHON_FOR_REGEN@ $(srcdir)/Tools/scripts/update_file.py -@@ -459,7 +460,7 @@ +@@ -455,7 +456,7 @@ # Default target all: @DEF_MAKE_ALL_RULE@ @@ -18,7 +18,7 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in Programs/_testembed python-config # Check that the source is clean when building out of source. -@@ -573,9 +574,27 @@ +@@ -569,9 +570,27 @@ clinic: check-clean-src $(srcdir)/Modules/_blake2/blake2s_impl.c $(PYTHON_FOR_REGEN) $(srcdir)/Tools/clinic/clinic.py --make --srcdir $(srcdir) @@ -38,17 +38,17 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in + windres -I$(srcdir)/Include -I$(srcdir)/PC -I. $(srcdir)/PC/python_nt.rc $@ + +$(BUILDPYTHONW): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) pythonw_exe.o -+ $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -municode -mwindows -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) pythonw_exe.o ++ $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -municode -mwindows -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) pythonw_exe.o + # Build the interpreter -$(BUILDPYTHON): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) -- $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) +- $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) +$(BUILDPYTHON): Programs/python.o $(LIBRARY) $(LDLIBRARY) $(PY3LIBRARY) python_exe.o -+ $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -municode -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) python_exe.o ++ $(LINKCC) $(PY_CORE_LDFLAGS) $(LINKFORSHARED) -municode -o $@ Programs/python.o $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) python_exe.o platform: $(BUILDPYTHON) pybuilddir.txt $(RUNSHARED) $(PYTHON_FOR_BUILD) -c 'import sys ; from sysconfig import get_platform ; print("%s-%d.%d" % (get_platform(), *sys.version_info[:2]))' >platform -@@ -681,10 +700,10 @@ +@@ -677,10 +696,10 @@ # This rule builds the Cygwin Python DLL and import library if configured # for a shared core library; otherwise, this rule is a noop. @@ -56,12 +56,12 @@ diff -Naur Python-3.7.0-orig/Makefile.pre.in Python-3.7.0/Makefile.pre.in +$(DLLLIBRARY) libpython$(LDVERSION).dll.a: $(LIBRARY_OBJS) python_nt.o if test -n "$(DLLLIBRARY)"; then \ $(LDSHARED) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ -- $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST); \ -+ $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) python_nt.o; \ +- $(LIBS) $(MODLIBS) $(SYSLIBS); \ ++ $(LIBS) $(MODLIBS) $(SYSLIBS) python_nt.o; \ else true; \ fi -@@ -1182,6 +1201,7 @@ +@@ -1246,6 +1265,7 @@ done if test "$(PYTHONFRAMEWORKDIR)" = "no-framework" ; then \ $(INSTALL_PROGRAM) $(BUILDPYTHON) $(DESTDIR)$(BINDIR)/python$(LDVERSION)$(EXE); \ diff --git a/mingw-w64-python3/1810-3.7-mpdec-mingw.patch b/mingw-w64-python3/1810-3.7-mpdec-mingw.patch index 4fcc248c52..27c1f6bdeb 100644 --- a/mingw-w64-python3/1810-3.7-mpdec-mingw.patch +++ b/mingw-w64-python3/1810-3.7-mpdec-mingw.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:52.288913300 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:54.348116900 +0300 -@@ -2097,7 +2097,7 @@ +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:04:50.085546300 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:04:54.016753200 +0300 +@@ -2165,7 +2165,7 @@ undef_macros = [] if '--with-system-libmpdec' in sysconfig.get_config_var("CONFIG_ARGS"): include_dirs = [] diff --git a/mingw-w64-python3/1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch b/mingw-w64-python3/1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch index ca056a4f6c..3e09b09092 100644 --- a/mingw-w64-python3/1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch +++ b/mingw-w64-python3/1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch @@ -1,7 +1,7 @@ -diff -Naur Python-3.7.0-orig/Python/pylifecycle.c Python-3.7.0/Python/pylifecycle.c ---- Python-3.7.0-orig/Python/pylifecycle.c 2018-07-12 10:22:50.526110200 +0300 -+++ Python-3.7.0/Python/pylifecycle.c 2018-07-12 10:22:56.017319900 +0300 -@@ -40,6 +40,26 @@ +diff -Naur Python-3.8.0-orig/Python/pylifecycle.c Python-3.8.0/Python/pylifecycle.c +--- Python-3.8.0-orig/Python/pylifecycle.c 2019-10-22 10:04:47.230741200 +0300 ++++ Python-3.8.0/Python/pylifecycle.c 2019-10-22 10:04:56.918358300 +0300 +@@ -47,6 +47,26 @@ #define PyWindowsConsoleIO_Check(op) (PyObject_TypeCheck((op), &PyWindowsConsoleIO_Type)) #endif diff --git a/mingw-w64-python3/1850-disable-readline.patch b/mingw-w64-python3/1850-disable-readline.patch index 103f6898c6..4e0b4193d0 100644 --- a/mingw-w64-python3/1850-disable-readline.patch +++ b/mingw-w64-python3/1850-disable-readline.patch @@ -1,13 +1,13 @@ -diff -Naur Python-3.7.0-orig/setup.py Python-3.7.0/setup.py ---- Python-3.7.0-orig/setup.py 2018-07-12 10:22:55.752119400 +0300 -+++ Python-3.7.0/setup.py 2018-07-12 10:22:59.246525500 +0300 -@@ -807,7 +807,10 @@ - libraries=['m']) ) +diff -Naur Python-3.8.0-orig/setup.py Python-3.8.0/setup.py +--- Python-3.8.0-orig/setup.py 2019-10-22 10:04:55.763956200 +0300 ++++ Python-3.8.0/setup.py 2019-10-22 10:04:59.804363300 +0300 +@@ -911,7 +911,10 @@ + def detect_readline_curses(self): # readline -- do_readline = self.compiler.find_library_file(lib_dirs, 'readline') -+ if not host_platform.startswith(('mingw', 'win')): -+ do_readline = self.compiler.find_library_file(lib_dirs, 'readline') +- do_readline = self.compiler.find_library_file(self.lib_dirs, 'readline') ++ if not MS_WINDOWS: ++ do_readline = self.compiler.find_library_file(self.lib_dirs, 'readline') + else: + do_readline = False readline_termcap_library = "" diff --git a/mingw-w64-python3/1860-fix-isselectable.patch b/mingw-w64-python3/1860-fix-isselectable.patch index 44cd4b692e..47ad5c7f69 100644 --- a/mingw-w64-python3/1860-fix-isselectable.patch +++ b/mingw-w64-python3/1860-fix-isselectable.patch @@ -1,8 +1,8 @@ -diff -Naur Python-3.7.0-orig/Include/fileobject.h Python-3.7.0/Include/fileobject.h ---- Python-3.7.0-orig/Include/fileobject.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Include/fileobject.h 2018-07-12 10:23:01.321329200 +0300 -@@ -42,7 +42,7 @@ - #endif /* Py_LIMITED_API */ +diff -Naur Python-3.8.0-orig/Include/fileobject.h Python-3.8.0/Include/fileobject.h +--- Python-3.8.0-orig/Include/fileobject.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Include/fileobject.h 2019-10-22 10:05:02.627968300 +0300 +@@ -23,7 +23,7 @@ + PyAPI_DATA(int) Py_HasFileSystemDefaultEncoding; /* A routine to check if a file descriptor can be select()-ed. */ -#ifdef _MSC_VER diff --git a/mingw-w64-python3/1870-use-_wcsnicmp-instead-wcsncasecmp.patch b/mingw-w64-python3/1870-use-_wcsnicmp-instead-wcsncasecmp.patch new file mode 100644 index 0000000000..518a9ee606 --- /dev/null +++ b/mingw-w64-python3/1870-use-_wcsnicmp-instead-wcsncasecmp.patch @@ -0,0 +1,12 @@ +diff -Naur Python-3.8.0-orig/Modules/getpath.c Python-3.8.0/Modules/getpath.c +--- Python-3.8.0-orig/Modules/getpath.c 2019-10-22 10:02:51.821738500 +0300 ++++ Python-3.8.0/Modules/getpath.c 2019-10-22 10:05:05.467173300 +0300 +@@ -373,7 +373,7 @@ + /* Check for already have an executable suffix */ + size_t n = wcslen(progpath); + size_t s = wcslen(EXE_SUFFIX); +- if (wcsncasecmp(EXE_SUFFIX, progpath + n - s, s) == 0) { ++ if (_wcsnicmp(EXE_SUFFIX, progpath + n - s, s) == 0) { + return _PyStatus_OK(); + } + diff --git a/mingw-w64-python3/2040-make-default-python.patch b/mingw-w64-python3/1880-make-default-python.patch similarity index 61% rename from mingw-w64-python3/2040-make-default-python.patch rename to mingw-w64-python3/1880-make-default-python.patch index 112c198850..cc08d14d6a 100644 --- a/mingw-w64-python3/2040-make-default-python.patch +++ b/mingw-w64-python3/1880-make-default-python.patch @@ -1,6 +1,7 @@ ---- Python-3.7.4/Makefile.pre.in.orig 2019-07-09 11:16:23.393804800 +0300 -+++ Python-3.7.4/Makefile.pre.in 2019-07-09 12:15:23.141089200 +0300 -@@ -1252,12 +1252,15 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:04:52.924751200 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:05:08.665178900 +0300 +@@ -1306,6 +1306,7 @@ else true; \ fi (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)$(EXE) python3$(EXE)) @@ -8,8 +9,9 @@ -if test "$(VERSION)" != "$(LDVERSION)"; then \ rm -f $(DESTDIR)$(BINDIR)/python$(VERSION)-config; \ (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(LDVERSION)-config python$(VERSION)-config); \ - rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION).pc; \ - (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION).pc python-$(LDVERSION).pc); \ +@@ -1314,6 +1315,8 @@ + rm -f $(DESTDIR)$(LIBPC)/python-$(LDVERSION)-embed.pc; \ + (cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python-$(LDVERSION)-embed.pc); \ fi + -rm -f $(DESTDIR)$(BINDIR)/python-config + (cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-config python-config) diff --git a/mingw-w64-python3/1890-_xxsubinterpretersmodule.patch b/mingw-w64-python3/1890-_xxsubinterpretersmodule.patch new file mode 100644 index 0000000000..0366172e30 --- /dev/null +++ b/mingw-w64-python3/1890-_xxsubinterpretersmodule.patch @@ -0,0 +1,11 @@ +--- Python-3.8.0/Modules/_xxsubinterpretersmodule.c.orig 2019-10-22 13:34:28.145872500 +0300 ++++ Python-3.8.0/Modules/_xxsubinterpretersmodule.c 2019-10-22 13:34:49.299509600 +0300 +@@ -1749,7 +1749,7 @@ + "A channel ID identifies a channel and may be used as an int."); + + static PyTypeObject ChannelIDtype = { +- PyVarObject_HEAD_INIT(&PyType_Type, 0) ++ PyVarObject_HEAD_INIT(NULL, 0) + "_xxsubinterpreters.ChannelID", /* tp_name */ + sizeof(channelid), /* tp_basicsize */ + 0, /* tp_itemsize */ diff --git a/mingw-w64-python3/1900-ctypes-dont-depend-on-internal-libffi.patch b/mingw-w64-python3/1900-ctypes-dont-depend-on-internal-libffi.patch deleted file mode 100644 index 5d717e658c..0000000000 --- a/mingw-w64-python3/1900-ctypes-dont-depend-on-internal-libffi.patch +++ /dev/null @@ -1,24 +0,0 @@ ---- Python-3.7.1/Modules/_ctypes/callproc.c.orig 2018-10-21 20:21:21.305822500 +0200 -+++ Python-3.7.1/Modules/_ctypes/callproc.c 2018-10-21 20:51:03.252890200 +0200 -@@ -701,6 +701,21 @@ - } - } - -+#ifdef __MINGW32__ -+/* -+Per: https://msdn.microsoft.com/en-us/library/7572ztz4.aspx -+To be returned by value in RAX, user-defined types must have a length -+of 1, 2, 4, 8, 16, 32, or 64 bits -+*/ -+static int can_return_struct_as_int(size_t s) -+{ -+ return s == 1 || s == 2 || s == 4; -+} -+static int can_return_struct_as_sint64(size_t s) -+{ -+ return s == 8; -+} -+#endif - - ffi_type *_ctypes_get_ffi_type(PyObject *obj) - { diff --git a/mingw-w64-python3/2000-warnings-fixes.patch b/mingw-w64-python3/2000-warnings-fixes.patch deleted file mode 100644 index f439f42c1d..0000000000 --- a/mingw-w64-python3/2000-warnings-fixes.patch +++ /dev/null @@ -1,87 +0,0 @@ -diff -Naur Python-3.7.0-orig/Modules/_winapi.c Python-3.7.0/Modules/_winapi.c ---- Python-3.7.0-orig/Modules/_winapi.c 2018-07-12 10:21:22.900756300 +0300 -+++ Python-3.7.0/Modules/_winapi.c 2018-07-12 10:23:03.286932600 +0300 -@@ -886,7 +886,7 @@ - DWORD err; - BOOL result; - PyObject *value; -- Py_ssize_t handle_list_size; -+ Py_ssize_t handle_list_size = 0; - DWORD attribute_count = 0; - SIZE_T attribute_list_size = 0; - -diff -Naur Python-3.7.0-orig/Modules/posixmodule.c Python-3.7.0/Modules/posixmodule.c ---- Python-3.7.0-orig/Modules/posixmodule.c 2018-07-12 10:22:50.526110200 +0300 -+++ Python-3.7.0/Modules/posixmodule.c 2018-07-12 10:23:03.286932600 +0300 -@@ -4646,7 +4646,7 @@ - /*[clinic end generated code: output=cfcac69d027b82cf input=081cdc54ca685385]*/ - { - #ifdef MS_WINDOWS -- HANDLE hFile; -+ HANDLE hFile = 0; - FILETIME atime, mtime; - #else - int result; -diff -Naur Python-3.7.0-orig/Modules/socketmodule.h Python-3.7.0/Modules/socketmodule.h ---- Python-3.7.0-orig/Modules/socketmodule.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Modules/socketmodule.h 2018-07-12 10:23:03.302532700 +0300 -@@ -29,8 +29,10 @@ - */ - # ifdef SIO_GET_MULTICAST_FILTER - # include /* for SIO_RCVALL */ -+#ifndef __MINGW32__ /* resolve by configure */ - # define HAVE_ADDRINFO - # define HAVE_SOCKADDR_STORAGE -+#endif - # define HAVE_GETADDRINFO - # define HAVE_GETNAMEINFO - # define ENABLE_IPV6 -diff -Naur Python-3.7.0-orig/PC/python_exe.rc Python-3.7.0/PC/python_exe.rc ---- Python-3.7.0-orig/PC/python_exe.rc 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/PC/python_exe.rc 2018-07-12 10:23:03.302532700 +0300 -@@ -7,7 +7,7 @@ - #include - 1 RT_MANIFEST "python.manifest" - --1 ICON DISCARDABLE "icons\python.ico" -+1 ICON DISCARDABLE "icons/python.ico" - - - ///////////////////////////////////////////////////////////////////////////// -diff -Naur Python-3.7.0-orig/PC/pythonw_exe.rc Python-3.7.0/PC/pythonw_exe.rc ---- Python-3.7.0-orig/PC/pythonw_exe.rc 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/PC/pythonw_exe.rc 2018-07-12 10:23:03.302532700 +0300 -@@ -7,7 +7,7 @@ - #include - 1 RT_MANIFEST "python.manifest" - --1 ICON DISCARDABLE "icons\pythonw.ico" -+1 ICON DISCARDABLE "icons/pythonw.ico" - - - ///////////////////////////////////////////////////////////////////////////// -diff -Naur Python-3.7.0-orig/PC/winreg.c Python-3.7.0/PC/winreg.c ---- Python-3.7.0-orig/PC/winreg.c 2018-07-12 10:20:57.098311000 +0300 -+++ Python-3.7.0/PC/winreg.c 2018-07-12 10:23:03.302532700 +0300 -@@ -791,6 +791,7 @@ - case REG_BINARY: - /* ALSO handle ALL unknown data types here. Even if we can't - support it natively, we should handle the bits. */ -+ /* fallthrough */ - default: - if (retDataSize == 0) { - Py_INCREF(Py_None); -diff -Naur Python-3.7.0-orig/Python/thread_nt.h Python-3.7.0/Python/thread_nt.h ---- Python-3.7.0-orig/Python/thread_nt.h 2018-06-27 06:07:35.000000000 +0300 -+++ Python-3.7.0/Python/thread_nt.h 2018-07-12 10:23:03.302532700 +0300 -@@ -318,8 +318,9 @@ - { - dprintf(("%lu: PyThread_release_lock(%p) called\n", PyThread_get_thread_ident(),aLock)); - -- if (!(aLock && LeaveNonRecursiveMutex((PNRMUTEX) aLock))) -+ if (!(aLock && LeaveNonRecursiveMutex((PNRMUTEX) aLock))) { - dprintf(("%lu: Could not PyThread_release_lock(%p) error: %ld\n", PyThread_get_thread_ident(), aLock, GetLastError())); -+ } - } - - /* minimum/maximum thread stack sizes supported */ diff --git a/mingw-w64-python3/2010-configure-have-inet-pton.patch b/mingw-w64-python3/2010-configure-have-inet-pton.patch index 8a5d9bac9b..f7b1d3a220 100644 --- a/mingw-w64-python3/2010-configure-have-inet-pton.patch +++ b/mingw-w64-python3/2010-configure-have-inet-pton.patch @@ -1,6 +1,7 @@ ---- Python-3.7.2/configure.ac.orig 2019-04-13 17:14:32.296998700 +0200 -+++ Python-3.7.2/configure.ac 2019-04-13 17:27:16.307347800 +0200 -@@ -4107,10 +4107,14 @@ +diff -Naur Python-3.8.0-orig/configure.ac Python-3.8.0/configure.ac +--- Python-3.8.0-orig/configure.ac 2019-10-22 10:04:27.917907300 +0300 ++++ Python-3.8.0/configure.ac 2019-10-22 10:05:14.312388800 +0300 +@@ -4110,10 +4110,14 @@ AC_MSG_CHECKING(for inet_pton) AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[ diff --git a/mingw-w64-python3/2020-use-_wcsnicmp-instead-wcsncasecmp.patch b/mingw-w64-python3/2020-use-_wcsnicmp-instead-wcsncasecmp.patch deleted file mode 100644 index 56608e6807..0000000000 --- a/mingw-w64-python3/2020-use-_wcsnicmp-instead-wcsncasecmp.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- Python-3.7.3/Modules/getpath.c.orig 2019-04-16 08:23:18.111566000 +0300 -+++ Python-3.7.3/Modules/getpath.c 2019-04-16 08:23:20.781569700 +0300 -@@ -341,7 +341,7 @@ - /* Check for already have an executable suffix */ - size_t n = wcslen(progpath); - size_t s = wcslen(EXE_SUFFIX); -- if (wcsncasecmp(EXE_SUFFIX, progpath+n-s, s) != 0) { -+ if (_wcsnicmp(EXE_SUFFIX, progpath+n-s, s) != 0) { - if (n + s > MAXPATHLEN) { - Py_FatalError("progpath overflow in getpath.c's add_exe_suffix()"); - } diff --git a/mingw-w64-python3/2030-fix-msvc9-import.patch b/mingw-w64-python3/2030-fix-msvc9-import.patch index 54f6e027d4..e2d49816e6 100644 --- a/mingw-w64-python3/2030-fix-msvc9-import.patch +++ b/mingw-w64-python3/2030-fix-msvc9-import.patch @@ -1,8 +1,6 @@ -setuptools imports it and VERSION is 6 with a mingw Python. Move the version -check to the actual compiler instance creation, which is also the only place -where it's used. ---- Python-3.7.3/Lib/distutils/msvc9compiler.py.orig 2019-03-25 21:21:05.000000000 +0100 -+++ Python-3.7.3/Lib/distutils/msvc9compiler.py 2019-04-21 15:56:16.997090000 +0200 +diff -Naur Python-3.8.0-orig/Lib/distutils/msvc9compiler.py Python-3.8.0/Lib/distutils/msvc9compiler.py +--- Python-3.8.0-orig/Lib/distutils/msvc9compiler.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/distutils/msvc9compiler.py 2019-10-22 10:05:17.120393700 +0300 @@ -292,8 +292,6 @@ # More globals diff --git a/mingw-w64-python3/2050-undo-venv-redirector.patch b/mingw-w64-python3/2050-undo-venv-redirector.patch index b4691542a4..0a96cf2918 100644 --- a/mingw-w64-python3/2050-undo-venv-redirector.patch +++ b/mingw-w64-python3/2050-undo-venv-redirector.patch @@ -1,5 +1,6 @@ ---- Python-3.7.4/Lib/venv/__init__.py 2019-07-20 20:56:20.832694700 -0400 -+++ Python-3.7.4/Lib/venv/__init__-patched.py 2019-07-21 11:13:44.980704100 -0400 +diff -Naur Python-3.8.0-orig/Lib/venv/__init__.py Python-3.8.0/Lib/venv/__init__.py +--- Python-3.8.0-orig/Lib/venv/__init__.py 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/venv/__init__.py 2019-10-22 10:05:19.975198800 +0300 @@ -11,6 +11,7 @@ import sys import sysconfig @@ -8,7 +9,7 @@ logger = logging.getLogger(__name__) -@@ -111,7 +112,7 @@ +@@ -110,7 +111,7 @@ context.executable = executable context.python_dir = dirname context.python_exe = exename @@ -17,16 +18,16 @@ binname = 'Scripts' incpath = 'Include' libpath = os.path.join(env_dir, 'Lib', 'site-packages') -@@ -155,7 +156,7 @@ - f.write('include-system-site-packages = %s\n' % incl) - f.write('version = %d.%d.%d\n' % sys.version_info[:3]) +@@ -156,7 +157,7 @@ + if self.prompt is not None: + f.write(f'prompt = {self.prompt!r}\n') - if os.name != 'nt': + if os.name != 'nt' or _POSIX_BUILD: def symlink_or_copy(self, src, dst, relative_symlinks_ok=False): """ Try symlinking a file, and if that fails, fall back to copying. -@@ -229,7 +230,7 @@ +@@ -230,7 +231,7 @@ path = context.env_exe copier = self.symlink_or_copy dirname = context.python_dir diff --git a/mingw-w64-python3/2051-set-venv-activate-path-unix.patch b/mingw-w64-python3/2051-set-venv-activate-path-unix.patch index 02fcd7c628..269582db89 100644 --- a/mingw-w64-python3/2051-set-venv-activate-path-unix.patch +++ b/mingw-w64-python3/2051-set-venv-activate-path-unix.patch @@ -1,5 +1,6 @@ ---- Python-3.7.4/Lib/venv/scripts/common/activate.orig 2019-07-20 19:02:54.072985400 -0400 -+++ Python-3.7.4/Lib/venv/scripts/common/activate 2019-07-20 20:10:57.797211100 -0400 +diff -Naur Python-3.8.0-orig/Lib/venv/scripts/common/activate Python-3.8.0/Lib/venv/scripts/common/activate +--- Python-3.8.0-orig/Lib/venv/scripts/common/activate 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Lib/venv/scripts/common/activate 2019-10-22 10:05:22.783203700 +0300 @@ -37,7 +37,7 @@ # unset irrelevant variables deactivate nondestructive diff --git a/mingw-w64-python3/2052-venv-remove-msys-from-env-and-add-exe-prefix.patch b/mingw-w64-python3/2052-venv-remove-msys-from-env-and-add-exe-prefix.patch index 4186bf33af..a2a55616c7 100644 --- a/mingw-w64-python3/2052-venv-remove-msys-from-env-and-add-exe-prefix.patch +++ b/mingw-w64-python3/2052-venv-remove-msys-from-env-and-add-exe-prefix.patch @@ -1,6 +1,7 @@ ---- Python-3.7.4/Lib/venv/__init__.py 2019-07-20 20:56:20.832694700 -0400 -+++ Python-3.7.4/Lib/venv/__init__2052-2.py 2019-07-21 17:36:47.668768100 -0400 -@@ -233,7 +233,7 @@ +diff -Naur Python-3.8.0-orig/Lib/venv/__init__.py Python-3.8.0/Lib/venv/__init__.py +--- Python-3.8.0-orig/Lib/venv/__init__.py 2019-10-22 10:05:21.691201800 +0300 ++++ Python-3.8.0/Lib/venv/__init__.py 2019-10-22 10:05:25.591208600 +0300 +@@ -235,7 +235,7 @@ copier(context.executable, path) if not os.path.islink(path): os.chmod(path, 0o755) @@ -9,7 +10,7 @@ path = os.path.join(binpath, suffix) if not os.path.exists(path): # Issue 18807: make copies if -@@ -283,9 +283,11 @@ +@@ -285,9 +285,11 @@ # We run ensurepip in isolated mode to avoid side effects from # environment vars, the current directory and anything else # intended for the global Python environment diff --git a/mingw-w64-python3/2060-pass-gen-profile-ldflags.patch b/mingw-w64-python3/2060-pass-gen-profile-ldflags.patch index d09f94f61b..c033a9d221 100644 --- a/mingw-w64-python3/2060-pass-gen-profile-ldflags.patch +++ b/mingw-w64-python3/2060-pass-gen-profile-ldflags.patch @@ -1,11 +1,12 @@ ---- Python-3.7.4/Makefile.pre.in.orig 2019-07-22 09:15:44.386184900 +0200 -+++ Python-3.7.4/Makefile.pre.in 2019-07-22 08:57:45.643259600 +0200 -@@ -713,7 +713,7 @@ +diff -Naur Python-3.8.0-orig/Makefile.pre.in Python-3.8.0/Makefile.pre.in +--- Python-3.8.0-orig/Makefile.pre.in 2019-10-22 10:05:10.396781900 +0300 ++++ Python-3.8.0/Makefile.pre.in 2019-10-22 10:05:28.430413600 +0300 +@@ -699,7 +699,7 @@ $(DLLLIBRARY) libpython$(LDVERSION).dll.a: $(LIBRARY_OBJS) python_nt.o if test -n "$(DLLLIBRARY)"; then \ $(LDSHARED) -Wl,--out-implib=$@ -o $(DLLLIBRARY) $^ \ -- $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST) python_nt.o; \ -+ $(LIBS) $(LDFLAGS_NODIST) $(MODLIBS) $(SYSLIBS) $(LDLAST) python_nt.o; \ +- $(LIBS) $(MODLIBS) $(SYSLIBS) python_nt.o; \ ++ $(LIBS) $(LDFLAGS_NODIST) $(MODLIBS) $(SYSLIBS) python_nt.o; \ else true; \ fi diff --git a/mingw-w64-python3/2070-distutils-add-windmc-to-cygwinccompiler.patch b/mingw-w64-python3/2070-distutils-add-windmc-to-cygwinccompiler.patch index 2fe7c1731a..5f81526a1a 100644 --- a/mingw-w64-python3/2070-distutils-add-windmc-to-cygwinccompiler.patch +++ b/mingw-w64-python3/2070-distutils-add-windmc-to-cygwinccompiler.patch @@ -1,5 +1,6 @@ ---- Python-3.7.4/Lib/distutils/cygwinccompiler.py.orig 2019-07-30 08:57:41.678747200 +0300 -+++ Python-3.7.4/Lib/distutils/cygwinccompiler.py 2019-07-30 09:02:39.593070700 +0300 +diff -Naur Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py Python-3.8.0/Lib/distutils/cygwinccompiler.py +--- Python-3.8.0-orig/Lib/distutils/cygwinccompiler.py 2019-10-22 10:04:07.887472100 +0300 ++++ Python-3.8.0/Lib/distutils/cygwinccompiler.py 2019-10-22 10:05:31.254018600 +0300 @@ -165,6 +165,28 @@ self.spawn(["windres", "-i", src, "-o", obj]) except DistutilsExecError as msg: diff --git a/mingw-w64-python3/5000-warnings-fixes.patch b/mingw-w64-python3/5000-warnings-fixes.patch new file mode 100644 index 0000000000..035b603638 --- /dev/null +++ b/mingw-w64-python3/5000-warnings-fixes.patch @@ -0,0 +1,115 @@ +diff -Naur Python-3.8.0-orig/Modules/_winapi.c Python-3.8.0/Modules/_winapi.c +--- Python-3.8.0-orig/Modules/_winapi.c 2019-10-22 10:01:51.434032500 +0300 ++++ Python-3.8.0/Modules/_winapi.c 2019-10-22 10:05:34.654824500 +0300 +@@ -951,7 +951,7 @@ + DWORD err; + BOOL result; + PyObject *value; +- Py_ssize_t handle_list_size; ++ Py_ssize_t handle_list_size = 0; + DWORD attribute_count = 0; + SIZE_T attribute_list_size = 0; + +diff -Naur Python-3.8.0-orig/Modules/posixmodule.c Python-3.8.0/Modules/posixmodule.c +--- Python-3.8.0-orig/Modules/posixmodule.c 2019-10-22 10:04:46.029539100 +0300 ++++ Python-3.8.0/Modules/posixmodule.c 2019-10-22 10:05:35.076025300 +0300 +@@ -4804,7 +4804,7 @@ + /*[clinic end generated code: output=cfcac69d027b82cf input=2fbd62a2f228f8f4]*/ + { + #ifdef MS_WINDOWS +- HANDLE hFile; ++ HANDLE hFile = 0; + FILETIME atime, mtime; + #else + int result; +@@ -12225,7 +12225,9 @@ + int ncpu = 0; + #ifdef MS_WINDOWS + /* Declare prototype here to avoid pulling in all of the Win7 APIs in 3.8 */ ++#if defined (_WIN32_WINNT) && (_WIN32_WINNT < 0x601) + DWORD WINAPI GetActiveProcessorCount(WORD group); ++#endif + ncpu = GetActiveProcessorCount(ALL_PROCESSOR_GROUPS); + #elif defined(__hpux) + ncpu = mpctl(MPC_GETNUMSPUS, NULL, NULL); +@@ -13489,7 +13491,7 @@ + loaded. */ + Py_BEGIN_ALLOW_THREADS + if (!(hKernel32 = GetModuleHandleW(L"kernel32")) || +- !(AddDllDirectory = (PAddDllDirectory)GetProcAddress( ++ !(AddDllDirectory = (PAddDllDirectory)(void *)GetProcAddress( + hKernel32, "AddDllDirectory")) || + !(cookie = (*AddDllDirectory)(path->wide))) { + err = GetLastError(); +@@ -13539,7 +13541,7 @@ + loaded. */ + Py_BEGIN_ALLOW_THREADS + if (!(hKernel32 = GetModuleHandleW(L"kernel32")) || +- !(RemoveDllDirectory = (PRemoveDllDirectory)GetProcAddress( ++ !(RemoveDllDirectory = (PRemoveDllDirectory)(void *)GetProcAddress( + hKernel32, "RemoveDllDirectory")) || + !(*RemoveDllDirectory)(cookieValue)) { + err = GetLastError(); +diff -Naur Python-3.8.0-orig/Modules/socketmodule.h Python-3.8.0/Modules/socketmodule.h +--- Python-3.8.0-orig/Modules/socketmodule.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Modules/socketmodule.h 2019-10-22 10:05:35.466026000 +0300 +@@ -29,8 +29,10 @@ + */ + # ifdef SIO_GET_MULTICAST_FILTER + # include /* for SIO_RCVALL */ ++#ifndef __MINGW32__ /* resolve by configure */ + # define HAVE_ADDRINFO + # define HAVE_SOCKADDR_STORAGE ++#endif + # define HAVE_GETADDRINFO + # define HAVE_GETNAMEINFO + # define ENABLE_IPV6 +diff -Naur Python-3.8.0-orig/PC/python_exe.rc Python-3.8.0/PC/python_exe.rc +--- Python-3.8.0-orig/PC/python_exe.rc 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/PC/python_exe.rc 2019-10-22 10:05:35.871626700 +0300 +@@ -7,7 +7,7 @@ + #include + 1 RT_MANIFEST "python.manifest" + +-1 ICON DISCARDABLE "icons\python.ico" ++1 ICON DISCARDABLE "icons/python.ico" + + + ///////////////////////////////////////////////////////////////////////////// +diff -Naur Python-3.8.0-orig/PC/pythonw_exe.rc Python-3.8.0/PC/pythonw_exe.rc +--- Python-3.8.0-orig/PC/pythonw_exe.rc 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/PC/pythonw_exe.rc 2019-10-22 10:05:36.277227400 +0300 +@@ -7,7 +7,7 @@ + #include + 1 RT_MANIFEST "python.manifest" + +-1 ICON DISCARDABLE "icons\pythonw.ico" ++1 ICON DISCARDABLE "icons/pythonw.ico" + + + ///////////////////////////////////////////////////////////////////////////// +diff -Naur Python-3.8.0-orig/PC/winreg.c Python-3.8.0/PC/winreg.c +--- Python-3.8.0-orig/PC/winreg.c 2019-10-22 10:01:02.698546800 +0300 ++++ Python-3.8.0/PC/winreg.c 2019-10-22 10:05:36.682828100 +0300 +@@ -800,6 +800,7 @@ + case REG_BINARY: + /* ALSO handle ALL unknown data types here. Even if we can't + support it natively, we should handle the bits. */ ++ /* fallthrough */ + default: + if (retDataSize == 0) { + Py_INCREF(Py_None); +diff -Naur Python-3.8.0-orig/Python/thread_nt.h Python-3.8.0/Python/thread_nt.h +--- Python-3.8.0-orig/Python/thread_nt.h 2019-10-14 16:34:47.000000000 +0300 ++++ Python-3.8.0/Python/thread_nt.h 2019-10-22 10:05:37.088428800 +0300 +@@ -342,8 +342,9 @@ + { + dprintf(("%lu: PyThread_release_lock(%p) called\n", PyThread_get_thread_ident(),aLock)); + +- if (!(aLock && LeaveNonRecursiveMutex((PNRMUTEX) aLock))) ++ if (!(aLock && LeaveNonRecursiveMutex((PNRMUTEX) aLock))) { + dprintf(("%lu: Could not PyThread_release_lock(%p) error: %ld\n", PyThread_get_thread_ident(), aLock, GetLastError())); ++ } + } + + /* minimum/maximum thread stack sizes supported */ diff --git a/mingw-w64-python3/PKGBUILD b/mingw-w64-python3/PKGBUILD index b01d4d32c1..b49cc5064f 100644 --- a/mingw-w64-python3/PKGBUILD +++ b/mingw-w64-python3/PKGBUILD @@ -17,8 +17,8 @@ _realname=python3 pkgbase="mingw-w64-${_realname}" pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}" conflicts=("${MINGW_PACKAGE_PREFIX}-python2<2.7.16-7") -_pybasever=3.7 -pkgver=${_pybasever}.5 +_pybasever=3.8 +pkgver=${_pybasever}.0 pkgrel=1 pkgdesc="A high-level scripting language (mingw-w64)" arch=('any') @@ -51,14 +51,12 @@ source=("https://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz 0180-MINGW-init-system-calls.patch 0200-MINGW-build-in-windows-modules-winreg.patch 0210-MINGW-determine-if-pwdmodule-should-be-used.patch - 0230-MINGW-AC_LIBOBJ-replacement-of-fileblocks.patch 0250-MINGW-compiler-customize-mingw-cygwin-compilers.patch 0260-MINGW-compiler-enable-new-dtags.patch 0290-issue6672-v2-Add-Mingw-recognition-to-pyport.h-to-al.patch 0300-MINGW-configure-for-shared-build.patch 0310-MINGW-dynamic-loading-support.patch 0330-MINGW-ignore-main-program-for-frozen-scripts.patch - 0340-MINGW-setup-exclude-termios-module.patch 0350-MINGW-setup-_multiprocessing-module.patch 0360-MINGW-setup-select-module.patch 0370-MINGW-setup-_ctypes-module-with-system-libffi.patch @@ -107,8 +105,6 @@ source=("https://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz 0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch 0910-fix-using-dllhandle-and-winver-mingw.patch 0920-mingw-add-LIBPL-to-library-dirs.patch - 0930-mingw-w64-build-overlapped-module.patch - 0940-mingw-w64-Also-define-_Py_BEGIN_END_SUPPRESS_IPH-when-Py_BUILD_CORE_MODULE.patch 0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch 0990-MINGW-link-with-additional-library.patch 1010-install-msilib.patch @@ -123,17 +119,17 @@ source=("https://www.python.org/ftp/python/${pkgver%rc?}/Python-${pkgver}.tar.xz 1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch 1850-disable-readline.patch 1860-fix-isselectable.patch - 2000-warnings-fixes.patch - 1900-ctypes-dont-depend-on-internal-libffi.patch + 1870-use-_wcsnicmp-instead-wcsncasecmp.patch + 1880-make-default-python.patch + 1890-_xxsubinterpretersmodule.patch 2010-configure-have-inet-pton.patch - 2020-use-_wcsnicmp-instead-wcsncasecmp.patch 2030-fix-msvc9-import.patch - 2040-make-default-python.patch 2050-undo-venv-redirector.patch 2051-set-venv-activate-path-unix.patch 2052-venv-remove-msys-from-env-and-add-exe-prefix.patch 2060-pass-gen-profile-ldflags.patch 2070-distutils-add-windmc-to-cygwinccompiler.patch + 5000-warnings-fixes.patch smoketests.py) # Helper macros to help make tasks easier # @@ -180,8 +176,7 @@ prepare() { 0170-MINGW-add-srcdir-PC-to-CPPFLAGS.patch \ 0180-MINGW-init-system-calls.patch \ 0200-MINGW-build-in-windows-modules-winreg.patch \ - 0210-MINGW-determine-if-pwdmodule-should-be-used.patch \ - 0230-MINGW-AC_LIBOBJ-replacement-of-fileblocks.patch + 0210-MINGW-determine-if-pwdmodule-should-be-used.patch plain "Apply Roumen Petrov's compiler patch (2)" apply_patch_with_msg \ @@ -194,7 +189,6 @@ prepare() { 0300-MINGW-configure-for-shared-build.patch \ 0310-MINGW-dynamic-loading-support.patch \ 0330-MINGW-ignore-main-program-for-frozen-scripts.patch \ - 0340-MINGW-setup-exclude-termios-module.patch \ 0350-MINGW-setup-_multiprocessing-module.patch \ 0360-MINGW-setup-select-module.patch \ 0370-MINGW-setup-_ctypes-module-with-system-libffi.patch \ @@ -251,8 +245,6 @@ prepare() { 0900-cygwinccompiler-dont-strip-modules-if-pydebug.patch \ 0910-fix-using-dllhandle-and-winver-mingw.patch \ 0920-mingw-add-LIBPL-to-library-dirs.patch \ - 0930-mingw-w64-build-overlapped-module.patch \ - 0940-mingw-w64-Also-define-_Py_BEGIN_END_SUPPRESS_IPH-when-Py_BUILD_CORE_MODULE.patch \ 0970-Add-AMD64-to-sys-config-so-msvccompiler-get_build_version-works.patch \ 0990-MINGW-link-with-additional-library.patch \ 1010-install-msilib.patch \ @@ -286,13 +278,9 @@ prepare() { 1830-mingw-implement-setenv-for-PY_COERCE_C_LOCALE.patch \ 1850-disable-readline.patch \ 1860-fix-isselectable.patch \ - 2020-use-_wcsnicmp-instead-wcsncasecmp.patch \ - 2040-make-default-python.patch - - apply_patch_with_msg 2000-warnings-fixes.patch - - # https://github.com/python/cpython/pull/9258 - apply_patch_with_msg 1900-ctypes-dont-depend-on-internal-libffi.patch + 1870-use-_wcsnicmp-instead-wcsncasecmp.patch \ + 1880-make-default-python.patch \ + 1890-_xxsubinterpretersmodule.patch # https://github.com/msys2/MINGW-packages/issues/5184 apply_patch_with_msg 2010-configure-have-inet-pton.patch @@ -308,6 +296,8 @@ prepare() { apply_patch_with_msg 2060-pass-gen-profile-ldflags.patch apply_patch_with_msg 2070-distutils-add-windmc-to-cygwinccompiler.patch + + apply_patch_with_msg 5000-warnings-fixes.patch autoreconf -vfi @@ -399,21 +389,7 @@ build() { "${_extra_config[@]}" \ OPT="" - # Tests to run for the PGO build (see --enable-optimizations) - # Backported from 3.8, so we can drop it with 3.8: - # https://github.com/python/cpython/pull/14910 - local PROFILE_TASK='-m test.regrtest --pgo \ - test_array test_base64 test_binascii test_binop test_bisect test_bytes \ - test_cmath test_codecs test_collections test_complex test_dataclasses \ - test_datetime test_decimal test_difflib test_embed test_float \ - test_fstring test_functools test_generators test_hashlib test_heapq \ - test_int test_itertools test_json test_long test_math test_memoryview \ - test_operator test_ordered_dict test_pickle test_pprint test_re test_set \ - test_statistics test_struct test_tabnanny test_time test_unicode \ - test_xml_etree test_xml_etree_c' - - make \ - PROFILE_TASK="${PROFILE_TASK}" + make } package() { @@ -424,9 +400,9 @@ package() { MSYS2_ARG_CONV_EXCL="--prefix=;--install-scripts=;--install-platlib=" \ make -j1 install DESTDIR="${pkgdir}" if check_option "debug" "n"; then - VERABI=${_pybasever}m + VERABI=${_pybasever} else - VERABI=${_pybasever}dm + VERABI=${_pybasever}d fi # gdb pretty printers for debugging Python itself; to use: @@ -443,7 +419,7 @@ package() { # Need for building boost python3 module cp -f "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/libpython${VERABI}.dll.a "${pkgdir}${MINGW_PREFIX}"/lib/libpython${_pybasever}.dll.a - cp -f "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/libpython${VERABI}.dll.a "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/libpython${_pybasever}.dll.a + #cp -f "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/libpython${VERABI}.dll.a "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/libpython${_pybasever}.dll.a # some useful "stuff" install -dm755 "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/Tools/{i18n,scripts} @@ -457,7 +433,7 @@ package() { # clean-up reference to build directory sed -i "s#${srcdir}/Python-${pkgver}:##" "${pkgdir}${MINGW_PREFIX}"/lib/python${_pybasever}/config-${VERABI}/Makefile - for fscripts in 2to3-${_pybasever} idle3 idle${_pybasever} pydoc3 pydoc${_pybasever} pyvenv pyvenv-${_pybasever}; do + for fscripts in 2to3-${_pybasever} idle3 idle${_pybasever} pydoc3 pydoc${_pybasever}; do sed -i "s|$(cygpath -w ${MINGW_PREFIX} | sed 's|\\|\\\\|g')/bin/python${_pybasever}.exe|/usr/bin/env python${_pybasever}.exe|g" "${pkgdir}${MINGW_PREFIX}"/bin/${fscripts} done @@ -474,7 +450,6 @@ package() { # Fix up two instances of MSYS2 paths in python-config.sh in-case the final consumer of the results are native executables. sed -e "s|${MINGW_PREFIX}|${PREFIX_WIN}|" \ -i "${pkgdir}${MINGW_PREFIX}"/bin/python${VERABI}-config \ - -i "${pkgdir}${MINGW_PREFIX}"/bin/python${_pybasever}-config \ -i "${pkgdir}${MINGW_PREFIX}"/bin/python3-config \ -i "${pkgdir}${MINGW_PREFIX}"/bin/python-config @@ -485,100 +460,96 @@ package() { } -sha256sums=('e85a76ea9f3d6c485ec1780fca4e500725a4a7bbc63c78ebc44170de9b619d94' - 'a2e92cf57985b93bb6203b26c84140610378bd1eb57e8ab8f00e0c0f9afb7b75' - '8b2c7d6b3d0efec48f44c1e46be25fcfb4ba6711ca49b93cf9fa40fb4f0966b6' - 'b2111d31e812b33e5cec85f6505bd730975dd242f8eb138307f71ffe0d7fdf6b' - '7983bc803f4b845c09589b039d4dd099570e68716c339c940d785ef4785ee1a8' - '43be25da4f4d58ab4f40e3338907c057fd98999f7f32e83816ad20c7a41e6f2e' - 'cac9b0ec37bd5fb6e21fa6b4708242b160b60de1e7cdfaa7a843b4f5e1a0e498' - '3028e28ce3c76e2cde223c39ef903b789015773834b69260b4116adb22b31e7b' - 'e05770b5fc8126141ee21ccb252a126d366c4249253ab7a2aeafafbd2e1d4f54' - '850052f215e0bcaec7723689233dc0e6dbf4b3dc1d97e02b7727bfaa22378296' - '8946c6ee9dab5ed24c083a82e71d74013a3690afc7e98f58d239d2afb1fbef70' - 'b026d5fa0eddeda532d4a3352b4d6f5506593cef0aae4c361be791faedd45bd7' - '578e395e45ce69445639b0bb1ad9c09934acfa6090d4bca96d0955a4b325ace8' - 'ce1e3f39cd6e4003f1dfbf43a81425a5cf34969a76f9ca7715edd8d8ae337725' - 'a2934b7de03c247291a09ab5509a6b6a98f93cb132f87cd428167b5f7339d632' - '3b923d508432cc9df6f3593ed1bbe7e97b6956ae8d6eaaf047c7263186679e0a' - '1121c2bed2e4bd6415e3e246d48a3bd5ae66e01390cb5bae2ea55eb8ed4c64ae' - 'a2c96cc1e0014121a09ba25dd08f722cb0d507488be52b217ee94a28238532cb' - 'd334e3a50ce9464961739218c4832ade990e14d613416a66f6896c20b6a14873' - 'ef0c54f898cf8511766f7d4ea5c043fbf50b0280618a81efc48f5448397c112e' - '364e3afbfe4b436b2c63d352a98d552b55baebbe4bee0b19dadaadd369f6fe97' - 'b86c646b8eca162f73a107e453498d06ed7c79b14d5823a48f7108822230bdfd' - '22e002727f64cac5f5ba38d1da516fb10e04f41f3366e15796ed36a05f1f1685' - 'c629be9a191948eff146f07dcb09c760ab55acfd08639dfc94dc1bc43160012f' - '92d106d0dbc273cb08cb52759ba8467e16e6d61019eeb3464397822b991ed861' - '8e2ae92f24ca52b16215612a57fe5076d5b0ea1cc0923d5ab9bd7395b6330816' - '430340435a7e1ab01c372e88008c45e7fef938fb547f5c95464ca69010184d5c' - '4f28511452f8c56aadc79e6e1079531aad94392778f9a62090e9c423487baf4c' - 'd555fac5000a86ade7a1c191d3eb09bdb8aa46d0beb73e54e6243731fae35e8f' - '4fb0f33a99784b2f397adc013591c64bdbdbb8e7a4f839880a8fc4678ee2b435' - '986bcf760501ca0f069588b124afd53ffdd37fa1edfd85a8b631d63709859f75' - '3fa1ceb829d311ee42c919b42c78917b2ca3b8ab1b30a5247232f4ac0cef1d2f' - '85546a45a460e42e43e97d158d0f78082c711c5a369e3bbac1bfa5065208d51c' - 'ae5c4001975f10c15aae614b48671821a23ea7367fb2e6a911707dde48c28638' - 'a14d40567e6bf6d08fab55e95a56495eb6fcdfc9d06d80b959b487df26481190' - 'a8b2096f3b4a26d32a325e778ed47cd921d40a1ef481a0387a5ff3592d5d9c77' - 'c0fa618b89fd43b27862f4c765926f19cf5679a46e8af3d8eb918a648e33429b' - 'a562224902cb31ffbc31f868c34faf5db05444bebfdf502649fe8a29cd679c2d' - 'f0d20525f42387153cf82e2d4a3139a7b7a39a7408833c8b02e9c072a9967674' - '8bd4dddfda38e8dae700eca868693cba3b2fb766088b46a52a4ac475e9e6b25e' - 'a88ed0a61dcb0a860286ab1d6bf489b272a670625687924943713a58c6068a94' - '80dabe16710799fb070dfeed071161dfd439f156e2cf79e0c5ab7d51279d342f' - '32c2b035f094823de9eeb69235929da3029d13c64354a6a00a051bba5d8eb274' - '76340fbb1d12383cfe6abcfa7d5e4f993f98c2b03b5216c8af62219afa7405a1' - 'c64baa4c0457186269f02c74f5f58f4c56fd435384c45f778e86deac9b9f435f' - '65454f7d338af3a41f574f87b2d5a91ec3a96d474fb61d2d5fc9f9938a7a83fb' - '5a5e9bbe642e2c86b3feee87b14ca3c4716178266a08deaa02a79b71fd36f00f' - 'acea1a2bdbb96fa2bcb368225d42df54c41ea308f91f849e2c3c2770845207c6' - 'ec4d73e328cf5f0cc83b2d865aec9ca66dea1ecd9f4da4be98e1170a8d20b3b4' - '77cf11ea1d75d0a08dc03ff6978294e923a4123119b36822fd1bd724cabb75c7' - 'b1ffcbd24d5ca05a6f4b10288ff0e720db3cc106a6d44cdb65b896ce44bec461' - 'dc2badcbac568895c37fe5add0e59087c7864937f3c0ce01fb910de5bafab024' - '7aeee8c27434f4684a253b5c91ece99f01f78db04cab92739c19ff71adbe1bf0' - '59b7abb07b3ee572668fee1ad021837187d267a715fcd5a1a4fc93276a9646ed' - 'ce32ddf6bb7876237fdfad713f1c8f1d97afa470d428d3129e1c01308f4c8302' - 'f445523eff779faa76740eb32daf3ffb61834a6a49bd05939e61726e1174cd4b' - '8c906d78bc2a8542e5f52fa178d398fb2c298beef8cbb5efd2d74729bee2bb47' - '5094776bb60411f48ed57c35ccf1da76fe9aafabaf13f20ed8eb199ef5b51c66' - 'c4adc7cfc4f182c953c1792472728eac848cec0bac9526f7fab0f03a172e4c4d' - '4f3eaf5a4fbaa5848a68bf1f686e3854ac6bee7e31a0a643dcaa22b52c1cd078' - 'e176cd882818e857d6647a4fc08b00f353f11883f8cded1326239c3b2138b6ba' - '4eace191297b47ebab2bf7dd68f6edaa1cb46d3f44dc86c9ebc88f96d6a46dff' - '508ebdc995055ace5673d4734f015da4d989953f57a7ac076d04c97a79d5e1a7' - 'd37f6c6683784a5554e2065a52dc05ad55cf28ea18333acf42af421b7d4d5803' - 'e076f36172f8b4fa76d06d41fef66e73b4e64a88e91e6ecbd9fd6822a0d14b32' - '28684b03d3bab789983163449afa9da4d910fcfe944c9ff9853feb4c672e82fc' - 'f6a9909714c553ef6c2ea1c2e96a7e3f61e5cd8c60fe833657f5d62c31e0266b' - '088117409d4f60cec42aff46695f4f80911519d5488466efcdbd9d3d9cbcd583' - '0ae09d2f23e346b2f33256782b9ac42bfaae47f6b1175b16a5e30ba2dfcbaa5e' - '30b60e3242d9dfe8314e099fac1aa9ee478032abe4c6a35644fbdb1dee774c41' - '587d8c789d152145608ad5ccc74a178b37335b9accc5d26798fb80040c1579ac' - 'a032186578651a66e20157e73728487d8c2845fb01200178182f300ef1253f2c' - 'cb562435b70aa4184751df111278e333402fdacad04248859dfc973878f81461' - '0593d93f5f9312bb4233b6809d2fdb30edbac37889fb0e4e96abe818d884194a' - '178c7316a0543c75dc15cf6039174d9acd5eb958fbce60a25d44766c39e9a60c' - '6a6e2de169adcf5d9f13b4ae31171f11f29d82fd1dd29b406fd248044b6d3776' - '56a68e711806062161a1ddf4a7f16f1141bada46ef5f64f526ecda460edf299d' - 'bc8057f54cb377d9fe3cf4e2a7d00980d32249a57471af7f94234f6258486c61' - '204b1e14b4a9614182a68074bd66c33a4ae84134210458079d22d61d8526ff1c' - '0d76ffdca82b978e9fda07e12351cd61f23973af204e65db69ebafce71aa7880' - '9785322e90050ad9019ce7edd1f3c549ac4ae78d0ed240ca1bffffe9de588d2e' - 'f8d3b68097cc0bc53d846cd55744dc9b311f3f32eaefb8d03c6b17cfb61485f0' - 'cdbdbfe4b8c02d58fd36db15d94425ae0b48124e709645fb717167280ff1bf15' - '3262ce24714dc6cfea5b18d528d7f1a333128eadf5aa9c3a026131c34f082e1f' - 'bd9b934e8c1f92573115efaef6b6b04966e3222ba769511e006366d1217d34d6' - '3231d1eb8e7a73528f03d4ef3fda645cb74a3cf78ed80de1d290484a77a89d27' - 'e3b0171303b3e28a7347a81b1110dfe42df92a87d160caf624510304d5390728' - '150dc7a5c59ef82b0bf258a2cd4233f2975fb89818849de39c185ce368a124ab' - '2d6605515648ef3ffe53e417719d4d51a7a2a79566e26e920733422dfd3751cb' - '6c4b0c469f3c04e5586553b7e4e8e30e8e36163f30d4139605b7c0eddf994347' - '0f6c62a8b11198216e42b88f294e01150d255a6da72fb75c6677f64cc7a4a092' - '1497d664aa746cd6b0995d5518c7e0de2f80a08d125b472c81aabc99a484d445' - '6ee9095eb78c88c205e225c0e8a0b169f5498c62d6531a2d3199450d0fe895e5' - '09c9f8e14c1f54a1242f4db21af4a014d414fd72b3a92241842965f550f75472' - '180fd0a8f4d24ed7e50eb7916548f7fe398811a76063b043efdf7ab18602c55b' - 'f6aa23ec8031f24fb38330e9f150e82781a3802321b038906d083d7b0269bcfa' +sha256sums=('b356244e13fb5491da890b35b13b2118c3122977c2cd825e3eb6e7d462030d84' + '0ee1acf745d38d41fd098487b9595705fd8f6666d7b154d54ddba32d14f1253b' + '0d27f52bc514dbf2b730f62fa6c18c797a2f4cbad8698d95b15e2774d68e483d' + 'd2d73d9fb9db48fecb3a6856e4606f444eaac7637fd4f65e192701e53ac422eb' + 'abed03b63e0b498804b44d1cdf8b1ff0c3c4329d3ea9c0323b2512adcacb9b57' + 'c2fb01aacfc5d96bdb69ef37282f300ecd8bfa3e11921caa1fce8e871f5a31f8' + '6446e0a5255d317d93c5c55094d4c797cf68fbd14bb08d38c94d7080837d1380' + '8e90c38ac27316781f8853fcbce300526d92732edf4cd08d1dc2a0438fd2d694' + '36f6e8b4320ee79b6ff7e84aefec3aec57293bcbacf08ea7847f3147d459b4a9' + '0a6a1ee72f3aa050f1ff0b8ff88845189309163ef1a5f70808f1ab351348cdae' + '704cf5712013cb2c0299f9122a3e40817e8f2b9e4ae33b949aad02299251aa3d' + '910c84eb01cfe2207ee7fd8549247d9498be8b58c4dbbb6eaa2118037e77730e' + 'da5057e58a4866e20c3c604153febb2b57a089d327a954ee5b51830af8204e17' + '265a3c99923b76210e0401bc0cafa88b99328343aec43d64aa94cb84fcdda6d8' + '4f1db216d6a2dad137b07ccdd4b2d71c37169083706addf90c3b0b850312632a' + 'f07fc8cc9030c2adf9d7c301eadb8b182aad7f1f2cde102cce730f51a093bbdd' + '9f05613753a8b4ad8c5a6b32c257a318e9ff416345f4ebef3e69f56cf9a51578' + '9269a4d4dab6a0e93b8a0b5ed84c3e93bdfbaf99148e467daf993f6f767c8d45' + '1e89597d37838ad7c18463b83476b3cc6bec1480a052e757b9fbfb3264d4d890' + '03891c0fe4ad90a9926c0e04dc7bb0efbf0022cd6d7746cf2d173dbd739f6142' + '3b85b18922d21e8fc6e07a12e1c8d79c7ec271dddb75ed0fb4f44148b030b360' + '6d0119cd216b944927254598cfec1b85757000ab39f5ba987a86ed2216d6351b' + 'ee3f515a3e4060b08b106d788039aa0abfb0424fdf09b613dbab06256405b7ef' + '9c6e64ba27d72e912be3486a0cc65d9f59f5d7ba71fb634fef0860a00311d12c' + '3842234d2c3aeece0416a670c789801ef76ce31841a9c1bfcbb26340aa346712' + '194ef359356d4d58bb15bafe8738c0586350d26e85cc39f5db833f428d67b41d' + 'ce63ec2ec57db5fcfae332f8bb413d6c2f8888d29e449b8ae674cbcbe01a5f95' + 'f7729d39c8eadce379b2b21cd253c604bfe3e4293945b4d6def9bf0c9b3c8f4f' + 'be165a89d087dcc1d06b78031d441e7dd1f5d5c2a0a73de49c4c9e211132b97a' + '85ec670b8c0a8fc7a5dcafc19aa697d358c5bfe67cb3d7e17ec8070d4edb16f3' + '4804d854bb9fb3e6ff11c23e420b6ff34266bbc93ce33115129bf838171d49ee' + 'a26997445938dd01a03a16a622d19adbc270e679df195407436c97246c96f99a' + '269fc7d93aeefc286009612604385ac2ec1d0304b97c858ffe123c282be8d94c' + '17341d1d4f654f8fbaea905dcf0f4091c66eefa6725b592632413fc77498b6c3' + '47613ba1b262d7c3dbe96ecff5543d0923ad874eec7aa7451e17b0b414691f83' + '1b3a27ea33b66efe3131dcb9951030aa7d4c18f9ec851e89a4582b69f8e673e7' + '90719b6f11be4be6e6df37a9699d87da9f5200090baf0276f0d6aeb717b9e06c' + '840cbf8fafa2cc230dd8a9f667dbad80d54ad573f929f9970252722b9183688b' + 'fbae2e8121a027713ce9cf2197b4d702f512e65d028a2a71d4229a4c70f8410d' + '8d442685b617a5363aaea4805daf0af55817509dd5cffa2c821c27bbccb1c852' + '23a3566e06b43ccf292bebe0a464421d41c5a30deb9f80d0964dd01ff483e5ed' + '4bb617a956b783edfb1a4246580172c4f9eb2728ff14730618854a3be7840dad' + '65aff7e831f3bb4b37ed5d4db5dfa75ab6bd582d132dd197e658ccb699dbfac7' + 'f2a7b6dce11311e3d318d5729258935a520dcb7ce4dc879ecb1738a2f8bfe434' + '0a81aa7fd5fa0b511fda81ce3345f3199d3be1c83fc660f7f365ef4ede88f3f7' + '27122f9db1be8b1efbccd6ab263313aa66c97dfcd0acb9499434a1fa4ecbb2bd' + '0c93d28bec11968da47b300fe8049d7e32c07c27ccde36ce5f1701306f3cbaf5' + 'cef46c7e1afcaf9b6bacf723d5ae22f3f42045eb93bbd9bf5d2b1dba7638028a' + '819bd305734a8fe190afdd399e6158c041c5b9912b436375b2d8dc520f7376ba' + 'f33d70071a232a2a3930aa0a2b3f032ef6a17e07acc7412000ceb25bdd339ade' + '5c56aa13fd3f18bd4b327d8cd540ff7fd9e0145e6358d6330103938655d3dfd7' + 'ca3eea7fac20d160d9aa3a8e17c0b9ab169cfe16a685f78d2c4d1fd52f8f6784' + '7f2b4c0fcf4a78b983ae3c3a57c47748470370aa4bf17ea9b3ad53802d201afd' + 'a55bd3b222d08dc6bb68d4e30ec3e544b303d93330131a310f3a2e20ca93f4b9' + '2b4e223aed8ec9df431806c54bd3df923dbd34805e311006aba3f62682eeca56' + '882d3ac8739184368a30991843db8581e3fd1aee639ddc110ac8cd9e8a89ea1f' + '5d1a85e93b4c7626aa2cfa68201c2d93574647ab6ef0679d3ff4b4cc5c2ba042' + 'd06065357943599d515b7ea081da99981b68c4c6a9a5e6bb5e0f1019fea80104' + 'b323e44874873591b763b1926cac00d354323d32ff06941eefa415dbdb643cfb' + '26fe3548c0e3997aa09077a5f4d1b4152c98c6c6e7ed64e26557704cc4758f73' + '2b33a669fc281b69d6d3683402ea8d83a86f6bf625a14944d0ac553f414688d3' + '86223efa8b47df1aec5bdecbe5321b29cfbba46e49bf268cf2d646423d8990c2' + 'd817ee8eeb04450de6c313db4cde76cca92236e14b60fb0fdb30014250b76fdb' + 'a8d7416f819963fb7d2e6800d51d27f5fdc74d804d2b559528eb6867c9e3b88a' + 'a492d1366f130122e4e54bee722b65a3d8a2afb30768026e2922edec0d11c9e4' + '16ab24a074e2e06e6cee4bc06373b2b71e5d7990b71f60fa613a6e9bf55d6c12' + '3245dc7c2e65e15c981b5a9c6372210dae582e7c7dfee632ec92a40868f3a63b' + '168172f22ea13879b958179fee20d0b2d78136bc755501f108840a14a0b521f6' + '5f6de8a7646cf755df9f8666346dbcff1005b5165b7b9aea75921344b3eceee6' + '84d2457f89057d1f4c48cfe85a1fe4f397eaa6a4f2dd0bad36beccf9dfdb5819' + '8fe0d9cb7b36faa27d2bb41661f4f9ea0298901d261c5daf702e29e97e46bd4c' + '7e2652a26a8e7198b9b6fd2bfd476c514362f347ba75b1dd014faac443266fd7' + '8ea5b335b10bfb4e492646902db043aee06c953941b3eca7fe24603a3238abf8' + 'a9977459a8e6c31f1643da7ede6ac7199dee96559d74188f5c9d3799787ac4fa' + 'df598e955ce9886159f857378314b59ac07aaa167bc23ffb656f5f61b7ff1b01' + '551047905350e113384f99e0e929e9381dc0a4ed514ca4ebe279dcdad798edce' + '1da319664d39427156488b9b39ff39e33c53ef608f66319fdf9fb9bcdb29020d' + 'fc6164a90f0ca2a9341aaf4448b4334c3393459ca5cbad6d7149f8bcf70da5fe' + '8f917063fe5e662ffe11d6e782d5828c41ec54a04b90693db9b5df4280e9ade5' + '181672743d9e2449064a1b18764fa400af5d3cd268098e7b7e5069d0b128caa2' + '6f2032347bb40e2ebe9b3a03062147ffa2f656d47c87821623c3b7d46dc15ddb' + 'c4670070e546317295071350872e1a00918fd3284609620f84beb44ed54c1ebd' + '9141426ce9a02877e8118395479aa4f44f5d7f22afec3984bad9d0df41a59844' + '17bf1ea04f476ee66555bc4386ffbebfe6be6f75e67947b7f85511241ac46407' + '0ded9e2792b95902d898aba91020103875f2987a9566b353f3e6988b08848f4a' + 'd3a0669c83e4df5d33606b4c3443d2c6c71b76cb4f6421d6d54ee630023be6c2' + 'c49e557d57a459b62c327bbbfa17b49e282e9978656a2cbae30685b5c97c1ede' + 'a7fbf65a86889f95138360ca4dbd4e51de2e214384ee39740d9c6c381ff997d9' + 'ea0c602b59803b7f274c351676f6b09f93f3ff2b8695f28390dcb3effacb95db' + '6f1a48380445406709ba5c6b4b9c6f0301ea645324feb429f3719dc29b8f28ff' + 'b2f4083ada35c18876edf38220d84ca757cf710bc5c2d80ee8b5083dc6c2609f' + '24151631c3e70306ae92ffb8fea38992a752cd0a76771a5e53445f56c2be1f00' '821402ddaef92140c70041b007bcf15e1cd5fe0fdb9f4f612da868382cc24585')