From 6b182f3117595df1cab4f944b829afe8342fac36 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E5=B0=8F=E7=99=BD?= <296015668@qq.com> Date: Sat, 17 May 2025 13:44:50 +0800 Subject: [PATCH 1/3] Add loongarch64 musllinux_1_2 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 吴小白 <296015668@qq.com> --- .github/workflows/Build.yml | 2 + musllinux_1_2/loongarch64/.config | 904 +++++++++++++++++++++++++++ musllinux_1_2/loongarch64/Dockerfile | 240 +++++++ 3 files changed, 1146 insertions(+) create mode 100644 musllinux_1_2/loongarch64/.config create mode 100644 musllinux_1_2/loongarch64/Dockerfile diff --git a/.github/workflows/Build.yml b/.github/workflows/Build.yml index bd33f5e..1f3ddb9 100644 --- a/.github/workflows/Build.yml +++ b/.github/workflows/Build.yml @@ -177,6 +177,8 @@ jobs: manylinux: musllinux_1_2 - arch: armv7l manylinux: musllinux_1_2 + - arch: loongarch64 + manylinux: musllinux_1_2 build: name: Build - ${{ matrix.os.arch }} - ${{ matrix.platform.manylinux }}_${{ matrix.platform.arch }} diff --git a/musllinux_1_2/loongarch64/.config b/musllinux_1_2/loongarch64/.config new file mode 100644 index 0000000..18336da --- /dev/null +++ b/musllinux_1_2/loongarch64/.config @@ -0,0 +1,904 @@ +# +# Automatically generated file; DO NOT EDIT. +# crosstool-NG 1.27.0 Configuration +# +CT_CONFIGURE_has_static_link=y +CT_CONFIGURE_has_cxx11=y +CT_CONFIGURE_has_lzip=y +CT_CONFIGURE_has_curl=y +CT_CONFIGURE_has_ninja=y +CT_CONFIGURE_has_make_3_81_or_newer=y +CT_CONFIGURE_has_make_4_0_or_newer=y +CT_CONFIGURE_has_make_4_4_or_newer=y +CT_CONFIGURE_has_libtool_2_4_or_newer=y +CT_CONFIGURE_has_libtoolize_2_4_or_newer=y +CT_CONFIGURE_has_autoconf_2_65_or_newer=y +CT_CONFIGURE_has_autoreconf_2_65_or_newer=y +CT_CONFIGURE_has_automake_1_15_or_newer=y +CT_CONFIGURE_has_gnu_m4_1_4_12_or_newer=y +CT_CONFIGURE_has_python_3_4_or_newer=y +CT_CONFIGURE_has_bison_2_7_or_newer=y +CT_CONFIGURE_has_bison_3_0_4_or_newer=y +CT_CONFIGURE_has_python=y +CT_CONFIGURE_has_dtc=y +CT_CONFIGURE_has_svn=y +CT_CONFIGURE_has_git=y +CT_CONFIGURE_has_md5sum=y +CT_CONFIGURE_has_sha1sum=y +CT_CONFIGURE_has_sha256sum=y +CT_CONFIGURE_has_sha512sum=y +CT_CONFIGURE_has_install_with_strip_program=y +CT_VERSION="1.27.0" +CT_VCHECK="" +CT_CONFIG_VERSION_ENV="4" +CT_CONFIG_VERSION_CURRENT="4" +CT_CONFIG_VERSION="4" +CT_MODULES=y + +# +# Paths and misc options +# + +# +# crosstool-NG behavior +# +CT_OBSOLETE=y +CT_EXPERIMENTAL=y +CT_ALLOW_BUILD_AS_ROOT=y +CT_ALLOW_BUILD_AS_ROOT_SURE=y +# CT_ENABLE_EXPERIMENTAL_BUNDLED_PATCHES is not set +# CT_DEBUG_CT is not set + +# +# Paths +# +CT_LOCAL_TARBALLS_DIR="" +# CT_TARBALLS_BUILDROOT_LAYOUT is not set +CT_WORK_DIR="${CT_TOP_DIR}/.build" +CT_BUILD_TOP_DIR="${CT_WORK_DIR:-${CT_TOP_DIR}/.build}/${CT_HOST:+HOST-${CT_HOST}/}${CT_TARGET}" +CT_BUILD_DIR="${CT_BUILD_TOP_DIR}/build" +CT_PREFIX_DIR="/usr/${CT_TARGET}" +CT_RM_RF_PREFIX_DIR=y +CT_REMOVE_DOCS=y +CT_INSTALL_LICENSES=y +# CT_PREFIX_DIR_RO is not set +CT_STRIP_HOST_TOOLCHAIN_EXECUTABLES=y +# CT_STRIP_TARGET_TOOLCHAIN_EXECUTABLES is not set +# CT_TARBALL_RESULT is not set + +# +# Downloading +# +CT_DOWNLOAD_AGENT_CURL=y +# CT_DOWNLOAD_AGENT_NONE is not set +# CT_FORBID_DOWNLOAD is not set +# CT_FORCE_DOWNLOAD is not set +CT_CONNECT_TIMEOUT=10 +CT_DOWNLOAD_CURL_OPTIONS="--location --ftp-pasv --retry 3 --fail --silent" +# CT_ONLY_DOWNLOAD is not set +# CT_USE_MIRROR is not set +CT_VERIFY_DOWNLOAD_DIGEST=y +CT_VERIFY_DOWNLOAD_DIGEST_SHA512=y +# CT_VERIFY_DOWNLOAD_DIGEST_SHA256 is not set +# CT_VERIFY_DOWNLOAD_DIGEST_SHA1 is not set +# CT_VERIFY_DOWNLOAD_DIGEST_MD5 is not set +CT_VERIFY_DOWNLOAD_DIGEST_ALG="sha512" +# CT_VERIFY_DOWNLOAD_SIGNATURE is not set + +# +# Extracting +# +# CT_FORCE_EXTRACT is not set +CT_OVERRIDE_CONFIG_GUESS_SUB=y +# CT_ONLY_EXTRACT is not set +CT_PATCH_BUNDLED=y +# CT_PATCH_LOCAL is not set +# CT_PATCH_BUNDLED_LOCAL is not set +# CT_PATCH_LOCAL_BUNDLED is not set +# CT_PATCH_NONE is not set +CT_PATCH_ORDER="bundled" + +# +# Build behavior +# +CT_PARALLEL_JOBS=0 +CT_LOAD="" +CT_USE_PIPES=y +CT_EXTRA_CFLAGS_FOR_BUILD="" +CT_EXTRA_CXXFLAGS_FOR_BUILD="" +CT_EXTRA_LDFLAGS_FOR_BUILD="" +CT_EXTRA_CFLAGS_FOR_HOST="" +CT_EXTRA_LDFLAGS_FOR_HOST="" +# CT_CONFIG_SHELL_SH is not set +# CT_CONFIG_SHELL_ASH is not set +CT_CONFIG_SHELL_BASH=y +# CT_CONFIG_SHELL_CUSTOM is not set +CT_CONFIG_SHELL="${bash}" + +# +# Logging +# +# CT_LOG_ERROR is not set +# CT_LOG_WARN is not set +# CT_LOG_INFO is not set +CT_LOG_EXTRA=y +# CT_LOG_ALL is not set +# CT_LOG_DEBUG is not set +CT_LOG_LEVEL_MAX="EXTRA" +# CT_LOG_SEE_TOOLS_WARN is not set +CT_LOG_PROGRESS_BAR="" +CT_LOG_TO_FILE=y +CT_LOG_FILE_COMPRESS=y +# end of Paths and misc options + +# +# Target options +# +# CT_ARCH_ALPHA is not set +# CT_ARCH_ARC is not set +# CT_ARCH_ARM is not set +# CT_ARCH_AVR is not set +# CT_ARCH_BPF is not set +# CT_ARCH_C6X is not set +# CT_ARCH_LM32 is not set +CT_ARCH_LOONGARCH=y +# CT_ARCH_M68K is not set +# CT_ARCH_MICROBLAZE is not set +# CT_ARCH_MIPS is not set +# CT_ARCH_MOXIE is not set +# CT_ARCH_MSP430 is not set +# CT_ARCH_NIOS2 is not set +# CT_ARCH_OPENRISC is not set +# CT_ARCH_PARISC is not set +# CT_ARCH_POWERPC is not set +# CT_ARCH_PRU is not set +# CT_ARCH_RISCV is not set +# CT_ARCH_S390 is not set +# CT_ARCH_SH is not set +# CT_ARCH_SPARC is not set +# CT_ARCH_TRICORE is not set +# CT_ARCH_X86 is not set +# CT_ARCH_XTENSA is not set +CT_ARCH="loongarch" +CT_ARCH_CHOICE_KSYM="LOONGARCH" +CT_ARCH_TUNE="" +CT_ARCH_LOONGARCH_SHOW=y + +# +# Options for loongarch +# +CT_ARCH_LOONGARCH_PKG_KSYM="" +CT_ALL_ARCH_CHOICES="ALPHA ARC ARM AVR BPF C6X LM32 LOONGARCH M68K MICROBLAZE MIPS MOXIE MSP430 NIOS2 OPENRISC PARISC POWERPC PRU RISCV S390 SH SPARC TRICORE X86 XTENSA" +CT_ARCH_SUFFIX="" +# CT_OMIT_TARGET_VENDOR is not set + +# +# Generic target options +# +# CT_MULTILIB is not set +# CT_DEMULTILIB is not set +CT_ARCH_SUPPORTS_BOTH_MMU=y +CT_ARCH_USE_MMU=y +CT_ARCH_SUPPORTS_64=y +CT_ARCH_DEFAULT_64=y +CT_ARCH_BITNESS=64 +CT_ARCH_64=y + +# +# Target optimisations +# +CT_ARCH_SUPPORTS_WITH_ARCH=y +CT_ARCH_SUPPORTS_WITH_ABI=y +CT_ARCH_SUPPORTS_WITH_TUNE=y +CT_ARCH_ARCH="loongarch64" +CT_ARCH_ABI="" +CT_TARGET_CFLAGS="" +CT_TARGET_LDFLAGS="" +# end of Target options + +# +# Toolchain options +# + +# +# General toolchain options +# +CT_FORCE_SYSROOT=y +CT_USE_SYSROOT=y +CT_SYSROOT_NAME="sysroot" +CT_SYSROOT_DIR_PREFIX="" +CT_WANTS_STATIC_LINK=y +CT_WANTS_STATIC_LINK_CXX=y +# CT_STATIC_TOOLCHAIN is not set +CT_SHOW_CT_VERSION=y +CT_TOOLCHAIN_PKGVERSION="" +CT_TOOLCHAIN_BUGURL="" + +# +# Tuple completion and aliasing +# +CT_TARGET_VENDOR="unknown" +CT_TARGET_ALIAS_SED_EXPR="" +CT_TARGET_ALIAS="" + +# +# Toolchain type +# +# CT_NATIVE is not set +CT_CROSS=y +# CT_CROSS_NATIVE is not set +# CT_CANADIAN is not set +CT_TOOLCHAIN_TYPE="cross" + +# +# Build system +# +CT_BUILD="" +CT_BUILD_PREFIX="" +CT_BUILD_SUFFIX="" + +# +# Misc options +# +# CT_TOOLCHAIN_ENABLE_NLS is not set +# end of Toolchain options + +# +# Operating System +# +CT_KERNEL_SUPPORTS_SHARED_LIBS=y +# CT_KERNEL_BARE_METAL is not set +CT_KERNEL_LINUX=y +CT_KERNEL="linux" +CT_KERNEL_CHOICE_KSYM="LINUX" +CT_KERNEL_LINUX_SHOW=y + +# +# Options for linux +# +CT_KERNEL_LINUX_PKG_KSYM="LINUX" +CT_LINUX_DIR_NAME="linux" +CT_LINUX_PKG_NAME="linux" +CT_LINUX_SRC_RELEASE=y +# CT_LINUX_SRC_DEVEL is not set +# CT_LINUX_SRC_CUSTOM is not set +CT_LINUX_PATCH_GLOBAL=y +# CT_LINUX_PATCH_BUNDLED is not set +# CT_LINUX_PATCH_LOCAL is not set +# CT_LINUX_PATCH_BUNDLED_LOCAL is not set +# CT_LINUX_PATCH_LOCAL_BUNDLED is not set +# CT_LINUX_PATCH_NONE is not set +CT_LINUX_PATCH_ORDER="global" +# CT_LINUX_V_6_13 is not set +# CT_LINUX_V_6_12 is not set +# CT_LINUX_V_6_11 is not set +# CT_LINUX_V_6_10 is not set +# CT_LINUX_V_6_9 is not set +# CT_LINUX_V_6_8 is not set +# CT_LINUX_V_6_7 is not set +# CT_LINUX_V_6_6 is not set +# CT_LINUX_V_6_5 is not set +# CT_LINUX_V_6_4 is not set +# CT_LINUX_V_6_3 is not set +CT_LINUX_V_6_2=y +# CT_LINUX_V_6_1 is not set +# CT_LINUX_V_6_0 is not set +# CT_LINUX_V_5_19 is not set +CT_LINUX_VERSION="6.2.16" +CT_LINUX_MIRRORS="$(CT_Mirrors kernel.org linux ${CT_LINUX_VERSION})" +CT_LINUX_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_LINUX_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_LINUX_ARCHIVE_FORMATS=".tar.xz .tar.gz" +CT_LINUX_SIGNATURE_FORMAT="unpacked/.sign" +CT_LINUX_later_than_5_19=y +CT_LINUX_5_19_or_later=y +CT_LINUX_REQUIRE_5_19_or_later=y +CT_LINUX_later_than_5_12=y +CT_LINUX_5_12_or_later=y +CT_LINUX_later_than_5_5=y +CT_LINUX_5_5_or_later=y +CT_LINUX_later_than_5_3=y +CT_LINUX_5_3_or_later=y +CT_LINUX_later_than_4_8=y +CT_LINUX_4_8_or_later=y +CT_LINUX_later_than_3_7=y +CT_LINUX_3_7_or_later=y +CT_LINUX_later_than_3_2=y +CT_LINUX_3_2_or_later=y +CT_KERNEL_has_rsync=y +CT_KERNEL_DEP_RSYNC=y +CT_KERNEL_LINUX_VERBOSITY_0=y +# CT_KERNEL_LINUX_VERBOSITY_1 is not set +# CT_KERNEL_LINUX_VERBOSITY_2 is not set +CT_KERNEL_LINUX_VERBOSE_LEVEL=0 +CT_ALL_KERNEL_CHOICES="BARE_METAL LINUX WINDOWS" + +# +# Common kernel options +# +CT_SHARED_LIBS=y +# end of Operating System + +# +# Binary utilities +# +CT_ARCH_BINFMT_ELF=y +CT_BINUTILS_BINUTILS=y +CT_BINUTILS="binutils" +CT_BINUTILS_CHOICE_KSYM="BINUTILS" +CT_BINUTILS_BINUTILS_SHOW=y + +# +# Options for binutils +# +CT_BINUTILS_BINUTILS_PKG_KSYM="BINUTILS" +CT_BINUTILS_DIR_NAME="binutils" +CT_BINUTILS_USE_GNU=y +# CT_BINUTILS_USE_LINARO is not set +# CT_BINUTILS_USE_ORACLE is not set +CT_BINUTILS_USE="BINUTILS" +CT_BINUTILS_PKG_NAME="binutils" +CT_BINUTILS_SRC_RELEASE=y +# CT_BINUTILS_SRC_DEVEL is not set +# CT_BINUTILS_SRC_CUSTOM is not set +CT_BINUTILS_PATCH_GLOBAL=y +# CT_BINUTILS_PATCH_BUNDLED is not set +# CT_BINUTILS_PATCH_LOCAL is not set +# CT_BINUTILS_PATCH_BUNDLED_LOCAL is not set +# CT_BINUTILS_PATCH_LOCAL_BUNDLED is not set +# CT_BINUTILS_PATCH_NONE is not set +CT_BINUTILS_PATCH_ORDER="global" +CT_BINUTILS_V_2_43=y +# CT_BINUTILS_V_2_42 is not set +# CT_BINUTILS_V_2_41 is not set +# CT_BINUTILS_V_2_40 is not set +# CT_BINUTILS_V_2_39 is not set +CT_BINUTILS_VERSION="2.43.1" +CT_BINUTILS_MIRRORS="$(CT_Mirrors GNU binutils) $(CT_Mirrors sourceware binutils/releases)" +CT_BINUTILS_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_BINUTILS_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_BINUTILS_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" +CT_BINUTILS_SIGNATURE_FORMAT="packed/.sig" +CT_BINUTILS_later_than_2_41=y +CT_BINUTILS_2_41_or_later=y +CT_BINUTILS_later_than_2_39=y +CT_BINUTILS_2_39_or_later=y +CT_BINUTILS_REQUIRE_2_39_or_later=y +CT_BINUTILS_later_than_2_30=y +CT_BINUTILS_2_30_or_later=y +CT_BINUTILS_later_than_2_27=y +CT_BINUTILS_2_27_or_later=y +CT_BINUTILS_later_than_2_26=y +CT_BINUTILS_2_26_or_later=y + +# +# GNU binutils +# +CT_BINUTILS_GOLD_SUPPORTS_ARCH=y +CT_BINUTILS_GOLD_SUPPORT=y +CT_BINUTILS_LINKER_LD=y +# CT_BINUTILS_LINKER_GOLD is not set +# CT_BINUTILS_LINKER_LD_GOLD is not set +# CT_BINUTILS_LINKER_GOLD_LD is not set +CT_BINUTILS_LINKERS_LIST="ld" +CT_BINUTILS_LINKER_DEFAULT="bfd" +# CT_BINUTILS_PLUGINS is not set +CT_BINUTILS_RELRO=m +CT_BINUTILS_DETERMINISTIC_ARCHIVES=y +CT_BINUTILS_EXTRA_CONFIG_ARRAY="" +# CT_BINUTILS_FOR_TARGET is not set +CT_ALL_BINUTILS_CHOICES="BINUTILS" +# end of Binary utilities + +# +# C-library +# +# CT_LIBC_GLIBC is not set +CT_LIBC_MUSL=y +# CT_LIBC_UCLIBC_NG is not set +CT_LIBC="musl" +CT_LIBC_CHOICE_KSYM="MUSL" +CT_THREADS="musl" +CT_LIBC_MUSL_SHOW=y + +# +# Options for musl +# +CT_LIBC_MUSL_PKG_KSYM="MUSL" +CT_MUSL_DIR_NAME="musl" +CT_MUSL_PKG_NAME="musl" +CT_MUSL_SRC_RELEASE=y +# CT_MUSL_SRC_DEVEL is not set +# CT_MUSL_SRC_CUSTOM is not set +CT_MUSL_PATCH_GLOBAL=y +# CT_MUSL_PATCH_BUNDLED is not set +# CT_MUSL_PATCH_LOCAL is not set +# CT_MUSL_PATCH_BUNDLED_LOCAL is not set +# CT_MUSL_PATCH_LOCAL_BUNDLED is not set +# CT_MUSL_PATCH_NONE is not set +CT_MUSL_PATCH_ORDER="global" +CT_MUSL_V_1_2_5=y +# CT_MUSL_V_1_2_4 is not set +# CT_MUSL_V_1_2_3 is not set +# CT_MUSL_V_1_2_2 is not set +# CT_MUSL_V_1_2_1 is not set +# CT_MUSL_V_1_1_24 is not set +# CT_MUSL_V_1_1_23 is not set +# CT_MUSL_V_1_1_22 is not set +# CT_MUSL_V_1_1_21 is not set +# CT_MUSL_V_1_1_20 is not set +# CT_MUSL_V_1_1_19 is not set +# CT_MUSL_V_1_1_18 is not set +# CT_MUSL_V_1_1_17 is not set +# CT_MUSL_V_1_1_16 is not set +CT_MUSL_VERSION="1.2.5" +CT_MUSL_MIRRORS="http://www.musl-libc.org/releases" +CT_MUSL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_MUSL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_MUSL_ARCHIVE_FORMATS=".tar.gz" +CT_MUSL_SIGNATURE_FORMAT="packed/.asc" +# CT_LIBC_MUSL_DEBUG is not set +# CT_LIBC_MUSL_WARNINGS is not set +# CT_LIBC_MUSL_OPTIMIZE_NONE is not set +CT_LIBC_MUSL_OPTIMIZE_AUTO=y +# CT_LIBC_MUSL_OPTIMIZE_SPEED is not set +# CT_LIBC_MUSL_OPTIMIZE_SIZE is not set +CT_LIBC_MUSL_OPTIMIZE="auto" +CT_LIBC_MUSL_EXTRA_CFLAGS="" +CT_ALL_LIBC_CHOICES="AVR_LIBC GLIBC MINGW_W64 MOXIEBOX MUSL NEWLIB NONE PICOLIBC UCLIBC_NG" +CT_LIBC_SUPPORT_THREADS_ANY=y +CT_LIBC_SUPPORT_THREADS_NATIVE=y + +# +# Common C library options +# +CT_THREADS_NATIVE=y +# CT_CREATE_LDSO_CONF is not set +CT_LIBC_XLDD=y +# end of C-library + +# +# C compiler +# +CT_CC_CORE_NEEDED=y +CT_CC_SUPPORT_CXX=y +CT_CC_SUPPORT_FORTRAN=y +CT_CC_SUPPORT_ADA=y +CT_CC_SUPPORT_D=y +CT_CC_SUPPORT_JIT=y +CT_CC_SUPPORT_OBJC=y +CT_CC_SUPPORT_OBJCXX=y +CT_CC_SUPPORT_GOLANG=y +CT_CC_GCC=y +CT_CC="gcc" +CT_CC_CHOICE_KSYM="GCC" +CT_CC_GCC_SHOW=y + +# +# Options for gcc +# +CT_CC_GCC_PKG_KSYM="GCC" +CT_GCC_DIR_NAME="gcc" +CT_GCC_USE_GNU=y +# CT_GCC_USE_LINARO is not set +# CT_GCC_USE_ORACLE is not set +CT_GCC_USE="GCC" +CT_GCC_PKG_NAME="gcc" +CT_GCC_SRC_RELEASE=y +# CT_GCC_SRC_DEVEL is not set +# CT_GCC_SRC_CUSTOM is not set +CT_GCC_PATCH_GLOBAL=y +# CT_GCC_PATCH_BUNDLED is not set +# CT_GCC_PATCH_LOCAL is not set +# CT_GCC_PATCH_BUNDLED_LOCAL is not set +# CT_GCC_PATCH_LOCAL_BUNDLED is not set +# CT_GCC_PATCH_NONE is not set +CT_GCC_PATCH_ORDER="global" +CT_GCC_V_14=y +# CT_GCC_V_13 is not set +# CT_GCC_V_12 is not set +CT_GCC_VERSION="14.2.0" +CT_GCC_MIRRORS="$(CT_Mirrors GNU gcc/gcc-${CT_GCC_VERSION}) $(CT_Mirrors sourceware gcc/releases/gcc-${CT_GCC_VERSION})" +CT_GCC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_GCC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_GCC_ARCHIVE_FORMATS=".tar.xz .tar.gz" +CT_GCC_SIGNATURE_FORMAT="" +CT_GCC_later_than_14=y +CT_GCC_14_or_later=y +CT_GCC_later_than_13=y +CT_GCC_13_or_later=y +CT_GCC_later_than_12=y +CT_GCC_12_or_later=y +CT_GCC_REQUIRE_12_or_later=y +CT_GCC_later_than_11=y +CT_GCC_11_or_later=y +CT_GCC_later_than_10=y +CT_GCC_10_or_later=y +CT_GCC_later_than_9=y +CT_GCC_9_or_later=y +CT_GCC_later_than_8=y +CT_GCC_8_or_later=y +CT_GCC_later_than_7=y +CT_GCC_7_or_later=y +CT_GCC_later_than_6=y +CT_GCC_6_or_later=y +CT_GCC_later_than_5=y +CT_GCC_5_or_later=y +CT_GCC_later_than_4_9=y +CT_GCC_4_9_or_later=y +CT_CC_GCC_HAS_LIBMPX=y +CT_CC_GCC_ENABLE_CXX_FLAGS="" +CT_CC_GCC_CORE_EXTRA_CONFIG_ARRAY="" +CT_CC_GCC_EXTRA_CONFIG_ARRAY="" +CT_CC_GCC_STATIC_LIBSTDCXX=y +# CT_CC_GCC_SYSTEM_ZLIB is not set +CT_CC_GCC_CONFIG_TLS=m + +# +# Optimisation features +# +CT_CC_GCC_USE_GRAPHITE=y +CT_CC_GCC_USE_LTO=y +CT_CC_GCC_LTO_ZSTD=m + +# +# Settings for libraries running on target +# +CT_CC_GCC_ENABLE_DEFAULT_PIE=y +CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y +CT_CC_GCC_LIBSTDCXX=m +# CT_CC_GCC_LIBSTDCXX_HOSTED_DISABLE is not set +# CT_CC_GCC_LIBMUDFLAP is not set +# CT_CC_GCC_LIBGOMP is not set +# CT_CC_GCC_LIBSSP is not set +# CT_CC_GCC_LIBQUADMATH is not set +CT_CC_GCC_LIBSTDCXX_VERBOSE=m + +# +# Misc. obscure options. +# +CT_CC_CXA_ATEXIT=y +CT_CC_GCC_TM_CLONE_REGISTRY=m +# CT_CC_GCC_DISABLE_PCH is not set +CT_CC_GCC_SJLJ_EXCEPTIONS=m +CT_CC_GCC_LDBL_128=m +# CT_CC_GCC_BUILD_ID is not set +CT_CC_GCC_LNK_HASH_STYLE_DEFAULT=y +# CT_CC_GCC_LNK_HASH_STYLE_SYSV is not set +# CT_CC_GCC_LNK_HASH_STYLE_GNU is not set +# CT_CC_GCC_LNK_HASH_STYLE_BOTH is not set +CT_CC_GCC_LNK_HASH_STYLE="" +CT_CC_GCC_DEC_FLOATS_AUTO=y +# CT_CC_GCC_DEC_FLOATS_BID is not set +# CT_CC_GCC_DEC_FLOATS_DPD is not set +# CT_CC_GCC_DEC_FLOATS_NO is not set +CT_CC_GCC_DEC_FLOATS="" +CT_ALL_CC_CHOICES="GCC" + +# +# Additional supported languages: +# +CT_CC_LANG_CXX=y +# CT_CC_LANG_FORTRAN is not set +# CT_CC_LANG_JIT is not set +# CT_CC_LANG_ADA is not set +# CT_CC_LANG_D is not set +# CT_CC_LANG_OBJC is not set +# CT_CC_LANG_OBJCXX is not set +# CT_CC_LANG_GOLANG is not set +CT_CC_LANG_OTHERS="" +# end of C compiler + +# +# Linkers +# + +# +# BFD enabled in binutils +# +# CT_LINKER_MOLD is not set +CT_ALL_LINKER_CHOICES="MOLD" +# end of Linkers + +# +# Debug facilities +# +# CT_DEBUG_DUMA is not set +# CT_DEBUG_GDB is not set +# CT_DEBUG_LTRACE is not set +# CT_DEBUG_STRACE is not set +CT_ALL_DEBUG_CHOICES="DUMA GDB LTRACE STRACE" +# end of Debug facilities + +# +# Companion libraries +# +# CT_COMPLIBS_CHECK is not set +# CT_COMP_LIBS_CLOOG is not set +# CT_COMP_LIBS_EXPAT is not set +CT_COMP_LIBS_GETTEXT=y +CT_COMP_LIBS_GETTEXT_PKG_KSYM="GETTEXT" +CT_GETTEXT_DIR_NAME="gettext" +CT_GETTEXT_PKG_NAME="gettext" +CT_GETTEXT_SRC_RELEASE=y +# CT_GETTEXT_SRC_DEVEL is not set +# CT_GETTEXT_SRC_CUSTOM is not set +CT_GETTEXT_PATCH_GLOBAL=y +# CT_GETTEXT_PATCH_BUNDLED is not set +# CT_GETTEXT_PATCH_LOCAL is not set +# CT_GETTEXT_PATCH_BUNDLED_LOCAL is not set +# CT_GETTEXT_PATCH_LOCAL_BUNDLED is not set +# CT_GETTEXT_PATCH_NONE is not set +CT_GETTEXT_PATCH_ORDER="global" +CT_GETTEXT_V_0_23_1=y +# CT_GETTEXT_V_0_22_5 is not set +# CT_GETTEXT_V_0_21 is not set +# CT_GETTEXT_V_0_20_1 is not set +# CT_GETTEXT_V_0_19_8_1 is not set +CT_GETTEXT_VERSION="0.23.1" +CT_GETTEXT_MIRRORS="$(CT_Mirrors GNU gettext)" +CT_GETTEXT_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_GETTEXT_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_GETTEXT_ARCHIVE_FORMATS=".tar.xz .tar.gz" +CT_GETTEXT_SIGNATURE_FORMAT="packed/.sig" +CT_GETTEXT_later_than_0_23=y +CT_GETTEXT_0_23_or_later=y +CT_GETTEXT_later_than_0_21=y +CT_GETTEXT_0_21_or_later=y +CT_GETTEXT_INCOMPATIBLE_WITH_UCLIBC_NG=y + +# +# This version of gettext is not compatible with uClibc-NG. Select +# + +# +# a different version if uClibc-NG is used on the target or (in a +# + +# +# Canadian cross build) on the host. +# +CT_COMP_LIBS_GMP=y +CT_COMP_LIBS_GMP_PKG_KSYM="GMP" +CT_GMP_DIR_NAME="gmp" +CT_GMP_PKG_NAME="gmp" +CT_GMP_SRC_RELEASE=y +# CT_GMP_SRC_DEVEL is not set +# CT_GMP_SRC_CUSTOM is not set +CT_GMP_PATCH_GLOBAL=y +# CT_GMP_PATCH_BUNDLED is not set +# CT_GMP_PATCH_LOCAL is not set +# CT_GMP_PATCH_BUNDLED_LOCAL is not set +# CT_GMP_PATCH_LOCAL_BUNDLED is not set +# CT_GMP_PATCH_NONE is not set +CT_GMP_PATCH_ORDER="global" +CT_GMP_V_6_3=y +# CT_GMP_V_6_2 is not set +# CT_GMP_V_6_1 is not set +CT_GMP_VERSION="6.3.0" +CT_GMP_MIRRORS="https://gmplib.org/download/gmp https://gmplib.org/download/gmp/archive $(CT_Mirrors GNU gmp)" +CT_GMP_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_GMP_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_GMP_ARCHIVE_FORMATS=".tar.xz .tar.lz .tar.bz2" +CT_GMP_SIGNATURE_FORMAT="packed/.sig" +CT_COMP_LIBS_ISL=y +CT_COMP_LIBS_ISL_PKG_KSYM="ISL" +CT_ISL_DIR_NAME="isl" +CT_ISL_PKG_NAME="isl" +CT_ISL_SRC_RELEASE=y +# CT_ISL_SRC_DEVEL is not set +# CT_ISL_SRC_CUSTOM is not set +CT_ISL_PATCH_GLOBAL=y +# CT_ISL_PATCH_BUNDLED is not set +# CT_ISL_PATCH_LOCAL is not set +# CT_ISL_PATCH_BUNDLED_LOCAL is not set +# CT_ISL_PATCH_LOCAL_BUNDLED is not set +# CT_ISL_PATCH_NONE is not set +CT_ISL_PATCH_ORDER="global" +CT_ISL_V_0_26=y +# CT_ISL_V_0_25 is not set +# CT_ISL_V_0_24 is not set +# CT_ISL_V_0_23 is not set +# CT_ISL_V_0_22 is not set +# CT_ISL_V_0_21 is not set +# CT_ISL_V_0_20 is not set +# CT_ISL_V_0_19 is not set +# CT_ISL_V_0_18 is not set +# CT_ISL_V_0_17 is not set +# CT_ISL_V_0_16 is not set +# CT_ISL_V_0_15 is not set +CT_ISL_VERSION="0.26" +CT_ISL_MIRRORS="https://libisl.sourceforge.io" +CT_ISL_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_ISL_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_ISL_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz" +CT_ISL_SIGNATURE_FORMAT="" +CT_ISL_later_than_0_18=y +CT_ISL_0_18_or_later=y +CT_ISL_later_than_0_15=y +CT_ISL_0_15_or_later=y +# CT_COMP_LIBS_LIBELF is not set +CT_COMP_LIBS_LIBICONV=y +CT_COMP_LIBS_LIBICONV_PKG_KSYM="LIBICONV" +CT_LIBICONV_DIR_NAME="libiconv" +CT_LIBICONV_PKG_NAME="libiconv" +CT_LIBICONV_SRC_RELEASE=y +# CT_LIBICONV_SRC_DEVEL is not set +# CT_LIBICONV_SRC_CUSTOM is not set +CT_LIBICONV_PATCH_GLOBAL=y +# CT_LIBICONV_PATCH_BUNDLED is not set +# CT_LIBICONV_PATCH_LOCAL is not set +# CT_LIBICONV_PATCH_BUNDLED_LOCAL is not set +# CT_LIBICONV_PATCH_LOCAL_BUNDLED is not set +# CT_LIBICONV_PATCH_NONE is not set +CT_LIBICONV_PATCH_ORDER="global" +CT_LIBICONV_V_1_16=y +# CT_LIBICONV_V_1_15 is not set +CT_LIBICONV_VERSION="1.16" +CT_LIBICONV_MIRRORS="$(CT_Mirrors GNU libiconv)" +CT_LIBICONV_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_LIBICONV_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_LIBICONV_ARCHIVE_FORMATS=".tar.gz" +CT_LIBICONV_SIGNATURE_FORMAT="packed/.sig" +CT_COMP_LIBS_MPC=y +CT_COMP_LIBS_MPC_PKG_KSYM="MPC" +CT_MPC_DIR_NAME="mpc" +CT_MPC_PKG_NAME="mpc" +CT_MPC_SRC_RELEASE=y +# CT_MPC_SRC_DEVEL is not set +# CT_MPC_SRC_CUSTOM is not set +CT_MPC_PATCH_GLOBAL=y +# CT_MPC_PATCH_BUNDLED is not set +# CT_MPC_PATCH_LOCAL is not set +# CT_MPC_PATCH_BUNDLED_LOCAL is not set +# CT_MPC_PATCH_LOCAL_BUNDLED is not set +# CT_MPC_PATCH_NONE is not set +CT_MPC_PATCH_ORDER="global" +CT_MPC_V_1_3=y +CT_MPC_VERSION="1.3.1" +CT_MPC_MIRRORS="https://www.multiprecision.org/downloads $(CT_Mirrors GNU mpc)" +CT_MPC_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_MPC_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_MPC_ARCHIVE_FORMATS=".tar.gz" +CT_MPC_SIGNATURE_FORMAT="packed/.sig" +CT_MPC_later_than_1_1_0=y +CT_MPC_1_1_0_or_later=y +CT_COMP_LIBS_MPFR=y +CT_COMP_LIBS_MPFR_PKG_KSYM="MPFR" +CT_MPFR_DIR_NAME="mpfr" +CT_MPFR_PKG_NAME="mpfr" +CT_MPFR_SRC_RELEASE=y +# CT_MPFR_SRC_DEVEL is not set +# CT_MPFR_SRC_CUSTOM is not set +CT_MPFR_PATCH_GLOBAL=y +# CT_MPFR_PATCH_BUNDLED is not set +# CT_MPFR_PATCH_LOCAL is not set +# CT_MPFR_PATCH_BUNDLED_LOCAL is not set +# CT_MPFR_PATCH_LOCAL_BUNDLED is not set +# CT_MPFR_PATCH_NONE is not set +CT_MPFR_PATCH_ORDER="global" +CT_MPFR_V_4_2=y +CT_MPFR_VERSION="4.2.1" +CT_MPFR_MIRRORS="https://www.mpfr.org/mpfr-${CT_MPFR_VERSION} $(CT_Mirrors GNU mpfr)" +CT_MPFR_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_MPFR_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_MPFR_ARCHIVE_FORMATS=".tar.xz .tar.bz2 .tar.gz .zip" +CT_MPFR_SIGNATURE_FORMAT="packed/.asc" +CT_MPFR_later_than_4_0_0=y +CT_MPFR_4_0_0_or_later=y +CT_COMP_LIBS_NCURSES=y +CT_COMP_LIBS_NCURSES_PKG_KSYM="NCURSES" +CT_NCURSES_DIR_NAME="ncurses" +CT_NCURSES_PKG_NAME="ncurses" +CT_NCURSES_SRC_RELEASE=y +# CT_NCURSES_SRC_DEVEL is not set +# CT_NCURSES_SRC_CUSTOM is not set +CT_NCURSES_PATCH_GLOBAL=y +# CT_NCURSES_PATCH_BUNDLED is not set +# CT_NCURSES_PATCH_LOCAL is not set +# CT_NCURSES_PATCH_BUNDLED_LOCAL is not set +# CT_NCURSES_PATCH_LOCAL_BUNDLED is not set +# CT_NCURSES_PATCH_NONE is not set +CT_NCURSES_PATCH_ORDER="global" +CT_NCURSES_V_6_4=y +# CT_NCURSES_V_6_2 is not set +# CT_NCURSES_V_6_1 is not set +# CT_NCURSES_V_6_0 is not set +CT_NCURSES_VERSION="6.4" +CT_NCURSES_MIRRORS="https://invisible-mirror.net/archives/ncurses $(CT_Mirrors GNU ncurses)" +CT_NCURSES_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_NCURSES_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_NCURSES_ARCHIVE_FORMATS=".tar.gz" +CT_NCURSES_SIGNATURE_FORMAT="packed/.sig" +CT_NCURSES_NEW_ABI=y +CT_NCURSES_HOST_CONFIG_ARGS="" +CT_NCURSES_HOST_DISABLE_DB=y +CT_NCURSES_HOST_FALLBACKS="linux,xterm,xterm-color,xterm-256color,vt100" +CT_NCURSES_TARGET_CONFIG_ARGS="" +# CT_NCURSES_TARGET_DISABLE_DB is not set +CT_NCURSES_TARGET_FALLBACKS="" +CT_COMP_LIBS_ZLIB=y +CT_COMP_LIBS_ZLIB_PKG_KSYM="ZLIB" +CT_ZLIB_DIR_NAME="zlib" +CT_ZLIB_PKG_NAME="zlib" +CT_ZLIB_SRC_RELEASE=y +# CT_ZLIB_SRC_DEVEL is not set +# CT_ZLIB_SRC_CUSTOM is not set +CT_ZLIB_PATCH_GLOBAL=y +# CT_ZLIB_PATCH_BUNDLED is not set +# CT_ZLIB_PATCH_LOCAL is not set +# CT_ZLIB_PATCH_BUNDLED_LOCAL is not set +# CT_ZLIB_PATCH_LOCAL_BUNDLED is not set +# CT_ZLIB_PATCH_NONE is not set +CT_ZLIB_PATCH_ORDER="global" +CT_ZLIB_V_1_3_1=y +# CT_ZLIB_V_1_2_13 is not set +CT_ZLIB_VERSION="1.3.1" +CT_ZLIB_MIRRORS="https://github.com/madler/zlib/releases/download/v${CT_ZLIB_VERSION} https://www.zlib.net/" +CT_ZLIB_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_ZLIB_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_ZLIB_ARCHIVE_FORMATS=".tar.xz .tar.gz" +CT_ZLIB_SIGNATURE_FORMAT="packed/.asc" +CT_COMP_LIBS_ZSTD=y +CT_COMP_LIBS_ZSTD_PKG_KSYM="ZSTD" +CT_ZSTD_DIR_NAME="zstd" +CT_ZSTD_PKG_NAME="zstd" +CT_ZSTD_SRC_RELEASE=y +# CT_ZSTD_SRC_DEVEL is not set +# CT_ZSTD_SRC_CUSTOM is not set +CT_ZSTD_PATCH_GLOBAL=y +# CT_ZSTD_PATCH_BUNDLED is not set +# CT_ZSTD_PATCH_LOCAL is not set +# CT_ZSTD_PATCH_BUNDLED_LOCAL is not set +# CT_ZSTD_PATCH_LOCAL_BUNDLED is not set +# CT_ZSTD_PATCH_NONE is not set +CT_ZSTD_PATCH_ORDER="global" +CT_ZSTD_V_1_5_6=y +# CT_ZSTD_V_1_5_5 is not set +# CT_ZSTD_V_1_5_2 is not set +CT_ZSTD_VERSION="1.5.6" +CT_ZSTD_MIRRORS="https://github.com/facebook/zstd/releases/download/v${CT_ZSTD_VERSION} https://www.zstd.net/" +CT_ZSTD_ARCHIVE_FILENAME="@{pkg_name}-@{version}" +CT_ZSTD_ARCHIVE_DIRNAME="@{pkg_name}-@{version}" +CT_ZSTD_ARCHIVE_FORMATS=".tar.gz" +CT_ZSTD_SIGNATURE_FORMAT="packed/.sig" +CT_ALL_COMP_LIBS_CHOICES="CLOOG EXPAT GETTEXT GMP GNUPRUMCU ISL LIBELF LIBICONV MPC MPFR NCURSES NEWLIB_NANO PICOLIBC ZLIB ZSTD" +CT_LIBICONV_NEEDED=y +CT_GETTEXT_NEEDED=y +CT_GMP_NEEDED=y +CT_MPFR_NEEDED=y +CT_ISL_NEEDED=y +CT_MPC_NEEDED=y +CT_NCURSES_NEEDED=y +CT_ZLIB_NEEDED=y +CT_ZSTD_NEEDED=y +CT_LIBICONV=y +CT_GETTEXT=y +CT_GMP=y +CT_MPFR=y +CT_ISL=y +CT_MPC=y +CT_NCURSES=y +CT_ZLIB=y +CT_ZSTD=y +# end of Companion libraries + +# +# Companion tools +# +# CT_COMP_TOOLS_FOR_HOST is not set +# CT_COMP_TOOLS_AUTOCONF is not set +# CT_COMP_TOOLS_AUTOMAKE is not set +# CT_COMP_TOOLS_BISON is not set +# CT_COMP_TOOLS_DTC is not set +# CT_COMP_TOOLS_LIBTOOL is not set +# CT_COMP_TOOLS_M4 is not set +# CT_COMP_TOOLS_MAKE is not set +CT_ALL_COMP_TOOLS_CHOICES="AUTOCONF AUTOMAKE BISON DTC LIBTOOL M4 MAKE" +# end of Companion tools + +# +# Test suite +# +# CT_TEST_SUITE_GCC is not set +# end of Test suite diff --git a/musllinux_1_2/loongarch64/Dockerfile b/musllinux_1_2/loongarch64/Dockerfile new file mode 100644 index 0000000..15f2ad3 --- /dev/null +++ b/musllinux_1_2/loongarch64/Dockerfile @@ -0,0 +1,240 @@ + +FROM ubuntu:22.04 AS toolchain + +ENV DEBIAN_FRONTEND noninteractive + +RUN apt-get update && \ + apt-get install --no-install-recommends -y \ + automake \ + bison \ + bzip2 \ + ca-certificates \ + cmake \ + curl \ + file \ + flex \ + g++ \ + gawk \ + gdb \ + git \ + gperf \ + help2man \ + libncurses-dev \ + libssl-dev \ + libtool-bin \ + lzip \ + make \ + ninja-build \ + patch \ + pkg-config \ + python3 \ + rsync \ + sudo \ + texinfo \ + unzip \ + wget \ + xz-utils \ + libssl-dev \ + libffi-dev + +# Install crosstool-ng +RUN curl -Lf https://github.com/crosstool-ng/crosstool-ng/archive/crosstool-ng-1.27.0.tar.gz | tar xzf - && \ + cd crosstool-ng-crosstool-ng-1.27.0 && \ + ./bootstrap && \ + ./configure --prefix=/usr/local && \ + make -j4 && \ + make install && \ + cd .. && rm -rf crosstool-ng-* + +COPY .config /tmp/toolchain.config + +# Build cross compiler +RUN mkdir build && \ + cd build && \ + cp /tmp/toolchain.config .config && \ + export CT_ALLOW_BUILD_AS_ROOT_SURE=1 && \ + ct-ng build.2 || { tail -n 500 build.log; exit $ERRCODE; } && \ + cd .. && \ + rm -rf build + +FROM ubuntu:22.04 + +# Copy cross toolchain +COPY --from=toolchain /usr/loongarch64-unknown-linux-musl /usr/loongarch64-unknown-linux-musl + +ENV DEBIAN_FRONTEND noninteractive +ENV PATH=$PATH:/usr/loongarch64-unknown-linux-musl/bin + +ENV CC_loongarch64_unknown_linux_musl=loongarch64-unknown-linux-musl-gcc \ + AR_loongarch64_unknown_linux_musl=loongarch64-unknown-linux-musl-ar \ + CXX_loongarch64_unknown_linux_musl=loongarch64-unknown-linux-musl-g++ + +ENV TARGET_CC=loongarch64-unknown-linux-musl-gcc \ + TARGET_AR=loongarch64-unknown-linux-musl-ar \ + TARGET_RANLIB=loongarch64-unknown-linux-musl-ranlib \ + TARGET_CXX=loongarch64-unknown-linux-musl-g++ \ + TARGET_READELF=loongarch64-unknown-linux-musl-readelf \ + TARGET_SYSROOT=/usr/loongarch64-unknown-linux-musl/loongarch64-unknown-linux-musl/sysroot/ \ + TARGET_C_INCLUDE_PATH=/usr/loongarch64-unknown-linux-musl/loongarch64-unknown-linux-musl/sysroot/usr/include/ + +ENV CARGO_BUILD_TARGET=loongarch64-unknown-linux-musl +ENV CARGO_TARGET_LOONGARCH64_UNKNOWN_LINUX_MUSL_LINKER=loongarch64-unknown-linux-musl-gcc +ENV CARGO_TARGET_LOONGARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS='-C target-feature=+crt-static' +RUN echo "set(CMAKE_SYSTEM_NAME Linux)\nset(CMAKE_SYSTEM_PROCESSOR loongarch64)\nset(CMAKE_SYSROOT /usr/loongarch64-unknown-linux-musl/loongarch64-unknown-linux-musl/sysroot/)\nset(CMAKE_C_COMPILER loongarch64-unknown-linux-musl-gcc)\nset(CMAKE_CXX_COMPILER loongarch64-unknown-linux-musl-g++)" > /usr/loongarch64-unknown-linux-musl/cmake-toolchain.cmake +ENV TARGET_CMAKE_TOOLCHAIN_FILE_PATH=/usr/loongarch64-unknown-linux-musl/cmake-toolchain.cmake + + +RUN echo 'Acquire::Retries "3";' > /etc/apt/apt.conf.d/80-retries && \ + apt-get update && \ + apt-get install --no-install-recommends -y \ + curl \ + git \ + g++ \ + make \ + sudo \ + wget \ + software-properties-common \ + gpg-agent \ + cmake \ + llvm-dev \ + libclang-dev \ + clang + +ENV LOONGARCH64_UNKNOWN_LINUX_MUSL_OPENSSL_DIR=/usr/loongarch64-unknown-linux-musl/ +RUN add-apt-repository -y ppa:deadsnakes/ppa && \ + apt-get update && \ + apt-get install -y \ + python3.7 python3.7-venv python3.7-dev \ + python3.8 python3.8-venv python3.8-dev \ + python3.9 python3.9-venv python3.9-dev \ + python3.11 python3.11-venv python3.11-dev \ + python3.12 python3.12-venv python3.12-dev \ + python3.13 python3.13-venv python3.13-dev \ + python3 python3-venv python3-dev python-is-python3 + +RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else export PYPY_ARCH="aarch64"; fi && \ + mkdir -p /usr/local/pypy/pypy3.7 && \ + curl -sqL https://downloads.python.org/pypy/pypy3.7-v7.3.9-$PYPY_ARCH.tar.bz2 | tar xjf - -C /usr/local/pypy/pypy3.7 --strip-components=1 && \ + ln -s /usr/local/pypy/pypy3.7/bin/pypy /usr/local/bin/pypy3.7 && \ + mkdir -p /usr/local/pypy/pypy3.8 && \ + curl -sqL https://downloads.python.org/pypy/pypy3.8-v7.3.11-$PYPY_ARCH.tar.bz2 | tar xjf - -C /usr/local/pypy/pypy3.8 --strip-components=1 && \ + ln -s /usr/local/pypy/pypy3.8/bin/pypy /usr/local/bin/pypy3.8 && \ + mkdir -p /usr/local/pypy/pypy3.9 && \ + curl -sqL https://downloads.python.org/pypy/pypy3.9-v7.3.12-$PYPY_ARCH.tar.bz2 | tar xjf - -C /usr/local/pypy/pypy3.9 --strip-components=1 && \ + ln -s /usr/local/pypy/pypy3.9/bin/pypy /usr/local/bin/pypy3.9 && \ + mkdir -p /usr/local/pypy/pypy3.10 && \ + curl -sqL https://downloads.python.org/pypy/pypy3.10-v7.3.12-$PYPY_ARCH.tar.bz2 | tar xjf - -C /usr/local/pypy/pypy3.10 --strip-components=1 && \ + ln -s /usr/local/pypy/pypy3.10/bin/pypy /usr/local/bin/pypy3.10 + + +RUN mkdir -p /opt/python + +RUN cd /tmp && \ + VERS=3.7.17 && PREFIX=/opt/python/cp37-cp37m && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.sub' && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.guess' && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.8.20 && PREFIX=/opt/python/cp38-cp38 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.sub' && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.guess' && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete + +RUN cd /tmp && \ + VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ + tar xzf Python-$VERS.tgz && cd Python-$VERS && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no ac_cv_libatomic_needed=yes && \ + make -j4 && make -j4 install && \ + cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ + # we don't need libpython*.a, and they're many megabytes + find $PREFIX -name '*.a' -print0 | xargs -0 rm -f && \ + # We do not need the Python test suites + find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ + # We do not need precompiled .pyc and .pyo files. + find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete +RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ + for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ + curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ + for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ + for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ + python3 -m pip --version && \ + python3 -m pip install --no-cache-dir auditwheel patchelf build && \ + python3 -m pip install --no-cache-dir auditwheel-symbols From e28594023dd22425491d265ba95621a98eed6a3f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E5=B0=8F=E7=99=BD?= <296015668@qq.com> Date: Sat, 17 May 2025 14:32:42 +0800 Subject: [PATCH 2/3] Update python versions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 吴小白 <296015668@qq.com> --- Dockerfile.j2 | 31 ++++++++++++++++++--------- manylinux2014/aarch64/Dockerfile | 21 +++++++++++++----- manylinux2014/armv7l/Dockerfile | 31 ++++++++++++++++++--------- manylinux2014/i686/Dockerfile | 21 +++++++++++++----- manylinux2014/ppc64/Dockerfile | 31 ++++++++++++++++++--------- manylinux2014/ppc64le/Dockerfile | 21 +++++++++++++----- manylinux2014/s390x/Dockerfile | 21 +++++++++++++----- manylinux2014/x86_64/Dockerfile | 21 +++++++++++++----- manylinux_2_28/aarch64/Dockerfile | 21 +++++++++++++----- manylinux_2_28/armv7l/Dockerfile | 31 ++++++++++++++++++--------- manylinux_2_28/ppc64le/Dockerfile | 21 +++++++++++++----- manylinux_2_28/s390x/Dockerfile | 31 ++++++++++++++++++--------- manylinux_2_28/x86_64/Dockerfile | 21 +++++++++++++----- manylinux_2_31/riscv64/Dockerfile | 31 ++++++++++++++++++--------- manylinux_2_36/loongarch64/Dockerfile | 31 ++++++++++++++++++--------- musllinux_1_2/aarch64/Dockerfile | 21 +++++++++++++----- musllinux_1_2/armv7l/Dockerfile | 31 ++++++++++++++++++--------- musllinux_1_2/i686/Dockerfile | 21 +++++++++++++----- musllinux_1_2/loongarch64/Dockerfile | 31 ++++++++++++++++++--------- musllinux_1_2/x86_64/Dockerfile | 21 +++++++++++++----- 20 files changed, 365 insertions(+), 145 deletions(-) diff --git a/Dockerfile.j2 b/Dockerfile.j2 index 611a967..c7100f6 100644 --- a/Dockerfile.j2 +++ b/Dockerfile.j2 @@ -181,7 +181,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -198,7 +198,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -215,7 +215,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -232,7 +232,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -249,7 +249,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -265,11 +265,22 @@ RUN cd /tmp && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete {%- endif %} -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/aarch64/Dockerfile b/manylinux2014/aarch64/Dockerfile index 71bfba6..5a27bfb 100644 --- a/manylinux2014/aarch64/Dockerfile +++ b/manylinux2014/aarch64/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/armv7l/Dockerfile b/manylinux2014/armv7l/Dockerfile index 4e8458e..cf5e6f6 100644 --- a/manylinux2014/armv7l/Dockerfile +++ b/manylinux2014/armv7l/Dockerfile @@ -157,7 +157,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -172,7 +172,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -187,7 +187,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -202,7 +202,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -217,7 +217,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -230,11 +230,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/i686/Dockerfile b/manylinux2014/i686/Dockerfile index 1d47f52..8d179ea 100644 --- a/manylinux2014/i686/Dockerfile +++ b/manylinux2014/i686/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/ppc64/Dockerfile b/manylinux2014/ppc64/Dockerfile index 4ce0f93..c7959f0 100644 --- a/manylinux2014/ppc64/Dockerfile +++ b/manylinux2014/ppc64/Dockerfile @@ -155,7 +155,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -169,7 +169,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -183,7 +183,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -197,7 +197,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -211,7 +211,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -223,11 +223,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/ppc64le/Dockerfile b/manylinux2014/ppc64le/Dockerfile index bf7495b..9e2df18 100644 --- a/manylinux2014/ppc64le/Dockerfile +++ b/manylinux2014/ppc64le/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/s390x/Dockerfile b/manylinux2014/s390x/Dockerfile index 1840ce3..a724ab1 100644 --- a/manylinux2014/s390x/Dockerfile +++ b/manylinux2014/s390x/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux2014/x86_64/Dockerfile b/manylinux2014/x86_64/Dockerfile index 26fac08..7820ff8 100644 --- a/manylinux2014/x86_64/Dockerfile +++ b/manylinux2014/x86_64/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_28/aarch64/Dockerfile b/manylinux_2_28/aarch64/Dockerfile index 5ae643c..6fc82b0 100644 --- a/manylinux_2_28/aarch64/Dockerfile +++ b/manylinux_2_28/aarch64/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_28/armv7l/Dockerfile b/manylinux_2_28/armv7l/Dockerfile index 5bc67c5..533db2b 100644 --- a/manylinux_2_28/armv7l/Dockerfile +++ b/manylinux_2_28/armv7l/Dockerfile @@ -157,7 +157,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -172,7 +172,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -187,7 +187,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -202,7 +202,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -217,7 +217,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -230,11 +230,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_28/ppc64le/Dockerfile b/manylinux_2_28/ppc64le/Dockerfile index 4321c72..741985d 100644 --- a/manylinux_2_28/ppc64le/Dockerfile +++ b/manylinux_2_28/ppc64le/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_28/s390x/Dockerfile b/manylinux_2_28/s390x/Dockerfile index 135ccd1..8fc8d58 100644 --- a/manylinux_2_28/s390x/Dockerfile +++ b/manylinux_2_28/s390x/Dockerfile @@ -155,7 +155,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -169,7 +169,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -183,7 +183,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -197,7 +197,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -211,7 +211,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -223,11 +223,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_28/x86_64/Dockerfile b/manylinux_2_28/x86_64/Dockerfile index 281b649..274b128 100644 --- a/manylinux_2_28/x86_64/Dockerfile +++ b/manylinux_2_28/x86_64/Dockerfile @@ -127,11 +127,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=manylinux /opt/_internal /opt/_internal COPY --from=manylinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/manylinux_2_31/riscv64/Dockerfile b/manylinux_2_31/riscv64/Dockerfile index e5652c3..0dcb458 100644 --- a/manylinux_2_31/riscv64/Dockerfile +++ b/manylinux_2_31/riscv64/Dockerfile @@ -159,7 +159,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=riscv64-unknown-linux-gnu --target=riscv64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -173,7 +173,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=riscv64-unknown-linux-gnu --target=riscv64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -187,7 +187,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=riscv64-unknown-linux-gnu --target=riscv64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -201,7 +201,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=riscv64-unknown-linux-gnu --target=riscv64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -215,7 +215,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=riscv64-unknown-linux-gnu --target=riscv64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no ac_cv_libatomic_needed=yes && \ @@ -227,11 +227,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_36/loongarch64/Dockerfile b/manylinux_2_36/loongarch64/Dockerfile index 7844621..d62100c 100644 --- a/manylinux_2_36/loongarch64/Dockerfile +++ b/manylinux_2_36/loongarch64/Dockerfile @@ -161,7 +161,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-gnu --target=loongarch64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -175,7 +175,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-gnu --target=loongarch64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -189,7 +189,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-gnu --target=loongarch64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -203,7 +203,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-gnu --target=loongarch64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -217,7 +217,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-gnu --target=loongarch64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no ac_cv_libatomic_needed=yes && \ @@ -229,11 +229,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/musllinux_1_2/aarch64/Dockerfile b/musllinux_1_2/aarch64/Dockerfile index 747dcb5..15744bf 100644 --- a/musllinux_1_2/aarch64/Dockerfile +++ b/musllinux_1_2/aarch64/Dockerfile @@ -48,11 +48,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=musllinux /opt/_internal /opt/_internal COPY --from=musllinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/musllinux_1_2/armv7l/Dockerfile b/musllinux_1_2/armv7l/Dockerfile index f2c7275..5b348c5 100644 --- a/musllinux_1_2/armv7l/Dockerfile +++ b/musllinux_1_2/armv7l/Dockerfile @@ -79,7 +79,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -94,7 +94,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -109,7 +109,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -124,7 +124,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -139,7 +139,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -152,11 +152,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/musllinux_1_2/i686/Dockerfile b/musllinux_1_2/i686/Dockerfile index abb27a8..3570e29 100644 --- a/musllinux_1_2/i686/Dockerfile +++ b/musllinux_1_2/i686/Dockerfile @@ -48,11 +48,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=musllinux /opt/_internal /opt/_internal COPY --from=musllinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file diff --git a/musllinux_1_2/loongarch64/Dockerfile b/musllinux_1_2/loongarch64/Dockerfile index 15f2ad3..574cb5c 100644 --- a/musllinux_1_2/loongarch64/Dockerfile +++ b/musllinux_1_2/loongarch64/Dockerfile @@ -162,7 +162,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.9.20 && PREFIX=/opt/python/cp39-cp39 && \ + VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -176,7 +176,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.10.15 && PREFIX=/opt/python/cp310-cp310 && \ + VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -190,7 +190,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.11.10 && PREFIX=/opt/python/cp311-cp311 && \ + VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -204,7 +204,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.12.7 && PREFIX=/opt/python/cp312-cp312 && \ + VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ @@ -218,7 +218,7 @@ RUN cd /tmp && \ find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete RUN cd /tmp && \ - VERS=3.13.0 && PREFIX=/opt/python/cp313-cp313 && \ + VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=loongarch64-unknown-linux-musl --target=loongarch64-unknown-linux-musl --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no ac_cv_libatomic_needed=yes && \ @@ -230,11 +230,22 @@ RUN cd /tmp && \ find $PREFIX -depth \( -type d -a -name test -o -name tests \) | xargs rm -rf && \ # We do not need precompiled .pyc and .pyo files. find $PREFIX -type f -a \( -name '*.pyc' -o -name '*.pyo' \) -delete -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/musllinux_1_2/x86_64/Dockerfile b/musllinux_1_2/x86_64/Dockerfile index 5a4d96e..1bddafe 100644 --- a/musllinux_1_2/x86_64/Dockerfile +++ b/musllinux_1_2/x86_64/Dockerfile @@ -48,11 +48,22 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor COPY --from=musllinux /opt/_internal /opt/_internal COPY --from=musllinux /opt/python /opt/python -RUN curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "python3.7" && \ - for VER in 3.13 3.12 3.11 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; done && \ - curl -sS https://bootstrap.pypa.io/pip/3.7/get-pip.py | "pypy3.7" && \ - for VER in 3.8 3.9 3.10; do curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; done && \ - for VER in 3.13 3.12 3.11 3.7 3.8 3.9 3.10; do "python$VER" -m pip install --no-cache-dir cffi; done && \ +RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ + case $VER in \ + 3.7|3.8) \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/pip/$VER/get-pip.py | "pypy$VER"; \ + ;; \ + 3.9|3.10) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "pypy$VER"; \ + ;; \ + 3.11|3.12|3.13) \ + curl -sS https://bootstrap.pypa.io/get-pip.py | "python$VER"; \ + ;; \ + esac && \ + "python$VER" -m pip install --no-cache-dir cffi; \ + done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file From 814f29c1c582fe7204032edd6ef705ee2a34e495 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=90=B4=E5=B0=8F=E7=99=BD?= <296015668@qq.com> Date: Sat, 17 May 2025 18:56:52 +0800 Subject: [PATCH 3/3] Update render.py MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 吴小白 <296015668@qq.com> --- Dockerfile.j2 | 34 ++++++++++++++++++++-------- manylinux2014/aarch64/Dockerfile | 4 +++- manylinux2014/armv7l/Dockerfile | 6 +++-- manylinux2014/i686/Dockerfile | 4 +++- manylinux2014/ppc64/Dockerfile | 6 +++-- manylinux2014/ppc64le/Dockerfile | 4 +++- manylinux2014/s390x/Dockerfile | 4 +++- manylinux2014/x86_64/Dockerfile | 4 +++- manylinux_2_28/aarch64/Dockerfile | 4 +++- manylinux_2_28/armv7l/Dockerfile | 6 +++-- manylinux_2_28/ppc64le/Dockerfile | 4 +++- manylinux_2_28/s390x/Dockerfile | 6 +++-- manylinux_2_28/x86_64/Dockerfile | 4 +++- manylinux_2_31/riscv64/Dockerfile | 3 ++- musllinux_1_2/aarch64/Dockerfile | 4 ++-- musllinux_1_2/armv7l/Dockerfile | 16 ++++++------- musllinux_1_2/i686/Dockerfile | 2 +- musllinux_1_2/loongarch64/Dockerfile | 1 - musllinux_1_2/x86_64/Dockerfile | 2 +- render.py | 28 ++++++++++++++++++++--- 20 files changed, 104 insertions(+), 42 deletions(-) diff --git a/Dockerfile.j2 b/Dockerfile.j2 index c7100f6..c2a1456 100644 --- a/Dockerfile.j2 +++ b/Dockerfile.j2 @@ -34,11 +34,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -50,6 +52,11 @@ RUN apt-get update && \ # Install crosstool-ng RUN curl -Lf https://github.com/crosstool-ng/crosstool-ng/archive/{{ ct_ng_version }}.tar.gz | tar xzf - && \ cd crosstool-ng-{{ ct_ng_version }} && \ + {% if target.startswith('riscv64-') -%} + # Backport https://github.com/crosstool-ng/crosstool-ng/pull/{2315,2316} to fix build + curl -Lf https://github.com/crosstool-ng/crosstool-ng/pull/2315.patch | patch -Np1 && \ + curl -Lf https://github.com/crosstool-ng/crosstool-ng/pull/2316.patch | patch -Np1 && \ + {% endif -%} ./bootstrap && \ ./configure --prefix=/usr/local && \ make -j4 && \ @@ -87,8 +94,8 @@ ENV TARGET_CC={{ target }}-gcc \ TARGET_SYSROOT=/usr/{{ target }}/{{ target }}/sysroot/ \ TARGET_C_INCLUDE_PATH=/usr/{{ target }}/{{ target }}/sysroot/usr/include/ -ENV CARGO_BUILD_TARGET={{ target | replace('ibm', 'unknown') }} -ENV CARGO_TARGET_{{ target | replace('ibm', 'unknown') | replace('-', '_') | upper }}_LINKER={{ target }}-gcc +ENV CARGO_BUILD_TARGET={{ target | replace('ibm', 'unknown') | replace('riscv64', 'riscv64gc') }} +ENV CARGO_TARGET_{{ target | replace('ibm', 'unknown') | replace('-', '_') | replace('riscv64', 'riscv64gc') | upper }}_LINKER={{ target }}-gcc RUN echo "set(CMAKE_SYSTEM_NAME Linux)\nset(CMAKE_SYSTEM_PROCESSOR {{ cmake_arch | default(arch) }})\nset(CMAKE_SYSROOT /usr/{{ target }}/{{ target }}/sysroot/)\nset(CMAKE_C_COMPILER {{ target }}-gcc)\nset(CMAKE_CXX_COMPILER {{ target }}-g++)" > /usr/{{ target }}/cmake-toolchain.cmake ENV TARGET_CMAKE_TOOLCHAIN_FILE_PATH=/usr/{{ target }}/cmake-toolchain.cmake {% endif %} @@ -150,7 +157,11 @@ RUN cd /tmp && \ VERS=3.7.17 && PREFIX=/opt/python/cp37-cp37m && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + {% if target.startswith('loongarch64-') -%} + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.sub' && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.guess' && \ + {% endif -%} + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -167,7 +178,11 @@ RUN cd /tmp && \ VERS=3.8.20 && PREFIX=/opt/python/cp38-cp38 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + {% if target.startswith('loongarch64-') -%} + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.sub' && \ + curl -LO 'https://git.savannah.gnu.org/cgit/config.git/plain/config.guess' && \ + {% endif -%} + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -184,7 +199,7 @@ RUN cd /tmp && \ VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -201,7 +216,7 @@ RUN cd /tmp && \ VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -218,7 +233,7 @@ RUN cd /tmp && \ VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -235,7 +250,7 @@ RUN cd /tmp && \ VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -252,7 +267,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host={{ python_target }} --target={{ python_target }} --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-{{ 'linux-gnu' if platform.startswith('manylinux') else 'linux-musl' }} --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no {{ 'ac_cv_libatomic_needed=yes' if 'riscv64' in target or 'loongarch64' in target }} && \ {% if target.startswith('armv7-') -%} sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ {% endif -%} @@ -284,3 +299,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ python3 -m pip install --no-cache-dir auditwheel-symbols + diff --git a/manylinux2014/aarch64/Dockerfile b/manylinux2014/aarch64/Dockerfile index 5a27bfb..7b53145 100644 --- a/manylinux2014/aarch64/Dockerfile +++ b/manylinux2014/aarch64/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/armv7l/Dockerfile b/manylinux2014/armv7l/Dockerfile index cf5e6f6..a8e79ed 100644 --- a/manylinux2014/armv7l/Dockerfile +++ b/manylinux2014/armv7l/Dockerfile @@ -22,11 +22,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -220,7 +222,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -248,4 +250,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/i686/Dockerfile b/manylinux2014/i686/Dockerfile index 8d179ea..d4a8ab0 100644 --- a/manylinux2014/i686/Dockerfile +++ b/manylinux2014/i686/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/ppc64/Dockerfile b/manylinux2014/ppc64/Dockerfile index c7959f0..7ba4606 100644 --- a/manylinux2014/ppc64/Dockerfile +++ b/manylinux2014/ppc64/Dockerfile @@ -22,11 +22,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -214,7 +216,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=powerpc64-unknown-linux-gnu --target=powerpc64-unknown-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ # we don't need libpython*.a, and they're many megabytes @@ -241,4 +243,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/ppc64le/Dockerfile b/manylinux2014/ppc64le/Dockerfile index 9e2df18..d52d1c1 100644 --- a/manylinux2014/ppc64le/Dockerfile +++ b/manylinux2014/ppc64le/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/s390x/Dockerfile b/manylinux2014/s390x/Dockerfile index a724ab1..5e20270 100644 --- a/manylinux2014/s390x/Dockerfile +++ b/manylinux2014/s390x/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux2014/x86_64/Dockerfile b/manylinux2014/x86_64/Dockerfile index 7820ff8..b65f333 100644 --- a/manylinux2014/x86_64/Dockerfile +++ b/manylinux2014/x86_64/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_28/aarch64/Dockerfile b/manylinux_2_28/aarch64/Dockerfile index 6fc82b0..df84eed 100644 --- a/manylinux_2_28/aarch64/Dockerfile +++ b/manylinux_2_28/aarch64/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_28/armv7l/Dockerfile b/manylinux_2_28/armv7l/Dockerfile index 533db2b..f490220 100644 --- a/manylinux_2_28/armv7l/Dockerfile +++ b/manylinux_2_28/armv7l/Dockerfile @@ -22,11 +22,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -220,7 +222,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -248,4 +250,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_28/ppc64le/Dockerfile b/manylinux_2_28/ppc64le/Dockerfile index 741985d..1aed057 100644 --- a/manylinux_2_28/ppc64le/Dockerfile +++ b/manylinux_2_28/ppc64le/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_28/s390x/Dockerfile b/manylinux_2_28/s390x/Dockerfile index 8fc8d58..42c4ea1 100644 --- a/manylinux_2_28/s390x/Dockerfile +++ b/manylinux_2_28/s390x/Dockerfile @@ -22,11 +22,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -214,7 +216,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=s390x-ibm-linux-gnu --target=s390x-ibm-linux-gnu --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ # we don't need libpython*.a, and they're many megabytes @@ -241,4 +243,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_28/x86_64/Dockerfile b/manylinux_2_28/x86_64/Dockerfile index 274b128..88f6906 100644 --- a/manylinux_2_28/x86_64/Dockerfile +++ b/manylinux_2_28/x86_64/Dockerfile @@ -23,11 +23,13 @@ RUN apt-get update && \ libncurses-dev \ libssl-dev \ libtool-bin \ + lzip \ make \ ninja-build \ patch \ pkg-config \ python3 \ + rsync \ sudo \ texinfo \ unzip \ @@ -145,4 +147,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/manylinux_2_31/riscv64/Dockerfile b/manylinux_2_31/riscv64/Dockerfile index 0dcb458..fedc10f 100644 --- a/manylinux_2_31/riscv64/Dockerfile +++ b/manylinux_2_31/riscv64/Dockerfile @@ -38,9 +38,9 @@ RUN apt-get update && \ libffi-dev # Install crosstool-ng -# Backport https://github.com/crosstool-ng/crosstool-ng/pull/{2315,2316} to fix build RUN curl -Lf https://github.com/crosstool-ng/crosstool-ng/archive/crosstool-ng-1.27.0.tar.gz | tar xzf - && \ cd crosstool-ng-crosstool-ng-1.27.0 && \ + # Backport https://github.com/crosstool-ng/crosstool-ng/pull/{2315,2316} to fix build curl -Lf https://github.com/crosstool-ng/crosstool-ng/pull/2315.patch | patch -Np1 && \ curl -Lf https://github.com/crosstool-ng/crosstool-ng/pull/2316.patch | patch -Np1 && \ ./bootstrap && \ @@ -128,6 +128,7 @@ RUN if [ "$(uname -m)" = "x86_64" ]; then export PYPY_ARCH="linux64"; else expor curl -sqL https://downloads.python.org/pypy/pypy3.10-v7.3.12-$PYPY_ARCH.tar.bz2 | tar xjf - -C /usr/local/pypy/pypy3.10 --strip-components=1 && \ ln -s /usr/local/pypy/pypy3.10/bin/pypy /usr/local/bin/pypy3.10 + RUN mkdir -p /opt/python RUN cd /tmp && \ diff --git a/musllinux_1_2/aarch64/Dockerfile b/musllinux_1_2/aarch64/Dockerfile index 15744bf..8952ac9 100644 --- a/musllinux_1_2/aarch64/Dockerfile +++ b/musllinux_1_2/aarch64/Dockerfile @@ -2,7 +2,7 @@ FROM quay.io/pypa/musllinux_1_1_aarch64 as musllinux FROM messense/rust-musl-cross:aarch64-musl -ENV TARGET_READELF=aarch64-unknown-linux-gnu-readelf +ENV TARGET_READELF=aarch64-unknown-linux-musl-readelf RUN echo 'Acquire::Retries "3";' > /etc/apt/apt.conf.d/80-retries && \ apt-get update && \ @@ -66,4 +66,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/musllinux_1_2/armv7l/Dockerfile b/musllinux_1_2/armv7l/Dockerfile index 5b348c5..e5be24d 100644 --- a/musllinux_1_2/armv7l/Dockerfile +++ b/musllinux_1_2/armv7l/Dockerfile @@ -52,7 +52,7 @@ RUN cd /tmp && \ VERS=3.7.17 && PREFIX=/opt/python/cp37-cp37m && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -67,7 +67,7 @@ RUN cd /tmp && \ VERS=3.8.20 && PREFIX=/opt/python/cp38-cp38 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -82,7 +82,7 @@ RUN cd /tmp && \ VERS=3.9.22 && PREFIX=/opt/python/cp39-cp39 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -97,7 +97,7 @@ RUN cd /tmp && \ VERS=3.10.17 && PREFIX=/opt/python/cp310-cp310 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -112,7 +112,7 @@ RUN cd /tmp && \ VERS=3.11.12 && PREFIX=/opt/python/cp311-cp311 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.11 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -127,7 +127,7 @@ RUN cd /tmp && \ VERS=3.12.10 && PREFIX=/opt/python/cp312-cp312 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.12 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -142,7 +142,7 @@ RUN cd /tmp && \ VERS=3.13.3 && PREFIX=/opt/python/cp313-cp313 && \ curl -LO https://www.python.org/ftp/python/$VERS/Python-$VERS.tgz && \ tar xzf Python-$VERS.tgz && cd Python-$VERS && \ - ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-gnu --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ + ./configure CC=$TARGET_CC AR=$TARGET_AR READELF=$TARGET_READELF --host=armv7l-unknown-linux-gnueabihf --target=armv7l-unknown-linux-gnueabihf --prefix=$PREFIX --disable-shared --with-build-python=python3.13 --with-ensurepip=no --build=$(uname -m)-linux-musl --disable-ipv6 ac_cv_have_long_long_format=yes ac_cv_file__dev_ptmx=no ac_cv_file__dev_ptc=no && \ sed -i 's/_PYTHON_HOST_PLATFORM=linux-arm/_PYTHON_HOST_PLATFORM=linux-armv7l/' Makefile && \ make -j4 && make -j4 install && \ cd /tmp && rm -rf Python-$VERS.tgz Python-$VERS $PREFIX/share && \ @@ -170,4 +170,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/musllinux_1_2/i686/Dockerfile b/musllinux_1_2/i686/Dockerfile index 3570e29..148447e 100644 --- a/musllinux_1_2/i686/Dockerfile +++ b/musllinux_1_2/i686/Dockerfile @@ -66,4 +66,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/musllinux_1_2/loongarch64/Dockerfile b/musllinux_1_2/loongarch64/Dockerfile index 574cb5c..b78e90f 100644 --- a/musllinux_1_2/loongarch64/Dockerfile +++ b/musllinux_1_2/loongarch64/Dockerfile @@ -79,7 +79,6 @@ ENV TARGET_CC=loongarch64-unknown-linux-musl-gcc \ ENV CARGO_BUILD_TARGET=loongarch64-unknown-linux-musl ENV CARGO_TARGET_LOONGARCH64_UNKNOWN_LINUX_MUSL_LINKER=loongarch64-unknown-linux-musl-gcc -ENV CARGO_TARGET_LOONGARCH64_UNKNOWN_LINUX_MUSL_RUSTFLAGS='-C target-feature=+crt-static' RUN echo "set(CMAKE_SYSTEM_NAME Linux)\nset(CMAKE_SYSTEM_PROCESSOR loongarch64)\nset(CMAKE_SYSROOT /usr/loongarch64-unknown-linux-musl/loongarch64-unknown-linux-musl/sysroot/)\nset(CMAKE_C_COMPILER loongarch64-unknown-linux-musl-gcc)\nset(CMAKE_CXX_COMPILER loongarch64-unknown-linux-musl-g++)" > /usr/loongarch64-unknown-linux-musl/cmake-toolchain.cmake ENV TARGET_CMAKE_TOOLCHAIN_FILE_PATH=/usr/loongarch64-unknown-linux-musl/cmake-toolchain.cmake diff --git a/musllinux_1_2/x86_64/Dockerfile b/musllinux_1_2/x86_64/Dockerfile index 1bddafe..ac56850 100644 --- a/musllinux_1_2/x86_64/Dockerfile +++ b/musllinux_1_2/x86_64/Dockerfile @@ -66,4 +66,4 @@ RUN for VER in 3.7 3.8 3.9 3.10 3.11 3.12 3.13; do \ done && \ python3 -m pip --version && \ python3 -m pip install --no-cache-dir auditwheel patchelf build && \ - python3 -m pip install --no-cache-dir auditwheel-symbols \ No newline at end of file + python3 -m pip install --no-cache-dir auditwheel-symbols diff --git a/render.py b/render.py index 87b42c6..cca6bae 100755 --- a/render.py +++ b/render.py @@ -96,12 +96,28 @@ "target": "s390x-ibm-linux-gnu", }, ], + "manylinux_2_31": [ + { + "arch": "riscv64", + "ct_ng_version": "crosstool-ng-1.27.0", + "toolchain_os": TOOLCHAIN_OS, + "target": "riscv64-unknown-linux-gnu", + }, + ], + "manylinux_2_36": [ + { + "arch": "loongarch64", + "ct_ng_version": "crosstool-ng-1.27.0", + "toolchain_os": TOOLCHAIN_OS, + "target": "loongarch64-unknown-linux-gnu", + }, + ], "musllinux_1_2": [ { "arch": "aarch64", "musllinux": "quay.io/pypa/musllinux_1_1_aarch64", "base": "messense/rust-musl-cross:aarch64-musl", - "target": "aarch64-unknown-linux-gnu", + "target": "aarch64-unknown-linux-musl", }, { "arch": "armv7l", @@ -118,6 +134,12 @@ "musllinux": "quay.io/pypa/musllinux_1_1_x86_64", "base": "messense/rust-musl-cross:x86_64-musl", }, + { + "arch": "loongarch64", + "ct_ng_version": "crosstool-ng-1.27.0", + "toolchain_os": TOOLCHAIN_OS, + "target": "loongarch64-unknown-linux-musl", + }, ], } @@ -137,10 +159,10 @@ def main(): for platform, images in IMAGES.items(): for image in images: arch = image["arch"] - output = template.render(**image) + output = template.render(platform=platform, **image) folder = os.path.join(platform, arch) os.makedirs(folder, exist_ok=True) - with open(os.path.join(folder, "Dockerfile"), "w") as f: + with open(os.path.join(folder, "Dockerfile"), "w", newline='\n') as f: f.write(output)