commit: a3dd84bc755f9c702a88c9b5df1c05f56595e8e0
parent 7ff2de94c52ef6f59cd5982ebee7f72fb1337386
Author: fosslinux <fosslinux@aussies.space>
Date: Tue, 22 Jun 2021 20:16:42 +1000
Merge pull request #126 from stikonas/mes-m2
Switch to using mes/nyacc tar packages.
Diffstat:
31 files changed, 228 insertions(+), 273 deletions(-)
diff --git a/.gitmodules b/.gitmodules
@@ -6,21 +6,3 @@
[submodule "sysa/mescc-tools-seed/src/mescc-tools-seed"]
path = sysa/stage0-posix/src
url = https://github.com/oriansj/mescc-tools-seed/
-[submodule "sysa/mes/src/mes"]
- path = sysa/mes/src/mes
- url = https://gitlab.com/janneke/mes.git
-[submodule "sysa/mes/src/nyacc"]
- path = sysa/mes/src/nyacc
- url = https://git.savannah.gnu.org/git/nyacc.git
-[submodule "sysa/tcc-0.9.26/src/tcc-0.9.26"]
- path = sysa/tcc-0.9.26/src/tcc-0.9.26
- url = https://gitlab.com/janneke/tinycc
-[submodule "sysa/tcc-0.9.27/src/tcc-0.9.27"]
- path = sysa/tcc-0.9.27/src/tcc-0.9.27
- url = git://repo.or.cz/tinycc.git
-[submodule "sysa/tcc-0.9.26/src/mes-libc"]
- path = sysa/tcc-0.9.26/src/mes-libc
- url = https://gitlab.com/janneke/mes
-[submodule "sysa/tcc-0.9.27/src/mes-libc"]
- path = sysa/tcc-0.9.27/src/mes-libc
- url = https://gitlab.com/janneke/mes
diff --git a/SHA256SUMS.sources b/SHA256SUMS.sources
@@ -49,7 +49,7 @@ df807e694deea2dcba0c43af318394f3e3fcd52658c3b71b61dad0ce0c0cfb77 gnulib-30820c.
12cfa21abf618a274017d6b18e95fc6582519d7c08e2403e5c5772ccdd5b85f4 gnulib-d279bc.tar.gz
a285dc300c3d9c25cc06e38827ef40f6073ec3b9b0fcb5bba433f943be92d8d4 gnulib-e017871.tar.gz
a32032bab36208509466654df12f507600dfe0313feebbcd218c32a70bf72a16 grep-2.4.tar.gz
-4d2ce9f314f39c9575f913503b0178d6fb2c92920db8e7b7b176b7bab7980fe6 gzip-1.2.4.tar
+1ca41818a23c9c59ef1d5e1d00c0d5eaa2285d931c0fb059637d7c0cc02ad967 gzip-1.2.4.tar.gz
9f233d8b78e4351fe9dd2d50d83958a0e5af36f54e9818521458a08e058691ba heirloom-devtools-070527.tar.bz2
a4adadf76b496a6bc50795702253ecfcb6f0d159b68038f31a5362009340bca2 help2man-1.36.4.tar.gz
8e8ce6175d435e7df8c9bbb0e5fd5357691cdc28c1a2d00fdd9b47b7643bec3a libtool-1.4.tar.gz
@@ -58,10 +58,12 @@ c4e63399b12f5858d11c44cea8e92f21cd564f8548e488dadc84046b424c80fc libtool-2.2.4.
64b30b41fde2ebf669e6af489883fb1df6a06ac30555a96cfa3c39ecce7267dd make-3.80.tar.gz
e40b8f018c1da64edd1cc9a6fce5fa63b2e707e404e20cad91fbae337c98a5b7 make-4.2.1.tar.gz
7a140e43565181bb54bf416117ea0efff057922ed284db5fc98b3740a7f3d956 mes-0.23.tar.gz
+f02cfe291e49fe44bc8712bf15536654fc643c0a02b3598237fb646884d9eb37 mes.tar.gz
17503d2c395dfcf106b622dc142683c1199431d095367c6aacba6eec30340459 mpc-1.2.1.tar.gz
0c98a3f1732ff6ca4ea690552079da9c597872d30e96ec28414ee23c95558a7f mpfr-4.1.0.tar.xz
1370c9a812b2cf2a7d92802510cca0058cc37e66a7bedd70051f0a34015022a3 musl-1.1.24.tar.gz
9b969322012d796dc23dda27a35866034fa67d8fb67e0e2c45c913c3d43219dd musl-1.2.2.tar.gz
+f36e4fb7dd524dc3f4b354d3d5313f69e7ce5a6ae93711e8cf6d51eaa8d2b318 nyacc-1.00.2.tar.gz
ecb5c6469d732bcf01d6ec1afe9e64f1668caba5bfdb103c28d7f537ba3cdb8a patch-2.5.9.tar.gz
ac610bda97abe0d9f6b7c963255a11dcb196c25e337c61f94e4778d632f1d8fd patch-2.7.6.tar.xz
1ae43c8d2983404b9eec61c96e3ffa27e7b07e08215c95c015a4ab0095373ef3 perl-5.000.tar.gz
@@ -75,6 +77,7 @@ a5e66f6ebf701b0567f569f57cae82abf5ce57af70a2b45ae71323b61f49134e perl-5.6.2.tar
c365874794187f8444e5d22998cd5888ffa47f36def4b77517a808dec27c0600 sed-4.0.9.tar.gz
c6c37e888b136ccefab903c51149f4b7bd659d69d4aea21245f61053a57aa60a tar-1.12.tar.gz
63bebd26879c5e1eea4352f0d03c991f966aeb3ddeb3c7445c902568d5411d28 tar-1.34.tar.xz
+23cacd448cff2baf6ed76c2d1e2d654ff4e557046e311dfb6be7e1c631014ef8 tcc-0.9.26.tar.gz
de23af78fca90ce32dff2dd45b3432b2334740bb9bb7b05bf60fdbfc396ceb9c tcc-0.9.27.tar.bz2
988403c1542d15ad044600b909997ba3079b10e03224c61188117f3676b02caa texinfo-6.7.tar.xz
166c48d2842519bc4f96333bff9e265f8cdda44d38e40594ef3f9bbb52890490 xz-5.0.5.tar.bz2
diff --git a/sysa.py b/sysa.py
@@ -83,7 +83,7 @@ class SysA:
self.check_file(abs_file_name)
return abs_file_name
- def get_file(self, url, mkbuild=False, output=None):
+ def get_file(self, url, output=None):
"""
Download and prepare source packages
@@ -92,9 +92,6 @@ class SysA:
2. list of URLs to download. In this case the first URL is the primary URL
from which we derive the name of package directory
output can be used to override file name of the downloaded file(s).
-
- mkbuild=True can be used to pre-create build directories before
- mkdir is available.
"""
# Single URL
if isinstance(url, str):
@@ -128,9 +125,6 @@ class SysA:
# Install sources into target directory
shutil.copy2(tarball, target_src_dir)
- if mkbuild:
- os.mkdir(os.path.join(self.after_dir, target_name, 'build'))
-
def prepare(self):
"""
Prepare directory structure for System A.
@@ -167,10 +161,6 @@ class SysA:
mescc_tools_extra_dir = os.path.join(stage0_posix_base_dir, 'mescc-tools-extra')
copytree(mescc_tools_extra_dir, self.tmp_dir)
- # At the moment not useful for bootstrap but easier to keep it
- mes_m2_dir = os.path.join(stage0_posix_base_dir, 'mes-m2')
- copytree(mes_m2_dir, self.tmp_dir)
-
# bootstrap seeds
bootstrap_seeds_dir = os.path.join(self.sysa_dir, 'stage0-posix', 'src', 'bootstrap-seeds')
copytree(bootstrap_seeds_dir, self.tmp_dir)
@@ -185,6 +175,10 @@ class SysA:
# create directories needed
os.mkdir(os.path.join(self.tmp_dir, 'bin'))
+ # stage0-posix checksums
+ shutil.copy2(os.path.join(stage0_posix_base_dir, self.arch + '.answers'),
+ os.path.join(self.tmp_dir, self.arch + '.answers'))
+
def after(self):
"""
Prepare sources in /after directory.
@@ -192,12 +186,8 @@ class SysA:
the stage0-posix one is hella messy.
"""
- self.create_after_dirs()
self.create_configuration_file()
- self.stage0_posix_checksum()
self.deploy_extra_files()
- self.mes()
- self.tcc_0_9_26()
self.get_packages()
def create_configuration_file(self):
@@ -205,43 +195,11 @@ class SysA:
Creates bootstrap.cfg file which would contain options used to
customize bootstrap.
"""
+ os.mkdir(self.after_dir)
config_path = os.path.join(self.after_dir, "bootstrap.cfg")
with open(config_path, "w") as config:
config.write("FORCE_TIMESTAMPS=" + str(self.force_timestamps))
- def create_after_dirs(self):
- """
- Create some empty directories for early bootstrap
- This list can be eventually reduced if we include a small
- mkdir implementation written for M2-Planet.
- """
- bin_dir = os.path.join(self.after_dir, 'bin')
- lib_dir = os.path.join(self.after_dir, 'lib')
- include_dir = os.path.join(self.after_dir, 'include')
-
- os.mkdir(self.after_dir)
- os.mkdir(bin_dir)
- os.mkdir(lib_dir)
- os.mkdir(include_dir)
- os.mkdir(os.path.join(lib_dir, self.arch+'-mes'))
- os.mkdir(os.path.join(lib_dir, 'tcc'))
- os.mkdir(os.path.join(lib_dir, 'linux'))
- os.mkdir(os.path.join(lib_dir, 'linux', self.arch+'-mes'))
- os.mkdir(os.path.join(include_dir, 'mes'))
- os.mkdir(os.path.join(include_dir, 'gnu'))
- os.mkdir(os.path.join(include_dir, 'linux'))
- os.mkdir(os.path.join(include_dir, 'linux', self.arch))
- os.mkdir(os.path.join(include_dir, 'sys'))
- os.mkdir(os.path.join(include_dir, 'mach'))
-
- # Needed for patch to work, although can be fixed with TMPDIR
- os.mkdir(os.path.join(self.tmp_dir, 'tmp'))
-
- def stage0_posix_checksum(self):
- """Early checksum files"""
- shutil.copy2(os.path.join(self.sysa_dir, 'stage0-posix', 'checksums'),
- os.path.join(self.after_dir, 'stage0-posix-checksums'))
-
def deploy_extra_files(self):
"""Deploy misc files"""
extra_files = ['helpers.sh', 'run.sh', 'run2.sh']
@@ -250,44 +208,44 @@ class SysA:
shutil.copy2(os.path.join(self.git_dir, 'SHA256SUMS.sources'), self.after_dir)
- def mes(self):
- """GNU Mes"""
- copytree(os.path.join(self.sysa_dir, 'mes'), self.after_dir)
- mes_dir = os.path.join(self.after_dir, 'mes', 'src', 'mes')
- os.mkdir(os.path.join(mes_dir, 'bin'))
- os.mkdir(os.path.join(mes_dir, 'm2'))
-
- def tcc_0_9_26(self):
- """TinyCC 0.9.26 (patched by janneke)"""
- copytree(os.path.join(self.sysa_dir, 'tcc-0.9.26'), self.after_dir)
-
# pylint: disable=line-too-long,too-many-statements
def get_packages(self):
"""Prepare remaining sources"""
+ # mes-0.22 snapshot with m2 fixes
+ self.get_file(["https://github.com/oriansj/mes-m2/archive/a7522f26ee020dc498219d0122ea1b7d345bcdd5.tar.gz",
+ "https://download.savannah.gnu.org/releases/nyacc/nyacc-1.00.2.tar.gz"],
+ output=["mes.tar.gz", "nyacc-1.00.2.tar.gz"])
+
+ # tcc 0.9.26 patched by janneke
+ self.get_file("https://lilypond.org/janneke/tcc/tcc-0.9.26-1136-g5bba73cc.tar.gz", output="tcc-0.9.26.tar.gz")
+
+ # mes 0.23 (meslibc)
+ self.get_file("https://mirrors.kernel.org/gnu/mes/mes-0.23.tar.gz")
+
# gzip 1.2.4
- self.get_file("https://mirrors.kernel.org/gnu/gzip/gzip-1.2.4.tar", mkbuild=True)
+ self.get_file("https://mirrors.kernel.org/gnu/gzip/gzip-1.2.4.tar.gz")
# tar 1.12
- self.get_file("https://mirrors.kernel.org/gnu/tar/tar-1.12.tar.gz", mkbuild=True)
+ self.get_file("https://mirrors.kernel.org/gnu/tar/tar-1.12.tar.gz")
# sed 4.0.9
- self.get_file("https://mirrors.kernel.org/gnu/sed/sed-4.0.9.tar.gz", mkbuild=True)
+ self.get_file("https://mirrors.kernel.org/gnu/sed/sed-4.0.9.tar.gz")
# patch 2.5.9
- self.get_file("https://ftp.gnu.org/pub/gnu/patch/patch-2.5.9.tar.gz", mkbuild=True)
+ self.get_file("https://ftp.gnu.org/pub/gnu/patch/patch-2.5.9.tar.gz")
# make 3.80
- self.get_file("https://mirrors.kernel.org/gnu/make/make-3.80.tar.gz", mkbuild=True)
+ self.get_file("https://mirrors.kernel.org/gnu/make/make-3.80.tar.gz")
# bzip2 1.0.8
- self.get_file("https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz", mkbuild=True)
+ self.get_file("https://sourceware.org/pub/bzip2/bzip2-1.0.8.tar.gz")
# tcc 0.9.27
- self.get_file("https://download.savannah.gnu.org/releases/tinycc/tcc-0.9.27.tar.bz2", mkbuild=True)
+ self.get_file("https://download.savannah.gnu.org/releases/tinycc/tcc-0.9.27.tar.bz2")
# coreutils 5.0
- self.get_file("https://mirrors.kernel.org/gnu/coreutils/coreutils-5.0.tar.bz2", mkbuild=True)
+ self.get_file("https://mirrors.kernel.org/gnu/coreutils/coreutils-5.0.tar.bz2")
# heirloom-devtools
self.get_file("http://downloads.sourceforge.net/project/heirloom/heirloom-devtools/070527/heirloom-devtools-070527.tar.bz2")
@@ -298,9 +256,6 @@ class SysA:
# flex 2.5.11
self.get_file("http://download.nust.na/pub2/openpkg1/sources/DST/flex/flex-2.5.11.tar.gz")
- # mes 0.23 (meslibc)
- self.get_file("https://mirrors.kernel.org/gnu/mes/mes-0.23.tar.gz")
-
# musl 1.1.24
self.get_file("https://musl.libc.org/releases/musl-1.1.24.tar.gz")
diff --git a/sysa/after.kaem b/sysa/after.kaem
@@ -8,57 +8,62 @@
set -ex
-PATH=/after/bin:/bin
+PATH=/bin
# Set commonly used variables
prefix=/after
bindir=${prefix}/bin
libdir=${prefix}/lib
incdir=${prefix}/include
-MES_PREFIX=${prefix}/mes/src/mes
-GUILE_LOAD_PATH=${prefix}/mes/src/nyacc/module:${prefix}/mes/src/mes/mes/module:${prefix}/mes/src/mes/module
+NYACC_PKG=nyacc-1.00.2
+MES_PKG=mes
+MES_PREFIX=${prefix}/${MES_PKG}/src/mes-m2-a7522f26ee020dc498219d0122ea1b7d345bcdd5
+GUILE_LOAD_PATH=${MES_PREFIX}/mes/module:${MES_PREFIX}/module:${prefix}/${MES_PKG}/src/${NYACC_PKG}/module
cd ${prefix}
+mkdir ${bindir}
+
# Remove remaining dependencies on / (root of /after)
-cp ../bin/blood-elf bin/blood-elf
-cp ../bin/catm bin/catm
-cp ../bin/chmod bin/chmod
-cp ../bin/get_machine bin/get_machine
-cp ../bin/hex2 bin/hex2
-cp ../bin/kaem bin/kaem
-cp ../bin/M1 bin/M1
-cp ../bin/M2-Planet bin/M2-Planet
-cp ../bin/mes-m2 bin/mes-m2
-cp ../bin/sha256sum bin/sha256sum
-cp ../bin/ungz bin/ungz
-cp ../bin/untar bin/untar
-
-/bin/cp /bin/cp /after/bin/cp
-
-/bin/chmod 755 bin/blood-elf
-/bin/chmod 755 bin/catm
-/bin/chmod 755 bin/chmod
-/bin/chmod 755 bin/cp
-/bin/chmod 755 bin/get_machine
-/bin/chmod 755 bin/hex2
-/bin/chmod 755 bin/kaem
-/bin/chmod 755 bin/M1
-/bin/chmod 755 bin/M2-Planet
-/bin/chmod 755 bin/mes-m2
-/bin/chmod 755 bin/sha256sum
-/bin/chmod 755 bin/ungz
-/bin/chmod 755 bin/untar
-
-sha256sum -c stage0-posix-checksums
+cp /bin/blood-elf bin/blood-elf
+cp /bin/catm bin/catm
+cp /bin/chmod bin/chmod
+cp /bin/get_machine bin/get_machine
+cp /bin/hex2 bin/hex2
+cp /bin/kaem bin/kaem
+cp /bin/M1 bin/M1
+cp /bin/M2-Planet bin/M2-Planet
+cp /bin/mkdir bin/mkdir
+cp /bin/sha256sum bin/sha256sum
+cp /bin/ungz bin/ungz
+cp /bin/untar bin/untar
+
+cp /bin/cp /after/bin/cp
+
+chmod 755 bin/blood-elf
+chmod 755 bin/catm
+chmod 755 bin/chmod
+chmod 755 bin/cp
+chmod 755 bin/get_machine
+chmod 755 bin/hex2
+chmod 755 bin/kaem
+chmod 755 bin/M1
+chmod 755 bin/M2-Planet
+chmod 755 bin/mkdir
+chmod 755 bin/sha256sum
+chmod 755 bin/ungz
+chmod 755 bin/untar
PATH=/after/bin
+# Needed for patch to work
+mkdir /tmp
+
# mes
-pkg="mes"
+pkg=${MES_PKG}
cd ${pkg}
kaem --file ${pkg}.kaem
-cd ..
+cd ${prefix}
# tcc 0.9.26
pkg="tcc-0.9.26"
@@ -90,15 +95,6 @@ cd ${pkg}
kaem --file ${pkg}.kaem
cd ..
-# sha-2
-#pkg="sha-2-61555d"
-#cd ${pkg}
-#kaem --file ${pkg}.kaem
-#cd ..
-
-# Check all up to this part as sha256sum
-#sha256sum -c pre-sha.sha256sums
-
# make
pkg="make-3.80"
cd ${pkg}
diff --git a/sysa/bash-2.05b/checksums b/sysa/bash-2.05b/checksums
@@ -1 +1 @@
-b12868e2bb49724e214b4679973e3f1e43f091f1bbbf8ed66340f18cda226947 /after/bin/bash
+92bd0df325ba2b2f89188529401a1a9dc242306272e65141c1049bb0ce424107 /after/bin/bash
diff --git a/sysa/bzip2-1.0.8/bzip2-1.0.8.kaem b/sysa/bzip2-1.0.8/bzip2-1.0.8.kaem
@@ -7,6 +7,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/bzip2-1.0.8/checksums/bzip2-pass1 b/sysa/bzip2-1.0.8/checksums/bzip2-pass1
@@ -1,2 +1 @@
-6b7d8a7a65da9beb4c6deb0391be5f1f0da18e77d3f292ae433ffc43b89a3a5f /after/bin/bzip2
-6b7d8a7a65da9beb4c6deb0391be5f1f0da18e77d3f292ae433ffc43b89a3a5f /after/bin/bunzip2
+fd1bc3742162c76123a946c5c64ebb5f9d11bf8192378ea79dc4d6ea7d24a217 /after/bin/bzip2
diff --git a/sysa/coreutils-5.0/checksums/pass1 b/sysa/coreutils-5.0/checksums/pass1
@@ -1,55 +1,54 @@
-60c9e7211b7439c0bd260b7199f882ea80f9b6fde43d3d5054f8d1b62147cbae /after/bin/install
-a4f5b38313d737d1bd554c5c38703fdb8ed4079e63330c93d6965be7cdecff30 /after/bin/basename
-e04b8a73dbc3aba350c6af07d03c455df1d8ea87cf35ee36458c64d479f86375 /after/bin/cat
-fb417a7bd9905991c2553243270f05ceb1f2cd366f83679891e138e71a0efa08 /after/bin/chmod
-42c94b31112077a245ed6f2df29c9f6a7fe2c03a012c800e07bcc33713fd5934 /after/bin/cksum
-ffa31fd5ef490977830a00f276e4a4b45ad10b88203aacc9e756b515c1061333 /after/bin/cp
-3fe8e6e02725f865ae29b64e20cffc7689020812e85d2854f007b0ca50277e90 /after/bin/csplit
-79ce07561468e37951a24a05c5bd54b0aa9cd68642409657901258766e1d8225 /after/bin/cut
-57f38af18b965cce250eb43cdcda5dbec567129fc291d679462d51a87670cd96 /after/bin/echo
-3ee8699aebbb2d08a666810777f19aed562300c3dd41f743d3f843548961b1ae /after/bin/expand
-226b82d8b568fd36f4cfbd375b0ee4ad048350800f42cd54870b5969b149d57d /after/bin/factor
-480276a9d24e65a5b3e5ffb4aa78cb98a867ddd562913b220c19c59348a986f9 /after/bin/false
-5fb3dbcc4c4f0c0ad42a9027c46af939a64bd0193809f323d180b27086f43ecc /after/bin/fmt
-4f321b6c597f41ae27b0f5075b73fc7cd7e5b4e808d6afb1edd4f86a653b0cc7 /after/bin/fold
-02a7fc39b3d6133e575dfe8f063a44493665cb442b4f211b977ea142acd7b74f /after/bin/head
-146dc0ad26d909eb65b70ec26b396574ad32ed316a570e9cd9e6c9a706f7656a /after/bin/id
-a930a27e58f95d23ab863d823c1eeef00eae84e5d5bd359f29a6611977907db0 /after/bin/join
-a50073d1e59329e082af954ef6e89a37067df6df838df29fa5f3a9e6b59b5e32 /after/bin/kill
-06f1921e746e202f1c79f64446e72dc053763cae367aa2137f799302ea8154e4 /after/bin/link
-cffb260264c126395ee0c1b52ab621a06888628eae015a7ef7d502c4e02bf73d /after/bin/ln
-c827cdd64d9e3a1397e8bf9cb1ec980385244bd835a8c1ba6c29171c5e091e18 /after/bin/logname
-ae6d244329f4ef05105ae303395a1cd812598e2076a42966c9711d395ae8c565 /after/bin/mkfifo
-f174222efdad22e7c6c9cd7a4da4042d3c97964bbfb4899875aefa7daaefeced /after/bin/mkdir
-9a938fa9660523ef2c12c2cfef10804ad14970b6fc2911778037e7ff815b0b06 /after/bin/mknod
-83bc14d653f9392b95919962b25a8e717e15e749d32c55c3f591e46ac4e68758 /after/bin/nl
-6e001804beb990b3d7e4304660e9f7e178f8448a3780ebc9f92386f461c3f003 /after/bin/od
-033f864ff51c5a70b770d0d6fdcf5ba691fe11f06ee43eb4040dc974cd4dd16a /after/bin/paste
-25ed5a35fbe67c34926471bb44dfb96bcc6c2d046c6b8cfcaead8e71999c093a /after/bin/pathchk
-a1714af35d79a55b9e88a40c5e04f323d44d05b3d5fe063ad5874a67bcadb49f /after/bin/printf
-1c2c5efcc7a14da49c9cb11b8d21a941d5adac0a1cd2f7b5342b8f2866620b28 /after/bin/ptx
-844d7cbeb6d63672e6e683c8ede8ea648ffeef8ef435ccdb0f4d9554be15bfaf /after/bin/pwd
-a9891310abee464897c7a9fddeef55add90b9e103092cd3b6d56c8271aebc755 /after/bin/readlink
-b6cbf998b9f5e52135bf12927e0fa70c47d2ebaa2eb0c5b743b56a958354b262 /after/bin/rmdir
-d9fda1d883c9c75eb70538ed93dcfc6ee6da074fd7c083821d501332e8499846 /after/bin/seq
-4f47ff18f7666b7c4f6ec155790143b46149bb5a684e016a102f578bcd70b5b6 /after/bin/sleep
-71e745024bbb654de7bec3f349f4bff244afd3855b15959975a69dca053f09cf /after/bin/split
-cdca632bf8018d1213d8c3965607ae86b78c12be022ad123fdb0d2e4f550996c /after/bin/sum
-21a56a3d77b900b7d090c0d346b838f276d977ff91ca49cca667726fb80af6be /after/bin/tail
-2abeae105386cf7eb70ea6a57093e0aacd74c36c49b74f8deca1411b313d9c59 /after/bin/tee
-9d58a32584f9c073d28a9bf16b5fd6eb177d887752f565f2e879afb933bf5631 /after/bin/tr
-6073fa8fbcf0a504f14fd7d01431fff9e48f5755fbfc91db48b8b41f1489049d /after/bin/tsort
-c704d583fc895be7f768ab30b1694650898b1564dba02945880aaadc5a1b8215 /after/bin/unexpand
-3e31a01491c1fd3701894cc638b3dcf3046536e411f995dc8cbb681c91245240 /after/bin/unlink
-c4bb7065baa37f86eec5e46745c5e6a912708625174c92260b82c67b251f1ba5 /after/bin/wc
-c32c04dcee0a8b80ddbef9c43f0e2a1cb954c2c27f55331dc9cf25094f0c9784 /after/bin/whoami
-a5679b855ffbe6059dfccaf6acc2f217b4dcda243a058ea3260d0bc887eeb9aa /after/bin/test
-37d98622d110bb60a2c026c0936282e9cbc18c0f2fb27aefaee3041369deba00 /after/bin/touch
-90ddd8ff402d50244a353916b510f32d7f607365459e4315fdcfa9f0ab02ee59 /after/bin/true
-b2b7fd078cd3ccb849b6c085a6522532c9e05484db72288addd6886cd915eca4 /after/bin/yes
-d75dccb1974142380c915a1acf73b96f948ed6952f3cdf186afc078c4ee1757c /after/bin/ls
-60c9e7211b7439c0bd260b7199f882ea80f9b6fde43d3d5054f8d1b62147cbae /after/bin/install
-363851b2d7c442bbfc1f123d3adc48ef4aa6ecfef5f9e75be3124a3af27403b5 /after/bin/md5sum
-471f7404bc045edac3a2b4ee5dbae6275302cdd7827b950600f6d1ea392ea9de /after/bin/mv
-290e04d578157f0dbf9b8a9a2360bd1cb24a5b871ba1bcd8232dc631ea8ab833 /after/bin/rm
-577f67d093143b0310909c652ca1940bc8c3eb4680e9c6b00a0c1f111aef5c42 /after/bin/sha1sum
+113a08baeaaaafd87295806756a5b5eee73a55347e86b4930e01c15d7220f74b /after/bin/install
+f6dd08d95b1ecdd32c7804afa226d734fb4efbe54e67532023deb3a95df2899d /after/bin/basename
+8bf26dadc87990c5ec5fe6551145049d52ded48640ce7ac47b05b458ff870cfa /after/bin/cat
+3cfdf2a0f1db912f1daa3015ceb99689f51970196c85a049a3e098bd96271b20 /after/bin/chmod
+994197dd07610b44608b388242c70adb9ec49bb2a643dcfdfb1e105529c2e379 /after/bin/cksum
+78c1187c2ce90fe24acc739eeb159363de70e06e239bac3ea096ee1cf3f9d273 /after/bin/cp
+a09aeffc07c868076aa034fd1650f8faca703379aa31d5b5fd911adf98901c82 /after/bin/csplit
+e3149e91b206a83b4e7341b5df6ddefddfe04be4b9859642b23e2ee684de0e2d /after/bin/cut
+39713a15ea9b4a46d01f8d0a2ca99fe83acab34980442cf4e26d0c495e63acd3 /after/bin/echo
+b9b229f0cfe7c2077c7f1ce30b91d07ae02794bb52520367053e4c5dae815617 /after/bin/expand
+79f91e16249f8f595fb4dd68a05413c8f28bd3a15f25ed07d602b504f745b33f /after/bin/factor
+a7071f0800ed49164535244ac82e6288ca7f4c9ef119ce722e809c965feba43e /after/bin/false
+c7c581160a28eaea971e1333b19e07b81e98897a251f05f8fe5fd1fd2c89ad2a /after/bin/fmt
+bfdeeba7192725dc6f5b4084f73e42d518a05900af05a062b4862fcb3b7a5a0d /after/bin/fold
+b914fce359292bd4134af0d0086c4d5920a6482e784c60483c60daa86ba3e2ca /after/bin/head
+142cd716a75921fc3d4f824c75515147f12b53e83f0a89a09f17aaaeaa9b1543 /after/bin/id
+890bd5186317a1da5309881ad12426e45144b059436b7045a18ab670ac34585b /after/bin/join
+c8d87edb84146d2c536be5cea326b5fe456eb9fb39511f535312e52577d1c229 /after/bin/kill
+5c827dc96610836ec41ced32fdff18584dfa7380431cf5f99960effcec16b6da /after/bin/link
+75da5a77d612a6c9ab2c63f52e0c53613917b46f243a6ca78a15edc1ab2322d2 /after/bin/ln
+e74bc32191c7f53b659c7b1937d9799e7e56a71f0d68a00a085df99d900ac71a /after/bin/logname
+fc1b745d7b10d84445fe6f4a42cb1893827f13029eb5ba93568c4668182ef0c3 /after/bin/mkfifo
+2aaba60b28b63c8fe0199202a364327bb235fb628424c70d85ddf1b011a603b9 /after/bin/mkdir
+541dfb8cddfc66fe7e2628012c6557d34eb071312af6ad9178c14ab374970ea0 /after/bin/mknod
+95cf6269ae7608960bf1eb1062cd8f1f9981534b8e66449c3076c2b270f02970 /after/bin/nl
+82109de6321e241128763333ba7e32db91d6fd07124dd3198fdd80f5c8679cf5 /after/bin/od
+89537a3ff8d001059b2875e49b02e64f5cc9e70ee0053b1407c9e13a949097cf /after/bin/paste
+876bf7b6743fb7a8b9967f9f8ae0ce7deabe9a109b5d8655e2042435c8dc9141 /after/bin/pathchk
+8d6a4ec26ef7a9b398106915c56c35648c6548fde7999982e0110763a05f12fd /after/bin/printf
+0c7b355b1b81093b740efd5afdec417f1902edb3c4c7335320ad371aa67e66a5 /after/bin/ptx
+a5a7d59c3daddcd12a5a1f69710f970fba40f319baa6e8a2d7ee6da55936d046 /after/bin/pwd
+bb5be58fc44331fedc405f28d6bf9014105376db48ab6921de4468c26868b0cd /after/bin/readlink
+cf83e7cf46b52440d593d08c03859bf2354affd3d184d4975fb4d1ba0a9b5260 /after/bin/rmdir
+ed0e8f05df2f9a757a783a783d4d5efc4fc85d5f5ade8b61b6c32bd64047eaaf /after/bin/seq
+3a839fe7e32dff6a2597390660beb10ee15eabd2d1fe4531a58eed035fa0db5f /after/bin/sleep
+978bab078ddc398c8617697143265b5c0791d74730895243e11f30f208389095 /after/bin/split
+ee8532ca989f75ec263121c20f13474ad73aafa503bb2ae2f785708b0244c329 /after/bin/sum
+40d71b38897a5ceacd45a4c49a2d84dab4d175fff4e7fcf98785c31d2ec715f2 /after/bin/tail
+cb8ff79e7566d6fbfe0c5d384163585306a9ef7e9e525fea0bf0c8a5c2af8238 /after/bin/tee
+6ab10d4a009e2b134c7e854f2561da93d74b95701d538659284d5035bc88ff89 /after/bin/tr
+062e387534cc7661b11346524f84e38f5e64a4326819377b9bc3aa675fb6a409 /after/bin/tsort
+07103fb0d194c01576894c800eecc3be9588103e93c6e8b9c0e6063fb9dde5af /after/bin/unexpand
+054c7b8ef262065dc965b885baa858602165609322196515a6e9415b0f9a21e5 /after/bin/unlink
+545d17edd4994ab9d405b27b0ebd5d9ef1e3d4c1c172bc5c47112a740ce88e15 /after/bin/wc
+9464990ed84759efab8bc3b5b67cf6f77c03ccf988bbe6e571a12ea3d6b01cd9 /after/bin/whoami
+060e30b58112feba89aa3b90506d7c8f532837ab339b45f351ebe4a39aa36049 /after/bin/test
+0d1e615de04e3d99b5cfd9b86eac332113227eb87707e025748ddde134720596 /after/bin/touch
+af3a6577c63e79cd2bbabd3c966790ef006c2d5d2584573ba91667d45f80fec3 /after/bin/true
+0321a3302b2883914612d9e3dad00e5f338e5c9541651ef293bb38503a9ae39c /after/bin/yes
+84dd2d7cb8216eceaa3d53886832034c1b68f174239fe51adb68e2ec45901610 /after/bin/ls
+acb87cf7d9c1be94dde273bf3f9ab21115ff86a1cc783963dd7571729c4a82e8 /after/bin/md5sum
+039aa7005ce1280641e9828ea407e1e80994176a5c546d3bc6f88fd8d34f79c5 /after/bin/mv
+ba5655e1ae7be5b5655513b19d03d385840c707528bd0baa907dc2b117d35d97 /after/bin/rm
+330d475015d0d78af61789f44d636b14082d64a64dd7faf481677c014fb5a606 /after/bin/sha1sum
diff --git a/sysa/coreutils-5.0/coreutils-5.0.kaem b/sysa/coreutils-5.0/coreutils-5.0.kaem
@@ -8,6 +8,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/flex-2.5.11/checksums b/sysa/flex-2.5.11/checksums
@@ -1 +1 @@
-d80c682810b2f44dffe005e2cf7b239d51758220d1e489f0115b21ec186a8d7b /after/bin/flex
+1e6280bcd57c357ad60c687ad5fab6597b9e6ef5f0a1186fcfef6383b76a3242 /after/bin/flex
diff --git a/sysa/gzip-1.2.4/checksums b/sysa/gzip-1.2.4/checksums
@@ -1 +1 @@
-c8c923c0bea92a642e1b3e5dde162bb7c35ea14a75e0f8fbb811d7ea92edffe6 /after/bin/gzip
+304cead634e6766db915155d422049269f66b2ff34a20a7f20819a0c69193d33 /after/bin/gzip
diff --git a/sysa/gzip-1.2.4/gzip-1.2.4.kaem b/sysa/gzip-1.2.4/gzip-1.2.4.kaem
@@ -8,9 +8,11 @@
set -ex
+mkdir build
cd build
# Extract
+ungz ../src/${pkg}.tar.gz
untar ../src/${pkg}.tar
cd ${pkg}
diff --git a/sysa/heirloom-devtools-070527/checksums b/sysa/heirloom-devtools-070527/checksums
@@ -1,5 +1,5 @@
-77feb203eae9e115939775f41a91f47de628e4e9cb041ece8c55d73cec3fe871 /after/bin/yacc
-65931952321d43b30c891744eaebab1a15c8087e4b1b624619a945ea3e7a1fd8 /after/bin/lex
+d1a3da2e1199a8a11e97d5b2b201d49452be4403c37b5af070c1001cf0a932a2 /after/bin/yacc
+fe3bf155e60efebc7a4018bf55e228ee7b98b2c9da0588a8c89fd358b1530a66 /after/bin/lex
ffe696afc1bda32a5f4035e29b3275cab73a27df7635ccbe02ed49a30374ccdd /after/lib/libl.a
bf3fb293f1ff89ee3dbcb08166c64b7a6793b49a12673d7633e3353ebea80d4d /yaccpar
ee0f187b844f50d64c912bfcb5d73706662846d6d8a90b8b1fb20dda60464734 /lex/ncform
diff --git a/sysa/make-3.80/checksums b/sysa/make-3.80/checksums
@@ -1 +1 @@
-06699b2728829d9c989f28a28af3d9ea00391a8678140af77a5ba4892244c4e8 /after/bin/make
+8e0d4cc1e9c25a927b17bf07aaae57c4f6779d42a659140a736c65d6a71b456c /after/bin/make
diff --git a/sysa/make-3.80/make-3.80.kaem b/sysa/make-3.80/make-3.80.kaem
@@ -6,6 +6,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/mes/checksums b/sysa/mes/checksums
@@ -1,4 +1,4 @@
-d2e38ce7eab153cb2a019de92d12f1afc81f3ca0d4e068597fdab472250c7408 /after/bin/mes-m2
+e835fdb1cd8c7852e8c879f1efdea6f7392bdd04938f5a01a6199ab2730fac4b /after/bin/mes-m2
b91c81e543b878ead4cc975df75e3d211f7bd2dcdd4c90e42df99d44311ce71e /after/bin/mescc.scm
90811dafd33ad56b8e4b0adcc04263f9329b9047b7cc337abe8151a75017172c /after/lib/x86-mes/crt1.s
e065af5f73d40b20029e9ba23143660f99c6abacb82d1b4c8f2067a4e395d553 /after/lib/x86-mes/crt1.o
diff --git a/sysa/mes/mes.kaem b/sysa/mes/mes.kaem
@@ -12,18 +12,31 @@ MES_ARENA=20000000
MES_MAX_ARENA=20000000
MES_STACK=6000000
MES=${bindir}/mes-m2
-libdir=${prefix}/mes/src/mes/lib
+libdir=${MES_PREFIX}/lib
cp files/mescc.scm ${bindir}/
chmod 755 ${bindir}/mescc.scm
-cp files/config.h src/mes/include/mes
+# Unpack
+cd src
+ungz ${NYACC_PKG}.tar.gz
+untar ${NYACC_PKG}.tar
+ungz ${MES_PKG}.tar.gz
+untar ${MES_PKG}.tar
-cd src/mes
+cp ../files/config.h ${MES_PREFIX}/include/mes
-# Bootstrap Mes using M2-Planet
-kaem --verbose --file kaem.run
-chmod 755 ${MES}
+cd ${MES_PREFIX}
+
+# These files are symlinked in the repo
+cp mes/module/srfi/srfi-9-struct.mes mes/module/srfi/srfi-9.mes
+cp mes/module/srfi/srfi-9/gnu-struct.mes mes/module/srfi/srfi-9/gnu.mes
+
+# Build mes-m2
+mkdir bin m2
+kaem -v -f kaem.run
+cp bin/mes-m2 ${bindir}/mes-m2
+chmod 755 ${bindir}/mes-m2
# Build Mes C library using mes-m2 bootstrapped Mes
@@ -184,6 +197,10 @@ ${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- -c -D HAVE_CONFIG_H=1 -I
catm ${libdir}/x86-mes/libc+tcc.a ${libdir}/x86-mes/libc.a islower.o isupper.o tolower.o toupper.o abtod.o dtoab.o search-path.o execvp.o fclose.o fdopen.o ferror.o fflush.o fopen.o fprintf.o fread.o fseek.o ftell.o fwrite.o printf.o remove.o snprintf.o sprintf.o sscanf.o vfprintf.o vprintf.o vsnprintf.o vsprintf.o vsscanf.o calloc.o qsort.o strtod.o strtof.o strtol.o strtold.o strtoll.o strtoul.o strtoull.o memmem.o strcat.o strchr.o strlwr.o strncpy.o strrchr.o strstr.o strupr.o sigaction.o ldexp.o mprotect.o localtime.o sigemptyset.o setjmp.o close.o rmdir.o stat.o
catm ${libdir}/x86-mes/libc+tcc.s ${libdir}/x86-mes/libc.s islower.s isupper.s tolower.s toupper.s abtod.s dtoab.s search-path.s execvp.s fclose.s fdopen.s ferror.s fflush.s fopen.s fprintf.s fread.s fseek.s ftell.s fwrite.s printf.s remove.s snprintf.s sprintf.s sscanf.s vfprintf.s vprintf.s vsnprintf.s vsprintf.s vsscanf.s calloc.s qsort.s strtod.s strtof.s strtol.s strtold.s strtoll.s strtoul.s strtoull.s memmem.s strcat.s strchr.s strlwr.s strncpy.s strrchr.s strstr.s strupr.s sigaction.s ldexp.s mprotect.s localtime.s sigemptyset.s setjmp.s close.s rmdir.s stat.s
+# Make directories
+mkdir ${prefix}/lib/linux ${incdir}/mes ${incdir}/sys ${incdir}/linux
+mkdir ${prefix}/lib/x86-mes ${prefix}/lib/linux/x86-mes ${incdir}/linux/x86
+
# Install libraries
cp ${libdir}/x86-mes/libc.a ${prefix}/lib/x86-mes/
cp ${libdir}/x86-mes/libc+tcc.a ${prefix}/lib/x86-mes/
@@ -264,7 +281,6 @@ cp include/sys/ucontext.h ${incdir}/sys/ucontext.h
cp include/sys/user.h ${incdir}/sys/user.h
cp include/sys/wait.h ${incdir}/sys/wait.h
-cd ../..
-
# Checksums
+cd ${prefix}/${MES_PKG}
sha256sum -c checksums
diff --git a/sysa/mes/src/mes b/sysa/mes/src/mes
@@ -1 +0,0 @@
-Subproject commit 2ab4c5c676cb66088b0fb8de03b40b01f07bd4e0
diff --git a/sysa/mes/src/nyacc b/sysa/mes/src/nyacc
@@ -1 +0,0 @@
-Subproject commit 06a0985332cfbc76e759da50d228d5aa01b4f6a9
diff --git a/sysa/patch-2.5.9/checksums b/sysa/patch-2.5.9/checksums
@@ -1 +1 @@
-032c0a3bb32b542f7d3eb0305bd89898ab2fc4b9fd0502085337e3422db1f393 /after/bin/patch
+19ead2cf81b112f2e8907089954915eeae36d78df6bf1d2e72a0d7fc15c4483b /after/bin/patch
diff --git a/sysa/patch-2.5.9/patch-2.5.9.kaem b/sysa/patch-2.5.9/patch-2.5.9.kaem
@@ -6,6 +6,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/sed-4.0.9/checksums/pass1 b/sysa/sed-4.0.9/checksums/pass1
@@ -1 +1 @@
-61d9850bf8348a5571f59231e392a06021c9be78f32797943d98bc493ea5b03f /after/bin/sed
+a29789a4a0150cbc7ed718ece238cad4c3863c794c8825f0743bc6cf1838b4a8 /after/bin/sed
diff --git a/sysa/sed-4.0.9/sed-4.0.9.kaem b/sysa/sed-4.0.9/sed-4.0.9.kaem
@@ -8,6 +8,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/tar-1.12/checksums b/sysa/tar-1.12/checksums
@@ -1 +1 @@
-ade67862293d3193aaa569931d520dab26b26fcfebd538346a2a83195a59d7e7 /after/bin/tar
+5b50a68538fb8c220dedf4cad8f707f29d853d1ff675db3b95a5ca0eb11f6a54 /after/bin/tar
diff --git a/sysa/tar-1.12/tar-1.12.kaem b/sysa/tar-1.12/tar-1.12.kaem
@@ -8,6 +8,7 @@
set -ex
+mkdir build
cd build
# Extract
diff --git a/sysa/tcc-0.9.26/checksums b/sysa/tcc-0.9.26/checksums
@@ -1,13 +1,13 @@
-e7b1b2c7d999cd31becd7368f735b1672f24e1e469d73f0641fca5e0b6a314e8 /after/bin/boot0-tcc
-b963670c966c8b545f278c58558ee512d1879556f33be3dd60fdc6c6fe0c42ee /after/bin/boot1-tcc
-6f2cb537b862b143e031d43a9b554c14bf09dfa7d0232265e5ee5b7792adbdf3 /after/bin/boot2-tcc
-9d3bf2cd0eeac4607032299e5ec999ff3dc8e8dd075e1dbd84292949d15c163c /after/bin/boot3-tcc
-d4708bc79bee1f4d23789866380a98b5ed0e165ac8ca917b8b928c2d323ddc10 /after/bin/boot4-tcc
e94a2468c045582cfd13df51acd0932afdc834fa60139f7bfb7a2d65afa39a65 /after/bin/mes-tcc
-819ebd10859c34f1f34b5ab341fdce4541ccade97ec96b7eac5876875f91e8a7 /after/bin/tcc
-34f62227f8cc61d365d92a182f8f3cc91cc6c50a1bbb8f4774a4383bceaefa5f /after/lib/libc.a
+93520647ebcbed3292a47732164db63223895e72f759d6d74ab153f0454006c6 /after/bin/boot0-tcc
+261b3f667a61ade601cbfe85a9bb560f8df99b39fc7ef961e39f14fcfc719a30 /after/bin/boot1-tcc
+1903b2a3fb14377245ae28f256e39ef13250d1915a15f5e00051308af16d9869 /after/bin/boot2-tcc
+a71bceb03a4d865d81bb05235926df42702ab8071599a116e2a2590165905a0e /after/bin/boot3-tcc
+bf69d0b449e3e10d023e6dda075c8d6e5f39952446eda7f11527c46cab10c8bc /after/bin/boot4-tcc
+a2fb90fc82405ad9256cb17ecd1186c87947e4e86d7621f61fa7230be4481173 /after/bin/tcc
+37e53f55da1a8ca5452016528727b0c3e4b4e60690f1c5ed1dfc7ecca6e56581 /after/lib/libc.a
12c07ae103e7e3b390150a79e5c600d88de14e9bb73a066f6342582729ef5a3f /after/lib/libgetopt.a
44b5f15e1f015685fe4c3d66eda5ba52aac77b94f2edd98b764cec05ca350d49 /after/lib/crt1.o
09d4f9821a2566f7e56381a19259c41bd97f3c5ed83f490705acbfd1139a7736 /after/lib/crti.o
461ca1494737fab86fe1c1d3addeaf9d0ece413e353abcdea8674db3f700cda3 /after/lib/crtn.o
-4f7e4089ab34cedf828586d233c29c445c61f4248fc790a057c1b7e12a07ef01 /after/lib/tcc/libtcc1.a
+ac11f09698f092ed76ae40ebcd56cf3f2b903ea1333ef7537a00673dd6f73da7 /after/lib/tcc/libtcc1.a
diff --git a/sysa/tcc-0.9.26/src/mes-libc b/sysa/tcc-0.9.26/src/mes-libc
@@ -1 +0,0 @@
-Subproject commit 22d37adeef22c184a113daec4bf06536ea099e6a
diff --git a/sysa/tcc-0.9.26/src/tcc-0.9.26 b/sysa/tcc-0.9.26/src/tcc-0.9.26
@@ -1 +0,0 @@
-Subproject commit 5bba73ccca0e794a6557de166b91923228cb6f73
diff --git a/sysa/tcc-0.9.26/tcc-0.9.26.kaem b/sysa/tcc-0.9.26/tcc-0.9.26.kaem
@@ -14,9 +14,22 @@ MES_LIB=${MES_PREFIX}/lib
MES_SOURCE=${MES_PREFIX}
MES=${bindir}/mes-m2
-cd src/tcc-0.9.26
+TCC_TAR=tcc-0.9.26
+TCC_PKG=tcc-0.9.26-1136-g5bba73cc
+
+MES_PKG=mes-0.23
+
+# Unpack
+cd src
+ungz ${TCC_TAR}.tar.gz
+untar ${TCC_TAR}.tar
+
+cp ../../mes-0.23/src/mes-0.23.tar.gz mes-0.23.tar.gz
+ungz mes-0.23.tar.gz
+untar mes-0.23.tar
# Create config.h
+cd ${TCC_PKG}
catm config.h
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- \
@@ -53,12 +66,12 @@ chmod 755 ${bindir}/mes-tcc
mes-tcc -version
# Recompile the mes C library
-cd ../mes-libc
+cd ../${MES_PKG}
-# Create unified libc files
-catm unified-libc-1.c lib/mes/eputs.c lib/mes/oputs.c lib/mes/globals.c lib/stdlib/exit.c lib/linux/x86-mes-gcc/_exit.c lib/linux/x86-mes-gcc/_write.c lib/stdlib/puts.c lib/string/strlen.c lib/ctype/isnumber.c lib/mes/abtol.c lib/mes/cast.c lib/mes/eputc.c lib/mes/fdgetc.c lib/mes/fdputc.c lib/mes/fdputs.c lib/mes/fdungetc.c lib/mes/itoa.c lib/mes/ltoa.c lib/mes/ltoab.c lib/mes/mes_open.c lib/mes/ntoab.c lib/mes/oputc.c lib/mes/ultoa.c lib/mes/utoa.c lib/ctype/isdigit.c lib/ctype/isspace.c lib/ctype/isxdigit.c lib/mes/assert_msg.c lib/posix/write.c lib/stdlib/atoi.c lib/linux/lseek.c lib/mes/__assert_fail.c lib/mes/__buffered_read.c lib/mes/__mes_debug.c lib/posix/execv.c lib/posix/getcwd.c lib/posix/getenv.c lib/posix/isatty.c lib/posix/open.c lib/posix/buffered-read.c lib/posix/setenv.c lib/posix/wait.c lib/stdio/fgetc.c lib/stdio/fputc.c lib/stdio/fputs.c lib/stdio/getc.c lib/stdio/getchar.c lib/stdio/putc.c lib/stdio/putchar.c lib/stdio/ungetc.c lib/stdlib/free.c lib/stdlib/malloc.c lib/stdlib/realloc.c lib/string/memchr.c lib/string/memcmp.c lib/string/memcpy.c lib/string/memmove.c lib/string/memset.c lib/string/strcmp.c lib/string/strcpy.c lib/string/strncmp.c lib/posix/raise.c lib/linux/access.c lib/linux/brk.c lib/linux/chmod.c lib/linux/clock_gettime.c lib/linux/dup.c lib/linux/dup2.c lib/linux/execve.c lib/linux/fork.c lib/linux/fsync.c lib/linux/_getcwd.c lib/linux/gettimeofday.c lib/linux/ioctl3.c lib/linux/_open3.c lib/linux/_read.c lib/linux/time.c lib/linux/unlink.c lib/linux/waitpid.c lib/linux/x86-mes-gcc/syscall.c lib/linux/getpid.c lib/linux/kill.c lib/ctype/islower.c lib/ctype/isupper.c lib/ctype/tolower.c lib/ctype/toupper.c lib/mes/abtod.c lib/mes/dtoab.c lib/mes/search-path.c lib/posix/execvp.c lib/stdio/fclose.c lib/stdio/fdopen.c lib/stdio/ferror.c lib/stdio/fflush.c lib/stdio/fopen.c lib/stdio/fprintf.c lib/stdio/fread.c lib/stdio/fseek.c lib/stdio/ftell.c lib/stdio/fwrite.c
-catm unified-libc-2.c lib/stdio/printf.c lib/stdio/remove.c lib/stdio/snprintf.c lib/stdio/sprintf.c lib/stdio/sscanf.c lib/stdio/vfprintf.c lib/stdio/vprintf.c lib/stdio/vsnprintf.c lib/stdio/vsprintf.c lib/stdio/vsscanf.c lib/stdlib/calloc.c lib/stdlib/qsort.c lib/stdlib/strtod.c lib/stdlib/strtof.c lib/stdlib/strtol.c lib/stdlib/strtold.c lib/stdlib/strtoll.c lib/stdlib/strtoul.c lib/stdlib/strtoull.c lib/string/memmem.c lib/string/strcat.c lib/string/strchr.c lib/string/strlwr.c lib/string/strncpy.c lib/string/strrchr.c lib/string/strstr.c lib/string/strupr.c lib/stub/sigaction.c lib/stub/ldexp.c lib/stub/mprotect.c lib/stub/localtime.c lib/stub/sigemptyset.c lib/x86-mes-gcc/setjmp.c lib/linux/close.c lib/linux/rmdir.c lib/linux/stat.c lib/ctype/isalnum.c lib/ctype/isalpha.c lib/ctype/isascii.c lib/ctype/iscntrl.c lib/ctype/isgraph.c lib/ctype/isprint.c lib/ctype/ispunct.c lib/dirent/__getdirentries.c lib/dirent/closedir.c lib/dirent/opendir.c lib/dirent/readdir.c lib/math/ceil.c lib/math/fabs.c lib/math/floor.c lib/mes/fdgets.c lib/posix/alarm.c lib/posix/execl.c lib/posix/execlp.c lib/posix/mktemp.c lib/posix/sbrk.c lib/posix/sleep.c lib/posix/unsetenv.c lib/stdio/clearerr.c lib/stdio/feof.c lib/stdio/fgets.c lib/stdio/fileno.c lib/stdio/freopen.c lib/stdio/fscanf.c lib/stdio/perror.c lib/stdio/vfscanf.c lib/stdlib/__exit.c lib/stdlib/abort.c lib/stdlib/abs.c lib/stdlib/alloca.c lib/stdlib/atexit.c lib/stdlib/atof.c lib/stdlib/atol.c lib/stdlib/mbstowcs.c lib/string/bcmp.c lib/string/bcopy.c lib/string/bzero.c lib/string/index.c lib/string/rindex.c lib/string/strcspn.c lib/string/strdup.c lib/string/strerror.c lib/string/strncat.c lib/string/strpbrk.c lib/string/strspn.c lib/stub/__cleanup.c lib/stub/atan2.c lib/stub/bsearch.c lib/stub/chown.c lib/stub/cos.c lib/stub/ctime.c lib/stub/exp.c lib/stub/fpurge.c lib/stub/freadahead.c lib/stub/frexp.c lib/stub/getgrgid.c lib/stub/getgrnam.c lib/stub/getlogin.c lib/stub/getpgid.c lib/stub/getpgrp.c lib/stub/getpwnam.c
-catm unified-libc-3.c lib/stub/getpwuid.c lib/stub/gmtime.c lib/stub/log.c lib/stub/mktime.c lib/stub/modf.c lib/stub/pclose.c lib/stub/popen.c lib/stub/pow.c lib/stub/rand.c lib/stub/rewind.c lib/stub/setbuf.c lib/stub/setgrent.c lib/stub/setlocale.c lib/stub/setvbuf.c lib/stub/sigaddset.c lib/stub/sigblock.c lib/stub/sigdelset.c lib/stub/sigsetmask.c lib/stub/sin.c lib/stub/sqrt.c lib/stub/strftime.c lib/stub/sys_siglist.c lib/stub/system.c lib/stub/times.c lib/stub/ttyname.c lib/stub/umask.c lib/stub/utime.c lib/linux/chdir.c lib/linux/fcntl.c lib/linux/fstat.c lib/linux/getdents.c lib/linux/getegid.c lib/linux/geteuid.c lib/linux/getgid.c lib/linux/getppid.c lib/linux/getrusage.c lib/linux/getuid.c lib/linux/ioctl.c lib/linux/link.c lib/linux/lstat.c lib/linux/mkdir.c lib/linux/mknod.c lib/linux/nanosleep.c lib/linux/pipe.c lib/linux/readlink.c lib/linux/rename.c lib/linux/setgid.c lib/linux/settimer.c lib/linux/setuid.c lib/linux/signal.c lib/linux/sigprogmask.c lib/linux/symlink.c
+# Create unified libc file
+cd lib
+catm ../unified-libc.c ctype/isalnum.c ctype/isalpha.c ctype/isascii.c ctype/iscntrl.c ctype/isdigit.c ctype/isgraph.c ctype/islower.c ctype/isnumber.c ctype/isprint.c ctype/ispunct.c ctype/isspace.c ctype/isupper.c ctype/isxdigit.c ctype/tolower.c ctype/toupper.c dirent/closedir.c dirent/__getdirentries.c dirent/opendir.c dirent/readdir.c linux/access.c linux/brk.c linux/chdir.c linux/chmod.c linux/clock_gettime.c linux/close.c linux/dup2.c linux/dup.c linux/execve.c linux/fcntl.c linux/fork.c linux/fsync.c linux/fstat.c linux/_getcwd.c linux/getdents.c linux/getegid.c linux/geteuid.c linux/getgid.c linux/getpid.c linux/getppid.c linux/getrusage.c linux/gettimeofday.c linux/getuid.c linux/ioctl.c linux/kill.c linux/link.c linux/lseek.c linux/lstat.c linux/mkdir.c linux/mknod.c linux/nanosleep.c linux/_open3.c linux/pipe.c linux/_read.c linux/readlink.c linux/rename.c linux/rmdir.c linux/setgid.c linux/settimer.c linux/setuid.c linux/signal.c linux/sigprogmask.c linux/symlink.c linux/stat.c linux/time.c linux/unlink.c linux/waitpid.c linux/x86-mes-gcc/_exit.c linux/x86-mes-gcc/syscall.c linux/x86-mes-gcc/_write.c math/ceil.c math/fabs.c math/floor.c mes/abtod.c mes/abtol.c mes/__assert_fail.c mes/__buffered_read.c mes/dtoab.c mes/eputc.c mes/eputs.c mes/fdgetc.c mes/fdgets.c mes/fdputc.c mes/fdputs.c mes/fdungetc.c mes/globals.c mes/itoa.c mes/ltoab.c mes/ltoa.c mes/__mes_debug.c mes/mes_open.c mes/ntoab.c mes/oputc.c mes/oputs.c mes/search-path.c mes/ultoa.c mes/utoa.c posix/alarm.c posix/buffered-read.c posix/execl.c posix/execlp.c posix/execv.c posix/execvp.c posix/getcwd.c posix/getenv.c posix/isatty.c posix/mktemp.c posix/open.c posix/raise.c posix/sbrk.c posix/setenv.c posix/sleep.c posix/unsetenv.c posix/wait.c posix/write.c stdio/clearerr.c stdio/fclose.c stdio/fdopen.c stdio/feof.c stdio/ferror.c stdio/fflush.c stdio/fgetc.c stdio/fgets.c stdio/fileno.c stdio/fopen.c stdio/fprintf.c stdio/fputc.c stdio/fputs.c stdio/fread.c stdio/freopen.c stdio/fscanf.c stdio/fseek.c stdio/ftell.c stdio/fwrite.c stdio/getc.c stdio/getchar.c stdio/perror.c stdio/printf.c stdio/putc.c stdio/putchar.c stdio/remove.c stdio/snprintf.c stdio/sprintf.c stdio/sscanf.c stdio/ungetc.c stdio/vfprintf.c stdio/vfscanf.c stdio/vprintf.c stdio/vsnprintf.c stdio/vsprintf.c stdio/vsscanf.c stdlib/abort.c stdlib/abs.c stdlib/alloca.c stdlib/atexit.c stdlib/atof.c stdlib/atoi.c stdlib/atol.c stdlib/calloc.c stdlib/__exit.c stdlib/exit.c stdlib/free.c stdlib/malloc.c stdlib/mbstowcs.c stdlib/puts.c stdlib/qsort.c stdlib/realloc.c stdlib/strtod.c stdlib/strtof.c stdlib/strtol.c stdlib/strtold.c stdlib/strtoll.c stdlib/strtoul.c stdlib/strtoull.c string/bcmp.c string/bcopy.c string/bzero.c string/index.c string/memchr.c string/memcmp.c string/memcpy.c string/memmem.c string/memmove.c string/memset.c string/rindex.c string/strcat.c string/strchr.c string/strcmp.c string/strcpy.c string/strcspn.c string/strdup.c string/strerror.c string/strlen.c string/strlwr.c string/strncat.c string/strncmp.c string/strncpy.c string/strpbrk.c string/strrchr.c string/strspn.c string/strstr.c string/strupr.c stub/atan2.c stub/bsearch.c stub/chown.c stub/__cleanup.c stub/cos.c stub/ctime.c stub/exp.c stub/fpurge.c stub/freadahead.c stub/frexp.c stub/getgrgid.c stub/getgrnam.c stub/getlogin.c stub/getpgid.c stub/getpgrp.c stub/getpwnam.c stub/getpwuid.c stub/gmtime.c stub/ldexp.c stub/localtime.c stub/log.c stub/mktime.c stub/modf.c stub/mprotect.c stub/pclose.c stub/popen.c stub/pow.c stub/rand.c stub/rewind.c stub/setbuf.c stub/setgrent.c stub/setlocale.c stub/setvbuf.c stub/sigaction.c stub/sigaddset.c stub/sigblock.c stub/sigdelset.c stub/sigemptyset.c stub/sigsetmask.c stub/sin.c stub/sys_siglist.c stub/system.c stub/sqrt.c stub/strftime.c stub/times.c stub/ttyname.c stub/umask.c stub/utime.c x86-mes-gcc/setjmp.c
+cd ..
# crt1.o
mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
@@ -70,12 +83,11 @@ mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.
mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
# libc+gcc.a
-mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-mes-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
+mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+mes-tcc -ar cr ${libdir}/libc.a unified-libc.o
# libtcc1.a
+mkdir ${libdir}/tcc
mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 lib/libtcc1.c
mes-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
@@ -83,7 +95,7 @@ mes-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
mes-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 lib/posix/getopt.c
mes-tcc -ar cr ${libdir}/libgetopt.a getopt.o
-cd ../tcc-0.9.26
+cd ../${TCC_PKG}
# boot0 (ref comments here for all boot*)
# compile
@@ -117,19 +129,17 @@ mes-tcc \
# Install
cp boot0-tcc ${bindir}/
chmod 755 ${bindir}/boot0-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
# Recompile libc: crt{1,n,i}, libtcc.a, libc.a
boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot0-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_LONG_LONG_STUB=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot0-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot0-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot0-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot0-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
-cd ../tcc-0.9.26
+boot0-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot0-tcc -ar cr ${libdir}/libc.a unified-libc.o
+cd ../${TCC_PKG}
# Test boot0
boot0-tcc -version
@@ -164,18 +174,16 @@ boot0-tcc \
tcc.c
cp boot1-tcc ${bindir}
chmod 755 ${bindir}/boot1-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot1-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_LONG_LONG=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot1-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot1-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot1-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot1-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
-cd ../tcc-0.9.26
+boot1-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot1-tcc -ar cr ${libdir}/libc.a unified-libc.o
+cd ../${TCC_PKG}
# Test boot1
boot1-tcc -version
@@ -211,18 +219,16 @@ boot1-tcc \
tcc.c
cp boot2-tcc ${bindir}
chmod 755 ${bindir}/boot2-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot2-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_FLOAT_STUB=1 -D HAVE_LONG_LONG=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot2-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot2-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot2-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot2-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
-cd ../tcc-0.9.26
+boot2-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot2-tcc -ar cr ${libdir}/libc.a unified-libc.o
+cd ../${TCC_PKG}
# Test boot2
boot2-tcc -version
@@ -258,18 +264,16 @@ boot2-tcc \
tcc.c
cp boot3-tcc ${bindir}
chmod 755 ${bindir}/boot3-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot3-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_FLOAT=1 -D HAVE_LONG_LONG=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot3-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot3-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot3-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot3-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
-cd ../tcc-0.9.26
+boot3-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot3-tcc -ar cr ${libdir}/libc.a unified-libc.o
+cd ../${TCC_PKG}
# Test boot3
boot3-tcc -version
@@ -305,18 +309,16 @@ boot3-tcc \
tcc.c
cp boot4-tcc ${bindir}
chmod 755 ${bindir}/boot4-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot4-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_FLOAT=1 -D HAVE_LONG_LONG=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot4-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot4-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot4-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot4-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
-cd ../tcc-0.9.26
+boot4-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot4-tcc -ar cr ${libdir}/libc.a unified-libc.o
+cd ../${TCC_PKG}
# Test boot4
boot4-tcc -version
@@ -352,17 +354,15 @@ boot4-tcc \
tcc.c
cp boot5-tcc ${bindir}
chmod 755 ${bindir}/boot5-tcc
-cd ../mes-libc
+cd ../${MES_PKG}
boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crt1.o lib/linux/x86-mes-gcc/crt1.c
boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crtn.o lib/linux/x86-mes-gcc/crtn.c
boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o ${libdir}/crti.o lib/linux/x86-mes-gcc/crti.c
boot5-tcc -c -D HAVE_CONFIG_H=1 -D HAVE_FLOAT=1 -D HAVE_LONG_LONG=1 -I include -I include/linux/x86 lib/libtcc1.c
-boot5-tcc -c -D TCC_TARGET_I386=1 ../tcc-0.9.26/lib/libtcc1.c
+boot5-tcc -c -D TCC_TARGET_I386=1 ../${TCC_PKG}/lib/libtcc1.c
boot5-tcc -ar cr ${libdir}/tcc/libtcc1.a libtcc1.o
-boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-1.o unified-libc-1.c
-boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-2.o unified-libc-2.c
-boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc-3.o unified-libc-3.c
-boot5-tcc -ar cr ${libdir}/libc.a unified-libc-1.o unified-libc-2.o unified-libc-3.o
+boot5-tcc -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 -o unified-libc.o unified-libc.c
+boot5-tcc -ar cr ${libdir}/libc.a unified-libc.o
# Test boot5
boot5-tcc -version
diff --git a/sysa/tcc-0.9.27/checksums/tcc-0.9.27 b/sysa/tcc-0.9.27/checksums/tcc-0.9.27
@@ -1 +1 @@
-37528569b3dcc36d549d5008919e4469c8eb14973d77a80dedab4db6f766025c /after/bin/tcc
+8ae088649b5789a4d6a0ba785f5daa07e06a331a663a16093ac63b40ec5f6ef5 /after/bin/tcc
diff --git a/sysa/tcc-0.9.27/tcc-0.9.27.kaem b/sysa/tcc-0.9.27/tcc-0.9.27.kaem
@@ -7,6 +7,7 @@
set -ex
+mkdir build
cd build
# Extract