From b2d76a6e539479cdff7aab12954218ac78722881 Mon Sep 17 00:00:00 2001 From: fewtarius Date: Sun, 27 Feb 2022 18:34:12 -0500 Subject: [PATCH] * Deprecate and remove Python2 thanks to @CoreELEC as an upstream. * Optimize mupen64plus, plus-nx, and yabasanshiro a bit * Misc OS updates and bug fixes. --- config/functions | 2 +- .../pulseaudio/config/pulseaudio-system.conf | 33 --- packages/audio/pulseaudio/config/system.pa | 11 +- packages/audio/pulseaudio/package.mk | 27 +- .../pulseaudio/system.d/pulseaudio.service | 4 +- packages/devel/boost/package.mk | 8 +- packages/devel/glib/package.mk | 17 +- packages/devel/libffi/package.mk | 7 +- .../games/libretro/mupen64plus-nx/package.mk | 15 +- .../RG552/001-rg552-optimizations.patch | 37 +++ .../mupen64plus-nx-01-add-amlogic64.patch | 19 -- .../games/libretro/mupen64plus/package.mk | 33 +-- .../RG552/001-rg552-optimizations.patch | 39 +++ .../patches/mupen64plus-sx05re-neonfix.patch | 11 - .../aarch64/parallel-n64-add_platform.patch | 2 +- .../games/libretro/yabasanshiro/package.mk | 5 +- .../yabasanshiro/patches/rk3399.patch | 18 ++ packages/graphics/libmali/package.mk | 2 + packages/jelos/package.mk | 2 +- packages/lang/Python2/package.mk | 125 --------- .../patches/Python2-2.7.11-001_xcompile.patch | 50 ---- .../Python2-2.7.11-002_xcompile_path.patch | 49 ---- ...-2.7.11-003_xcompile_disable_modules.patch | 16 -- ...11-004_xcompile_fix_libffi_configure.patch | 24 -- ...-005_dont_generate_pyo_and_pyc_files.patch | 29 --- ...thon2-2.7.11-006_fix_ncurse_cppflags.patch | 12 - ....11-008-distutils-use-python-sysroot.patch | 54 ---- ...ython2-2.7.11-008-reread-environment.patch | 34 --- .../Python2-2.7.11-009-distutils-rpath.patch | 21 -- ...Python2-2.7.11-010-fix-python-config.patch | 208 --------------- ...2-2.7.11-014-abort-on-failed-modules.patch | 21 -- .../Python2-2.7.11-015_no_static_lib.patch | 51 ---- ...hon2-2.7.11-016-default-is-optimized.patch | 13 - ...Python2-2.7.11-017-dont-install-2to3.patch | 12 - ...2-2.7.15-001_disable_restricted_mode.patch | 11 - ...orm_machine_func_for_32bit_userspace.patch | 14 - packages/lang/Python3/package.mk | 6 +- .../Python3-0000-default-is-optimized.patch | 2 +- .../Python3-0100-buildroot-patches.patch | 241 ++++++++---------- .../patches/Python3-0201-xcompile.patch | 18 +- .../patches/Python3-0202-xcompile.patch | 7 +- ...n3-0300-generate-legacy-pyc-bytecode.patch | 7 +- .../patches/Python3-0400-fix-bpo5537.patch | 7 +- .../patches/Python3-0500-fix-bpo45262.patch | 26 -- ...orm_machine_func_for_32bit_userspace.patch | 28 ++ packages/python/devel/Jinja2/package.mk | 16 ++ packages/python/devel/Mako/package.mk | 4 +- packages/python/devel/MarkupSafe/package.mk | 4 +- .../python/devel/distutilscross/package.mk | 6 +- packages/python/devel/meson/package.mk | 10 +- packages/python/devel/pgi/package.mk | 32 +++ ...type-as-it-s-not-Python-3-compatible.patch | 25 ++ packages/python/devel/pygobject/package.mk | 26 -- ...ct-0001-add-PYTHON_INCLUDES-override.patch | 32 --- .../pygobject-2.28.6-automake-1.13.patch | 20 -- packages/python/devel/setuptools/package.mk | 8 +- packages/python/devel/waf/package.mk | 14 +- packages/sysutils/dstat/package.mk | 16 +- packages/sysutils/i2c-tools/package.mk | 39 ++- .../i2c-tools/patches/pyinstalldir.patch | 12 + packages/sysutils/lirc/package.mk | 34 +-- .../lirc/system.d/lircd-uinput.service | 2 +- packages/sysutils/lirc/system.d/lircd.service | 2 +- packages/tools/qemu/package.mk | 62 +++-- .../tools/sysutils/python-evdev/package.mk | 4 +- packages/tools/sysutils/pyyaml/package.mk | 10 +- packages/tools/sysutils/tcpbridge/package.mk | 2 +- packages/ui/emulationstation/package.mk | 4 +- 68 files changed, 506 insertions(+), 1256 deletions(-) delete mode 100644 packages/audio/pulseaudio/config/pulseaudio-system.conf create mode 100644 packages/games/libretro/mupen64plus-nx/patches/RG552/001-rg552-optimizations.patch delete mode 100644 packages/games/libretro/mupen64plus-nx/patches/mupen64plus-nx-01-add-amlogic64.patch create mode 100644 packages/games/libretro/mupen64plus/patches/RG552/001-rg552-optimizations.patch delete mode 100644 packages/games/libretro/mupen64plus/patches/mupen64plus-sx05re-neonfix.patch create mode 100644 packages/games/libretro/yabasanshiro/patches/rk3399.patch delete mode 100644 packages/lang/Python2/package.mk delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-001_xcompile.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-002_xcompile_path.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-003_xcompile_disable_modules.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-004_xcompile_fix_libffi_configure.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-005_dont_generate_pyo_and_pyc_files.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-006_fix_ncurse_cppflags.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-008-distutils-use-python-sysroot.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-008-reread-environment.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-009-distutils-rpath.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-010-fix-python-config.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-014-abort-on-failed-modules.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-015_no_static_lib.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-016-default-is-optimized.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.11-017-dont-install-2to3.patch delete mode 100644 packages/lang/Python2/patches/Python2-2.7.15-001_disable_restricted_mode.patch delete mode 100644 packages/lang/Python2/patches/aarch64/Python2-001-fix_platform_machine_func_for_32bit_userspace.patch delete mode 100644 packages/lang/Python3/patches/Python3-0500-fix-bpo45262.patch create mode 100644 packages/lang/Python3/patches/arm/Python3-0001-fix_platform_machine_func_for_32bit_userspace.patch create mode 100644 packages/python/devel/Jinja2/package.mk create mode 100644 packages/python/devel/pgi/package.mk create mode 100644 packages/python/devel/pgi/patches/pgi-0001-remove-type-as-it-s-not-Python-3-compatible.patch delete mode 100644 packages/python/devel/pygobject/package.mk delete mode 100644 packages/python/devel/pygobject/patches/pygobject-0001-add-PYTHON_INCLUDES-override.patch delete mode 100644 packages/python/devel/pygobject/patches/pygobject-2.28.6-automake-1.13.patch create mode 100644 packages/sysutils/i2c-tools/patches/pyinstalldir.patch 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