diff --git a/config/functions b/config/functions
index 8d2660473..84ee49203 100644
--- a/config/functions
+++ b/config/functions
@@ -414,7 +414,7 @@ reset_pkg_vars() {
PKG_LICENSE="unknown"
PKG_TOOLCHAIN="auto"
PKG_IS_ADDON="no"
- PKG_PYTHON_VERSION="python2.7"
+ PKG_PYTHON_VERSION="python3.9"
}
set_debug_depends() {
diff --git a/packages/audio/pulseaudio/config/pulseaudio-system.conf b/packages/audio/pulseaudio/config/pulseaudio-system.conf
deleted file mode 100644
index c92fc5301..000000000
--- a/packages/audio/pulseaudio/config/pulseaudio-system.conf
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/packages/audio/pulseaudio/config/system.pa b/packages/audio/pulseaudio/config/system.pa
index 937a2f133..653361e80 100644
--- a/packages/audio/pulseaudio/config/system.pa
+++ b/packages/audio/pulseaudio/config/system.pa
@@ -19,14 +19,12 @@
# mode.
### Load several protocols
-.ifexists module-esound-protocol-unix.so
-load-module module-esound-protocol-unix
-.endif
load-module module-native-protocol-unix
### Automatically restore the volume of streams and devices
load-module module-stream-restore
load-module module-device-restore
+load-module module-card-restore
### Automatically restore the default sink/source when changed by the user
### during runtime
@@ -34,19 +32,12 @@ load-module module-device-restore
### that look up the default sink/source get the right value
load-module module-default-device-restore
-### Automatically move streams to the default sink if the sink they are
-### connected to dies, similar for sources
-load-module module-rescue-streams
-
### Make sure we always have a sink around, even if it is a null sink.
load-module module-always-sink
### Automatically suspend sinks/sources that become idle for too long
load-module module-suspend-on-idle
-### Enable positioned event sounds
-load-module module-position-event-sounds
-
### Automatically load modules for dbus
.ifexists module-dbus-protocol.so
load-module module-dbus-protocol
diff --git a/packages/audio/pulseaudio/package.mk b/packages/audio/pulseaudio/package.mk
index f61d99e94..3a7351014 100644
--- a/packages/audio/pulseaudio/package.mk
+++ b/packages/audio/pulseaudio/package.mk
@@ -3,20 +3,19 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="pulseaudio"
-PKG_VERSION="14.2"
-PKG_SHA256="75d3f7742c1ae449049a4c88900e454b8b350ecaa8c544f3488a2562a9ff66f1"
+PKG_VERSION="15.0"
+PKG_SHA256="a40b887a3ba98cc26976eb11bdb6613988f145b19024d1b6555c6a03c9cba1a0"
PKG_LICENSE="GPL"
PKG_SITE="http://pulseaudio.org/"
PKG_URL="http://www.freedesktop.org/software/pulseaudio/releases/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_TARGET="toolchain alsa-lib dbus libcap libsndfile libtool openssl soxr speexdsp systemd glib:host glib"
PKG_LONGDESC="PulseAudio is a sound system for POSIX OSes, meaning that it is a proxy for your sound applications."
-PKG_TOOLCHAIN="meson"
if [ "${BLUETOOTH_SUPPORT}" = "yes" ]; then
- PKG_DEPENDS_TARGET+=" sbc"
- PKG_PULSEAUDIO_BLUETOOTH="-Dbluez5=true"
+ PKG_DEPENDS_TARGET+=" sbc bluez"
+ PKG_PULSEAUDIO_BLUETOOTH="-Dbluez5=enabled"
else
- PKG_PULSEAUDIO_BLUETOOTH="-Dbluez5=false"
+ PKG_PULSEAUDIO_BLUETOOTH="-Dbluez5=disabled"
fi
if [ "${AVAHI_DAEMON}" = "yes" ]; then
@@ -26,7 +25,9 @@ else
PKG_PULSEAUDIO_AVAHI="-Davahi=disabled"
fi
-PKG_MESON_OPTS_TARGET="-Dgcov=false \
+PKG_MESON_OPTS_TARGET="-Ddaemon=true \
+ -Ddoxygen=false \
+ -Dgcov=false \
-Dman=false \
-Dtests=false \
-Dsystem_user=root \
@@ -34,6 +35,7 @@ PKG_MESON_OPTS_TARGET="-Dgcov=false \
-Daccess_group=root \
-Ddatabase=simple \
-Dlegacy-database-entry-format=false \
+ -Dstream-restore-clear-old-devices=false \
-Drunning-from-build-tree=false \
-Datomic-arm-linux-helpers=true \
-Datomic-arm-memory-barrier=false \
@@ -43,12 +45,15 @@ PKG_MESON_OPTS_TARGET="-Dgcov=false \
-Dasyncns=disabled \
${PKG_PULSEAUDIO_AVAHI} \
${PKG_PULSEAUDIO_BLUETOOTH} \
+ -Dbluez5-gstreamer=disabled \
-Dbluez5-native-headset=false \
-Dbluez5-ofono-headset=false \
-Ddbus=enabled \
+ -Delogind=disabled \
-Dfftw=disabled \
-Dglib=enabled \
-Dgsettings=disabled \
+ -Dgstreamer=disabled \
-Dgtk=disabled \
-Dhal-compat=false \
-Dipv6=true \
@@ -56,11 +61,14 @@ PKG_MESON_OPTS_TARGET="-Dgcov=false \
-Dlirc=disabled \
-Dopenssl=enabled \
-Dorc=disabled \
+ -Doss-output=disabled \
-Dsamplerate=disabled \
-Dsoxr=enabled \
-Dspeex=enabled \
-Dsystemd=enabled \
+ -Dtcpwrap=disabled \
-Dudev=enabled \
+ -Dvalgrind=disabled \
-Dx11=disabled \
-Dadrian-aec=true \
-Dwebrtc-aec=disabled"
@@ -68,8 +76,6 @@ PKG_MESON_OPTS_TARGET="-Dgcov=false \
pre_configure_target() {
sed -e 's|; remixing-use-all-sink-channels = yes|; remixing-use-all-sink-channels = no|' \
-i ${PKG_BUILD}/src/daemon/daemon.conf.in
- sed -e 's|; default-fragments = 4|; default-fragments = 5|' \
- -i ${PKG_BUILD}/src/daemon/daemon.conf.in
}
post_makeinstall_target() {
@@ -82,7 +88,8 @@ post_makeinstall_target() {
safe_remove ${INSTALL}/usr/share/bash-completion
cp ${PKG_DIR}/config/system.pa ${INSTALL}/etc/pulse/
- cp ${PKG_DIR}/config/pulseaudio-system.conf ${INSTALL}/etc/dbus-1/system.d/
+
+ sed 's/user="pulse"/user="root"/' -i ${INSTALL}/etc/dbus-1/system.d/pulseaudio-system.conf
mkdir -p ${INSTALL}/usr/config
cp -PR ${PKG_DIR}/config/pulse-daemon.conf.d ${INSTALL}/usr/config
diff --git a/packages/audio/pulseaudio/system.d/pulseaudio.service b/packages/audio/pulseaudio/system.d/pulseaudio.service
index f052e019d..1ec426955 100644
--- a/packages/audio/pulseaudio/system.d/pulseaudio.service
+++ b/packages/audio/pulseaudio/system.d/pulseaudio.service
@@ -5,8 +5,10 @@ After=syslog.target local-fs.target
[Service]
Type=dbus
BusName=org.pulseaudio.Server
-ExecStart=/usr/bin/pulseaudio --system --disallow-exit --exit-idle-time=-1 --disable-shm
+ExecStart=/usr/bin/pulseaudio --system --disallow-exit --exit-idle-time=-1 --disable-shm --enable-memfd --realtime
Restart=on-failure
+Environment=PULSE_STATE_PATH=/storage/.config/pulse
+Environment=PULSE_CONFIG_PATH=/storage/.config/pulse
[Install]
WantedBy=multi-user.target
diff --git a/packages/devel/boost/package.mk b/packages/devel/boost/package.mk
index ddbdc1555..3cc10875f 100644
--- a/packages/devel/boost/package.mk
+++ b/packages/devel/boost/package.mk
@@ -3,8 +3,8 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="boost"
-PKG_VERSION="1.76.0"
-PKG_SHA256="f0397ba6e982c4450f27bf32a2a83292aba035b827a5623a14636ea583318c41"
+PKG_VERSION="1.78.0"
+PKG_SHA256="8681f175d4bdb26c52222665793eef08490d7758529330f98d3b29dd0735bccc"
PKG_LICENSE="OSS"
PKG_SITE="http://www.boost.org/"
PKG_URL="https://boostorg.jfrog.io/artifactory/main/release/${PKG_VERSION}/source/${PKG_NAME}_${PKG_VERSION//./_}.tar.bz2"
@@ -25,8 +25,8 @@ makeinstall_host() {
}
pre_configure_target() {
- export CFLAGS="${CFLAGS} -I${TOOLCHAIN}/include/${PKG_PYTHON_VERSION}"
- export CXXFLAGS="${CXXFLAGS} -I${TOOLCHAIN}/include/${PKG_PYTHON_VERSION}"
+ export CFLAGS="${CFLAGS} -I${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION}"
+ export CXXFLAGS="${CXXFLAGS} -I${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION}"
}
configure_target() {
diff --git a/packages/devel/glib/package.mk b/packages/devel/glib/package.mk
index 1d361db7f..f5798266f 100644
--- a/packages/devel/glib/package.mk
+++ b/packages/devel/glib/package.mk
@@ -3,18 +3,17 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="glib"
-PKG_VER_MAJOR="2.70"
-PKG_VERSION="${PKG_VER_MAJOR}.1"
-PKG_SHA256="f9b7bce7f51753a1f43853bbcaca8bf09e15e994268e29cfd7a76f65636263c0"
+PKG_VERSION="2.71.0"
+PKG_SHA256="926816526f6e4bba9af726970ff87be7dac0b70d5805050c6207b7bb17ea4fca"
PKG_LICENSE="LGPL"
-PKG_SITE="http://www.gtk.org/"
-PKG_URL="https://download.gnome.org/sources/glib/${PKG_VER_MAJOR}/${PKG_NAME}-${PKG_VERSION}.tar.xz"
+PKG_SITE="https://www.gtk.org/"
+PKG_URL="https://download.gnome.org/sources/glib/$(get_pkg_version_maj_min)/${PKG_NAME}-${PKG_VERSION}.tar.xz"
PKG_DEPENDS_HOST="libffi:host pcre:host Python3:host meson:host ninja:host"
PKG_DEPENDS_TARGET="toolchain pcre zlib libffi Python3:host util-linux"
PKG_LONGDESC="A library which includes support routines for C such as lists, trees, hashes, memory allocation."
PKG_TOOLCHAIN="meson"
-PKG_MESON_OPTS_HOST="-Ddefault_library=static \
+PKG_MESON_OPTS_HOST="-Ddefault_library=shared \
-Dinstalled_tests=false \
-Dlibmount=disabled \
-Dtests=false"
@@ -32,12 +31,6 @@ PKG_MESON_OPTS_TARGET="-Ddefault_library=shared \
-Dforce_posix_threads=true \
-Dtests=false"
-PKG_MESON_PROPERTIES_TARGET="
-have_c99_vsnprintf=false
-have_c99_snprintf=false
-growing_stack=false
-va_val_copy=false"
-
post_makeinstall_target() {
rm -rf ${INSTALL}/usr/bin
rm -rf ${INSTALL}/usr/lib/gdbus-2.0
diff --git a/packages/devel/libffi/package.mk b/packages/devel/libffi/package.mk
index aafb5f2ea..0c88c3c6f 100644
--- a/packages/devel/libffi/package.mk
+++ b/packages/devel/libffi/package.mk
@@ -3,18 +3,17 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="libffi"
-PKG_VERSION="3.3"
-PKG_SHA256="72fba7922703ddfa7a028d513ac15a85c8d54c8d67f55fa5a4802885dc652056"
+PKG_VERSION="3.4.2"
+PKG_SHA256="540fb721619a6aba3bdeef7d940d8e9e0e6d2c193595bc243241b77ff9e93620"
PKG_LICENSE="GPL"
PKG_SITE="http://sourceware.org/${PKG_NAME}/"
-PKG_URL="ftp://sourceware.org/pub/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
+PKG_URL="https://github.com/libffi/libffi/releases/download/v${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_HOST="ccache:host autoconf:host automake:host libtool:host pkg-config:host"
PKG_DEPENDS_TARGET="toolchain"
PKG_LONGDESC="Foreign Function Interface Library."
PKG_TOOLCHAIN="autotools"
PKG_CONFIGURE_OPTS_TARGET="--disable-debug \
- --enable-static --disable-shared \
--with-pic \
--enable-structs \
--enable-raw-api \
diff --git a/packages/games/libretro/mupen64plus-nx/package.mk b/packages/games/libretro/mupen64plus-nx/package.mk
index 61c266baf..6162751a5 100755
--- a/packages/games/libretro/mupen64plus-nx/package.mk
+++ b/packages/games/libretro/mupen64plus-nx/package.mk
@@ -2,28 +2,23 @@
# Copyright (C) 2020-present Fewtarius
PKG_NAME="mupen64plus-nx"
-PKG_VERSION="6e9dcd2cd9d23d3e79eaf2349bf7e9f25ad45bf1"
-PKG_SHA256="6f674ce910c85dc5f43e2c3685484d8da8f7e420d4da242f2b524b692da5909f"
+PKG_VERSION="6e9dcd2"
PKG_ARCH="any"
PKG_LICENSE="GPLv2"
PKG_SITE="https://github.com/libretro/mupen64plus-libretro-nx"
PKG_URL="$PKG_SITE/archive/$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain nasm:host $OPENGLES"
+PKG_DEPENDS_TARGET="toolchain nasm:host ${OPENGLES}"
PKG_SECTION="libretro"
PKG_SHORTDESC="mupen64plus NX"
PKG_LONGDESC="mupen64plus NX"
PKG_TOOLCHAIN="make"
PKG_BUILD_FLAGS="-lto"
+PKG_PATCH_DIRS+="${DEVICE}"
+
pre_configure_target() {
sed -e "s|^GIT_VERSION ?.*$|GIT_VERSION := \" ${PKG_VERSION:0:7}\"|" -i Makefile
-
-if [ $ARCH == "arm" ]; then
- sed -i "s|cortex-a53|cortex-a35|g" Makefile
- PKG_MAKE_OPTS_TARGET+=" platform=odroidgoa"
-else
- PKG_MAKE_OPTS_TARGET+=" platform=amlogic64"
-fi
+ PKG_MAKE_OPTS_TARGET+=" platform=RK3399"
}
makeinstall_target() {
diff --git a/packages/games/libretro/mupen64plus-nx/patches/RG552/001-rg552-optimizations.patch b/packages/games/libretro/mupen64plus-nx/patches/RG552/001-rg552-optimizations.patch
new file mode 100644
index 000000000..da1666247
--- /dev/null
+++ b/packages/games/libretro/mupen64plus-nx/patches/RG552/001-rg552-optimizations.patch
@@ -0,0 +1,37 @@
+diff -rupN mupen64plus.orig/Makefile mupen64plus/Makefile
+--- mupen64plus.orig/Makefile 2022-02-07 10:11:16.000000000 -0500
++++ mupen64plus/Makefile 2022-02-27 13:09:04.477952724 -0500
+@@ -304,7 +304,7 @@ else ifneq (,$(findstring AMLG,$(platfor
+
+ HAVE_NEON = 1
+ WITH_DYNAREC=arm
+- COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
++ #COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
+ # Amlogic S905/S912
+@@ -325,10 +325,8 @@ else ifneq (,$(findstring RK,$(platform)
+ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
+
+ ifneq (,$(findstring RK33,$(platform)))
+- CPUFLAGS += -march=armv8-a+crc -mfloat-abi=hard -mfpu=neon-fp-armv8
+ ifneq (,$(findstring RK3399,$(platform)))
+- CPUFLAGS += -mtune=cortex-a72.cortex-a53
+- GLES3 = 1
++ CPUFLAGS += -march=armv8-a -mtune=cortex-a72.cortex-a53
+ else ifneq (,$(findstring RK3328,$(platform)))
+ CPUFLAGS += -mtune=cortex-a53
+ GLES = 1
+@@ -342,9 +340,10 @@ else ifneq (,$(findstring RK,$(platform)
+ COREFLAGS += -DEGL_NO_X11
+ endif
+
++ GLES = 1
+ GL_LIB := -lGLESv2
+- HAVE_NEON = 1
+- WITH_DYNAREC=arm
++ HAVE_NEON = 0
++ WITH_DYNAREC := aarch64
+ COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
+
diff --git a/packages/games/libretro/mupen64plus-nx/patches/mupen64plus-nx-01-add-amlogic64.patch b/packages/games/libretro/mupen64plus-nx/patches/mupen64plus-nx-01-add-amlogic64.patch
deleted file mode 100644
index aa0f186cf..000000000
--- a/packages/games/libretro/mupen64plus-nx/patches/mupen64plus-nx-01-add-amlogic64.patch
+++ /dev/null
@@ -1,19 +0,0 @@
---- a/Makefile
-+++ b/Makefile
-@@ -248,9 +248,13 @@
- LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
- GLES = 1
- GL_LIB := -lGLESv2
-- CPUFLAGS += -marm -mfloat-abi=hard -mfpu=neon
-- HAVE_NEON = 1
-- WITH_DYNAREC=arm
-+ ifneq (,$(findstring amlogic64,$(platform)))
-+ WITH_DYNAREC=aarch64
-+ else
-+ CPUFLAGS += -marm -mfloat-abi=hard -mfpu=neon
-+ HAVE_NEON = 1
-+ WITH_DYNAREC=arm
-+ endif
- COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
- CPUFLAGS += -march=armv8-a -mcpu=cortex-a53 -mtune=cortex-a53
-
diff --git a/packages/games/libretro/mupen64plus/package.mk b/packages/games/libretro/mupen64plus/package.mk
index 8a2698447..3838f35f6 100644
--- a/packages/games/libretro/mupen64plus/package.mk
+++ b/packages/games/libretro/mupen64plus/package.mk
@@ -40,36 +40,9 @@ pre_make_target() {
}
pre_configure_target() {
-
- case $PROJECT in
- Amlogic-ng)
- if [ $ARCH == "arm" ]; then
- PKG_MAKE_OPTS_TARGET="platform=odroid board=c2"
- else
- PKG_MAKE_OPTS_TARGET="platform=odroid64 board=n2 HAVE_NEON=0"
- fi
- ;;
- Amlogic)
- if [ $ARCH == "arm" ]; then
- PKG_MAKE_OPTS_TARGET="platform=odroid BOARD=c2"
- else
- PKG_MAKE_OPTS_TARGET="platform=odroid64 BOARD=c2 HAVE_NEON=0"
- fi
- ;;
- esac
-
- if [[ "$DEVICE" =~ RG351 ]] || [[ "$DEVICE" =~ RG552 ]]; then
- if [[ "$ARCH" == "arm" ]]; then
- CFLAGS="$CFLAGS -DLINUX -DEGL_API_FB"
- CPPFLAGS="$CPPFLAGS -DLINUX -DEGL_API_FB"
- PKG_MAKE_OPTS_TARGET=" platform=unix GLES=1 FORCE_GLES=1 HAVE_NEON=1 WITH_DYNAREC=arm"
- else
- CFLAGS="$CFLAGS -DLINUX -DEGL_API_FB"
- CPPFLAGS="$CPPFLAGS -DLINUX -DEGL_API_FB"
- PKG_MAKE_OPTS_TARGET=" platform=unix GLES=1 FORCE_GLES=1 HAVE_NEON=0 WITH_DYNAREC=aarch64"
- fi
- fi
-
+ CFLAGS="$CFLAGS -DLINUX -DEGL_API_FB"
+ CPPFLAGS="$CPPFLAGS -DLINUX -DEGL_API_FB"
+ PKG_MAKE_OPTS_TARGET=" platform=RK3399"
}
makeinstall_target() {
diff --git a/packages/games/libretro/mupen64plus/patches/RG552/001-rg552-optimizations.patch b/packages/games/libretro/mupen64plus/patches/RG552/001-rg552-optimizations.patch
new file mode 100644
index 000000000..406ede4de
--- /dev/null
+++ b/packages/games/libretro/mupen64plus/patches/RG552/001-rg552-optimizations.patch
@@ -0,0 +1,39 @@
+diff -rupN mupen64plus.orig/Makefile mupen64plus/Makefile
+--- mupen64plus.orig/Makefile 2022-02-27 09:19:06.080700288 -0500
++++ mupen64plus/Makefile 2022-02-27 13:27:51.390268523 -0500
+@@ -238,6 +238,35 @@ else ifneq (,$(findstring osx,$(platform
+
+ COREFLAGS += -DOS_LINUX
+ ASFLAGS = -f elf -d ELF_TYPE
++
++# Rockchip RK3288 e.g. Asus Tinker Board / RK3328 e.g. PINE64 Rock64 / RK3399 e.g. PINE64 RockPro64 - 32-bit userspace
++else ifneq (,$(findstring RK,$(platform)))
++ TARGET := $(TARGET_NAME)_libretro.so
++ LDFLAGS += -shared -Wl,--version-script=$(LIBRETRO_DIR)/link.T -Wl,--no-undefined -ldl
++
++ ifneq (,$(findstring RK33,$(platform)))
++ ifneq (,$(findstring RK3399,$(platform)))
++ CPUFLAGS += -march=armv8-a -mtune=cortex-a72.cortex-a53
++ else ifneq (,$(findstring RK3328,$(platform)))
++ CPUFLAGS += -mtune=cortex-a53
++ GLES = 1
++ endif
++ else ifneq (,$(findstring RK3288,$(platform)))
++ CPUFLAGS += -march=armv7ve -mtune=cortex-a17 -mfloat-abi=hard -mfpu=neon-vfpv4
++ GLES3 = 1
++ endif
++
++ ifneq (,$(findstring mesa,$(platform)))
++ COREFLAGS += -DEGL_NO_X11
++ endif
++
++ GLES = 1
++ GL_LIB := -lGLESv2
++ HAVE_NEON = 0
++ WITH_DYNAREC := aarch64
++ COREFLAGS += -DUSE_GENERIC_GLESV2 -DOS_LINUX
++ ASFLAGS = -f elf -d ELF_TYPE
++
+ # iOS
+ else ifneq (,$(findstring ios,$(platform)))
+ ifeq ($(IOSSDK),)
diff --git a/packages/games/libretro/mupen64plus/patches/mupen64plus-sx05re-neonfix.patch b/packages/games/libretro/mupen64plus/patches/mupen64plus-sx05re-neonfix.patch
deleted file mode 100644
index 6a994c192..000000000
--- a/packages/games/libretro/mupen64plus/patches/mupen64plus-sx05re-neonfix.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Makefile 2018-12-15 12:01:25.246556521 -0600
-+++ b/Makefile 2018-12-15 12:01:37.110536416 -0600
-@@ -92,6 +92,8 @@
- else
- GL_LIB := -lGL
- endif
-+ HAVE_NEON = 1
-+ WITH_DYNAREC=arm
-
- COREFLAGS += -DOS_LINUX
- ASFLAGS = -f elf -d ELF_TYPE
diff --git a/packages/games/libretro/parallel-n64_gln64/patches/aarch64/parallel-n64-add_platform.patch b/packages/games/libretro/parallel-n64_gln64/patches/aarch64/parallel-n64-add_platform.patch
index a968cb7bf..3505d03a3 100644
--- a/packages/games/libretro/parallel-n64_gln64/patches/aarch64/parallel-n64-add_platform.patch
+++ b/packages/games/libretro/parallel-n64_gln64/patches/aarch64/parallel-n64-add_platform.patch
@@ -47,7 +47,7 @@ diff -rupN parallel-n64.orig/Makefile parallel-n64.new/Makefile
+ LDFLAGS += -static-libgcc #-static-libstdc++
+ fpic = -fPIC
+ GLES = 1
-+ GL_LIB := -lGLESv3
++ GL_LIB := -lGLESv2
+ HAVE_OPENGL = 0
+ HAVE_NEON = 1
+ FORCE_GLES = 1
diff --git a/packages/games/libretro/yabasanshiro/package.mk b/packages/games/libretro/yabasanshiro/package.mk
index 9a6f1e82e..93ee520b7 100644
--- a/packages/games/libretro/yabasanshiro/package.mk
+++ b/packages/games/libretro/yabasanshiro/package.mk
@@ -35,10 +35,7 @@ PKG_TOOLCHAIN="make"
GET_HANDLER_SUPPORT="git"
pre_configure_target() {
- # For some reason linkin to GLESv2 gives error, so we link it to GLESv3
- sed -i "s|-lGLESv2|-lGLESv3|g" $PKG_BUILD/yabause/src/libretro/Makefile.common
- sed -i "s|-mcpu=cortex-a53 -mtune=cortex-a53|-mcpu=cortex-a35 -mtune=cortex-a35|g" $PKG_BUILD/yabause/src/libretro/Makefile
- PKG_MAKE_OPTS_TARGET+=" -C yabause/src/libretro platform=arm64_cortex_a53_gles3"
+ PKG_MAKE_OPTS_TARGET+=" -C yabause/src/libretro platform=rockpro64 HAVE_NEON=0"
}
makeinstall_target() {
diff --git a/packages/games/libretro/yabasanshiro/patches/rk3399.patch b/packages/games/libretro/yabasanshiro/patches/rk3399.patch
new file mode 100644
index 000000000..0d2bcac8c
--- /dev/null
+++ b/packages/games/libretro/yabasanshiro/patches/rk3399.patch
@@ -0,0 +1,18 @@
+diff -rupN yabasanshiro.orig/yabause/src/libretro/Makefile yabasanshiro/yabause/src/libretro/Makefile
+--- yabasanshiro.orig/yabause/src/libretro/Makefile 2022-02-27 14:51:53.958685169 -0500
++++ yabasanshiro/yabause/src/libretro/Makefile 2022-02-27 14:57:08.993824415 -0500
+@@ -155,11 +155,12 @@ else ifneq (,$(findstring rockpro64,$(pl
+ SHARED := -shared -Wl,--no-undefined -Wl,--version-script=link.T
+ LDFLAGS += -lpthread
+ ARCH_IS_LINUX = 1
++ FLAGS += -DAARCH64
+ HAVE_SSE = 0
+ FORCE_GLES = 1
+- USE_ARM_DRC = 1
++ USE_AARCH64_DRC = 1
+ DYNAREC_DEVMIYAX = 1
+- FLAGS += -march=armv8-a+crc -mcpu=cortex-a72 -mtune=cortex-a72.cortex-a53 -mfloat-abi=hard -mfpu=neon-vfpv4 -mvectorize-with-neon-quad
++ FLAGS += -march=armv8-a+crc -mcpu=cortex-a72 -mtune=cortex-a72.cortex-a53
+
+ # Rpi4 (64-bit)
+ else ifeq ($(platform), rpi4)
diff --git a/packages/graphics/libmali/package.mk b/packages/graphics/libmali/package.mk
index b2f10fdda..410ff7b79 100644
--- a/packages/graphics/libmali/package.mk
+++ b/packages/graphics/libmali/package.mk
@@ -33,5 +33,7 @@ post_makeinstall_target() {
do
rm -f ${PKG_BUILD}/.install_pkg/usr/lib/${lib}
ln -s libmali.so.${MALI_LIB_VERSION} ${PKG_BUILD}/.install_pkg/usr/lib/${lib}
+ rm -f ${SYSROOT_PREFIX}/usr/lib/${lib}
+ ln -s libmali.so.${MALI_LIB_VERSION} ${SYSROOT_PREFIX}/usr/lib/${lib}
done
}
diff --git a/packages/jelos/package.mk b/packages/jelos/package.mk
index c25a5d493..40ef4d049 100644
--- a/packages/jelos/package.mk
+++ b/packages/jelos/package.mk
@@ -41,7 +41,7 @@ PKG_COMPAT="lib32"
PKG_MULTIMEDIA="ffmpeg mpv vlc"
PKG_GAMESUPPORT="sixaxis jslisten evtest rg351p-js2xbox gptokeyb textviewer 351files jstest-sdl \
- pygobject gamecontrollerdb"
+ gamecontrollerdb"
PKG_EXPERIMENTAL=""
diff --git a/packages/lang/Python2/package.mk b/packages/lang/Python2/package.mk
deleted file mode 100644
index f79e6cc78..000000000
--- a/packages/lang/Python2/package.mk
+++ /dev/null
@@ -1,125 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-or-later
-# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
-# Copyright (C) 2018 Team LibreELEC (https://libreelec.tv)
-# Copyright (C) 2018-present Team CoreELEC (https://coreelec.org)
-
-PKG_NAME="Python2"
-# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
-PKG_VERSION="2.7.16"
-PKG_SHA256="f222ef602647eecb6853681156d32de4450a2c39f4de93bd5b20235f2e660ed7"
-PKG_LICENSE="OSS"
-PKG_SITE="http://www.python.org/"
-PKG_URL="http://www.python.org/ftp/python/$PKG_VERSION/${PKG_NAME::-1}-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_HOST="zlib:host bzip2:host sqlite:host"
-PKG_DEPENDS_TARGET="toolchain sqlite expat zlib bzip2 openssl libffi Python2:host ncurses readline"
-PKG_LONGDESC="Python2 is an interpreted object-oriented programming language."
-
-PKG_TOOLCHAIN="autotools"
-PKG_BUILD_FLAGS="-parallel +lto-parallel"
-
-PKG_PY_DISABLED_MODULES="_tkinter nis gdbm bsddb ossaudiodev"
-
-PKG_CONFIGURE_OPTS_HOST="--cache-file=config.cache \
- --without-cxx-main \
- --with-threads \
- --enable-unicode=ucs4"
-
-PKG_CONFIGURE_OPTS_TARGET="ac_cv_file_dev_ptc=no \
- ac_cv_file_dev_ptmx=yes \
- ac_cv_func_lchflags_works=no \
- ac_cv_func_chflags_works=no \
- ac_cv_func_printf_zd=yes \
- ac_cv_buggy_getaddrinfo=no \
- ac_cv_header_bluetooth_bluetooth_h=no \
- ac_cv_header_bluetooth_h=no \
- ac_cv_file__dev_ptmx=no \
- ac_cv_file__dev_ptc=no \
- ac_cv_have_long_long_format=yes \
- --with-threads \
- --enable-unicode=ucs4 \
- --enable-ipv6 \
- --disable-profiling \
- --without-pydebug \
- --without-doc-strings \
- --without-tsc \
- --with-pymalloc \
- --without-fpectl \
- --without-cxx-main \
- --with-system-ffi \
- --enable-optimizations \
- --with-system-expat"
-post_patch() {
- # This is needed to make sure the Python build process doesn't try to
- # regenerate those files with the pgen program. Otherwise, it builds
- # pgen for the target, and tries to run it on the host.
- touch $PKG_BUILD/Include/graminit.h
- touch $PKG_BUILD/Python/graminit.c
-}
-
-make_host() {
- make PYTHON_MODULES_INCLUDE="$HOST_INCDIR" \
- PYTHON_MODULES_LIB="$HOST_LIBDIR" \
- PYTHON_DISABLE_MODULES="readline _curses _curses_panel $PKG_PY_DISABLED_MODULES"
-
- # python distutils per default adds -L$LIBDIR when linking binary extensions
- sed -e "s|^ 'LIBDIR':.*| 'LIBDIR': '/usr/lib',|g" -i $(cat pybuilddir.txt)/_sysconfigdata.py
-}
-
-makeinstall_host() {
- make PYTHON_MODULES_INCLUDE="$HOST_INCDIR" \
- PYTHON_MODULES_LIB="$HOST_LIBDIR" \
- PYTHON_DISABLE_MODULES="readline _curses _curses_panel $PKG_PY_DISABLED_MODULES" \
- install
-}
-
-post_makeinstall_host() {
- rm -fr $PKG_BUILD/.$HOST_NAME/build/temp.*
-}
-
-pre_configure_target() {
- export PYTHON_FOR_BUILD=$TOOLCHAIN/bin/python
-}
-
-make_target() {
- make CC="$CC" LDFLAGS="$TARGET_LDFLAGS -L." \
- PYTHON_DISABLE_MODULES="$PKG_PY_DISABLED_MODULES" \
- PYTHON_MODULES_INCLUDE="$TARGET_INCDIR" \
- PYTHON_MODULES_LIB="$TARGET_LIBDIR"
-}
-
-makeinstall_target() {
- make CC="$CC" DESTDIR=$SYSROOT_PREFIX \
- PYTHON_DISABLE_MODULES="$PKG_PY_DISABLED_MODULES" \
- PYTHON_MODULES_INCLUDE="$TARGET_INCDIR" \
- PYTHON_MODULES_LIB="$TARGET_LIBDIR" \
- install
-
- make CC="$CC" DESTDIR=$INSTALL \
- PYTHON_DISABLE_MODULES="$PKG_PY_DISABLED_MODULES" \
- PYTHON_MODULES_INCLUDE="$TARGET_INCDIR" \
- PYTHON_MODULES_LIB="$TARGET_LIBDIR" \
- install
-}
-
-post_makeinstall_target() {
- rm -fr $PKG_BUILD/.$TARGET_NAME/build/temp.*
-
- for dir in bsddb idlelib lib-tk lib2to3/tests msilib pydoc_data test unittest; do
- rm -rf $INSTALL/usr/lib/python*/$dir
- done
-
- rm -rf $INSTALL/usr/lib/python*/config
- rm -rf $INSTALL/usr/bin/2to3
- rm -rf $INSTALL/usr/bin/idle
- rm -rf $INSTALL/usr/bin/pydoc
- rm -rf $INSTALL/usr/bin/smtpd.py
- rm -rf $INSTALL/usr/bin/python*-config
-
- cd $INSTALL/usr/lib/$PKG_PYTHON_VERSION
- $TOOLCHAIN/bin/python -Wi -t -B $PKG_BUILD/Lib/compileall.py -d /usr/lib/$PKG_PYTHON_VERSION -f .
- find $INSTALL/usr/lib/$PKG_PYTHON_VERSION -name "*.py" -exec rm -f {} \; &>/dev/null
-
- # strip
- chmod u+w $INSTALL/usr/lib/libpython*.so.*
- debug_strip $INSTALL/usr
-}
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-001_xcompile.patch b/packages/lang/Python2/patches/Python2-2.7.11-001_xcompile.patch
deleted file mode 100644
index ef128ab4c..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-001_xcompile.patch
+++ /dev/null
@@ -1,50 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index bcd83bf..5e54a0d 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -461,6 +463,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt
- esac; \
- $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
- _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
-+ PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
-
- # Build static library
-@@ -1142,7 +1145,9 @@ libainstall: all python-config
- # Install the dynamically loadable modules
- # This goes into $(exec_prefix)
- sharedinstall: sharedmods
-+ CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
-+ --skip-build \
- --prefix=$(prefix) \
- --install-scripts=$(BINDIR) \
- --install-platlib=$(DESTSHARED) \
-diff --git a/setup.py b/setup.py
-index a46bf35..528e9df 100644
---- a/setup.py
-+++ b/setup.py
-@@ -17,7 +17,7 @@
- from distutils.command.install_lib import install_lib
- from distutils.spawn import find_executable
-
--cross_compiling = "_PYTHON_HOST_PLATFORM" in os.environ
-+cross_compiling = ("_PYTHON_HOST_PLATFORM" in os.environ) or ('PYTHONXCPREFIX' in os.environ)
-
- def get_platform():
- # cross build
-@@ -292,6 +292,14 @@ class PyBuildExt(build_ext):
- (ext.name, sys.exc_info()[1]))
- self.failed.append(ext.name)
- return
-+
-+ # Inport check will not work when cross-compiling.
-+ if os.environ.has_key('PYTHONXCPREFIX'):
-+ self.announce(
-+ 'WARNING: skipping inport check for cross-compiled: "%s"' %
-+ ext.name)
-+ return
-+
- # Workaround for Mac OS X: The Carbon-based modules cannot be
- # reliably imported into a command-line Python
- if 'Carbon' in ext.extra_link_args:
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-002_xcompile_path.patch b/packages/lang/Python2/patches/Python2-2.7.11-002_xcompile_path.patch
deleted file mode 100644
index ec45bb80a..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-002_xcompile_path.patch
+++ /dev/null
@@ -1,49 +0,0 @@
-diff --git a/setup.py b/setup.py
-index d6ef5be..7a0d8f2 100644
---- a/setup.py
-+++ b/setup.py
-@@ -439,13 +439,19 @@ class PyBuildExt(build_ext):
- os.unlink(tmpfile)
-
- def detect_modules(self):
-- # Ensure that /usr/local is always used
-- 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')
-- if cross_compiling:
-- self.add_gcc_paths()
-- self.add_multiarch_paths()
-+ try:
-+ modules_include_dirs = os.environ["PYTHON_MODULES_INCLUDE"].split()
-+ except KeyError:
-+ modules_include_dirs = ['/usr/include']
-+ try:
-+ modules_lib_dirs = os.environ["PYTHON_MODULES_LIB"].split()
-+ except KeyError:
-+ modules_lib_dirs = ['/usr/lib']
-+ self.add_multiarch_paths()
-+ for dir in modules_include_dirs:
-+ add_dir_to_list(self.compiler.include_dirs, dir)
-+ for dir in modules_lib_dirs:
-+ add_dir_to_list(self.compiler.library_dirs, dir)
-
- # Add paths specified in the environment variables LDFLAGS and
- # CPPFLAGS for header and library files.
-@@ -481,17 +487,6 @@ class PyBuildExt(build_ext):
- for directory in reversed(options.dirs):
- add_dir_to_list(dir_list, directory)
-
-- if os.path.normpath(sys.prefix) != '/usr' \
-- and not sysconfig.get_config_var('PYTHONFRAMEWORK'):
-- # OSX note: Don't add LIBDIR and INCLUDEDIR to building a framework
-- # (PYTHONFRAMEWORK is set) to avoid # linking problems when
-- # building a framework with different architectures than
-- # the one that is currently installed (issue #7473)
-- add_dir_to_list(self.compiler.library_dirs,
-- sysconfig.get_config_var("LIBDIR"))
-- add_dir_to_list(self.compiler.include_dirs,
-- sysconfig.get_config_var("INCLUDEDIR"))
--
- try:
- have_unicode = unicode
- except NameError:
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-003_xcompile_disable_modules.patch b/packages/lang/Python2/patches/Python2-2.7.11-003_xcompile_disable_modules.patch
deleted file mode 100644
index 72ebaf3d8..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-003_xcompile_disable_modules.patch
+++ /dev/null
@@ -1,16 +0,0 @@
-diff --git a/setup.py b/setup.py
-index a46bf35..d6ef5be 100644
---- a/setup.py
-+++ b/setup.py
-@@ -33,7 +33,10 @@ host_platform = get_platform()
- COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
-
- # This global variable is used to hold the list of modules to be disabled.
--disabled_module_list = []
-+try:
-+ disabled_module_list = os.environ["PYTHON_DISABLE_MODULES"].split()
-+except KeyError:
-+ disabled_module_list = []
-
- def add_dir_to_list(dirlist, dir):
- """Add the directory 'dir' to the list 'dirlist' (at the front) if
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-004_xcompile_fix_libffi_configure.patch b/packages/lang/Python2/patches/Python2-2.7.11-004_xcompile_fix_libffi_configure.patch
deleted file mode 100644
index ff9f3fa03..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-004_xcompile_fix_libffi_configure.patch
+++ /dev/null
@@ -1,24 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 07af0b6..6426b22 100644
---- a/setup.py
-+++ b/setup.py
-@@ -2030,10 +2030,18 @@ class PyBuildExt(build_ext):
- if not self.verbose:
- config_args.append("-q")
-
-+
-+ #NOTE: best solution is to add to configure script
-+ # as config subdirectory and to exclude darwin
-+ # (see configure_ctypes_darwin).
-+ #FIXME: lets for now pass all top configure arguments
-+ #and do not modify configure script.
-+ config_args = sysconfig.get_config_var("CONFIG_ARGS")
-+
- # Pass empty CFLAGS because we'll just append the resulting
- # CFLAGS to Python's; -g or -O2 is to be avoided.
- cmd = "cd %s && env CFLAGS='' '%s/configure' %s" \
-- % (ffi_builddir, ffi_srcdir, " ".join(config_args))
-+ % (ffi_builddir, ffi_srcdir, config_args)
-
- res = os.system(cmd)
- if res or not os.path.exists(ffi_configfile):
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-005_dont_generate_pyo_and_pyc_files.patch b/packages/lang/Python2/patches/Python2-2.7.11-005_dont_generate_pyo_and_pyc_files.patch
deleted file mode 100644
index 862e3dfd4..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-005_dont_generate_pyo_and_pyc_files.patch
+++ /dev/null
@@ -1,29 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 918f210..c82366c 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -1011,24 +1011,6 @@ libinstall: build_all $(srcdir)/Lib/$(PLATDIR) $(srcdir)/Modules/xxmodule.c
- $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
- $(DESTDIR)$(LIBDEST)/distutils/tests ; \
- fi
-- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-- $(PYTHON_FOR_BUILD) -Wi -tt $(DESTDIR)$(LIBDEST)/compileall.py \
-- -d $(LIBDEST) -f \
-- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
-- $(DESTDIR)$(LIBDEST)
-- PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-- $(PYTHON_FOR_BUILD) -Wi -tt -O $(DESTDIR)$(LIBDEST)/compileall.py \
-- -d $(LIBDEST) -f \
-- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \
-- $(DESTDIR)$(LIBDEST)
-- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-- $(PYTHON_FOR_BUILD) -Wi -t $(DESTDIR)$(LIBDEST)/compileall.py \
-- -d $(LIBDEST)/site-packages -f \
-- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
-- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
-- $(PYTHON_FOR_BUILD) -Wi -t -O $(DESTDIR)$(LIBDEST)/compileall.py \
-- -d $(LIBDEST)/site-packages -f \
-- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt
- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-006_fix_ncurse_cppflags.patch b/packages/lang/Python2/patches/Python2-2.7.11-006_fix_ncurse_cppflags.patch
deleted file mode 100644
index 965d8d2cf..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-006_fix_ncurse_cppflags.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -Naur Python-2.7.10.orig/configure Python-2.7.10/configure
---- Python-2.7.10.orig/configure 2015-08-18 12:24:03.016649265 -0700
-+++ Python-2.7.10/configure 2015-08-18 12:23:41.716695873 -0700
-@@ -14215,7 +14215,7 @@
-
- # first curses configure check
- ac_save_cppflags="$CPPFLAGS"
--CPPFLAGS="$CPPFLAGS -I/usr/include/ncursesw"
-+CPPFLAGS="$CPPFLAGS -I${prefix}/usr/include/ncursesw"
-
- for ac_header in curses.h ncurses.h
- do :
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-008-distutils-use-python-sysroot.patch b/packages/lang/Python2/patches/Python2-2.7.11-008-distutils-use-python-sysroot.patch
deleted file mode 100644
index 7cd748761..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-008-distutils-use-python-sysroot.patch
+++ /dev/null
@@ -1,54 +0,0 @@
-Adjust library/header paths for cross-compilation
-
-When cross-compiling third-party extensions, the get_python_inc() or
-get_python_lib() can be called, to return the path to headers or
-libraries. However, they use the sys.prefix of the host Python, which
-returns incorrect paths when cross-compiling (paths pointing to host
-headers and libraries).
-
-In order to fix this, we introduce the _python_sysroot, _python_prefix
-and _python_exec_prefix variables, that allow to override these
-values, and get correct header/library paths when cross-compiling
-third-party Python modules.
-
-The _python_sysroot variable is also used to prefix the LIBDIR value
-taken from the sysconfigdata module.
-
-Signed-off-by: Thomas Petazzoni
-
-Index: b/Lib/distutils/sysconfig.py
-===================================================================
---- a/Lib/distutils/sysconfig.py
-+++ b/Lib/distutils/sysconfig.py
-@@ -19,8 +19,13 @@
- from distutils.errors import DistutilsPlatformError
-
- # These are needed in a couple of spots, so just compute them once.
--PREFIX = os.path.normpath(sys.prefix)
--EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
-+if "_python_sysroot" in os.environ:
-+ _sysroot=os.environ.get('_python_sysroot')
-+ PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_prefix'))
-+ EXEC_PREFIX = os.path.normpath(_sysroot + os.environ.get('_python_exec_prefix'))
-+else:
-+ PREFIX = os.path.normpath(sys.prefix)
-+ EXEC_PREFIX = os.path.normpath(sys.exec_prefix)
-
- # Path to the base directory of the project. On Windows the binary may
- # live in project/PCBuild9. If we're dealing with an x64 Windows build,
-Index: b/Lib/distutils/command/build_ext.py
-===================================================================
---- a/Lib/distutils/command/build_ext.py
-+++ b/Lib/distutils/command/build_ext.py
-@@ -237,7 +237,10 @@
- if (sysconfig.get_config_var('Py_ENABLE_SHARED')):
- if not sysconfig.python_build:
- # building third party extensions
-- self.library_dirs.append(sysconfig.get_config_var('LIBDIR'))
-+ libdir = sysconfig.get_config_var('LIBDIR')
-+ if "_python_sysroot" in os.environ:
-+ libdir = os.environ.get("_python_sysroot") + libdir
-+ self.library_dirs.append(libdir)
- else:
- # building python standard extensions
- self.library_dirs.append('.')
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-008-reread-environment.patch b/packages/lang/Python2/patches/Python2-2.7.11-008-reread-environment.patch
deleted file mode 100644
index 0de2346b9..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-008-reread-environment.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index bf3aed7..7ff5c79 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -464,6 +464,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt
- $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
- _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
- PYTHONXCPREFIX='$(DESTDIR)$(prefix)' \
-+ CONFIG_ARGS="$(CONFIG_ARGS)" \
- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
-
- libpython$(VERSION).so: $(LIBRARY_OBJS)
-@@ -1104,6 +1105,7 @@ libainstall: all python-config
- # This goes into $(exec_prefix)
- sharedinstall: sharedmods
- CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
-+ CONFIG_ARGS="$(CONFIG_ARGS)" \
- $(RUNSHARED) $(PYTHON_FOR_BUILD) $(srcdir)/setup.py install \
- --skip-build \
- --prefix=$(prefix) \
-diff --git a/setup.py b/setup.py
-index 6426b22..d2776dd 100644
---- a/setup.py
-+++ b/setup.py
-@@ -32,6 +32,9 @@ host_platform = get_platform()
- # Were we compiled --with-pydebug or with #define Py_DEBUG?
- COMPILED_WITH_PYDEBUG = ('--with-pydebug' in sysconfig.get_config_var("CONFIG_ARGS"))
-
-+sysconfig.get_config_vars()
-+sysconfig._CONFIG_VARS.update(os.environ)
-+
- # This global variable is used to hold the list of modules to be disabled.
- try:
- disabled_module_list = os.environ["PYTHON_DISABLE_MODULES"].split()
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-009-distutils-rpath.patch b/packages/lang/Python2/patches/Python2-2.7.11-009-distutils-rpath.patch
deleted file mode 100644
index 2da6af4f0..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-009-distutils-rpath.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-diff --git a/Lib/distutils/unixccompiler.py b/Lib/distutils/unixccompiler.py
-index 2aa1cb1..529e2d4 100644
---- a/Lib/distutils/unixccompiler.py
-+++ b/Lib/distutils/unixccompiler.py
-@@ -83,6 +83,16 @@ class UnixCCompiler(CCompiler):
- if sys.platform == "cygwin":
- exe_extension = ".exe"
-
-+ def _fix_lib_args(self, libraries, library_dirs, runtime_library_dirs):
-+ """Remove standard library path from rpath"""
-+ libraries, library_dirs, runtime_library_dirs = \
-+ CCompiler._fix_lib_args(self, libraries, library_dirs,
-+ runtime_library_dirs)
-+ libdir = sysconfig.get_config_var('LIBDIR')
-+ if runtime_library_dirs and (libdir in runtime_library_dirs):
-+ runtime_library_dirs.remove(libdir)
-+ return libraries, library_dirs, runtime_library_dirs
-+
- def preprocess(self, source,
- output_file=None, macros=None, include_dirs=None,
- extra_preargs=None, extra_postargs=None):
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-010-fix-python-config.patch b/packages/lang/Python2/patches/Python2-2.7.11-010-fix-python-config.patch
deleted file mode 100644
index c1cc478da..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-010-fix-python-config.patch
+++ /dev/null
@@ -1,208 +0,0 @@
-Add a backport of http://bugs.python.org/issue16235 so we can use
-python-config for cross builds.
-This basically replaces the python version of python-config with a pure-shell
-version that's already preprocessed when installed and doesn't depend
-on the sysconfig import that usually leads to bad data/results.
-
-Signed-off-by: Gustavo Zacarias
-
-Index: b/configure.ac
-===================================================================
---- a/configure.ac
-+++ b/configure.ac
-@@ -885,6 +885,7 @@
-
- # Other platforms follow
- if test $enable_shared = "yes"; then
-+ PY_ENABLE_SHARED=1
- AC_DEFINE(Py_ENABLE_SHARED, 1, [Defined if Python is built as a shared library.])
- case $ac_sys_system in
- BeOS*)
-@@ -945,6 +946,7 @@
-
- esac
- else # shared is disabled
-+ PY_ENABLE_SHARED=0
- case $ac_sys_system in
- CYGWIN*)
- BLDLIBRARY='$(LIBRARY)'
-@@ -1921,6 +1923,9 @@
- AC_SUBST(BLDSHARED)
- AC_SUBST(CCSHARED)
- AC_SUBST(LINKFORSHARED)
-+AC_SUBST(PY_ENABLE_SHARED)
-+LIBPL="${prefix}/lib/python${VERSION}/config"
-+AC_SUBST(LIBPL)
- # SO is the extension of shared libraries `(including the dot!)
- # -- usually .so, .sl on HP-UX, .dll on Cygwin
- AC_MSG_CHECKING(SO)
-@@ -4588,7 +4593,7 @@
- AC_SUBST(ENSUREPIP)
-
- # generate output files
--AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc)
-+AC_CONFIG_FILES(Makefile.pre Modules/Setup.config Misc/python.pc Misc/python-config.sh)
- AC_CONFIG_FILES([Modules/ld_so_aix], [chmod +x Modules/ld_so_aix])
- AC_OUTPUT
-
-Index: b/Makefile.pre.in
-===================================================================
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -166,7 +166,7 @@
- SUBDIRSTOO= Include Lib Misc Demo
-
- # Files and directories to be distributed
--CONFIGFILES= configure configure.ac acconfig.h pyconfig.h.in Makefile.pre.in
-+CONFIGFILES= configure configure.ac acconfig.h pyconfig.h.in Makefile.pre.in Misc/python-config.sh
- DISTFILES= README ChangeLog $(CONFIGFILES)
- DISTDIRS= $(SUBDIRS) $(SUBDIRSTOO) Ext-dummy
- DIST= $(DISTFILES) $(DISTDIRS)
-@@ -410,7 +410,7 @@
-
- # Default target
- all: @DEF_MAKE_ALL_RULE@
--build_all: check-clean-src $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks
-+build_all: check-clean-src $(BUILDPYTHON) oldsharedmods sharedmods gdbhooks python-config
-
- # Compile a binary with gcc profile guided optimization.
- profile-opt:
-@@ -1101,10 +1101,12 @@
- fi; \
- cd $(srcdir)/Lib/$(PLATDIR); $(RUNSHARED) ./regen
-
--python-config: $(srcdir)/Misc/python-config.in
-+python-config: $(srcdir)/Misc/python-config.in Misc/python-config.sh
- # Substitution happens here, as the completely-expanded BINDIR
- # is not available in configure
-- sed -e "s,@EXENAME@,$(BINDIR)/python$(VERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config
-+ sed -e "s,@EXENAME@,$(BINDIR)/python$(VERSION)$(EXE)," < $(srcdir)/Misc/python-config.in >python-config.py
-+ # Replace makefile compat. variable references with shell script compat. ones; $(VAR) -> ${VAR}
-+ sed -e 's,\$$(\([A-Za-z0-9_]*\)),\$$\{\1\},g' Misc/python-config.sh >python-config
-
- # Install the include files
- INCLDIRSTOMAKE=$(INCLUDEDIR) $(CONFINCLUDEDIR) $(INCLUDEPY) $(CONFINCLUDEPY)
-@@ -1163,7 +1165,7 @@
- $(INSTALL_SCRIPT) $(srcdir)/Modules/makesetup $(DESTDIR)$(LIBPL)/makesetup
- $(INSTALL_SCRIPT) $(srcdir)/install-sh $(DESTDIR)$(LIBPL)/install-sh
- $(INSTALL_SCRIPT) python-config $(DESTDIR)$(BINDIR)/python$(VERSION)-config
-- rm python-config
-+ $(INSTALL_SCRIPT) python-config.py $(DESTDIR)$(LIBPL)/python-config.py
- @if [ -s Modules/python.exp -a \
- "`echo $(MACHDEP) | sed 's/^\(...\).*/\1/'`" = "aix" ]; then \
- echo; echo "Installing support files for building shared extension modules on AIX:"; \
-@@ -1345,6 +1347,7 @@
- config.cache config.log pyconfig.h Modules/config.c
- -rm -rf build platform
- -rm -rf $(PYTHONFRAMEWORKDIR)
-+ -rm -f python-config.py python-config
-
- # Make things extra clean, before making a distribution:
- # remove all generated files, even Makefile[.pre]
-Index: b/Misc/python-config.sh.in
-===================================================================
---- /dev/null
-+++ b/Misc/python-config.sh.in
-@@ -0,0 +1,102 @@
-+#!/bin/sh
-+
-+exit_with_usage ()
-+{
-+ echo "Usage: $0 --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--help|--configdir"
-+ exit $1
-+}
-+
-+if [ "$1" = "" ] ; then
-+ exit_with_usage 1
-+fi
-+
-+# Returns the actual prefix where this script was installed to.
-+installed_prefix ()
-+{
-+ RESULT=$(dirname $(cd $(dirname "$1") && pwd -P))
-+ if which readlink >/dev/null 2>&1 ; then
-+ RESULT=$(readlink -f "$RESULT")
-+ fi
-+ echo $RESULT
-+}
-+
-+prefix_build="@prefix@"
-+prefix_real=$(installed_prefix "$0")
-+
-+# Use sed to fix paths from their built to locations to their installed to locations.
-+prefix=$(echo "$prefix_build" | sed "s#$prefix_build#$prefix_real#")
-+exec_prefix_build="@exec_prefix@"
-+exec_prefix=$(echo "$exec_prefix_build" | sed "s#$exec_prefix_build#$prefix_real#")
-+includedir=$(echo "@includedir@")
-+libdir=$(echo "@libdir@")
-+CFLAGS=$(echo "@CFLAGS@" | sed "s#$prefix_build#$prefix_real#")
-+VERSION="@VERSION@"
-+LIBM="@LIBM@"
-+LIBC="@LIBC@"
-+SYSLIBS="$LIBM $LIBC"
-+LIBS="@LIBS@ $SYSLIBS -lpython${VERSION}"
-+BASECFLAGS="@BASECFLAGS@"
-+LDLIBRARY="@LDLIBRARY@"
-+LINKFORSHARED="@LINKFORSHARED@"
-+OPT="@OPT@"
-+PY_ENABLE_SHARED="@PY_ENABLE_SHARED@"
-+LDVERSION="@LDVERSION@"
-+LIBDEST=${prefix}/lib/python${VERSION}
-+LIBPL=$(echo "@LIBPL@" | sed "s#$prefix_build#$prefix_real#")
-+SO="@SO@"
-+PYTHONFRAMEWORK="@PYTHONFRAMEWORK@"
-+INCDIR="-I$includedir/python${VERSION}"
-+PLATINCDIR="-I$includedir/python${VERSION}"
-+
-+# Scan for --help or unknown argument.
-+for ARG in $*
-+do
-+ case $ARG in
-+ --help)
-+ exit_with_usage 0
-+ ;;
-+ --prefix|--exec-prefix|--includes|--libs|--cflags|--ldflags|--extension-suffix|--abiflags|--configdir)
-+ ;;
-+ *)
-+ exit_with_usage 1
-+ ;;
-+esac
-+done
-+
-+for ARG in "$@"
-+do
-+ case "$ARG" in
-+ --prefix)
-+ echo "$prefix"
-+ ;;
-+ --exec-prefix)
-+ echo "$exec_prefix"
-+ ;;
-+ --includes)
-+ echo "$INCDIR $PLATINCDIR"
-+ ;;
-+ --cflags)
-+ echo "$INCDIR $PLATINCDIR $BASECFLAGS $CFLAGS $OPT"
-+ ;;
-+ --libs)
-+ echo "$LIBS"
-+ ;;
-+ --ldflags)
-+ LINKFORSHAREDUSED=
-+ if [ -z "$PYTHONFRAMEWORK" ] ; then
-+ LINKFORSHAREDUSED=$LINKFORSHARED
-+ fi
-+ LIBPLUSED=
-+ if [ "$PY_ENABLE_SHARED" = "0" ] ; then
-+ LIBPLUSED="-L$LIBPL"
-+ fi
-+ echo "$LIBPLUSED -L$libdir $LIBS $LINKFORSHAREDUSED"
-+ ;;
-+ --extension-suffix)
-+ echo "$SO"
-+ ;;
-+ --configdir)
-+ echo "$LIBPL"
-+ ;;
-+esac
-+done
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-014-abort-on-failed-modules.patch b/packages/lang/Python2/patches/Python2-2.7.11-014-abort-on-failed-modules.patch
deleted file mode 100644
index 4bceeb62d..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-014-abort-on-failed-modules.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-Abort on failed module build
-
-When building a Python module fails, the setup.py script currently
-doesn't exit with an error, and simply continues. This is not a really
-nice behavior, so this patch changes setup.py to abort with an error,
-so that the build issue is clearly noticeable.
-
-Signed-off-by: Thomas Petazzoni
-
-Index: b/setup.py
-===================================================================
---- a/setup.py
-+++ b/setup.py
-@@ -283,6 +283,7 @@
- print "Failed to build these modules:"
- print_three_column(failed)
- print
-+ sys.exit(1)
-
- def build_extension(self, ext):
-
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-015_no_static_lib.patch b/packages/lang/Python2/patches/Python2-2.7.11-015_no_static_lib.patch
deleted file mode 100644
index 2a381d54f..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-015_no_static_lib.patch
+++ /dev/null
@@ -1,51 +0,0 @@
-diff --git a/Makefile.pre.in b/Makefile.pre.in
-index 918f210..eb9ee6b 100644
---- a/Makefile.pre.in
-+++ b/Makefile.pre.in
-@@ -438,7 +438,7 @@ coverage:
-
-
- # Build the interpreter
--$(BUILDPYTHON): Modules/python.o $(LIBRARY) $(LDLIBRARY)
-+$(BUILDPYTHON): Modules/python.o $(LDLIBRARY)
- $(LINKCC) $(LDFLAGS) $(LINKFORSHARED) -o $@ \
- Modules/python.o \
- $(BLDLIBRARY) $(LIBS) $(MODLIBS) $(SYSLIBS) $(LDLAST)
-@@ -465,18 +465,6 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt
- _TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
-
--# Build static library
--# avoid long command lines, same as LIBRARY_OBJS
--$(LIBRARY): $(LIBRARY_OBJS)
-- -rm -f $@
-- $(AR) $(ARFLAGS) $@ Modules/getbuildinfo.o
-- $(AR) $(ARFLAGS) $@ $(PARSER_OBJS)
-- $(AR) $(ARFLAGS) $@ $(OBJECT_OBJS)
-- $(AR) $(ARFLAGS) $@ $(PYTHON_OBJS)
-- $(AR) $(ARFLAGS) $@ $(MODULE_OBJS) $(SIGNAL_OBJS)
-- $(AR) $(ARFLAGS) $@ $(MODOBJS)
-- $(RANLIB) $@
--
- libpython$(VERSION).so: $(LIBRARY_OBJS)
- if test $(INSTSONAME) != $(LDLIBRARY); then \
- $(BLDSHARED) -Wl,-h$(INSTSONAME) -o $(INSTSONAME) $(LIBRARY_OBJS) $(MODLIBS) $(SHLIBS) $(LIBC) $(LIBM) $(LDLAST); \
-@@ -1090,18 +1078,6 @@ libainstall: all python-config
- else true; \
- fi; \
- done
-- @if test -d $(LIBRARY); then :; else \
-- if test "$(PYTHONFRAMEWORKDIR)" = no-framework; then \
-- if test "$(SO)" = .dll; then \
-- $(INSTALL_DATA) $(LDLIBRARY) $(DESTDIR)$(LIBPL) ; \
-- else \
-- $(INSTALL_DATA) $(LIBRARY) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \
-- $(RANLIB) $(DESTDIR)$(LIBPL)/$(LIBRARY) ; \
-- fi; \
-- else \
-- echo Skip install of $(LIBRARY) - use make frameworkinstall; \
-- fi; \
-- fi
- $(INSTALL_DATA) Modules/config.c $(DESTDIR)$(LIBPL)/config.c
- $(INSTALL_DATA) Modules/python.o $(DESTDIR)$(LIBPL)/python.o
- $(INSTALL_DATA) $(srcdir)/Modules/config.c.in $(DESTDIR)$(LIBPL)/config.c.in
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-016-default-is-optimized.patch b/packages/lang/Python2/patches/Python2-2.7.11-016-default-is-optimized.patch
deleted file mode 100644
index c15125c03..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-016-default-is-optimized.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/Python/compile.c b/Python/compile.c
-index 1cf53f9..25665b5 100644
---- a/Python/compile.c
-+++ b/Python/compile.c
-@@ -32,7 +32,7 @@
- #include "symtable.h"
- #include "opcode.h"
-
--int Py_OptimizeFlag = 0;
-+int Py_OptimizeFlag = 1;
-
- #define DEFAULT_BLOCK_SIZE 16
- #define DEFAULT_BLOCKS 8
diff --git a/packages/lang/Python2/patches/Python2-2.7.11-017-dont-install-2to3.patch b/packages/lang/Python2/patches/Python2-2.7.11-017-dont-install-2to3.patch
deleted file mode 100644
index 64c09ddf7..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.11-017-dont-install-2to3.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/setup.py b/setup.py
-index 69b76e7..7a50cc3 100644
---- a/setup.py
-+++ b/setup.py
-@@ -2315,7 +2315,6 @@ def main():
-
- # Scripts to install
- scripts = ['Tools/scripts/pydoc', 'Tools/scripts/idle',
-- 'Tools/scripts/2to3',
- 'Lib/smtpd.py']
- )
-
diff --git a/packages/lang/Python2/patches/Python2-2.7.15-001_disable_restricted_mode.patch b/packages/lang/Python2/patches/Python2-2.7.15-001_disable_restricted_mode.patch
deleted file mode 100644
index 4a69d6f30..000000000
--- a/packages/lang/Python2/patches/Python2-2.7.15-001_disable_restricted_mode.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/Include/frameobject.h
-+++ b/Include/frameobject.h
-@@ -56,7 +56,7 @@
-
- #define PyFrame_Check(op) (Py_TYPE(op) == &PyFrame_Type)
- #define PyFrame_IsRestricted(f) \
-- ((f)->f_tstate && (f)->f_builtins != (f)->f_tstate->interp->builtins)
-+ (0)
-
- PyAPI_FUNC(PyFrameObject *) PyFrame_New(PyThreadState *, PyCodeObject *,
- PyObject *, PyObject *);
diff --git a/packages/lang/Python2/patches/aarch64/Python2-001-fix_platform_machine_func_for_32bit_userspace.patch b/packages/lang/Python2/patches/aarch64/Python2-001-fix_platform_machine_func_for_32bit_userspace.patch
deleted file mode 100644
index b28cb8627..000000000
--- a/packages/lang/Python2/patches/aarch64/Python2-001-fix_platform_machine_func_for_32bit_userspace.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-diff --git a/Lib/platform.py b/Lib/platform.py
-index e04d87f258..4d7bb38564 100755
---- a/Lib/platform.py
-+++ b/Lib/platform.py
-@@ -1283,6 +1283,9 @@ def uname():
- system = 'Windows'
- release = 'Vista'
-
-+ if machine == 'aarch64' and sys.maxsize <= 2**32:
-+ machine = 'armv7l'
-+
- _uname_cache = system,node,release,version,machine,processor
- return _uname_cache
-
diff --git a/packages/lang/Python3/package.mk b/packages/lang/Python3/package.mk
index 86ed754e9..a4fc7b069 100644
--- a/packages/lang/Python3/package.mk
+++ b/packages/lang/Python3/package.mk
@@ -3,8 +3,8 @@
PKG_NAME="Python3"
# When changing PKG_VERSION remember to sync PKG_PYTHON_VERSION!
-PKG_VERSION="3.8.12"
-PKG_SHA256="b1d3a76420375343b5e8a22fceb1ac65b77193e9ed27146524f0a9db058728ea"
+PKG_VERSION="3.9.10"
+PKG_SHA256="0a8fbfb5287ebc3a13e9baf3d54e08fa06778ffeccf6311aef821bb3a6586cc8"
PKG_LICENSE="OSS"
PKG_SITE="https://www.python.org/"
PKG_URL="https://www.python.org/ftp/python/${PKG_VERSION}/${PKG_NAME::-1}-${PKG_VERSION}.tar.xz"
@@ -13,7 +13,7 @@ PKG_DEPENDS_TARGET="toolchain Python3:host sqlite expat zlib bzip2 xz openssl li
PKG_LONGDESC="Python3 is an interpreted object-oriented programming language."
PKG_TOOLCHAIN="autotools"
-PKG_PYTHON_VERSION="python3.8"
+PKG_PYTHON_VERSION="python3.9"
PKG_PY_DISABLED_MODULES="_tkinter nis gdbm bsddb ossaudiodev"
diff --git a/packages/lang/Python3/patches/Python3-0000-default-is-optimized.patch b/packages/lang/Python3/patches/Python3-0000-default-is-optimized.patch
index 37c32c328..e2d448bd3 100644
--- a/packages/lang/Python3/patches/Python3-0000-default-is-optimized.patch
+++ b/packages/lang/Python3/patches/Python3-0000-default-is-optimized.patch
@@ -8,7 +8,7 @@ package for Generic from building.
diff -aur a/Python/initconfig.c b/Python/initconfig.c
--- a/Python/initconfig.c 2020-07-20 09:01:32.000000000 -0400
+++ b/Python/initconfig.c 2020-08-08 03:24:02.796189739 -0400
-@@ -147,7 +147,7 @@
+@@ -153,7 +153,7 @@
int Py_QuietFlag = 0; /* Needed by sysmodule.c */
int Py_InteractiveFlag = 0; /* Needed by Py_FdIsInteractive() below */
int Py_InspectFlag = 0; /* Needed to determine whether to exit at SystemExit */
diff --git a/packages/lang/Python3/patches/Python3-0100-buildroot-patches.patch b/packages/lang/Python3/patches/Python3-0100-buildroot-patches.patch
index 9c86c12a8..b93975f10 100644
--- a/packages/lang/Python3/patches/Python3-0100-buildroot-patches.patch
+++ b/packages/lang/Python3/patches/Python3-0100-buildroot-patches.patch
@@ -18,7 +18,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index 502317aa0c..f9011c132a 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1455,6 +1455,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
+@@ -1549,6 +1549,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
$(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \
$(DESTDIR)$(LIBDEST)/distutils/tests ; \
fi
@@ -26,7 +26,7 @@ index 502317aa0c..f9011c132a 100644
-PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \
$(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \
-j0 -d $(LIBDEST) -f \
-@@ -1482,6 +1483,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
+@@ -1576,6 +1577,7 @@ libinstall: build_all $(srcdir)/Modules/xxmodule.c
$(PYTHON_FOR_BUILD) -Wi -OO $(DESTDIR)$(LIBDEST)/compileall.py \
-j0 -d $(LIBDEST)/site-packages -f \
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
@@ -38,7 +38,7 @@ diff --git a/configure.ac b/configure.ac
index a189d42c2c..4690cdba9f 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -1091,6 +1091,12 @@ fi
+@@ -1128,6 +1128,12 @@ fi
AC_MSG_CHECKING(LDLIBRARY)
@@ -69,7 +69,7 @@ diff --git a/configure.ac b/configure.ac
index 4690cdba9f..ffeec102b7 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -4080,7 +4080,7 @@ fi
+@@ -4222,7 +4222,7 @@ fi
AC_MSG_RESULT($ac_cv_buggy_getaddrinfo)
@@ -130,7 +130,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index f9011c132a..e8a6bd5c03 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -205,6 +205,8 @@ FILEMODE= 644
+@@ -215,6 +215,8 @@ FILEMODE= 644
# configure script arguments
CONFIG_ARGS= @CONFIG_ARGS@
@@ -139,7 +139,7 @@ index f9011c132a..e8a6bd5c03 100644
# Subdirectories with code
SRCDIRS= @SRCDIRS@
-@@ -605,6 +607,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
+@@ -631,6 +633,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.txt Modules/_math.o
esac; \
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
@@ -147,7 +147,7 @@ index f9011c132a..e8a6bd5c03 100644
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build"; \
$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
-@@ -1601,7 +1604,8 @@ libainstall: @DEF_MAKE_RULE@ python-config
+@@ -1695,7 +1698,8 @@ libainstall: @DEF_MAKE_RULE@ python-config
# Install the dynamically loadable modules
# This goes into $(exec_prefix)
sharedinstall: sharedmods
@@ -161,7 +161,7 @@ diff --git a/configure.ac b/configure.ac
index ffeec102b7..7872b4dfee 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2958,6 +2958,8 @@ LIBS="$withval $LIBS"
+@@ -3093,6 +3093,8 @@ LIBS="$withval $LIBS"
PKG_PROG_PKG_CONFIG
@@ -174,7 +174,7 @@ diff --git a/setup.py b/setup.py
index 20d7f35652..d3f2cc1b37 100644
--- a/setup.py
+++ b/setup.py
-@@ -24,7 +24,10 @@ from distutils.spawn import find_executable
+@@ -44,7 +44,10 @@ from distutils.spawn import find_executable
TEST_EXTENSIONS = True
# This global variable is used to hold the list of modules to be disabled.
@@ -231,8 +231,8 @@ diff --git a/Lib/distutils/sysconfig.py b/Lib/distutils/sysconfig.py
index b51629eb94..011a437bcd 100644
--- a/Lib/distutils/sysconfig.py
+++ b/Lib/distutils/sysconfig.py
-@@ -18,10 +18,17 @@ from .errors import DistutilsPlatformError
- from .util import get_platform, get_host_platform
+@@ -17,10 +17,17 @@ from .errors import DistutilsPlatformError
+ from .errors import DistutilsPlatformError
# These are needed in a couple of spots, so just compute them once.
-PREFIX = os.path.normpath(sys.prefix)
@@ -270,7 +270,7 @@ diff --git a/setup.py b/setup.py
index d3f2cc1b37..5d504d7638 100644
--- a/setup.py
+++ b/setup.py
-@@ -955,12 +955,9 @@ class PyBuildExt(build_ext):
+@@ -1047,12 +1047,9 @@ class PyBuildExt(build_ext):
pass # Issue 7384: Already linked against curses or tinfo.
elif curses_library:
readline_libs.append(curses_library)
@@ -309,7 +309,7 @@ diff --git a/setup.py b/setup.py
index 5d504d7638..282a592dc6 100644
--- a/setup.py
+++ b/setup.py
-@@ -654,10 +654,10 @@ class PyBuildExt(build_ext):
+@@ -740,10 +740,10 @@ class PyBuildExt(build_ext):
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')
@@ -343,7 +343,7 @@ diff --git a/setup.py b/setup.py
index 282a592dc6..8fda3b4d47 100644
--- a/setup.py
+++ b/setup.py
-@@ -444,6 +444,7 @@ class PyBuildExt(build_ext):
+@@ -529,6 +529,7 @@ class PyBuildExt(build_ext):
print("Failed to build these modules:")
print_three_column(failed)
print()
@@ -506,6 +506,8 @@ any system library (eg. libz, libssl, etc.)
Signed-off-by: Samuel Cabrero
Signed-off-by: Thomas Petazzoni
+[james.hilliard1@gmail.com: adapt to python 3.9]
+Signed-off-by: James Hilliard
---
setup.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
@@ -514,12 +516,12 @@ diff --git a/setup.py b/setup.py
index 8fda3b4d47..bb7eb44213 100644
--- a/setup.py
+++ b/setup.py
-@@ -600,7 +600,7 @@ class PyBuildExt(build_ext):
+@@ -686,7 +686,7 @@ class PyBuildExt(build_ext):
tmpfile = os.path.join(self.build_temp, 'ccpaths')
if not os.path.exists(self.build_temp):
os.makedirs(self.build_temp)
-- ret = os.system('%s -E -v - %s 1>/dev/null' % (cc, tmpfile))
-+ ret = os.system('LC_ALL=C %s -E -v - %s 1>/dev/null' % (cc, tmpfile))
+- ret = run_command('%s -E -v - %s 1>/dev/null' % (CC, tmpfile))
++ ret = run_command('LC_ALL=C %s -E -v - %s 1>/dev/null' % (CC, tmpfile))
is_gcc = False
is_clang = False
in_incdirs = False
@@ -556,7 +558,7 @@ diff --git a/Lib/importlib/_bootstrap_external.py b/Lib/importlib/_bootstrap_ext
index b8ac482994..db034f605a 100644
--- a/Lib/importlib/_bootstrap_external.py
+++ b/Lib/importlib/_bootstrap_external.py
-@@ -306,8 +306,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+@@ -373,8 +373,6 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
a True value is the same as setting 'optimization' to the empty string
while a False value is equivalent to setting 'optimization' to '1'.
@@ -565,7 +567,7 @@ index b8ac482994..db034f605a 100644
"""
if debug_override is not None:
_warnings.warn('the debug_override parameter is deprecated; use '
-@@ -319,10 +317,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+@@ -386,10 +384,7 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
path = _os.fspath(path)
head, tail = _path_split(path)
base, sep, rest = tail.rpartition('.')
@@ -577,7 +579,7 @@ index b8ac482994..db034f605a 100644
if optimization is None:
if sys.flags.optimize == 0:
optimization = ''
-@@ -359,46 +354,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
+@@ -426,46 +421,17 @@ def cache_from_source(path, debug_override=None, *, optimization=None):
head.lstrip(path_separators),
filename,
)
@@ -643,16 +645,18 @@ Signed-off-by: Thomas Petazzoni
Signed-off-by: Samuel Martin
[ Andrey Smirnov: ported to Python 3.6 ]
Signed-off-by: Andrey Smirnov
+[james.hilliard1@gmail.com: adapt to python 3.9]
+Signed-off-by: James Hilliard
---
- Makefile.pre.in | 54 ++++++++++++++++++++++++++++++++-----------------
+ Makefile.pre.in | 56 ++++++++++++++++++++++++++++++++-----------------
configure.ac | 5 +++++
- 2 files changed, 41 insertions(+), 18 deletions(-)
+ 2 files changed, 42 insertions(+), 19 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
index e8a6bd5c03..3abee36f49 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1317,8 +1317,28 @@ maninstall: altmaninstall
+@@ -1405,8 +1405,29 @@ maninstall: altmaninstall
# Install the library
XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
@@ -676,16 +680,17 @@ index e8a6bd5c03..3abee36f49 100644
+ multiprocessing multiprocessing/dummy \
+ unittest \
+ venv venv/scripts venv/scripts/common venv/scripts/posix \
-+ curses pydoc_data
++ curses pydoc_data \
++ zoneinfo
+
+TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+ tkinter/test/test_ttk test \
test/audiodata \
test/capath test/data \
test/cjkencodings test/decimaltestdata \
-@@ -1376,26 +1396,24 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
- test/test_importlib/zipdata01 \
+@@ -1467,28 +1488,25 @@ LIBSUBDIRS= tkinter tkinter/test tkinter/test/test_tkinter \
test/test_importlib/zipdata02 \
+ test/test_zoneinfo test/test_zoneinfo/data \
test/ziptestdata \
- asyncio \
test/test_asyncio \
@@ -708,13 +713,15 @@ index e8a6bd5c03..3abee36f49 100644
+ ctypes/test \
+ idlelib/idle_test \
+ distutils/tests \
+ test/test_peg_generator \
+ test/test_importlib test/test_importlib/builtin \
test/test_tools test/test_warnings test/test_warnings/data \
- turtledemo \
- multiprocessing multiprocessing/dummy \
- unittest unittest/test unittest/test/testmock \
- venv venv/scripts venv/scripts/common venv/scripts/posix \
-- curses pydoc_data
+- curses pydoc_data \
+- zoneinfo
+ unittest/test unittest/test/testmock
+
+ifeq (@TEST_MODULES@,yes)
@@ -728,7 +735,7 @@ diff --git a/configure.ac b/configure.ac
index 7872b4dfee..b820d18c7c 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3234,6 +3234,11 @@ if test "$posix_threads" = "yes"; then
+@@ -3370,6 +3370,11 @@ if test "$posix_threads" = "yes"; then
AC_CHECK_FUNCS(pthread_getcpuclockid)
fi
@@ -765,7 +772,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index 3abee36f49..6fa0549a56 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1289,7 +1289,9 @@ bininstall: altbininstall
+@@ -1373,7 +1373,9 @@ bininstall: altbininstall
-rm -f $(DESTDIR)$(BINDIR)/idle3
(cd $(DESTDIR)$(BINDIR); $(LN) -s idle$(VERSION) idle3)
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
@@ -775,16 +782,16 @@ index 3abee36f49..6fa0549a56 100644
-rm -f $(DESTDIR)$(BINDIR)/2to3
(cd $(DESTDIR)$(BINDIR); $(LN) -s 2to3-$(VERSION) 2to3)
if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
-@@ -1335,7 +1337,7 @@ LIBSUBDIRS= tkinter site-packages \
+@@ -1423,7 +1425,7 @@ LIBSUBDIRS= tkinter site-packages \
multiprocessing multiprocessing/dummy \
unittest \
venv venv/scripts venv/scripts/common venv/scripts/posix \
-- curses pydoc_data
-+ curses
+- curses pydoc_data \
++ curses \
+ zoneinfo
TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
- tkinter/test/test_ttk test \
-@@ -1414,6 +1416,10 @@ ifeq (@TEST_MODULES@,yes)
+@@ -1507,6 +1509,10 @@ ifeq (@TEST_MODULES@,yes)
LIBSUBDIRS += $(TESTSUBDIRS)
endif
@@ -799,7 +806,7 @@ diff --git a/configure.ac b/configure.ac
index b820d18c7c..f53cc86d89 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3234,6 +3234,12 @@ if test "$posix_threads" = "yes"; then
+@@ -3370,6 +3370,12 @@ if test "$posix_threads" = "yes"; then
AC_CHECK_FUNCS(pthread_getcpuclockid)
fi
@@ -816,7 +823,7 @@ diff --git a/setup.py b/setup.py
index bb7eb44213..748c269960 100644
--- a/setup.py
+++ b/setup.py
-@@ -2401,6 +2401,12 @@ def main():
+@@ -2572,6 +2572,12 @@ def main():
# turn off warnings when deprecated modules are imported
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
@@ -829,7 +836,7 @@ index bb7eb44213..748c269960 100644
setup(# PyPI Metadata (PEP 301)
name = "Python",
version = sys.version.split()[0],
-@@ -2425,8 +2431,7 @@ def main():
+@@ -2596,8 +2602,7 @@ def main():
# If you change the scripts installed here, you also need to
# check the PyBuildScripts command above, and change the links
# created by the bininstall target in Makefile.pre.in
@@ -864,7 +871,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index 6fa0549a56..3e1f130532 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1293,7 +1293,9 @@ ifeq (@PYDOC@,yes)
+@@ -1377,7 +1377,9 @@ ifeq (@PYDOC@,yes)
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
endif
-rm -f $(DESTDIR)$(BINDIR)/2to3
@@ -874,7 +881,7 @@ index 6fa0549a56..3e1f130532 100644
if test "x$(LIPO_32BIT_FLAGS)" != "x" ; then \
rm -f $(DESTDIR)$(BINDIR)/python3-32$(EXE); \
(cd $(DESTDIR)$(BINDIR); $(LN) -s python$(VERSION)-32$(EXE) python3-32$(EXE)) \
-@@ -1328,7 +1330,6 @@ LIBSUBDIRS= tkinter site-packages \
+@@ -1416,7 +1418,6 @@ LIBSUBDIRS= tkinter site-packages \
html json http dbm xmlrpc \
sqlite3 \
logging csv wsgiref urllib \
@@ -882,7 +889,7 @@ index 6fa0549a56..3e1f130532 100644
ctypes ctypes/macholib \
idlelib idlelib/Icons \
distutils distutils/command $(XMLLIBSUBDIRS) \
-@@ -1402,9 +1403,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+@@ -1494,9 +1495,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
test/test_email test/test_email/data \
test/test_json \
sqlite3/test \
@@ -892,7 +899,7 @@ index 6fa0549a56..3e1f130532 100644
ctypes/test \
idlelib/idle_test \
distutils/tests \
-@@ -1412,6 +1410,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+@@ -1505,6 +1503,14 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
test/test_tools test/test_warnings test/test_warnings/data \
unittest/test unittest/test/testmock
@@ -907,7 +914,7 @@ index 6fa0549a56..3e1f130532 100644
ifeq (@TEST_MODULES@,yes)
LIBSUBDIRS += $(TESTSUBDIRS)
endif
-@@ -1511,10 +1517,12 @@ ifeq (@PYC_BUILD@,yes)
+@@ -1605,10 +1611,12 @@ ifeq (@PYC_BUILD@,yes)
-j0 -d $(LIBDEST)/site-packages -f \
-x badsyntax $(DESTDIR)$(LIBDEST)/site-packages
endif
@@ -924,7 +931,7 @@ diff --git a/configure.ac b/configure.ac
index f53cc86d89..caa8eaf88a 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3246,6 +3246,12 @@ AC_ARG_ENABLE(test-modules,
+@@ -3382,6 +3382,12 @@ AC_ARG_ENABLE(test-modules,
AS_HELP_STRING([--disable-test-modules], [disable test modules]),
[ TEST_MODULES="${enableval}" ], [ TEST_MODULES=yes ])
@@ -941,7 +948,7 @@ diff --git a/setup.py b/setup.py
index 748c269960..1669797cad 100644
--- a/setup.py
+++ b/setup.py
-@@ -2402,10 +2402,11 @@ def main():
+@@ -2573,10 +2573,11 @@ def main():
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
@@ -976,7 +983,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index 3e1f130532..cf9add0bc7 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1328,7 +1328,6 @@ LIBSUBDIRS= tkinter site-packages \
+@@ -1416,7 +1416,6 @@ LIBSUBDIRS= tkinter site-packages \
email email/mime \
ensurepip ensurepip/_bundled \
html json http dbm xmlrpc \
@@ -984,7 +991,7 @@ index 3e1f130532..cf9add0bc7 100644
logging csv wsgiref urllib \
ctypes ctypes/macholib \
idlelib idlelib/Icons \
-@@ -1402,7 +1401,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+@@ -1494,7 +1493,6 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
test/test_asyncio \
test/test_email test/test_email/data \
test/test_json \
@@ -992,7 +999,7 @@ index 3e1f130532..cf9add0bc7 100644
ctypes/test \
idlelib/idle_test \
distutils/tests \
-@@ -1418,6 +1416,11 @@ TESTSUBDIRS += lib2to3/tests \
+@@ -1511,6 +1509,11 @@ TESTSUBDIRS += lib2to3/tests \
lib2to3/tests/data/fixers/myfixes
endif
@@ -1008,7 +1015,7 @@ diff --git a/configure.ac b/configure.ac
index caa8eaf88a..79a8255f44 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3234,6 +3234,15 @@ if test "$posix_threads" = "yes"; then
+@@ -3370,6 +3370,15 @@ if test "$posix_threads" = "yes"; then
AC_CHECK_FUNCS(pthread_getcpuclockid)
fi
@@ -1045,7 +1052,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index cf9add0bc7..5d78419fd4 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1322,7 +1322,7 @@ maninstall: altmaninstall
+@@ -1410,7 +1410,7 @@ maninstall: altmaninstall
# Install the library
XMLLIBSUBDIRS= xml xml/dom xml/etree xml/parsers xml/sax
@@ -1054,9 +1061,9 @@ index cf9add0bc7..5d78419fd4 100644
asyncio \
collections concurrent concurrent/futures encodings \
email email/mime \
-@@ -1339,8 +1339,7 @@ LIBSUBDIRS= tkinter site-packages \
- venv venv/scripts venv/scripts/common venv/scripts/posix \
- curses
+@@ -1428,8 +1428,7 @@ LIBSUBDIRS= tkinter site-packages \
+ curses \
+ zoneinfo
-TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
- tkinter/test/test_ttk test \
@@ -1064,7 +1071,7 @@ index cf9add0bc7..5d78419fd4 100644
test/audiodata \
test/capath test/data \
test/cjkencodings test/decimaltestdata \
-@@ -1408,6 +1407,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
+@@ -1501,6 +1502,12 @@ TESTSUBDIRS= tkinter/test tkinter/test/test_tkinter \
test/test_tools test/test_warnings test/test_warnings/data \
unittest/test unittest/test/testmock
@@ -1081,7 +1088,7 @@ diff --git a/configure.ac b/configure.ac
index 79a8255f44..b5922451cc 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3243,6 +3243,15 @@ if test "$SQLITE3" = "no" ; then
+@@ -3379,6 +3379,15 @@ if test "$SQLITE3" = "no" ; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
fi
@@ -1110,25 +1117,23 @@ Signed-off-by: Samuel Martin
[ Andrey Smirnov: ported to Python 3.6 ]
Signed-off-by: Andrey Smirnov
---
- Makefile.pre.in | 7 +++++--
+ Makefile.pre.in | 5 ++++-
configure.ac | 9 +++++++++
- 2 files changed, 14 insertions(+), 2 deletions(-)
+ 2 files changed, 13 insertions(+), 1 deletions(-)
diff --git a/Makefile.pre.in b/Makefile.pre.in
index 5d78419fd4..660c292765 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1336,8 +1336,7 @@ LIBSUBDIRS= site-packages \
- turtledemo \
+@@ -1425,7 +1425,6 @@ LIBSUBDIRS= site-packages \
multiprocessing multiprocessing/dummy \
unittest \
-- venv venv/scripts venv/scripts/common venv/scripts/posix \
-- curses
-+ venv venv/scripts venv/scripts/common venv/scripts/posix
+ venv venv/scripts venv/scripts/common venv/scripts/posix \
+- curses \
+ zoneinfo
TESTSUBDIRS= test \
- test/audiodata \
-@@ -1413,6 +1412,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
+@@ -1506,6 +1505,10 @@ TESTSUBDIRS += tkinter/test tkinter/test/test_tkinter \
tkinter/test/test_ttk
endif
@@ -1143,7 +1148,7 @@ diff --git a/configure.ac b/configure.ac
index b5922451cc..ea422a86a9 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3252,6 +3252,15 @@ if test "$TK" = "no"; then
+@@ -3388,6 +3388,15 @@ if test "$TK" = "no"; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _tkinter"
fi
@@ -1187,7 +1192,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index 660c292765..f49abf8395 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1331,7 +1331,7 @@ LIBSUBDIRS= site-packages \
+@@ -1419,7 +1419,7 @@ LIBSUBDIRS= site-packages \
logging csv wsgiref urllib \
ctypes ctypes/macholib \
idlelib idlelib/Icons \
@@ -1196,7 +1201,7 @@ index 660c292765..f49abf8395 100644
importlib \
turtledemo \
multiprocessing multiprocessing/dummy \
-@@ -1416,6 +1416,10 @@ ifeq (@CURSES@,yes)
+@@ -1509,6 +1509,10 @@ ifeq (@CURSES@,yes)
LIBSUBDIRS += curses
endif
@@ -1211,13 +1216,13 @@ diff --git a/configure.ac b/configure.ac
index ea422a86a9..3c1e2c088d 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -2961,13 +2961,21 @@ PKG_PROG_PKG_CONFIG
+@@ -3096,13 +3096,21 @@ PKG_PROG_PKG_CONFIG
AC_SUBST(DISABLED_EXTENSIONS)
# Check for use of the system expat library
-AC_MSG_CHECKING(for --with-system-expat)
-AC_ARG_WITH(system_expat,
-- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library]),
+- AS_HELP_STRING([--with-system-expat], [build pyexpat module using an installed expat library, see Doc/library/pyexpat.rst (default is no)]),
+AC_MSG_CHECKING(for --with-expat)
+AC_ARG_WITH(expat,
+ AS_HELP_STRING([--with-expat], [select which expat version to use: system, builtin, none]),
@@ -1242,7 +1247,7 @@ diff --git a/setup.py b/setup.py
index 1669797cad..d2727c0da5 100644
--- a/setup.py
+++ b/setup.py
-@@ -1576,7 +1576,7 @@ class PyBuildExt(build_ext):
+@@ -1674,7 +1674,7 @@ class PyBuildExt(build_ext):
#
# More information on Expat can be found at www.libexpat.org.
#
@@ -1268,7 +1273,7 @@ diff --git a/configure.ac b/configure.ac
index 3c1e2c088d..30a92f9c2e 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3251,6 +3251,12 @@ if test "$SQLITE3" = "no" ; then
+@@ -3387,6 +3387,12 @@ if test "$SQLITE3" = "no" ; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _sqlite3"
fi
@@ -1301,7 +1306,7 @@ diff --git a/configure.ac b/configure.ac
index 30a92f9c2e..20f326db46 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3257,6 +3257,12 @@ AC_ARG_ENABLE(codecs-cjk,
+@@ -3393,6 +3393,12 @@ AC_ARG_ENABLE(codecs-cjk,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _codecs_kr _codecs_jp _codecs_cn _codecs_tw _codecs_hk _codecs_iso2022"
fi])
@@ -1331,7 +1336,7 @@ diff --git a/configure.ac b/configure.ac
index 20f326db46..99bbc37b07 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3263,6 +3263,12 @@ AC_ARG_ENABLE(nis,
+@@ -3399,6 +3399,12 @@ AC_ARG_ENABLE(nis,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} nis"
fi])
@@ -1368,7 +1373,7 @@ diff --git a/Makefile.pre.in b/Makefile.pre.in
index f49abf8395..bc777e6504 100644
--- a/Makefile.pre.in
+++ b/Makefile.pre.in
-@@ -1287,7 +1287,9 @@ bininstall: altbininstall
+@@ -1371,7 +1371,9 @@ bininstall: altbininstall
-rm -f $(DESTDIR)$(LIBPC)/python3-embed.pc
(cd $(DESTDIR)$(LIBPC); $(LN) -s python-$(VERSION)-embed.pc python3-embed.pc)
-rm -f $(DESTDIR)$(BINDIR)/idle3
@@ -1378,7 +1383,7 @@ index f49abf8395..bc777e6504 100644
-rm -f $(DESTDIR)$(BINDIR)/pydoc3
ifeq (@PYDOC@,yes)
(cd $(DESTDIR)$(BINDIR); $(LN) -s pydoc$(VERSION) pydoc3)
-@@ -1330,7 +1332,6 @@ LIBSUBDIRS= site-packages \
+@@ -1418,7 +1420,6 @@ LIBSUBDIRS= site-packages \
html json http dbm xmlrpc \
logging csv wsgiref urllib \
ctypes ctypes/macholib \
@@ -1386,7 +1391,7 @@ index f49abf8395..bc777e6504 100644
distutils distutils/command \
importlib \
turtledemo \
-@@ -1420,6 +1421,10 @@ ifeq (@EXPAT@,yes)
+@@ -1513,6 +1514,10 @@ ifeq (@EXPAT@,yes)
LIBSUBDIRS += $(XMLLIBSUBDIRS)
endif
@@ -1401,7 +1406,7 @@ diff --git a/configure.ac b/configure.ac
index 99bbc37b07..8c9706582e 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3305,6 +3305,12 @@ AC_ARG_ENABLE(lib2to3,
+@@ -3441,6 +3441,12 @@ AC_ARG_ENABLE(lib2to3,
AS_HELP_STRING([--disable-lib2to3], [disable lib2to3]),
[ LIB2TO3="${enableval}" ], [ LIB2TO3=yes ])
@@ -1418,7 +1423,7 @@ diff --git a/setup.py b/setup.py
index d2727c0da5..9f09b3d985 100644
--- a/setup.py
+++ b/setup.py
-@@ -2402,11 +2402,13 @@ def main():
+@@ -2573,11 +2573,13 @@ def main():
import warnings
warnings.filterwarnings("ignore",category=DeprecationWarning)
@@ -1458,13 +1463,13 @@ diff --git a/configure.ac b/configure.ac
index 8c9706582e..e6255babb6 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3012,13 +3012,20 @@ fi
+@@ -3147,13 +3147,20 @@ fi
AC_SUBST(LIBFFI_INCLUDEDIR)
# Check for use of the system libmpdec library
-AC_MSG_CHECKING(for --with-system-libmpdec)
-AC_ARG_WITH(system_libmpdec,
-- AS_HELP_STRING([--with-system-libmpdec], [build _decimal module using an installed libmpdec library]),
+- AS_HELP_STRING([--with-system-libmpdec], [build _decimal module using an installed libmpdec library, see Doc/library/decimal.rst (default is no)]),
+AC_MSG_CHECKING(for --with-libmpdec)
+AC_ARG_WITH(libmpdec,
+ AS_HELP_STRING([--with-libmpdec], [select which libmpdec version to use: system, builtin, none]),
@@ -1488,7 +1493,7 @@ diff --git a/setup.py b/setup.py
index 9f09b3d985..a7f2e23d87 100644
--- a/setup.py
+++ b/setup.py
-@@ -2076,7 +2076,7 @@ class PyBuildExt(build_ext):
+@@ -2202,7 +2202,7 @@ class PyBuildExt(build_ext):
# Stefan Krah's _decimal module
extra_compile_args = []
undef_macros = []
@@ -1514,7 +1519,7 @@ diff --git a/configure.ac b/configure.ac
index e6255babb6..5809233aac 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3042,6 +3042,12 @@ fi
+@@ -3177,6 +3177,12 @@ fi
AC_MSG_RESULT($with_decimal_contextvar)
@@ -1544,7 +1549,7 @@ diff --git a/configure.ac b/configure.ac
index 5809233aac..6b09bafda4 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3282,6 +3282,12 @@ AC_ARG_ENABLE(unicodedata,
+@@ -3418,6 +3418,12 @@ AC_ARG_ENABLE(unicodedata,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} unicodedata"
fi])
@@ -1574,7 +1579,7 @@ diff --git a/configure.ac b/configure.ac
index 6b09bafda4..b64518eed5 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3288,6 +3288,12 @@ AC_ARG_ENABLE(openssl,
+@@ -3424,6 +3424,12 @@ AC_ARG_ENABLE(openssl,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} ssl _ssl _hashlib"
fi])
@@ -1604,7 +1609,7 @@ diff --git a/configure.ac b/configure.ac
index b64518eed5..d07e371c57 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3294,6 +3294,24 @@ AC_ARG_ENABLE(readline,
+@@ -3430,6 +3430,24 @@ AC_ARG_ENABLE(readline,
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} readline"
fi])
@@ -1685,44 +1690,6 @@ index a1bc3cd5f7..164d2d3603 100644
--
2.20.1
-From 28008e1e4f0349241d22aace3c54f7e9425c6c1f Mon Sep 17 00:00:00 2001
-From: Adam Duskett
-Date: Fri, 20 Jul 2018 10:17:39 -0400
-Subject: [PATCH] Fix cross compiling the uuid module
-
-Python 3.7 has a new _uuid module, however, the include directory
-search path for uuid.h is hardcoded to /usr/include/uuid, which should
-not be used when cross-compiling.
-
-To fix this, use the same solution as the one used by the NIS
-detection: append "uuid" to each of the include directories in
-"inc_dirs", instead of hardcoding /usr/include/uuid.
-
-Signed-off-by: Adam Duskett
-[Thomas: drop STAGING_DIR based solution, use a solution similar to
-the one used for the NIS detection.]
-Signed-off-by: Thomas Petazzoni
----
- setup.py | 3 ++-
- 1 file changed, 2 insertions(+), 1 deletion(-)
-
-diff --git a/setup.py b/setup.py
-index a7f2e23d87..b0274a3f67 100644
---- a/setup.py
-+++ b/setup.py
-@@ -1674,7 +1674,8 @@ class PyBuildExt(build_ext):
-
- def detect_uuid(self):
- # Build the _uuid module if possible
-- uuid_incs = find_file("uuid.h", self.inc_dirs, ["/usr/include/uuid"])
-+ uuid_incs = find_file("uuid.h", self.inc_dirs,
-+ [os.path.join(inc_dir, 'uuid') for inc_dir in self.inc_dirs])
- if uuid_incs is not None:
- if self.compiler.find_library_file(self.lib_dirs, 'uuid'):
- uuid_libs = ['uuid']
---
-2.20.1
-
From 74007603df0921450f14e8626df36140426cc300 Mon Sep 17 00:00:00 2001
From: Thomas Petazzoni
Date: Sat, 18 Aug 2018 10:54:56 +0200
@@ -1737,7 +1704,7 @@ diff --git a/configure.ac b/configure.ac
index d07e371c57..55ab6c3c26 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -3330,6 +3330,15 @@ if test "$CURSES" = "no"; then
+@@ -3466,6 +3466,15 @@ if test "$CURSES" = "no"; then
DISABLED_EXTENSIONS="${DISABLED_EXTENSIONS} _curses _curses_panel"
fi
@@ -1794,7 +1761,7 @@ index 224585c69b..ef458c0c63 100644
--
2.20.1
-From 5932fedd9d1d43a230fa353df434f253e9d2b5a0 Mon Sep 17 00:00:00 2001
+From ffe8fb3065973204fce95130c32578163755b71e Mon Sep 17 00:00:00 2001
From: Peter Korsgaard
Date: Fri, 2 Aug 2019 15:53:16 +0200
Subject: [PATCH] configure.ac: fixup $CC --print-multiarch output for
@@ -1819,26 +1786,30 @@ non-multiarch toolchain on some architectures (E.G. PowerPC), but as a
workaround, rewrite the --print-multiarch output to match older GCC versions
to keep the configure script happy.
+[Rudi: update for 3.9.10, which made the MULTIARCH logic !darwin]
+Signed-off-by: Rudi Heitbaum
Signed-off-by: Peter Korsgaard
---
configure.ac | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/configure.ac b/configure.ac
-index 55ab6c3c26..4a6d0662ac 100644
+index 7812dc5102..0ce52b9a7d 100644
--- a/configure.ac
+++ b/configure.ac
-@@ -706,7 +706,9 @@ then
- fi
+@@ -884,9 +884,11 @@
-
--MULTIARCH=$($CC --print-multiarch 2>/dev/null)
-+# GCC 8+ returns $arch-linux-{musl,uclibc} for musl/uClibc based
-+# toolchains confusing python. Fix that up
-+MULTIARCH=$($CC --print-multiarch 2>/dev/null | sed -E 's/-linux-(musl|uclibc)*$/-linux-gnu/')
- AC_SUBST(MULTIARCH)
-
- AC_MSG_CHECKING([for the platform triplet based on compiler characteristics])
+ AC_MSG_CHECKING([for multiarch])
+ AS_CASE([$ac_sys_system],
++ # GCC 8+ returns $arch-linux-{musl,uclibc} for musl/uClibc based
++ # toolchains confusing python. Fix that up
+ [Darwin*], [MULTIARCH=""],
+ [FreeBSD*], [MULTIARCH=""],
+- [MULTIARCH=$($CC --print-multiarch 2>/dev/null)]
++ [MULTIARCH=$($CC --print-multiarch 2>/dev/null | sed -E 's/-linux-(musl|uclibc)*$/-linux-gnu/')]
+ )
+ AC_SUBST([MULTIARCH])
+ AC_MSG_RESULT([$MULTIARCH])
--
2.20.1
diff --git a/packages/lang/Python3/patches/Python3-0201-xcompile.patch b/packages/lang/Python3/patches/Python3-0201-xcompile.patch
index eb51f7980..07f222ae9 100644
--- a/packages/lang/Python3/patches/Python3-0201-xcompile.patch
+++ b/packages/lang/Python3/patches/Python3-0201-xcompile.patch
@@ -1,7 +1,6 @@
-diff -aur a/Makefile.pre.in b/Makefile.pre.in
---- a/Makefile.pre.in 2020-08-08 14:28:01.691542199 -0400
-+++ b/Makefile.pre.in 2020-08-08 14:17:51.908512177 -0400
-@@ -607,10 +607,12 @@
+--- a/Makefile.pre.in
++++ b/Makefile.pre.in
+@@ -633,10 +633,12 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx
esac; \
echo "$(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \
_TCLTK_INCLUDES='$(TCLTK_INCLUDES)' _TCLTK_LIBS='$(TCLTK_LIBS)' \
@@ -14,7 +13,7 @@ diff -aur a/Makefile.pre.in b/Makefile.pre.in
$(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build
-@@ -1656,8 +1658,10 @@
+@@ -1750,8 +1752,10 @@ libainstall: @DEF_MAKE_RULE@ python-conf
# Install the dynamically loadable modules
# This goes into $(exec_prefix)
sharedinstall: sharedmods
@@ -25,10 +24,9 @@ diff -aur a/Makefile.pre.in b/Makefile.pre.in
--prefix=$(prefix) \
--install-scripts=$(BINDIR) \
--install-platlib=$(DESTSHARED) \
-diff -aur a/setup.py b/setup.py
---- a/setup.py 2020-08-08 14:28:01.695542200 -0400
-+++ b/setup.py 2020-08-08 14:28:36.931543934 -0400
-@@ -41,7 +41,7 @@
+--- a/setup.py
++++ b/setup.py
+@@ -61,7 +61,7 @@ def get_platform():
return sys.platform
@@ -37,7 +35,7 @@ diff -aur a/setup.py b/setup.py
HOST_PLATFORM = get_platform()
MS_WINDOWS = (HOST_PLATFORM == 'win32')
CYGWIN = (HOST_PLATFORM == 'cygwin')
-@@ -487,6 +487,13 @@
+@@ -575,6 +575,13 @@ class PyBuildExt(build_ext):
ext.name, level=1)
return
diff --git a/packages/lang/Python3/patches/Python3-0202-xcompile.patch b/packages/lang/Python3/patches/Python3-0202-xcompile.patch
index c09d95a4c..ec81b4111 100644
--- a/packages/lang/Python3/patches/Python3-0202-xcompile.patch
+++ b/packages/lang/Python3/patches/Python3-0202-xcompile.patch
@@ -1,7 +1,6 @@
-diff -aur a/setup.py b/setup.py
---- a/setup.py 2020-08-08 14:18:41.978514642 -0400
-+++ b/setup.py 2020-08-08 14:26:09.612536681 -0400
-@@ -656,31 +656,23 @@
+--- a/setup.py
++++ b/setup.py
+@@ -742,31 +742,23 @@ class PyBuildExt(build_ext):
add_dir_to_list(dir_list, directory)
def configure_compiler(self):
diff --git a/packages/lang/Python3/patches/Python3-0300-generate-legacy-pyc-bytecode.patch b/packages/lang/Python3/patches/Python3-0300-generate-legacy-pyc-bytecode.patch
index 9cf95562a..b4cc4ba3a 100644
--- a/packages/lang/Python3/patches/Python3-0300-generate-legacy-pyc-bytecode.patch
+++ b/packages/lang/Python3/patches/Python3-0300-generate-legacy-pyc-bytecode.patch
@@ -22,11 +22,9 @@ https://www.python.org/dev/peps/pep-3147/#case-4-legacy-pyc-files-and-source-les
Lib/py_compile.py | 4 ++++
1 file changed, 4 insertions(+)
-diff --git a/Lib/py_compile.py b/Lib/py_compile.py
-index 8e9dd57..d4b7f4f 100644
--- a/Lib/py_compile.py
+++ b/Lib/py_compile.py
-@@ -119,6 +119,10 @@ def compile(file, cfile=None, dfile=None, doraise=False, optimize=-1,
+@@ -121,6 +121,10 @@ def compile(file, cfile=None, dfile=None
the resulting file would be regular and thus not the same type of file as
it was previously.
"""
@@ -37,6 +35,3 @@ index 8e9dd57..d4b7f4f 100644
if invalidation_mode is None:
invalidation_mode = _get_default_invalidation_mode()
if cfile is None:
---
-2.7.4
-
diff --git a/packages/lang/Python3/patches/Python3-0400-fix-bpo5537.patch b/packages/lang/Python3/patches/Python3-0400-fix-bpo5537.patch
index 9618fc90e..edb3496a9 100644
--- a/packages/lang/Python3/patches/Python3-0400-fix-bpo5537.patch
+++ b/packages/lang/Python3/patches/Python3-0400-fix-bpo5537.patch
@@ -9,11 +9,9 @@ https://forum.kodi.tv/showthread.php?tid=343068&pid=2923934#pid2923934
Lib/http/cookiejar.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/Lib/http/cookiejar.py b/Lib/http/cookiejar.py
-index d43a219..53bb391 100644
--- a/Lib/http/cookiejar.py
+++ b/Lib/http/cookiejar.py
-@@ -98,7 +98,7 @@ def time2isoz(t=None):
+@@ -99,7 +99,7 @@ def time2isoz(t=None):
if t is None:
dt = datetime.datetime.utcnow()
else:
@@ -22,6 +20,3 @@ index d43a219..53bb391 100644
return "%04d-%02d-%02d %02d:%02d:%02dZ" % (
dt.year, dt.month, dt.day, dt.hour, dt.minute, dt.second)
---
-2.20.1
-
diff --git a/packages/lang/Python3/patches/Python3-0500-fix-bpo45262.patch b/packages/lang/Python3/patches/Python3-0500-fix-bpo45262.patch
deleted file mode 100644
index b1e671e1c..000000000
--- a/packages/lang/Python3/patches/Python3-0500-fix-bpo45262.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-From c4e2aa8d60f722cece55d446e97585b1fa8a6ae7 Mon Sep 17 00:00:00 2001
-From: Matthias Reichl
-Date: Thu, 7 Oct 2021 13:03:27 +0200
-Subject: [PATCH] Prevent use-after-free of running loop holder via cache
-
----
- Modules/_asynciomodule.c | 3 +++
- 1 file changed, 3 insertions(+)
-
-diff --git a/Modules/_asynciomodule.c b/Modules/_asynciomodule.c
-index ecc73d1ca8..56079b0277 100644
---- a/Modules/_asynciomodule.c
-+++ b/Modules/_asynciomodule.c
-@@ -3239,6 +3239,9 @@ new_running_loop_holder(PyObject *loop)
- static void
- PyRunningLoopHolder_tp_dealloc(PyRunningLoopHolder *rl)
- {
-+ if (cached_running_holder == (PyObject *)rl) {
-+ cached_running_holder = NULL;
-+ }
- Py_CLEAR(rl->rl_loop);
- PyObject_Free(rl);
- }
---
-2.30.2
-
diff --git a/packages/lang/Python3/patches/arm/Python3-0001-fix_platform_machine_func_for_32bit_userspace.patch b/packages/lang/Python3/patches/arm/Python3-0001-fix_platform_machine_func_for_32bit_userspace.patch
new file mode 100644
index 000000000..aec8329f7
--- /dev/null
+++ b/packages/lang/Python3/patches/arm/Python3-0001-fix_platform_machine_func_for_32bit_userspace.patch
@@ -0,0 +1,28 @@
+From 6689a2fe3dc4ba422078c79c480aff30dc8c3bfd Mon Sep 17 00:00:00 2001
+From: Raybuntu <57228613+Raybuntu@users.noreply.github.com>
+Date: Sat, 19 Dec 2020 11:05:04 +0100
+Subject: [PATCH] platform.py: Set correct machine value when kernel is aarch64
+ but userspace is aarch32.
+
+---
+ Lib/platform.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/Lib/platform.py b/Lib/platform.py
+index 994d892c5e..b8150a6070 100755
+--- a/Lib/platform.py
++++ b/Lib/platform.py
+@@ -875,6 +875,10 @@ def uname():
+ system = 'Windows'
+ release = 'Vista'
+
++
++ if machine == 'aarch64' and sys.maxsize <= 2**32:
++ machine = 'armv7l'
++
+ vals = system, node, release, version, machine
+ # Replace 'unknown' values with the more portable ''
+ _uname_cache = uname_result(*map(_unknown_as_blank, vals))
+--
+2.20.1
+
diff --git a/packages/python/devel/Jinja2/package.mk b/packages/python/devel/Jinja2/package.mk
new file mode 100644
index 000000000..79b41f7d6
--- /dev/null
+++ b/packages/python/devel/Jinja2/package.mk
@@ -0,0 +1,16 @@
+# SPDX-License-Identifier: GPL-2.0
+# Copyright (C) 2021-present Team LibreELEC (https://libreelec.tv)
+
+PKG_NAME="Jinja2"
+PKG_VERSION="3.0.3"
+PKG_SHA256="611bb273cd68f3b993fabdc4064fc858c5b47a973cb5aa7999ec1ba405c87cd7"
+PKG_LICENSE="BSD"
+PKG_SITE="https://pypi.org/project/Jinja2/"
+PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
+PKG_DEPENDS_HOST="Python3:host setuptools:host MarkupSafe:host"
+PKG_LONGDESC="Jinja is a fast, expressive, extensible templating engine."
+PKG_TOOLCHAIN="manual"
+
+makeinstall_host() {
+ exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN}
+}
diff --git a/packages/python/devel/Mako/package.mk b/packages/python/devel/Mako/package.mk
index 7a0f39752..7f15999bd 100644
--- a/packages/python/devel/Mako/package.mk
+++ b/packages/python/devel/Mako/package.mk
@@ -3,8 +3,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="Mako"
-PKG_VERSION="1.1.3"
-PKG_SHA256="8195c8c1400ceb53496064314c6736719c6f25e7479cd24c77be3d9361cddc27"
+PKG_VERSION="1.1.6"
+PKG_SHA256="4e9e345a41924a954251b95b4b28e14a301145b544901332e658907a7464b6b2"
PKG_LICENSE="GPL"
PKG_SITE="https://pypi.org/project/Mako"
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
diff --git a/packages/python/devel/MarkupSafe/package.mk b/packages/python/devel/MarkupSafe/package.mk
index c3b7c6c57..2b54912d9 100644
--- a/packages/python/devel/MarkupSafe/package.mk
+++ b/packages/python/devel/MarkupSafe/package.mk
@@ -3,8 +3,8 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="MarkupSafe"
-PKG_VERSION="1.1.1"
-PKG_SHA256="29872e92839765e546828bb7754a68c418d927cd064fd4708fab9fe9c8bb116b"
+PKG_VERSION="2.0.1"
+PKG_SHA256="594c67807fb16238b30c44bdf74f36c02cdf22d1c8cda91ef8a0ed8dabf5620a"
PKG_LICENSE="GPL"
PKG_SITE="https://pypi.org/project/MarkupSafe/"
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
diff --git a/packages/python/devel/distutilscross/package.mk b/packages/python/devel/distutilscross/package.mk
index 9d480e0e3..69ea5b28a 100644
--- a/packages/python/devel/distutilscross/package.mk
+++ b/packages/python/devel/distutilscross/package.mk
@@ -6,12 +6,12 @@ PKG_NAME="distutilscross"
PKG_VERSION="0.1"
PKG_SHA256="4ed3fb427708c8a3ed5fe9c599532480f581078a1e0aec0e50f40eb58e9f0015"
PKG_LICENSE="GPL"
-PKG_SITE="http://bitbucket.org/lambacck/distutilscross/"
-PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_SITE="https://pypi.org/project/distutilscross/"
+PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/${PKG_NAME}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_HOST="Python3:host setuptools:host"
PKG_LONGDESC="distutilscross enhances distutils to support Cross Compile of Python extensions"
PKG_TOOLCHAIN="manual"
makeinstall_host() {
- exec_thread_safe python3 setup.py install --prefix=$TOOLCHAIN
+ exec_thread_safe python setup.py install --prefix=${TOOLCHAIN}
}
diff --git a/packages/python/devel/meson/package.mk b/packages/python/devel/meson/package.mk
index d5c3ce822..ba71965b0 100644
--- a/packages/python/devel/meson/package.mk
+++ b/packages/python/devel/meson/package.mk
@@ -2,11 +2,11 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="meson"
-PKG_VERSION="0.56.2"
-PKG_SHA256="3cb8bdb91383f7f8da642f916e4c44066a29262caa499341e2880f010edb87f4"
+PKG_VERSION="0.61.1"
+PKG_SHA256="feb2cefb325b437dbf36146df7c6b87688ddff0b0205caa31dc64055c6da410c"
PKG_LICENSE="Apache"
PKG_SITE="http://mesonbuild.com"
-PKG_URL="https://github.com/mesonbuild/meson/releases/download/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.gz"
+PKG_URL="https://github.com/mesonbuild/meson/releases/download/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.gz"
PKG_DEPENDS_HOST="Python3:host setuptools:host pathlib:host"
PKG_LONGDESC="High productivity build system"
PKG_TOOLCHAIN="manual"
@@ -16,9 +16,9 @@ make_host() {
}
makeinstall_host() {
- exec_thread_safe python3 setup.py install --prefix=$TOOLCHAIN --skip-build
+ exec_thread_safe python3 setup.py install --prefix=${TOOLCHAIN} --skip-build
# Avoid using full path to python3 that may exceed 128 byte limit.
# Instead use PATH as we know our toolchain is first.
- sed -e '1 s/^#!.*$/#!\/usr\/bin\/env python3/' -i $TOOLCHAIN/bin/meson
+ sed -e '1 s/^#!.*$/#!\/usr\/bin\/env python3/' -i ${TOOLCHAIN}/bin/meson
}
diff --git a/packages/python/devel/pgi/package.mk b/packages/python/devel/pgi/package.mk
new file mode 100644
index 000000000..7585f499c
--- /dev/null
+++ b/packages/python/devel/pgi/package.mk
@@ -0,0 +1,32 @@
+# SPDX-License-Identifier: GPL-2.0-or-later
+# Copyright (C) 2020-present Team CoreELEC (https://coreelec.org)
+
+PKG_NAME="pgi"
+PKG_VERSION="0.0.11.2"
+PKG_SHA256="7a1ca8ac4e8bee6b663e6d556ecda8032584de753acd76ab3fc21c4f874fa738"
+PKG_ARCH="any"
+PKG_LICENSE="LGPL"
+PKG_SITE="https://github.com/pygobject/pgi"
+PKG_URL="https://github.com/pygobject/pgi/archive/$PKG_VERSION.tar.gz"
+PKG_DEPENDS_TARGET="toolchain Python3"
+PKG_SECTION="python/devel"
+PKG_SHORTDESC="PGI - Pure Python GObject Introspection Bindings"
+PKG_LONGDESC="GObject Introspection bindings written in pure Python using ctypes and cffi (optional). API compatible with PyGObject."
+PKG_TOOLCHAIN="manual"
+
+pre_make_target() {
+ export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
+}
+
+make_target() {
+ exec_thread_safe python3 setup.py build
+}
+
+makeinstall_target() {
+ exec_thread_safe python3 setup.py install --root=$INSTALL --prefix=/usr
+}
+
+post_makeinstall_target() {
+ find $INSTALL/usr/lib -name "*.py" -exec rm -rf "{}" ";"
+ rm -rf $INSTALL/usr/lib/python*/site-packages/*/tests
+}
diff --git a/packages/python/devel/pgi/patches/pgi-0001-remove-type-as-it-s-not-Python-3-compatible.patch b/packages/python/devel/pgi/patches/pgi-0001-remove-type-as-it-s-not-Python-3-compatible.patch
new file mode 100644
index 000000000..ead927354
--- /dev/null
+++ b/packages/python/devel/pgi/patches/pgi-0001-remove-type-as-it-s-not-Python-3-compatible.patch
@@ -0,0 +1,25 @@
+From 40f45d7f4a49ec1e66acec5d5ff1ce10c94a99ce Mon Sep 17 00:00:00 2001
+From: Portisch
+Date: Wed, 25 Nov 2020 13:41:14 +0100
+Subject: [PATCH] remove 'type' as it's not Python 3 compatible
+
+---
+ pgi/clib/_utils.py | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/pgi/clib/_utils.py b/pgi/clib/_utils.py
+index b45d901..bd0f416 100644
+--- a/pgi/clib/_utils.py
++++ b/pgi/clib/_utils.py
+@@ -31,7 +31,7 @@ class _BaseFinalizer(object):
+ self.ptr = ptr
+
+ def delete(self, deadweakproxy):
+- type(self)._objects.remove(self)
++ self._objects.remove(self)
+ self.destructor(deadweakproxy, self.ptr)
+
+
+--
+2.29.2
+
diff --git a/packages/python/devel/pygobject/package.mk b/packages/python/devel/pygobject/package.mk
deleted file mode 100644
index 77003aa11..000000000
--- a/packages/python/devel/pygobject/package.mk
+++ /dev/null
@@ -1,26 +0,0 @@
-# SPDX-License-Identifier: GPL-2.0-or-later
-# Copyright (C) 2009-2016 Stephan Raue (stephan@openelec.tv)
-# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
-
-PKG_NAME="pygobject"
-PKG_VERSION="2.28.7"
-PKG_SHA256="bb9d25a3442ca7511385a7c01b057492095c263784ef31231ffe589d83a96a5a"
-PKG_LICENSE="LGPL"
-PKG_SITE="http://www.pygtk.org/"
-PKG_URL="http://ftp.gnome.org/pub/GNOME/sources/pygobject/$(get_pkg_version_maj_min)/${PKG_NAME}-${PKG_VERSION}.tar.xz"
-PKG_DEPENDS_TARGET="toolchain Python2 glib libffi"
-PKG_LONGDESC="A convenient wrapper for the GObject+ library for use in Python programs."
-PKG_TOOLCHAIN="autotools"
-
-PKG_CONFIGURE_OPTS_TARGET="--enable-thread --disable-introspection"
-
-pre_configure_target() {
- export PYTHON_INCLUDES="$(${SYSROOT_PREFIX}/usr/bin/python2-config --includes)"
-}
-
-post_makeinstall_target() {
- python_remove_source
-
- rm -rf ${INSTALL}/usr/bin
- rm -rf ${INSTALL}/usr/share/pygobject
-}
diff --git a/packages/python/devel/pygobject/patches/pygobject-0001-add-PYTHON_INCLUDES-override.patch b/packages/python/devel/pygobject/patches/pygobject-0001-add-PYTHON_INCLUDES-override.patch
deleted file mode 100644
index d883f60dd..000000000
--- a/packages/python/devel/pygobject/patches/pygobject-0001-add-PYTHON_INCLUDES-override.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-[PATCH] m4/python.m4: add PYTHON_INCLUDES override for cross compilation
-
-As the configure script mixes up host/target python. Equivalent to the
-similar code in dbus-python.
-
-Signed-off-by: Peter Korsgaard
----
- m4/python.m4 | 4 ++++
- 1 file changed, 4 insertions(+)
-
-Index: python-gobject-2.28.6/m4/python.m4
-===================================================================
---- python-gobject-2.28.6.orig/m4/python.m4
-+++ python-gobject-2.28.6/m4/python.m4
-@@ -43,6 +43,9 @@
- [AC_REQUIRE([AM_PATH_PYTHON])
- AC_MSG_CHECKING(for headers required to compile python extensions)
- dnl deduce PYTHON_INCLUDES
-+if test "${PYTHON_INCLUDES+set}" = set; then
-+ AC_MSG_NOTICE([PYTHON_INCLUDES overridden to: $PYTHON_INCLUDES])
-+else
- py_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.prefix)"`
- py_exec_prefix=`$PYTHON -c "import sys; sys.stdout.write(sys.exec_prefix)"`
- PYTHON_CONFIG=`which $PYTHON`-config
-@@ -54,6 +57,7 @@
- PYTHON_INCLUDES="$PYTHON_INCLUDES -I${py_exec_prefix}/include/python${PYTHON_VERSION}"
- fi
- fi
-+fi
- AC_SUBST(PYTHON_INCLUDES)
- dnl check if the headers exist:
- save_CPPFLAGS="$CPPFLAGS"
diff --git a/packages/python/devel/pygobject/patches/pygobject-2.28.6-automake-1.13.patch b/packages/python/devel/pygobject/patches/pygobject-2.28.6-automake-1.13.patch
deleted file mode 100644
index 5eb12e66e..000000000
--- a/packages/python/devel/pygobject/patches/pygobject-2.28.6-automake-1.13.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-diff -Naur pygobject-2.28.6/configure.ac pygobject-2.28.6.patch/configure.ac
---- pygobject-2.28.6/configure.ac 2011-06-13 18:33:56.000000000 +0200
-+++ pygobject-2.28.6.patch/configure.ac 2013-01-12 01:03:44.085557166 +0100
-@@ -35,7 +35,7 @@
- AC_DEFINE(PYGOBJECT_MICRO_VERSION, pygobject_micro_version, [pygobject micro version])
- AC_SUBST(PYGOBJECT_MICRO_VERSION, pygobject_micro_version)
-
--AM_CONFIG_HEADER(config.h)
-+AC_CONFIG_HEADERS(config.h)
- m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES(yes)])
- AM_INIT_AUTOMAKE(foreign)
- AM_MAINTAINER_MODE
-@@ -82,7 +82,6 @@
- m4_ifdef([LT_OUTPUT], [LT_OUTPUT])
- AC_ISC_POSIX
- AC_PROG_CC
--AM_PROG_CC_STDC
- AM_PROG_CC_C_O
-
- # check that we have the minimum version of python necisary to build
diff --git a/packages/python/devel/setuptools/package.mk b/packages/python/devel/setuptools/package.mk
index d8ee636c2..f91679b31 100644
--- a/packages/python/devel/setuptools/package.mk
+++ b/packages/python/devel/setuptools/package.mk
@@ -3,17 +3,17 @@
# Copyright (C) 2018-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="setuptools"
-PKG_VERSION="39.2.0"
-PKG_SHA256="ca8119dd5c2764a7d290518817de0b880d23d790913fcd797c02ad2aa39b8c41"
+PKG_VERSION="52.0.0"
+PKG_SHA256="ff0c74d1b905a224d647f99c6135eacbec2620219992186b81aa20012bc7f882"
PKG_LICENSE="OSS"
PKG_SITE="https://pypi.org/project/setuptools"
PKG_URL="https://github.com/pypa/setuptools/archive/v${PKG_VERSION}.tar.gz"
-PKG_DEPENDS_HOST="Python2:host"
+PKG_DEPENDS_HOST="Python3:host"
PKG_LONGDESC="Replaces Setuptools as the standard method for working with Python module distributions."
PKG_TOOLCHAIN="manual"
make_host() {
- python2 bootstrap.py
+ python3 bootstrap.py
}
makeinstall_host() {
diff --git a/packages/python/devel/waf/package.mk b/packages/python/devel/waf/package.mk
index 5c1d056b4..f65268912 100644
--- a/packages/python/devel/waf/package.mk
+++ b/packages/python/devel/waf/package.mk
@@ -2,20 +2,14 @@
# Copyright (C) 2019-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="waf"
-PKG_VERSION="2.0.21"
-PKG_SHA256="7cebf2c5efe53cbb9a4b5bdc4b49ae90ecd64a8fce7a3222d58e591b58215306"
+PKG_VERSION="2.0.23"
+PKG_SHA256="28a96115a5b5be47cf65e62c5416d988159d03f062f978e6462024ca93111503"
PKG_LICENSE="MIT"
PKG_SITE="https://waf.io"
-PKG_URL="https://waf.io/${PKG_NAME}-${PKG_VERSION}"
+PKG_URL="https://waf.io/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_LONGDESC="The Waf build system"
PKG_TOOLCHAIN="manual"
-unpack() {
- mkdir -p ${PKG_BUILD}
- cp ${SOURCES}/${PKG_NAME}/${PKG_SOURCE_NAME} ${PKG_BUILD}/waf
- chmod a+x ${PKG_BUILD}/waf
-}
-
makeinstall_host() {
- cp -pf waf ${TOOLCHAIN}/bin/
+ cp -pf ${PKG_BUILD}/waf ${TOOLCHAIN}/bin/
}
diff --git a/packages/sysutils/dstat/package.mk b/packages/sysutils/dstat/package.mk
index 1faa9abad..9c65e0fed 100644
--- a/packages/sysutils/dstat/package.mk
+++ b/packages/sysutils/dstat/package.mk
@@ -2,15 +2,21 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="dstat"
-PKG_VERSION="77e9347"
-PKG_SHA256="2b2f4ef3a0d1dc6d0a4bc2f54a57ba6f1e278333881a07df7e55aec502a48c7c"
+PKG_VERSION="e428c7dc7137f81f8ca6bef8854b37a4ddd4f337" # 19 Jun 2020
+PKG_SHA256="3315f5cefc7cd4e968430baa19247fc32af36dd42c9ad3edf5962ae4f597013f"
PKG_LICENSE="GPL"
PKG_SITE="http://dag.wiee.rs/home-made/dstat"
-PKG_URL="https://github.com/dagwieers/dstat/archive/$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python2"
+PKG_URL="https://github.com/dstat-real/dstat/archive/${PKG_VERSION}.tar.gz"
+PKG_DEPENDS_TARGET="toolchain Python3"
PKG_LONGDESC="Versatile resource statistics tool."
PKG_TOOLCHAIN="manual"
+PKG_BUILD_FLAGS="-sysroot"
post_unpack() {
-rm $PKG_BUILD/Makefile
+ rm ${PKG_BUILD}/Makefile
+}
+
+makeinstall_target() {
+ mkdir -p ${INSTALL}/usr/bin
+ cp -p dstat ${INSTALL}/usr/bin
}
diff --git a/packages/sysutils/i2c-tools/package.mk b/packages/sysutils/i2c-tools/package.mk
index 2c38170d8..15ab0b800 100644
--- a/packages/sysutils/i2c-tools/package.mk
+++ b/packages/sysutils/i2c-tools/package.mk
@@ -2,27 +2,42 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="i2c-tools"
-PKG_VERSION="3.1.2"
-PKG_SHA256="f939a6242c03950cc568d0efdfa3db7a9c29e0e8f5abd01f2908bdd344c054ff"
+PKG_VERSION="4.3"
+PKG_SHA256="1f899e43603184fac32f34d72498fc737952dbc9c97a8dd9467fadfdf4600cf9"
PKG_LICENSE="GPL"
-PKG_SITE="http://www.lm-sensors.org/wiki/I2CTools"
-PKG_URL="http://fossies.org/linux/misc/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python2 distutilscross:host"
+PKG_SITE="https://i2c.wiki.kernel.org/index.php/I2C_Tools"
+PKG_URL="https://www.kernel.org/pub/software/utils/i2c-tools/${PKG_NAME}-${PKG_VERSION}.tar.xz"
+PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host"
PKG_LONGDESC="A heterogeneous set of I2C tools for Linux."
+PKG_BUILD_FLAGS="-sysroot"
pre_make_target() {
- export PYTHONXCPREFIX="$SYSROOT_PREFIX/usr"
- export LDSHARED="$CC -shared"
+ export PYTHONXCPREFIX="${SYSROOT_PREFIX}/usr"
+ export LDSHARED="${CC} -shared"
}
make_target() {
+ make CC="${CC}" \
+ AR="${AR}" \
+ CFLAGS="${TARGET_CFLAGS}" \
+ CPPFLAGS="${TARGET_CPPFLAGS} -I${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION}" \
+ PYTHON=${TOOLCHAIN}/bin/python3 \
+ all
+
make EXTRA="py-smbus" \
- CC="$CC" \
- AR="$TARGET_AR" \
- CFLAGS="$TARGET_CFLAGS" \
- CPPFLAGS="$TARGET_CPPFLAGS -I${SYSROOT_PREFIX}/usr/include/$PKG_PYTHON_VERSION"
+ CC="${CC}" \
+ AR="${AR}" \
+ CFLAGS="${TARGET_CFLAGS}" \
+ CPPFLAGS="${TARGET_CPPFLAGS} -I${SYSROOT_PREFIX}/usr/include/${PKG_PYTHON_VERSION}" \
+ PYTHON=${TOOLCHAIN}/bin/python3 \
+ all-python
}
makeinstall_target() {
- : # nop
+ make EXTRA="py-smbus" \
+ DESTDIR=${INSTALL} \
+ PREFIX="/usr" \
+ prefix="/usr" \
+ PYTHON=${TOOLCHAIN}/bin/python3 \
+ install
}
diff --git a/packages/sysutils/i2c-tools/patches/pyinstalldir.patch b/packages/sysutils/i2c-tools/patches/pyinstalldir.patch
new file mode 100644
index 000000000..07ee55d27
--- /dev/null
+++ b/packages/sysutils/i2c-tools/patches/pyinstalldir.patch
@@ -0,0 +1,12 @@
+diff -ur a/py-smbus/Module.mk b/py-smbus/Module.mk
+--- a/py-smbus/Module.mk 2014-02-20 09:37:15.711233000 +0100
++++ b/py-smbus/Module.mk 2019-12-14 08:20:51.730946457 +0100
+@@ -22,7 +22,7 @@
+ rm -rf py-smbus/build
+
+ install-python:
+- $(DISTUTILS) install
++ $(DISTUTILS) install --prefix=$(DESTDIR)$(PREFIX)
+
+ all: all-python
+
diff --git a/packages/sysutils/lirc/package.mk b/packages/sysutils/lirc/package.mk
index e67538c9b..bbba5860f 100644
--- a/packages/sysutils/lirc/package.mk
+++ b/packages/sysutils/lirc/package.mk
@@ -7,13 +7,11 @@ PKG_VERSION="0.10.1"
PKG_SHA256="8b753c60df2a7f5dcda2db72c38e448ca300c3b4f6000c1501fcb0bd5df414f2"
PKG_LICENSE="GPL"
PKG_SITE="http://www.lirc.org"
-PKG_URL="https://sourceforge.net/projects/lirc/files/LIRC/$PKG_VERSION/$PKG_NAME-$PKG_VERSION.tar.bz2"
+PKG_URL="https://sourceforge.net/projects/lirc/files/LIRC/${PKG_VERSION}/${PKG_NAME}-${PKG_VERSION}.tar.bz2"
PKG_DEPENDS_TARGET="toolchain libftdi1 libusb-compat libxslt alsa-lib"
PKG_LONGDESC="LIRC is a package that allows you to decode and send infra-red signals."
PKG_TOOLCHAIN="autotools"
-PKG_PYTHON_WANTED=Python2
-
PKG_CONFIGURE_OPTS_TARGET="--enable-devinput \
--enable-uinput \
--with-gnu-ld \
@@ -25,29 +23,33 @@ pre_configure_target() {
export HAVE_UINPUT=yes
export PYTHON=:
export PYTHON_VERSION=${PKG_PYTHON_VERSION#python}
- if [ -e ${SYSROOT_PREFIX}/usr/include/linux/input-event-codes.h ] ; then
+ if [ -e ${SYSROOT_PREFIX}/usr/include/linux/input-event-codes.h ]; then
export DEVINPUT_HEADER=${SYSROOT_PREFIX}/usr/include/linux/input-event-codes.h
else
export DEVINPUT_HEADER=${SYSROOT_PREFIX}/usr/include/linux/input.h
fi
}
+post_configure_target() {
+ libtool_remove_rpath libtool
+}
+
post_makeinstall_target() {
- rm -rf $INSTALL/usr/lib/systemd
- rm -rf $INSTALL/lib
- rm -rf $INSTALL/usr/share
- rm -rf $INSTALL/etc
+ rm -rf ${INSTALL}/usr/lib/systemd
+ rm -rf ${INSTALL}/lib
+ rm -rf ${INSTALL}/usr/share
+ rm -rf ${INSTALL}/etc
- mkdir -p $INSTALL/etc/lirc
- cp -r $PKG_DIR/config/lirc_options.conf $INSTALL/etc/lirc
- ln -s /storage/.config/lircd.conf $INSTALL/etc/lirc/lircd.conf
+ mkdir -p ${INSTALL}/etc/lirc
+ cp -r ${PKG_DIR}/config/lirc_options.conf ${INSTALL}/etc/lirc
+ ln -s /storage/.config/lircd.conf ${INSTALL}/etc/lirc/lircd.conf
- mkdir -p $INSTALL/usr/lib/coreelec
- cp $PKG_DIR/scripts/lircd_helper $INSTALL/usr/lib/coreelec
- cp $PKG_DIR/scripts/lircd_uinput_helper $INSTALL/usr/lib/coreelec
+ mkdir -p ${INSTALL}/usr/lib/libreelec
+ cp ${PKG_DIR}/scripts/lircd_helper ${INSTALL}/usr/lib/libreelec
+ cp ${PKG_DIR}/scripts/lircd_uinput_helper ${INSTALL}/usr/lib/libreelec
- mkdir -p $INSTALL/usr/share/services
- cp -P $PKG_DIR/default.d/*.conf $INSTALL/usr/share/services
+ mkdir -p ${INSTALL}/usr/share/services
+ cp -P ${PKG_DIR}/default.d/*.conf ${INSTALL}/usr/share/services
}
post_install() {
diff --git a/packages/sysutils/lirc/system.d/lircd-uinput.service b/packages/sysutils/lirc/system.d/lircd-uinput.service
index feb4a2ea8..f73f893e7 100644
--- a/packages/sysutils/lirc/system.d/lircd-uinput.service
+++ b/packages/sysutils/lirc/system.d/lircd-uinput.service
@@ -6,7 +6,7 @@ After=lircd.service
[Service]
Type=simple
-ExecStart=/usr/lib/coreelec/lircd_uinput_helper --add-release-events
+ExecStart=/usr/lib/libreelec/lircd_uinput_helper --add-release-events
[Install]
WantedBy=multi-user.target
diff --git a/packages/sysutils/lirc/system.d/lircd.service b/packages/sysutils/lirc/system.d/lircd.service
index 0d12b3478..534dcf73f 100644
--- a/packages/sysutils/lirc/system.d/lircd.service
+++ b/packages/sysutils/lirc/system.d/lircd.service
@@ -6,7 +6,7 @@ After=network.target
[Service]
Type=simple
-ExecStart=/usr/lib/coreelec/lircd_helper --nodaemon
+ExecStart=/usr/lib/libreelec/lircd_helper --nodaemon
[Install]
WantedBy=multi-user.target
diff --git a/packages/tools/qemu/package.mk b/packages/tools/qemu/package.mk
index 419344858..8fde8013c 100644
--- a/packages/tools/qemu/package.mk
+++ b/packages/tools/qemu/package.mk
@@ -2,29 +2,49 @@
# Copyright (C) 2016-present Team LibreELEC (https://libreelec.tv)
PKG_NAME="qemu"
-PKG_VERSION="4.0.0"
-PKG_SHA256="13a93dfe75b86734326f8d5b475fde82ec692d5b5a338b4262aeeb6b0fa4e469"
+PKG_VERSION="6.2.0"
+PKG_SHA256="68e15d8e45ac56326e0b9a4afa8b49a3dfe8aba3488221d098c84698bca65b45"
PKG_LICENSE="GPL"
-PKG_SITE="http://wiki.qemu.org"
-PKG_URL="https://download.qemu.org/qemu-$PKG_VERSION.tar.xz"
-PKG_DEPENDS_HOST="toolchain glib:host pixman:host Python2:host zlib:host"
+PKG_SITE="https://www.qemu.org"
+PKG_URL="https://download.qemu.org/qemu-${PKG_VERSION}.tar.xz"
+PKG_DEPENDS_HOST="toolchain:host glib:host pixman:host Python3:host zlib:host"
PKG_LONGDESC="QEMU is a generic and open source machine emulator and virtualizer."
+PKG_TOOLCHAIN="configure"
pre_configure_host() {
- HOST_CONFIGURE_OPTS="--bindir=$TOOLCHAIN/bin \
- --extra-cflags=-I$TOOLCHAIN/include \
- --extra-ldflags=-L$TOOLCHAIN/lib \
- --libexecdir=$TOOLCHAIN/lib \
- --localstatedir=$TOOLCHAIN/var \
- --prefix=$TOOLCHAIN \
- --sbindir=$TOOLCHAIN/sbin \
- --static \
- --sysconfdir=$TOOLCHAIN/etc \
- --disable-blobs \
- --disable-docs \
- --disable-gcrypt \
- --disable-system \
- --disable-user \
- --disable-vnc \
- --disable-werror"
+ HOST_CONFIGURE_OPTS="\
+ --bindir=${TOOLCHAIN}/bin \
+ --extra-cflags=-I${TOOLCHAIN}/include \
+ --extra-ldflags=-L${TOOLCHAIN}/lib \
+ --libexecdir=${TOOLCHAIN}/lib \
+ --localstatedir=${TOOLCHAIN}/var \
+ --prefix=${TOOLCHAIN} \
+ --sbindir=${TOOLCHAIN}/sbin \
+ --sysconfdir=${TOOLCHAIN}/etc \
+ --enable-tools \
+ --enable-malloc=system \
+ --disable-attr \
+ --disable-auth-pam \
+ --disable-blobs \
+ --disable-capstone \
+ --disable-curl \
+ --disable-debug-info \
+ --disable-debug-mutex \
+ --disable-debug-tcg \
+ --disable-docs \
+ --disable-gcrypt \
+ --disable-gnutls \
+ --disable-libxml2 \
+ --disable-system \
+ --disable-vnc \
+ --disable-werror \
+ --disable-xkbcommon \
+ --disable-zstd \
+ --target-list=$TARGET_ARCH-linux-user"
+}
+
+makeinstall_host() {
+ mkdir -p $TOOLCHAIN/bin
+ cp ${PKG_BUILD}/.${HOST_NAME}/qemu-img ${TOOLCHAIN}/bin
+ cp ${PKG_BUILD}/.${HOST_NAME}/qemu-${TARGET_ARCH} ${TOOLCHAIN}/bin
}
diff --git a/packages/tools/sysutils/python-evdev/package.mk b/packages/tools/sysutils/python-evdev/package.mk
index 5c01ac466..9fd1ef8d2 100644
--- a/packages/tools/sysutils/python-evdev/package.mk
+++ b/packages/tools/sysutils/python-evdev/package.mk
@@ -3,11 +3,11 @@
# Copyright (C) 2018-present 5schatten (https://github.com/5schatten)
PKG_NAME="python-evdev"
-PKG_VERSION="5adc2abf1ec8a02c05c80cb1b3e34ba1d4237803"
+PKG_VERSION="5adc2ab"
PKG_LICENSE="OSS"
PKG_SITE="https://github.com/gvalkov/python-evdev"
PKG_URL="$PKG_SITE.git"
-PKG_DEPENDS_TARGET="toolchain Python3:host Python3 distutilscross:host Python2"
+PKG_DEPENDS_TARGET="toolchain Python3:host Python3 distutilscross:host"
PKG_LONGDESC="Userspace evdev events"
PKG_TOOLCHAIN="manual"
GET_HANDLER_SUPPORT="git"
diff --git a/packages/tools/sysutils/pyyaml/package.mk b/packages/tools/sysutils/pyyaml/package.mk
index 240d114b9..4d96d0005 100644
--- a/packages/tools/sysutils/pyyaml/package.mk
+++ b/packages/tools/sysutils/pyyaml/package.mk
@@ -2,13 +2,13 @@
# Copyright (C) 2019-present Shanti Gilbert (https://github.com/shantigilbert)
PKG_NAME="pyyaml"
-PKG_VERSION="d0d660d035905d9c49fc0f8dafb579d2cc68c0c8"
+PKG_VERSION="8cdff2c"
PKG_SHA256=""
PKG_LICENSE="OSS"
PKG_SITE="https://github.com/yaml/pyyaml"
PKG_URL="$PKG_SITE/archive/$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="toolchain Python2 distutilscross:host"
-PKG_LONGDESC="Python 2 and 3 compatibility library "
+PKG_DEPENDS_TARGET="toolchain Python3 distutilscross:host"
+PKG_LONGDESC="A full-featured YAML processing framework for Python"
PKG_TOOLCHAIN="manual"
make_host() {
@@ -26,11 +26,11 @@ pre_make_target() {
}
make_target() {
- python setup.py build
+ python3 setup.py build
}
makeinstall_target() {
- python setup.py install --root=$INSTALL --prefix=/usr
+ python3 setup.py install --root=$INSTALL --prefix=/usr
}
post_makeinstall_target() {
diff --git a/packages/tools/sysutils/tcpbridge/package.mk b/packages/tools/sysutils/tcpbridge/package.mk
index 177e7accb..672e5f5c8 100644
--- a/packages/tools/sysutils/tcpbridge/package.mk
+++ b/packages/tools/sysutils/tcpbridge/package.mk
@@ -8,7 +8,7 @@ PKG_SHA256="d970c3635a2f0115cccbc0b7c0f27f8b8cd6981ef8cbd5b95fc7b224a6313133"
PKG_LICENSE="GPL"
PKG_SITE="https://pypi.org/project/tcpbridge"
PKG_URL="https://files.pythonhosted.org/packages/source/${PKG_NAME:0:1}/$PKG_NAME/$PKG_NAME-$PKG_VERSION.tar.gz"
-PKG_DEPENDS_TARGET="Python3 dbus-python"
+PKG_DEPENDS_TARGET="Python3 dbus-python setuptools"
PKG_LONGDESC="TCP bridge for data transfer."
PKG_TOOLCHAIN="manual"
diff --git a/packages/ui/emulationstation/package.mk b/packages/ui/emulationstation/package.mk
index 051a635aa..c1004fb13 100644
--- a/packages/ui/emulationstation/package.mk
+++ b/packages/ui/emulationstation/package.mk
@@ -40,8 +40,8 @@ makeinstall_target() {
cp -rf $PKG_BUILD/resources/* $INSTALL/usr/config/emulationstation/resources/
rm -rf $INSTALL/usr/config/emulationstation/resources/logo.png
- mkdir -p $INSTALL/usr/lib/python2.7
- cp -rf $PKG_DIR/bluez/* $INSTALL/usr/lib/python2.7
+ mkdir -p $INSTALL/usr/lib/${PKG_PYTHON_VERSION}
+ cp -rf $PKG_DIR/bluez/* $INSTALL/usr/lib/${PKG_PYTHON_VERSION}
mkdir -p $INSTALL/usr/bin
ln -sf /storage/.config/emulationstation/resources $INSTALL/usr/bin/resources