mirror of
https://github.com/fosslinux/live-bootstrap.git
synced 2026-03-04 10:25:25 +01:00
Remove the notion of "sys*"
- This idea originates from very early in the project and was, at the
time, a very easy way to categorise things.
- Now, it doesn't really make much sense - it is fairly arbitary, often
occuring when there is a change in kernel, but not from builder-hex0
to fiwix, and sysb is in reality completely unnecessary.
- In short, the sys* stuff is a bit of a mess that makes the project
more difficult to understand.
- This puts everything down into one folder and has a manifest file that
is used to generate the build scripts on the fly rather than using
coded scripts.
- This is created in the "seed" stage.
stage0-posix -- (calls) --> seed -- (generates) --> main steps
Alongside this change there are a variety of other smaller fixups to the
general structure of the live-bootstrap rootfs.
- Creating a rootfs has become much simpler and is defined as code in
go.sh. The new structure, for an about-to-be booted system, is
/
-- /steps (direct copy of steps/)
-- /distfiles (direct copy of distfiles/)
-- all files from seed/*
-- all files from seed/stage0-posix/*
- There is no longer such a thing as /usr/include/musl, this didn't
really make any sense, as musl is the final libc used. Rather, to
separate musl and mes, we have /usr/include/mes, which is much easier
to work with.
- This also makes mes easier to blow away later.
- A few things that weren't properly in packages have been changed;
checksum-transcriber, simple-patch, kexec-fiwix have all been given
fully qualified package names.
- Highly breaking change, scripts now exist in their package directory
but NOT WITH THE packagename.sh. Rather, they use pass1.sh, pass2.sh,
etc. This avoids manual definition of passes.
- Ditto with patches; default directory is patches, but then any patch
series specific to a pass are named patches-passX.
This commit is contained in:
parent
0907cfd073
commit
6ed2e09f3a
546 changed files with 700 additions and 1299 deletions
89
steps/python-3.4.10/pass1.sh
Executable file
89
steps/python-3.4.10/pass1.sh
Executable file
|
|
@ -0,0 +1,89 @@
|
|||
# SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
src_prepare() {
|
||||
default
|
||||
|
||||
# Delete generated files
|
||||
rm Include/Python-ast.h Python/Python-ast.c
|
||||
rm Lib/stringprep.py
|
||||
rm Lib/pydoc_data/topics.py
|
||||
rm -r Modules/_ctypes/libffi
|
||||
rm Python/importlib.h
|
||||
rm Modules/_ssl_data.h # Breaks _ssl module, but it fails anyways
|
||||
mv Lib/plat-generic .
|
||||
rm -r Lib/plat-*
|
||||
mv plat-generic Lib/
|
||||
grep generated -r . -l | grep encodings | xargs rm
|
||||
|
||||
# Regenerate encodings
|
||||
mkdir Tools/unicode/in Tools/unicode/out
|
||||
mv ../CP437.TXT Tools/unicode/in/
|
||||
pushd Tools/unicode
|
||||
python gencodec.py in/ ../../Lib/encodings/
|
||||
popd
|
||||
|
||||
# Regenerate clinic
|
||||
find . -name "*.c" -or -name "*.h" | \
|
||||
xargs grep 'clinic input' -l | \
|
||||
xargs -L 1 python Tools/clinic/clinic.py
|
||||
|
||||
# Regenerate unicode
|
||||
rm Modules/unicodedata_db.h Modules/unicodename_db.h Objects/unicodetype_db.h
|
||||
mv ../*.txt ../*.zip .
|
||||
python Tools/unicode/makeunicodedata.py
|
||||
|
||||
# Regenerate sre_constants.h
|
||||
rm Modules/sre_constants.h
|
||||
cp Lib/sre_constants.py .
|
||||
python sre_constants.py
|
||||
mv sre_constants.h Modules/
|
||||
|
||||
# Regenerate autoconf
|
||||
autoreconf-2.71 -fi
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
MACHDEP=linux ac_sys_system=Linux \
|
||||
CFLAGS="-U__DATE__ -U__TIME__" \
|
||||
LDFLAGS="-L${LIBDIR}" \
|
||||
./configure \
|
||||
--build=i386-unknown-linux-musl \
|
||||
--host=i386-unknown-linux-musl \
|
||||
--prefix="${PREFIX}" \
|
||||
--libdir="${LIBDIR}" \
|
||||
--with-system-ffi
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
# Build pgen
|
||||
make -j1 Parser/pgen
|
||||
# Regen graminit.c and graminit.h
|
||||
make -j1 Include/graminit.h
|
||||
|
||||
# Regenerate some Python scripts using the other regenerated files
|
||||
# Must move them out to avoid using Lib/ module files which are
|
||||
# incompatible with running version of Python
|
||||
cp Lib/{symbol,keyword,token}.py .
|
||||
cp token.py _token.py
|
||||
python symbol.py
|
||||
python keyword.py
|
||||
python token.py
|
||||
|
||||
# Now build the main program
|
||||
make -j1 CFLAGS="-U__DATE__ -U__TIME__"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
default
|
||||
ln --symbolic --relative "${DESTDIR}${LIBDIR}/python3.4/lib-dynload" "${DESTDIR}${PREFIX}/lib/python3.4/lib-dynload"
|
||||
ln --symbolic --relative "${DESTDIR}${PREFIX}/bin/python3.4" "${DESTDIR}${PREFIX}/bin/python"
|
||||
|
||||
# Remove non-reproducible .pyc/o files
|
||||
find "${DESTDIR}" -name "*.pyc" -delete
|
||||
find "${DESTDIR}" -name "*.pyo" -delete
|
||||
|
||||
# This file is not reproducible and I don't care to fix it
|
||||
rm "${DESTDIR}/${PREFIX}/lib/python3.4/lib2to3/"{Pattern,}"Grammar3.4.10.final.0.pickle"
|
||||
}
|
||||
19
steps/python-3.4.10/patches/install-perms.patch
Normal file
19
steps/python-3.4.10/patches/install-perms.patch
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
SPDX-FileCopyrightText: 2023 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: PSF-2.0
|
||||
|
||||
Install libraries with 755 instead of 555 so we can strip them. (This
|
||||
is what is in modern versions of python).
|
||||
|
||||
--- Makefile.pre.in 2023-03-15 21:49:08.274186777 +1100
|
||||
+++ Makefile.pre.in 2023-03-15 21:50:02.466143662 +1100
|
||||
@@ -54,8 +54,7 @@
|
||||
INSTALL_DATA= @INSTALL_DATA@
|
||||
# Shared libraries must be installed with executable mode on some systems;
|
||||
# rather than figuring out exactly which, we always give them executable mode.
|
||||
-# Also, making them read-only seems to be a good idea...
|
||||
-INSTALL_SHARED= ${INSTALL} -m 555
|
||||
+INSTALL_SHARED= ${INSTALL} -m 755
|
||||
|
||||
MAKESETUP= $(srcdir)/Modules/makesetup
|
||||
|
||||
22
steps/python-3.4.10/patches/symbol.patch
Normal file
22
steps/python-3.4.10/patches/symbol.patch
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
SPDX-FileCopyrightText: 2022 fosslinux <fosslinux@aussies.space>
|
||||
|
||||
SPDX-License-Identifier: PSF-2.0
|
||||
|
||||
token is in the standard library which takes precedence over files
|
||||
in the path. Rename this file so we can actually import it.
|
||||
|
||||
--- Lib/symbol.py 2022-12-19 21:52:07.101953334 +1100
|
||||
+++ Lib/symbol.py 2022-12-19 21:52:14.752082879 +1100
|
||||
@@ -102,10 +102,10 @@
|
||||
|
||||
def main():
|
||||
import sys
|
||||
- import token
|
||||
+ import _token
|
||||
if len(sys.argv) == 1:
|
||||
sys.argv = sys.argv + ["Include/graminit.h", "Lib/symbol.py"]
|
||||
- token._main()
|
||||
+ _token._main()
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
22
steps/python-3.4.10/sources
Normal file
22
steps/python-3.4.10/sources
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
https://www.python.org/ftp/python/3.4.10/Python-3.4.10.tar.xz d46a8f6fe91679e199c671b1b0a30aaf172d2acb5bcab25beb35f16c3d195b4e
|
||||
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/6.3.0/ucd/UnicodeData.txt 3f76924f0410ca8ae0e9b5c59bd1ba03196293c32616204b393300f091f52013 UnicodeData-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/CompositionExclusions.txt 4ba8ea079ffbffc0025fc31009e95726864feda90d2845c9363c0c40ded8511c CompositionExclusions-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/EastAsianWidth.txt bbdf9281767ca4601af3623b62c26ecb834a9f4c46eec629d82339b006da00d8 EastAsianWidth-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/DerivedCoreProperties.txt 790826f4cfa82c5845ab4040b5e811f1e67bf1ec4c88cdbf722795c3292b0102 DerivedCoreProperties-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/DerivedNormalizationProps.txt c5e867ae043fe5d1cf713150d859356bfdcdba291c39f584af0bfb943f1a9743 DerivedNormalizationProps-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/LineBreak.txt 6a38069025127a60f4a809e788fbbd1bb6b95ac8d1bd62e6a78d7870357f3486 LineBreak-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/NameAliases.txt a11bed87ec6f264edcf84d581dd2d7ac8ed7ac1c3b2ccb54a83077fdbd34133e NameAliases-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/NamedSequences.txt 91fc69ff68b1a89e5f7270545547c747624bc96b0e6c23a791d4265d2fa1f988 NamedSequences-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/SpecialCasing.txt 9edafba261e23e72f6e21e3d85d7f15dd4866f38004ab3bfdc6f7057c589d034 SpecialCasing-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/CaseFolding.txt 21323e682a2b34400c6af4ab57b9775b7e716150428f092bac5b005a88ab8f42 CaseFolding-6.3.0.txt
|
||||
http://ftp.unicode.org/Public/6.3.0/ucd/Unihan.zip 9e408d71e3aba4ff68f5085569bc1c31c9751f9779f55cf877c222467732991f Unihan-6.3.0.zip
|
||||
http://ftp.unicode.org/Public/MAPPINGS/VENDORS/MICSFT/PC/CP437.TXT 6bad4dabcdf5940227c7d81fab130dcb18a77850b5d79de28b5dc4e047b0aaac
|
||||
Loading…
Add table
Add a link
Reference in a new issue