Adjust early live-bootstrap scripting to build riscv64 version of tinycc.

This commit is contained in:
Andrius Štikonas 2023-04-30 19:26:44 +01:00
parent 7d2a3137dd
commit 3091c8bed0
14 changed files with 141 additions and 69 deletions

View File

@ -119,8 +119,8 @@ def main():
raise ValueError("One of qemu, chroot, bwrap, or bare metal must be selected.")
# Arch validation
if args.arch != "x86":
raise ValueError("Only x86 is supported at the moment.")
#if args.arch != "x86" and args.arch != "amd64":
# raise ValueError("Only x86 is supported at the moment.")
# Tmp validation
if args.bwrap and args.tmpfs:
@ -194,6 +194,7 @@ print(shutil.which('chroot'))
'--dev-bind', '/dev/zero', '/dev/zero',
'--dev-bind', '/dev/random', '/dev/random',
'--dev-bind', '/dev/urandom', '/dev/urandom',
'--bind', '/usr/bin/qemu-riscv64', '/usr/bin/qemu-riscv64',
init)
run('bwrap', '--unshare-user',

View File

@ -0,0 +1 @@
4d1a7b8a0e42f278df20893610dd37dec62b609c2c342d9252917907e4d73c03 /usr/bin/checksum-transcriber

View File

@ -0,0 +1 @@
b6145df4b2a92d5ee75902f4367e7a1a5456a5cef7a2e1365610637b054c477a /usr/bin/checksum-transcriber

View File

@ -1,14 +0,0 @@
b2a48b2724a7b791df66efc2384a405a91d26579459a6797514dec89c2e76658 /usr/bin/mes
148ce096422535832802494f1128c26b6580cf3b66635e56abb33f7b3fc26043 /usr/bin/mes-m2
17c86665c2f925d88e3c1f827f312bbc7575b9e6006ef57833e895b6e73b8087 /usr/bin/mescc.scm
4feafab424611c976dc4628aa862e37b4e92b5869aebbcf7655e684c3f589041 /usr/lib/x86-mes/crt1.s
69e9ec2ee2ebf065575cdaf878629178b85330257dde0da790a428c0280d1ecb /usr/lib/x86-mes/crt1.o
c9944a799d584abfa76f385c14ac0caf6f46d03b34bf2712493602b12826c6b2 /usr/lib/x86-mes/x86.M1
d8646707db6aa2a76fdc5dbb3521376439e357f9f1de1d67f02a1afeefd342ac /usr/lib/x86-mes/libmescc.s
7ec49fbcbc70b49648150b021a2ff9ab2b27e89eb8815919a7ffabe375ab1edc /usr/lib/x86-mes/libc+tcc.s
b935d4c30213b49d899ab8bccce33117057ea0f3a1a8d3afc5e07fb8ce4590db /usr/lib/x86-mes/libc.s
52f697278ccdff5e457f27e10f465a91ab9858f0c6cee0683831cadb3109bbb7 /usr/lib/x86-mes/libmescc.a
840ee884db456e1982f40bce82209515a8e0b09bc404c4bc2a26d237bfa4d9ca /usr/lib/x86-mes/libc+tcc.a
32be26479096c52dbffe9c8bf14765f753d6882c3ae43760eda03406c0cf2539 /usr/lib/x86-mes/libc.a
b16ab368bc4c7b8bd896d03cba565a60e97760dea4da9f5c8a1a3d2902a79df6 /usr/lib/linux/x86-mes/elf32-header.hex2
f9873d9aab12e70f24d97f8319e17a1e698ca60779ae9a6ab3ede648cd60fc61 /usr/lib/linux/x86-mes/elf32-footer-single-main.hex2

View File

@ -1,2 +0,0 @@
https://mirrors.kernel.org/gnu/mes/mes-0.24.2.tar.gz 7ddae0854e46ebfa18c13ab37e64839a7b86ea88aeed366a8d017efd11dae86e
https://download.savannah.gnu.org/releases/nyacc/nyacc-1.00.2.tar.gz f36e4fb7dd524dc3f4b354d3d5313f69e7ce5a6ae93711e8cf6d51eaa8d2b318

View File

@ -0,0 +1,13 @@
5ed8c45a8170f68f19119fbce8c752d82a4311aedc5b310f76d46c7d4c192fe3 /usr/bin/mes
5729f623e8175ea5cbd611798b4765bc747e086344a9788d8162f2fc70b81fa5 /usr/bin/mes-m2
88d2418872d462058859c2b0a8b3be019d2dce7ac3b26cfec030199280640581 /usr/bin/mescc.scm
d0a80b94228deb99bda15244f0ed3736badd0632c78a3379195ba24a78f68a75 /usr/lib/x86_64-mes/crt1.o
ff5640d78b9924dd40157596438da4108a97fe658806fbbadced38b4020395f4 /usr/lib/x86_64-mes/x86_64.M1
684bfcde34f118026d875acf2dbe2e4a39dce96d5f938f534995b582ba1a4241 /usr/lib/x86_64-mes/libmescc.s
74e81bba70b709ad67c04e86e91f0ca4cfeecaee00da967abd80725597861281 /usr/lib/x86_64-mes/libc+tcc.s
5f2aaad5aa0dfa5de9aacb2e81c675c9e00309d10b3fb5f818e682a316006b1f /usr/lib/x86_64-mes/libc.s
ad1f1e390f675db2a3545aecc63df798d49317cad2ae5eadb9382df960bbd9f3 /usr/lib/x86_64-mes/libmescc.a
7aab49472ad1cdfa6f977a82744375a0241191457bca74c71607691aedd4ee83 /usr/lib/x86_64-mes/libc+tcc.a
106fb8420b80897a1075fc42a1aaf74d1eb5fd5ac82f6dabcf59c8cabdd6c908 /usr/lib/x86_64-mes/libc.a
48c57492e80a99bf16eeba55e242b60b9e759992482b651d1b512f07ddd9a65a /usr/lib/linux/x86_64-mes/elf64-header.hex2
94c796cb34a6e581491d0cf609e7fad01715c84a17b8b2017178a36568a80e48 /usr/lib/linux/x86_64-mes/elf64-footer-single-main.hex2

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,13 @@
f2f4fcd824749acd4cca8edd06a44922bdeb88c2f5da08e4e18b12063f25d6fb /usr/bin/mes
c149469a741b170bfe3da4e737b3d68490996cc957d593ea5555301de0329afc /usr/bin/mes-m2
fb3b11b5e5fdc919a0f1ebb526986184535cbb6d384bde64e971da43a3fc0cd3 /usr/bin/mescc.scm
a96a0a8f1b2dd1e5a7dad8264c92b5448be7d29aa7706d40d67be978d5ddc305 /usr/lib/riscv64-mes/crt1.o
1511e99da81caa02490078c7a880ac97d439b6fec99cf846dc2044468e2444b8 /usr/lib/riscv64-mes/riscv64.M1
8f7e94270c7cbb076ff5fe3cdd0d6c891537e7945e5aa4bdbf167867471bfbc2 /usr/lib/riscv64-mes/libmescc.s
6a0a4746c2f1dfc6e38077f26347f58a27b9a0c6ff2bfaafdba993eaabd401f6 /usr/lib/riscv64-mes/libc+tcc.s
d06c995f0e00d3fe0f26ae1e0a6cedfaae2fd45e65d8f024d7867cf3bf2308dd /usr/lib/riscv64-mes/libc.s
5027a055f6c564417bf5194a9b43a8a93ae59d9a26ce75a55895f253a6aab2c2 /usr/lib/riscv64-mes/libmescc.a
e53fdb4e11c4c0069ebd33c2be53bff3c23e0e917afca01ab3b1c019116804cd /usr/lib/riscv64-mes/libc+tcc.a
96aa8edc9fc65fc85a238a7ead0cfcb8e651d89c33450ba94bc26b9a568f9162 /usr/lib/riscv64-mes/libc.a
22ad5f7b6e5ea07b275619956bddd913b061d6ad492a442e4b6b2f28898e50ae /usr/lib/linux/riscv64-mes/elf64-header.hex2
94c796cb34a6e581491d0cf609e7fad01715c84a17b8b2017178a36568a80e48 /usr/lib/linux/riscv64-mes/elf64-footer-single-main.hex2

View File

@ -0,0 +1,14 @@
704aea1e24c9b908b0b0acfdd46d1f8d0ebe060aa4d4dbc43bcb205193755ecd /usr/bin/mes
6572d1298f3a25da5a3543b783ec8cb5798ccfe4b11dcaebffa633f47c246f84 /usr/bin/mes-m2
db51a5db377719d063ff91fb26dd0a99cb8fb96bf829c69c939f6013ce7b0c71 /usr/bin/mescc.scm
234c264965116a24583dd569050adc766d7cc2da83b1db38085210f26031b70c /usr/lib/x86-mes/crt1.s
494f184a87175abc485a898c250c3831b2b5dcf5aead46591e00b39d1c5529fc /usr/lib/x86-mes/crt1.o
8afe05c3e1e8848b6f3e8de751524de5f69818eb8524659827918e3fddde3e1e /usr/lib/x86-mes/x86.M1
771988b1df0dfa04bf5f1ab72af18c32b1a8205a07f10e5235d79dac0a072b00 /usr/lib/x86-mes/libmescc.s
fdf88f510db8d59564624b4bd78b3ae18499ed13bbcf7a57d9cc08648772d324 /usr/lib/x86-mes/libc+tcc.s
0e354262a2752ec3ff89ae7c23b38356fc1af79dbb5acea3d082e579e89937ac /usr/lib/x86-mes/libc.s
52f697278ccdff5e457f27e10f465a91ab9858f0c6cee0683831cadb3109bbb7 /usr/lib/x86-mes/libmescc.a
a3ab684c26a2501746cb0b1736b20ce8f07c8fcc8d222e23b34d0cb05bb9b127 /usr/lib/x86-mes/libc+tcc.a
0d620fcb75074df832556ce7b37da1626db5c90d7435260b7079cb32a127803f /usr/lib/x86-mes/libc.a
82cac4353375a52efecc6fda1f8b37373988fe41ed197b63d8e906321b105d77 /usr/lib/linux/x86-mes/elf32-header.hex2
f9873d9aab12e70f24d97f8319e17a1e698ca60779ae9a6ab3ede648cd60fc61 /usr/lib/linux/x86-mes/elf32-footer-single-main.hex2

2
sysa/mes/sources Normal file
View File

@ -0,0 +1,2 @@
https://github.com/ekaitz-zarraga/mes/archive/refs/tags/self-hosted-tcc-rv64.tar.gz 5a4761624f6a4da8556818e45b87e467195ee8aaca858e60d3553d5a110be601 mes.tar.gz
https://download.savannah.gnu.org/releases/nyacc/nyacc-1.00.2.tar.gz f36e4fb7dd524dc3f4b354d3d5313f69e7ce5a6ae93711e8cf6d51eaa8d2b318

View File

@ -20,8 +20,8 @@ M2-Mesoplanet --architecture x86 -f simple-patch.c -o /x86/bin/simple-patch
# Environmental variables needed for mes
NYACC_PKG=nyacc-1.00.2
MES_VERSION=0.24.2
MES_PKG=mes-${MES_VERSION}
MES_PKG_DIR=${MES_PKG}
MES_PKG=mes
MES_PKG_DIR=mes-self-hosted-tcc-rv64
MES_PREFIX=${sysa}/${MES_PKG}/build/${MES_PKG_DIR}
GUILE_LOAD_PATH=${MES_PREFIX}/mes/module:${MES_PREFIX}/module:${sysa}/${MES_PKG}/build/${NYACC_PKG}/module

View File

@ -1 +1 @@
https://lilypond.org/janneke/tcc/tcc-0.9.26-1136-g5bba73cc.tar.gz 23cacd448cff2baf6ed76c2d1e2d654ff4e557046e311dfb6be7e1c631014ef8 tcc-0.9.26.tar.gz
https://github.com/ekaitz-zarraga/tcc/archive/refs/tags/self-hosted-tcc-rv64.tar.gz 06c28d879e7b50be8ec0e03b9514db1ff6bb590b11b7b38c3e7c46e69c2b3124 tcc-0.9.26.tar.gz

File diff suppressed because one or more lines are too long