Add Python-3.11.1

This commit is contained in:
fosslinux 2022-12-25 16:50:49 +11:00
parent d28ea08295
commit 42fa6c24c1
6 changed files with 160 additions and 0 deletions

View File

@ -8,6 +8,7 @@ e25a6388869762a20aac39a67b51e0bdabec852ee41f1224ebac1c35fb6fdf16 Python-3.1.5_1
d0ef6a98b24e036bfd4c72aa6ae24044d85772a661553f0db5d932eef397015a Python-3.3.7_0.tar.bz2
d72f32aee9e492f4f83f84310948193e5720f3e4572c3c98c8180cca3516dfc0 Python-3.4.10_0.tar.bz2
5ebbb2f07cf7707801e2596768e35966e92d346ae386a19c38cfadbd30e3c4ac Python-3.8.16_0.tar.bz2
a178cf90b4ce11396e37925c56e94359a5efba5baf6a159beb901124f64f4ba0 Python-3.11.1_0.tar.bz2
2fde9f584a275efc5c8bf23adaa690e06ab6922ecbc35108731e87f565ddb2b6 autoconf-2.12_0.tar.bz2
40d88d4b1048ab70eaecf753fb77713dfcaa9c9c72252cd36459236034cdcdfd autoconf-2.13_0.tar.bz2
38f0de4c816088c514dbfb1536779f2204426a95bd6f57fa87b83bffefcaa390 autoconf-2.52_0.tar.bz2

View File

@ -0,0 +1,94 @@
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
#
# SPDX-License-Identifier: GPL-3.0-or-later
src_prepare() {
default
# Delete generated files that won't be regenerated
rm Lib/pydoc_data/topics.py \
Misc/stable_abi.toml
# Regenerate ssl_data for ssl module
rm Modules/_ssl_data_300.h Modules/_ssl_data.h
python Tools/ssl/make_ssl_data.py ../openssl-1.1.1l Modules/_ssl_data_111.h
# Regenerate encodings
grep generated -r . -l | grep encodings | xargs rm
mkdir Tools/unicode/in Tools/unicode/out
mv ../CP437.TXT Tools/unicode/in/
pushd Tools/unicode
python gencodec.py in/ ../../Lib/encodings/
popd
# Regenerate stringprep
rm Lib/stringprep.py
mv ../rfc3454.txt .
python Tools/unicode/mkstringprep.py > Lib/stringprep.py
# Regenerate unicode
rm Modules/unicodedata_db.h Modules/unicodename_db.h Objects/unicodetype_db.h
mkdir -p Tools/unicode/data
mv ../*.txt ../*.zip Tools/unicode/data/
python Tools/unicode/makeunicodedata.py
# Regenerate Lib/re/_casefix.py
rm Lib/re/_casefix.py
python Tools/scripts/generate_re_casefix.py Lib/re/_casefix.py
# Regenerate Programs/test_frozenmain.h
rm Programs/test_frozenmain.h
python Programs/freeze_test_frozenmain.py Programs/test_frozenmain.h
# Create dummy Python/stdlib_module_names.h
echo 'static const char* _Py_stdlib_module_names[] = {};' > Python/stdlib_module_names.h
# Regenerate autoconf
autoreconf-2.71 -fi
}
src_configure() {
CPPFLAGS="-U__DATE__ -U__TIME__" \
LDFLAGS="-L/usr/lib/musl" \
./configure \
--prefix="${PREFIX}" \
--libdir="${PREFIX}/lib/musl" \
--with-system-ffi
}
src_compile() {
# Regenerations
# We have to choose the order ourselves because the Makefile is extremely lax about the order
# First of all, do everything that doesn't use any C
rm Modules/_blake2/blake2s_impl.c
make regen-opcode \
regen-opcode-targets \
regen-typeslots \
regen-token \
regen-ast \
regen-keyword \
regen-sre \
clinic \
regen-pegen-metaparser \
regen-pegen \
regen-global-objects
# Do the freeze regen process
make regen-frozen
make regen-deepfreeze
make regen-global-objects
make CPPFLAGS="-U__DATE__ -U__TIME__"
# Regen Python/stdlib_module_names.h (you must have an existing build first)
make regen-stdlib-module-names
# Now rebuild with proper stdlib_module_names.h
make CPPFLAGS="-U__DATE__ -U__TIME__"
}
src_install() {
default
ln -s "${PREFIX}/lib/musl/python3.11/lib-dynload" "${DESTDIR}${PREFIX}/lib/python3.11/lib-dynload"
ln -s "${PREFIX}/bin/python3.11" "${DESTDIR}${PREFIX}/bin/python"
}

View File

@ -0,0 +1,20 @@
SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: PSF-2.0
When defined __DATE__ is in the format MMM DD YYYY. xx/xx/xx does
not comply with this so the parser in Lib/platform.py fails on it.
Upstream PR: https://github.com/python/cpython/pull/100389
--- Modules/getbuildinfo.c 2022-12-21 13:41:18.120573458 +1100
+++ Modules/getbuildinfo.c 2022-12-21 13:41:30.399716652 +1100
@@ -8,7 +8,7 @@
#ifdef __DATE__
#define DATE __DATE__
#else
-#define DATE "xx/xx/xx"
+#define DATE "xxx xx xxxx"
#endif
#endif

View File

@ -0,0 +1,19 @@
SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
SPDX-License-Identifier: PSF-2.0
On x86_64 system our GCC has multiarch a little broken for Python's
build system which doesn't really bother me so just pretend that
there is no multiarch.
--- configure.ac.bak 2022-12-21 19:35:44.560977616 +1100
+++ configure.ac 2022-12-21 19:36:00.735143246 +1100
@@ -1096,7 +1096,7 @@
AS_CASE([$ac_sys_system],
[Darwin*], [MULTIARCH=""],
[FreeBSD*], [MULTIARCH=""],
- [MULTIARCH=$($CC --print-multiarch 2>/dev/null)]
+ [MULTIARCH=""]
)
AC_SUBST([MULTIARCH])
AC_MSG_RESULT([$MULTIARCH])

View File

@ -0,0 +1,24 @@
https://www.python.org/ftp/python/3.11.1/Python-3.11.1.tar.xz 85879192f2cffd56cb16c092905949ebf3e5e394b7f764723529637901dfb58f
http://ftp.unicode.org/Public/3.2-Update/UnicodeData-3.2.0.txt 5e444028b6e76d96f9dc509609c5e3222bf609056f35e5fcde7e6fb8a58cd446
http://ftp.unicode.org/Public/3.2-Update/CompositionExclusions-3.2.0.txt 1d3a450d0f39902710df4972ac4a60ec31fbcb54ffd4d53cd812fc1200c732cb
http://ftp.unicode.org/Public/3.2-Update/EastAsianWidth-3.2.0.txt ce19f35ffca911bf492aab6c0d3f6af3d1932f35d2064cf2fe14e10be29534cb
http://ftp.unicode.org/Public/3.2-Update/DerivedCoreProperties-3.2.0.txt 787419dde91701018d7ad4f47432eaa55af14e3fe3fe140a11e4bbf3db18bb4c
http://ftp.unicode.org/Public/3.2-Update/DerivedNormalizationProps-3.2.0.txt bab49295e5f9064213762447224ccd83cea0cced0db5dcfc96f9c8a935ef67ee
http://ftp.unicode.org/Public/3.2-Update/LineBreak-3.2.0.txt d693ef2a603d07e20b769ef8ba29afca39765588a03e3196294e5be8638ca735
http://ftp.unicode.org/Public/3.2-Update/SpecialCasing-3.2.0.txt 1f7913b74dddff55ee566f6220aa9e465bae6f27709fc21d353b04adb8572b37
http://ftp.unicode.org/Public/3.2-Update/CaseFolding-3.2.0.txt 370f3d1e79a52791c42065946711f4eddb6d9820726afd0e436a3c50360475a9
http://ftp.unicode.org/Public/3.2-Update/Unihan-3.2.0.zip 0582b888c4ebab6e3ce8d340c74788f1a68ca662713a1065b9a007f24bb4fe46
http://ftp.unicode.org/Public/14.0.0/ucd/UnicodeData.txt 36018e68657fdcb3485f636630ffe8c8532e01c977703d2803f5b89d6c5feafb UnicodeData-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/CompositionExclusions.txt 3360762fc3295cea54ab251c31df621d05ba4b94d46c60eaac29aa16d70ad1e0 CompositionExclusions-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/EastAsianWidth.txt f901ac011aa32a09224d6555da71e2532c59c1d3381322829de0e3b880507250 EastAsianWidth-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/DerivedCoreProperties.txt e3eddd7d469cd1b0feed7528defad1a1cc7c6a9ceb0ae4446a6d10921ed2e7bc DerivedCoreProperties-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/DerivedNormalizationProps.txt b2c444c20730b097787fdf50bd7d6dd3fc5256ab8084f5b35b11c8776eca674c DerivedNormalizationProps-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/LineBreak.txt 9e06e9f35c6959fb91dcc7993f90d58523c3079bc62c6b25f828b4cdebc5d70c LineBreak-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/NameAliases.txt 14b3b677d33f95c51423dce6eef4a6a28b4b160451ecedee4b91edb6745cf4a3 NameAliases-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/NamedSequences.txt db5745688affcdc0c3927a1ee0667018a96a7b24513f866d5235e98fef6c2436 NamedSequences-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/SpecialCasing.txt c667b45908fd269af25fd55d2fc5bbc157fb1b77675936e25c513ce32e080334 SpecialCasing-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/CaseFolding.txt a566cd48687b2cd897e02501118b2413c14ae86d318f9abbbba97feb84189f0f CaseFolding-14.0.0.txt
http://ftp.unicode.org/Public/14.0.0/ucd/Unihan.zip 2ae4519b2b82cd4d15379c17e57bfb12c33c0f54da4977de03b2b04bcf11852d Unihan-14.0.0.zip
http://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP437.TXT 6bad4dabcdf5940227c7d81fab130dcb18a77850b5d79de28b5dc4e047b0aaac
https://www.ietf.org/rfc/rfc3454.txt eb722fa698fb7e8823b835d9fd263e4cdb8f1c7b0d234edf7f0e3bd2ccbb2c79
http://artfiles.org/openssl.org/source/old/1.1.1/openssl-1.1.1l.tar.gz 0b7a3e5e59c34827fe0c3a74b7ec8baef302b98fa80088d7f9153aa16fa76bd1

View File

@ -123,6 +123,8 @@ build Python-3.4.10
build Python-3.8.16
build Python-3.11.1
if [ "$FORCE_TIMESTAMPS" = True ] ; then
echo 'Forcing all files timestamps to be 0 unix time.'
canonicalise_all_files_timestamp