diff --git a/dev-lang/python/patches/python3-3.6.9.patchset b/dev-lang/python/patches/python3-3.6.12.patchset similarity index 100% rename from dev-lang/python/patches/python3-3.6.9.patchset rename to dev-lang/python/patches/python3-3.6.12.patchset diff --git a/dev-lang/python/patches/python3-3.8.6.patchset b/dev-lang/python/patches/python3-3.8.7.patchset similarity index 100% rename from dev-lang/python/patches/python3-3.8.6.patchset rename to dev-lang/python/patches/python3-3.8.7.patchset diff --git a/dev-lang/python/patches/python39-3.9.0.patchset b/dev-lang/python/patches/python39-3.9.1.patchset similarity index 94% rename from dev-lang/python/patches/python39-3.9.0.patchset rename to dev-lang/python/patches/python39-3.9.1.patchset index 7c4ce6db5..59230207a 100644 --- a/dev-lang/python/patches/python39-3.9.0.patchset +++ b/dev-lang/python/patches/python39-3.9.1.patchset @@ -1,11 +1,11 @@ -From f344dc356dc416a991c2be1fae2b9f321b10f9b6 Mon Sep 17 00:00:00 2001 +From 65545a9e2654e94a3010c68735595e6ed76178cb Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Thu, 10 Apr 2014 16:03:33 +0000 Subject: initial Haiku patch diff --git a/Include/pyport.h b/Include/pyport.h -index 6505af4..3421aac 100644 +index 4bd4eb4..5354912 100644 --- a/Include/pyport.h +++ b/Include/pyport.h @@ -843,7 +843,7 @@ extern _invalid_parameter_handler _Py_silent_invalid_parameter_handler; @@ -229,7 +229,7 @@ index 26e4500..c150211 100644 # Somehow /dev/tty appears seekable on some BSDs self.assertEqual(f.seekable(), False) diff --git a/Lib/test/test_posix.py b/Lib/test/test_posix.py -index be121ae..33d11f8 100644 +index bfbcbab..7f4c751 100644 --- a/Lib/test/test_posix.py +++ b/Lib/test/test_posix.py @@ -1166,7 +1166,7 @@ class PosixTester(unittest.TestCase): @@ -242,7 +242,7 @@ index be121ae..33d11f8 100644 def test_mknod_dir_fd(self): # Test using mknodat() to create a FIFO (the only use specified diff --git a/Makefile.pre.in b/Makefile.pre.in -index 77f91e7..405cf49 100644 +index f128444..b5eb77f 100644 --- a/Makefile.pre.in +++ b/Makefile.pre.in @@ -142,7 +142,7 @@ BINDIR= @bindir@ @@ -408,7 +408,7 @@ index 1601ec0..4c98fe8 100644 else PyErr_SetString(PyExc_KeyError, "getspnam(): name not found"); diff --git a/configure.ac b/configure.ac -index d60f052..874a3f3 100644 +index c968d14..54f68ac 100644 --- a/configure.ac +++ b/configure.ac @@ -1156,6 +1156,16 @@ if test $enable_shared = "yes"; then @@ -436,7 +436,7 @@ index d60f052..874a3f3 100644 CYGWIN*) LN="ln -s";; *) LN=ln;; esac -@@ -2645,7 +2656,7 @@ then +@@ -2660,7 +2671,7 @@ then BLDSHARED="$LDSHARED" fi ;; @@ -445,7 +445,7 @@ index d60f052..874a3f3 100644 LDSHARED='$(CC) -shared' LDCXXSHARED='$(CXX) -shared';; FreeBSD*) -@@ -2712,7 +2723,7 @@ then +@@ -2727,7 +2738,7 @@ then else CCSHARED="+z"; fi;; Linux-android*) ;; @@ -454,7 +454,7 @@ index d60f052..874a3f3 100644 FreeBSD*|NetBSD*|OpenBSD*|DragonFly*) CCSHARED="-fPIC";; OpenUNIX*|UnixWare*) if test "$GCC" = "yes" -@@ -2740,7 +2751,7 @@ then +@@ -2755,7 +2766,7 @@ then LINKFORSHARED="-Wl,-E -Wl,+s";; # LINKFORSHARED="-Wl,-E -Wl,+s -Wl,+b\$(BINLIBDEST)/lib-dynload";; Linux-android*) LINKFORSHARED="-pie -Xlinker -export-dynamic";; @@ -463,7 +463,7 @@ index d60f052..874a3f3 100644 # -u libsys_s pulls in all symbols in libsys Darwin/*) LINKFORSHARED="$extra_undefs -framework CoreFoundation" -@@ -3035,6 +3046,12 @@ LDFLAGS="-fsanitize=undefined $LDFLAGS" +@@ -3050,6 +3061,12 @@ LDFLAGS="-fsanitize=undefined $LDFLAGS" AC_CHECK_LIB(nsl, t_open, [LIBS="-lnsl $LIBS"]) # SVR4 AC_CHECK_LIB(socket, socket, [LIBS="-lsocket $LIBS"], [], $LIBS) # SVR4 sockets @@ -476,7 +476,7 @@ index d60f052..874a3f3 100644 AC_MSG_CHECKING(for --with-libs) AC_ARG_WITH(libs, AS_HELP_STRING([--with-libs='lib1 ...'], [link against additional libs (default is no)]), -@@ -4412,6 +4429,7 @@ AC_CHECK_FUNC(__fpu_control, +@@ -4433,6 +4450,7 @@ AC_CHECK_FUNC(__fpu_control, AC_SUBST(LIBM) case $ac_sys_system in Darwin) ;; @@ -485,10 +485,10 @@ index d60f052..874a3f3 100644 esac AC_MSG_CHECKING(for --with-libm=STRING) diff --git a/setup.py b/setup.py -index 770866b..8b9acab 100644 +index bd5f736..602b332 100644 --- a/setup.py +++ b/setup.py -@@ -64,6 +64,7 @@ CYGWIN = (HOST_PLATFORM == 'cygwin') +@@ -65,6 +65,7 @@ CYGWIN = (HOST_PLATFORM == 'cygwin') MACOS = (HOST_PLATFORM == 'darwin') AIX = (HOST_PLATFORM.startswith('aix')) VXWORKS = ('vxworks' in HOST_PLATFORM) @@ -496,7 +496,7 @@ index 770866b..8b9acab 100644 SUMMARY = """ -@@ -787,6 +788,11 @@ class PyBuildExt(build_ext): +@@ -772,6 +773,11 @@ class PyBuildExt(build_ext): with open(config_h) as file: self.config_h_vars = sysconfig.parse_config_h(file) @@ -508,7 +508,7 @@ index 770866b..8b9acab 100644 # OSF/1 and Unixware have some stuff in /usr/ccs/lib (like -ldb) if HOST_PLATFORM in ['osf1', 'unixware7', 'openunix8']: self.lib_dirs += ['/usr/ccs/lib'] -@@ -832,14 +838,14 @@ class PyBuildExt(build_ext): +@@ -817,14 +823,14 @@ class PyBuildExt(build_ext): extra_compile_args=['-DPy_BUILD_CORE_MODULE'], extra_objects=[shared_math], depends=['_math.h', shared_math], @@ -525,7 +525,7 @@ index 770866b..8b9acab 100644 # time libraries: librt may be needed for clock_gettime() time_libs = [] -@@ -853,7 +859,7 @@ class PyBuildExt(build_ext): +@@ -838,7 +844,7 @@ class PyBuildExt(build_ext): # libm is needed by delta_new() that uses round() and by accum() that # uses modf(). self.add(Extension('_datetime', ['_datetimemodule.c'], @@ -534,7 +534,7 @@ index 770866b..8b9acab 100644 # zoneinfo module self.add(Extension('_zoneinfo', ['_zoneinfo.c'])), # random number generator implemented in C -@@ -945,7 +951,7 @@ class PyBuildExt(build_ext): +@@ -930,7 +936,7 @@ class PyBuildExt(build_ext): # # audioop needs libm for floor() in multiple functions. self.add(Extension('audioop', ['audioop.c'], @@ -543,16 +543,16 @@ index 770866b..8b9acab 100644 # CSV files self.add(Extension('_csv', ['_csv.c'])) -@@ -2182,7 +2188,7 @@ class PyBuildExt(build_ext): +@@ -2139,7 +2145,7 @@ class PyBuildExt(build_ext): # function my_sqrt() needs libm for sqrt() self.add(Extension('_ctypes_test', sources=['_ctypes/_ctypes_test.c'], - libraries=['m'])) + libraries=[])) - ffi_inc_dirs = self.inc_dirs.copy() - if MACOS: -@@ -2230,7 +2236,7 @@ class PyBuildExt(build_ext): + ffi_inc = sysconfig.get_config_var("LIBFFI_INCLUDEDIR") + ffi_lib = None +@@ -2204,7 +2210,7 @@ class PyBuildExt(build_ext): 'Modules', '_decimal', 'libmpdec'))] @@ -561,7 +561,7 @@ index 770866b..8b9acab 100644 sources = [ '_decimal/_decimal.c', '_decimal/libmpdec/basearith.c', -@@ -2458,7 +2464,7 @@ class PyBuildExt(build_ext): +@@ -2432,7 +2438,7 @@ class PyBuildExt(build_ext): )) def detect_nis(self): @@ -571,17 +571,17 @@ index 770866b..8b9acab 100644 return -- -2.28.0 +2.30.0 -From c6b78402aa5ab45fa89a00bf8c8bde20f6a98d24 Mon Sep 17 00:00:00 2001 +From ce9187fcecd56ad941642ea64da433460c37bb58 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Sun, 16 Apr 2017 10:05:42 +0200 Subject: fix for negative errnos diff --git a/Lib/subprocess.py b/Lib/subprocess.py -index 13600c2..1e8b170 100644 +index f1d829a..f8c938a 100644 --- a/Lib/subprocess.py +++ b/Lib/subprocess.py @@ -1807,6 +1807,8 @@ class Popen(object): @@ -594,7 +594,7 @@ index 13600c2..1e8b170 100644 if child_exec_never_called: err_msg = "" diff --git a/Modules/_posixsubprocess.c b/Modules/_posixsubprocess.c -index 5d1691a..e4db177 100644 +index 5356417..9fbfb06 100644 --- a/Modules/_posixsubprocess.c +++ b/Modules/_posixsubprocess.c @@ -590,6 +590,10 @@ error: @@ -609,20 +609,20 @@ index 5d1691a..e4db177 100644 *--cur = Py_hexdigits[saved_errno % 16]; saved_errno /= 16; -- -2.28.0 +2.30.0 -From 3dc429081a5ab1e23fba02ab0ef5c0e350e8a25b Mon Sep 17 00:00:00 2001 +From 5d95f072a18f2eb4c4bc8f3ee7c6be8f645ea768 Mon Sep 17 00:00:00 2001 From: Philippe Houdoin Date: Wed, 24 May 2017 11:09:43 +0000 Subject: Implement CTypes's find_library for Haiku diff --git a/Lib/ctypes/util.py b/Lib/ctypes/util.py -index 01176bf..1f172dc 100644 +index 0c2510e..2b4f04c 100644 --- a/Lib/ctypes/util.py +++ b/Lib/ctypes/util.py -@@ -252,6 +252,56 @@ elif os.name == "posix": +@@ -265,6 +265,56 @@ elif os.name == "posix": def find_library(name, is64 = False): return _get_soname(_findLib_crle(name, is64) or _findLib_gcc(name)) @@ -679,7 +679,7 @@ index 01176bf..1f172dc 100644 else: def _findSoname_ldconfig(name): -@@ -349,6 +399,12 @@ def test(): +@@ -367,6 +417,12 @@ def test(): print(f"crypt\t:: {cdll.LoadLibrary(find_library('crypt'))}") print(f"crypto\t:: {find_library('crypto')}") print(f"crypto\t:: {cdll.LoadLibrary(find_library('crypto'))}") @@ -693,17 +693,17 @@ index 01176bf..1f172dc 100644 print(cdll.LoadLibrary("libm.so")) print(cdll.LoadLibrary("libcrypt.so")) -- -2.28.0 +2.30.0 -From 74ac46f28e61503edd3e67c6d907a5c33bd07da7 Mon Sep 17 00:00:00 2001 +From fc02931e1c1e604e20e6bf51405fb6ed2c5af5c0 Mon Sep 17 00:00:00 2001 From: Philipp Wolfer Date: Mon, 23 Sep 2019 09:14:58 +0200 Subject: webbrowser: Support for default browsers on Haiku diff --git a/Lib/webbrowser.py b/Lib/webbrowser.py -index cea9130..135c6b8 100755 +index 6023c1e..8359531 100755 --- a/Lib/webbrowser.py +++ b/Lib/webbrowser.py @@ -543,6 +543,11 @@ def register_standard_browsers(): @@ -719,17 +719,17 @@ index cea9130..135c6b8 100755 # Prefer X browsers if present if os.environ.get("DISPLAY") or os.environ.get("WAYLAND_DISPLAY"): -- -2.28.0 +2.30.0 -From 7046d2700c63e6f4234e9c7e8d4397463255edf5 Mon Sep 17 00:00:00 2001 +From c0a38f8e9a5f8fe84ceb1ab4eb97af9bf67718dd Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Fri, 4 Oct 2019 22:02:35 +0200 Subject: since 3.8, don't reinit locks on fork. diff --git a/Lib/logging/__init__.py b/Lib/logging/__init__.py -index 403dc81..aee5eab 100644 +index 7b169a1..192da49 100644 --- a/Lib/logging/__init__.py +++ b/Lib/logging/__init__.py @@ -230,7 +230,7 @@ def _releaseLock(): @@ -742,10 +742,10 @@ index 403dc81..aee5eab 100644 pass # no-op when os.register_at_fork does not exist. else: -- -2.28.0 +2.30.0 -From 5af31bd2b82ba951f1f2f1845bffaecd925425c0 Mon Sep 17 00:00:00 2001 +From 6680eb0c1b68d80be14cfac71154e626dd417790 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Fri, 15 May 2020 15:20:57 +0200 Subject: handle errors returned by internal_connect() @@ -775,20 +775,20 @@ index f2e5b00..c5a8552 100644 return PyLong_FromLong((long) res); -- -2.28.0 +2.30.0 -From 13002fa2bb67fe61b6d83442368057dc2a13493d Mon Sep 17 00:00:00 2001 +From 03f42c329a28e615748813a4c9e2ed1b0fde3828 Mon Sep 17 00:00:00 2001 From: Jerome Duval Date: Mon, 19 Oct 2020 18:03:09 +0200 Subject: ttyname_r can use MAXPATHLEN diff --git a/Modules/posixmodule.c b/Modules/posixmodule.c -index 01e8bcb..da64a4c 100644 +index 12f72f5..fc83a57 100644 --- a/Modules/posixmodule.c +++ b/Modules/posixmodule.c -@@ -2841,11 +2841,14 @@ static PyObject * +@@ -2993,11 +2993,14 @@ static PyObject * os_ttyname_impl(PyObject *module, int fd) /*[clinic end generated code: output=c424d2e9d1cd636a input=9ff5a58b08115c55]*/ { @@ -805,5 +805,5 @@ index 01e8bcb..da64a4c 100644 if (buffer == NULL) { return PyErr_NoMemory(); -- -2.28.0 +2.30.0 diff --git a/dev-lang/python/patches/python39_x86-3.9.0.patchset b/dev-lang/python/patches/python39_x86-3.9.1.patchset similarity index 100% rename from dev-lang/python/patches/python39_x86-3.9.0.patchset rename to dev-lang/python/patches/python39_x86-3.9.1.patchset diff --git a/dev-lang/python/patches/python3_x86-3.6.9.patchset b/dev-lang/python/patches/python3_x86-3.6.12.patchset similarity index 100% rename from dev-lang/python/patches/python3_x86-3.6.9.patchset rename to dev-lang/python/patches/python3_x86-3.6.12.patchset diff --git a/dev-lang/python/patches/python3_x86-3.8.6.patchset b/dev-lang/python/patches/python3_x86-3.8.7.patchset similarity index 100% rename from dev-lang/python/patches/python3_x86-3.8.6.patchset rename to dev-lang/python/patches/python3_x86-3.8.7.patchset diff --git a/dev-lang/python/python36-3.6.9.recipe b/dev-lang/python/python36-3.6.12.recipe similarity index 97% rename from dev-lang/python/python36-3.6.9.recipe rename to dev-lang/python/python36-3.6.12.recipe index 5dffe8877..822c0e399 100644 --- a/dev-lang/python/python36-3.6.9.recipe +++ b/dev-lang/python/python36-3.6.12.recipe @@ -11,9 +11,9 @@ OSI-approved open source license. HOMEPAGE="https://www.python.org" LICENSE="Python" COPYRIGHT="1990-2018 Python Software Foundation" -REVISION="2" +REVISION="1" SOURCE_URI="https://www.python.org/ftp/python/$portVersion/Python-$portVersion.tar.xz" -CHECKSUM_SHA256="5e2f5f554e3f8f7f0296f7e73d8600c4e9acbaee6b2555b83206edf5153870da" +CHECKSUM_SHA256="70953a9b5d6891d92e65d184c3512126a15814bee15e1eff2ddcce04334e9a99" SOURCE_DIR="Python-$portVersion" PATCHES="python3-$portVersion.patchset" if [ "$secondaryArchSuffix" = _x86 ] ; then @@ -52,6 +52,7 @@ REQUIRES=" lib:libbz2$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libffi$secondaryArchSuffix + lib:libintl$secondaryArchSuffix lib:libncurses$secondaryArchSuffix lib:libssl$secondaryArchSuffix lib:libreadline$secondaryArchSuffix diff --git a/dev-lang/python/python38-3.8.6.recipe b/dev-lang/python/python38-3.8.7.recipe similarity index 97% rename from dev-lang/python/python38-3.8.6.recipe rename to dev-lang/python/python38-3.8.7.recipe index 54f05ba2d..db33d5429 100644 --- a/dev-lang/python/python38-3.8.6.recipe +++ b/dev-lang/python/python38-3.8.7.recipe @@ -13,7 +13,7 @@ LICENSE="Python" COPYRIGHT="1990-2020 Python Software Foundation" REVISION="1" SOURCE_URI="https://www.python.org/ftp/python/$portVersion/Python-$portVersion.tar.xz" -CHECKSUM_SHA256="a9e0b79d27aa056eb9cce8d63a427b5f9bab1465dee3f942dcfdb25a82f4ab8a" +CHECKSUM_SHA256="ddcc1df16bb5b87aa42ec5d20a5b902f2d088caa269b28e01590f97a798ec50a" SOURCE_DIR="Python-$portVersion" PATCHES="python3-$portVersion.patchset" if [ "$secondaryArchSuffix" = _x86 ] ; then @@ -50,6 +50,7 @@ REQUIRES=" lib:libbz2$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libffi$secondaryArchSuffix + lib:libintl$secondaryArchSuffix lib:liblzma$secondaryArchSuffix lib:libncurses$secondaryArchSuffix lib:libssl$secondaryArchSuffix diff --git a/dev-lang/python/python39-3.9.0.recipe b/dev-lang/python/python39-3.9.1.recipe similarity index 96% rename from dev-lang/python/python39-3.9.0.recipe rename to dev-lang/python/python39-3.9.1.recipe index 72fb2f262..2d1418b45 100644 --- a/dev-lang/python/python39-3.9.0.recipe +++ b/dev-lang/python/python39-3.9.1.recipe @@ -11,9 +11,9 @@ OSI-approved open source license. HOMEPAGE="https://www.python.org" LICENSE="Python" COPYRIGHT="1990-2020 Python Software Foundation" -REVISION="2" +REVISION="1" SOURCE_URI="https://www.python.org/ftp/python/$portVersion/Python-$portVersion.tar.xz" -CHECKSUM_SHA256="9c73e63c99855709b9be0b3cc9e5b072cb60f37311e8c4e50f15576a0bf82854" +CHECKSUM_SHA256="991c3f8ac97992f3d308fefeb03a64db462574eadbff34ce8bc5bb583d9903ff" SOURCE_DIR="Python-$portVersion" PATCHES="python39-$portVersion.patchset" if [ "$secondaryArchSuffix" = _x86 ] ; then @@ -23,7 +23,7 @@ if [ "$secondaryArchSuffix" = _x86 ] ; then fi ARCHITECTURES=" !x86_gcc2 ?x86 x86_64" -SECONDARY_ARCHITECTURES="?x86" +SECONDARY_ARCHITECTURES="x86" # On x86_gcc2 we don't want to install the commands in bin//, but in bin/. commandSuffix=$secondaryArchSuffix @@ -50,6 +50,7 @@ REQUIRES=" lib:libbz2$secondaryArchSuffix lib:libexpat$secondaryArchSuffix lib:libffi$secondaryArchSuffix + lib:libintl$secondaryArchSuffix lib:liblzma$secondaryArchSuffix lib:libncurses$secondaryArchSuffix lib:libssl$secondaryArchSuffix