parent
1e822361a9
commit
d62ed4c55a
14
rootfs.sh
14
rootfs.sh
|
@ -36,9 +36,13 @@ ln -s . tmp/after/lib/x86-mes
|
||||||
ln -s . tmp/after/lib/linux/x86-mes
|
ln -s . tmp/after/lib/linux/x86-mes
|
||||||
mkdir -p tmp/after/include/{mes,gnu,linux,sys,mach}
|
mkdir -p tmp/after/include/{mes,gnu,linux,sys,mach}
|
||||||
mkdir -p tmp/after/include/linux/{x86,x86_64}
|
mkdir -p tmp/after/include/linux/{x86,x86_64}
|
||||||
|
mkdir -p tmp/tmp
|
||||||
cp after.kaem tmp/
|
cp after.kaem tmp/
|
||||||
cp after.kaem.run tmp/after/kaem.run
|
cp after.kaem.run tmp/after/kaem.run
|
||||||
|
|
||||||
|
# Copy in all of the patches
|
||||||
|
cp -r patches tmp/after/
|
||||||
|
|
||||||
# mescc-tools-extra
|
# mescc-tools-extra
|
||||||
cp -r mescc-tools-extra tmp/after/
|
cp -r mescc-tools-extra tmp/after/
|
||||||
|
|
||||||
|
@ -74,8 +78,11 @@ popd
|
||||||
mkdir -p ../sources
|
mkdir -p ../sources
|
||||||
|
|
||||||
# sed 4.0.7
|
# sed 4.0.7
|
||||||
cp sed-4.0.7.kaem tmp/after
|
cp sed-4.0.7.kaem tmp/after/
|
||||||
cp -r sed-4.0.7 tmp/after
|
cp -r sed-4.0.7 tmp/after/
|
||||||
|
|
||||||
|
# tcc patched
|
||||||
|
cp tcc-patched.kaem tmp/after/
|
||||||
|
|
||||||
# tar 1.12
|
# tar 1.12
|
||||||
url=https://ftp.gnu.org/gnu/tar/tar-1.12.tar.gz
|
url=https://ftp.gnu.org/gnu/tar/tar-1.12.tar.gz
|
||||||
|
@ -111,6 +118,9 @@ get_file https://ftp.gnu.org/gnu/diffutils/diffutils-2.7.tar.gz
|
||||||
# patch 2.5.9
|
# patch 2.5.9
|
||||||
get_file https://ftp.gnu.org/pub/gnu/patch/patch-2.5.9.tar.gz
|
get_file https://ftp.gnu.org/pub/gnu/patch/patch-2.5.9.tar.gz
|
||||||
|
|
||||||
|
# patched tcc
|
||||||
|
cp tcc-patched.kaem tmp/after/
|
||||||
|
|
||||||
# General cleanup
|
# General cleanup
|
||||||
find tmp -name .git -exec rm -rf \;
|
find tmp -name .git -exec rm -rf \;
|
||||||
|
|
||||||
|
|
|
@ -71,9 +71,14 @@ cd diffutils-2.7
|
||||||
kaem --file ../diffutils-2.7.kaem
|
kaem --file ../diffutils-2.7.kaem
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
# Part 12: patch
|
# Part 11: patch
|
||||||
/after/bin/gunzip patch-2.5.9.tar.gz
|
/after/bin/gunzip patch-2.5.9.tar.gz
|
||||||
/after/bin/tar xf patch-2.5.9.tar
|
/after/bin/tar xf patch-2.5.9.tar
|
||||||
cd patch-2.5.9
|
cd patch-2.5.9
|
||||||
kaem --file ../patch-2.5.9.kaem
|
kaem --file ../patch-2.5.9.kaem
|
||||||
cd ..
|
cd ..
|
||||||
|
|
||||||
|
# Part 12: tcc-patched
|
||||||
|
cd tcc-0.9.27
|
||||||
|
kaem --file ../tcc-patched.kaem
|
||||||
|
cd ..
|
||||||
|
|
|
@ -0,0 +1,10 @@
|
||||||
|
--- libtcc.c 2021-01-14 08:25:30.774995301 +1100
|
||||||
|
+++ libtcc.c 2021-01-14 08:26:37.594417450 +1100
|
||||||
|
@@ -734,6 +734,7 @@
|
||||||
|
++nb_states;
|
||||||
|
|
||||||
|
s->alacarte_link = 1;
|
||||||
|
+ s->static_link = 1;
|
||||||
|
s->nocommon = 1;
|
||||||
|
s->warn_implicit_function_declaration = 1;
|
||||||
|
s->ms_extensions = 1;
|
|
@ -0,0 +1,34 @@
|
||||||
|
#!/bin/sh
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
# Vars
|
||||||
|
prefix=/after
|
||||||
|
libdir=${prefix}/lib
|
||||||
|
bindir=${prefix}/bin
|
||||||
|
|
||||||
|
# Patch
|
||||||
|
patch -Np0 -i ../patches/tcc/static-link.patch
|
||||||
|
|
||||||
|
# Compile
|
||||||
|
## We have to use 0.9.26 to recompile 0.9.27, 0.9.27 is not self-hosting for
|
||||||
|
## whatever reason.
|
||||||
|
boot5-tcc \
|
||||||
|
-v \
|
||||||
|
-static \
|
||||||
|
-o ${bindir}/tcc \
|
||||||
|
-D TCC_TARGET_I386=1 \
|
||||||
|
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
|
||||||
|
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
|
||||||
|
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
|
||||||
|
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
|
||||||
|
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
|
||||||
|
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
|
||||||
|
-D CONFIG_TCC_STATIC=1 \
|
||||||
|
-D CONFIG_USE_LIBGCC=1 \
|
||||||
|
-D TCC_VERSION=\"0.9.27\" \
|
||||||
|
-D ONE_SOURCE=1 \
|
||||||
|
tcc.c
|
||||||
|
|
||||||
|
# Test
|
||||||
|
tcc -version
|
Loading…
Reference in New Issue