Use more variables

This commit is contained in:
fosslinux 2021-01-12 16:07:29 +11:00
parent ae746bb0a6
commit 04ce8ebaef
2 changed files with 158 additions and 155 deletions

View File

@ -2,15 +2,17 @@
set -ex
# All of the stuff for mescc
# Variables
prefix=${prefix}
MES_ARENA=20000000
MES_MAX_ARENA=20000000
MES_STACK=6000000
MES_PREFIX=/after
GUILE_LOAD_PATH=/after/nyacc/module:/after/mes/mes/module
MES=/after/bin/mes
bindir=/after/bin
libdir=/after/mes/lib
MES_PREFIX=${prefix}
GUILE_LOAD_PATH=${prefix}/nyacc/module:${prefix}/mes/mes/module
bindir=${prefix}/bin
MES=${bindir}/mes
libdir=${prefix}/mes/lib
incdir=${prefix}/include
chmod 755 bin/mescc.scm
@ -200,92 +202,92 @@ ${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- -c -D HAVE_CONFIG_H=1 -I
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- -c -D HAVE_CONFIG_H=1 -I include -I include/linux/x86 src/vector.c
# Link everything into new mes executable
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- -L ${libdir} -nostdlib -o /after/bin/mes-new -L . crt1.o builtins.o cc.o core.o display.o eval-apply.o gc.o hash.o lib.o math.o mes.o module.o posix.o reader.o stack.o string.o struct.o symbol.o vector.o -lc -lmescc
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- -L ${libdir} -nostdlib -o ${bindir}/mes-new -L . crt1.o builtins.o cc.o core.o display.o eval-apply.o gc.o hash.o lib.o math.o mes.o module.o posix.o reader.o stack.o string.o struct.o symbol.o vector.o -lc -lmescc
# Now we finally have the final mes+libraries which we will subsequently use to compile tcc
cp /after/bin/mes-new /after/bin/mes
cp ${bindir}/mes-new ${bindir}/mes
# Install libraries
cp ${libdir}/x86-mes/libc.a /after/lib/
cp ${libdir}/x86-mes/libc+tcc.a /after/lib/
cp ${libdir}/x86-mes/libmescc.a /after/lib/
cp ${libdir}/x86-mes/libc.s /after/lib/
cp ${libdir}/x86-mes/libc+tcc.s /after/lib/
cp ${libdir}/x86-mes/libmescc.s /after/lib/
cp ${libdir}/x86-mes/x86.M1 /after/lib/
cp crt1.o /after/lib/
cp crt1.s /after/lib/
cp ${libdir}/linux/x86-mes/elf32-footer-single-main.hex2 /after/lib/linux/
cp ${libdir}/linux/x86-mes/elf32-header.hex2 /after/lib/linux/
cp ${libdir}/x86-mes/libc.a ${prefix}/lib/
cp ${libdir}/x86-mes/libc+tcc.a ${prefix}/lib/
cp ${libdir}/x86-mes/libmescc.a ${prefix}/lib/
cp ${libdir}/x86-mes/libc.s ${prefix}/lib/
cp ${libdir}/x86-mes/libc+tcc.s ${prefix}/lib/
cp ${libdir}/x86-mes/libmescc.s ${prefix}/lib/
cp ${libdir}/x86-mes/x86.M1 ${prefix}/lib/
cp crt1.o ${prefix}/lib/
cp crt1.s ${prefix}/lib/
cp ${libdir}/linux/x86-mes/elf32-footer-single-main.hex2 ${prefix}/lib/linux/
cp ${libdir}/linux/x86-mes/elf32-header.hex2 ${prefix}/lib/linux/
# Install header files
cp include/alloca.h /after/include/alloca.h
cp include/argz.h /after/include/argz.h
cp include/ar.h /after/include/ar.h
cp include/assert.h /after/include/assert.h
cp include/ctype.h /after/include/ctype.h
cp include/dirent.h /after/include/dirent.h
cp include/dirstream.h /after/include/dirstream.h
cp include/dlfcn.h /after/include/dlfcn.h
cp include/endian.h /after/include/endian.h
cp include/errno.h /after/include/errno.h
cp include/fcntl.h /after/include/fcntl.h
cp include/features.h /after/include/features.h
cp include/float.h /after/include/float.h
cp include/getopt.h /after/include/getopt.h
cp include/grp.h /after/include/grp.h
cp include/inttypes.h /after/include/inttypes.h
cp include/libgen.h /after/include/libgen.h
cp include/limits.h /after/include/limits.h
cp include/locale.h /after/include/locale.h
cp include/math.h /after/include/math.h
cp include/memory.h /after/include/memory.h
cp include/pwd.h /after/include/pwd.h
cp include/setjmp.h /after/include/setjmp.h
cp include/signal.h /after/include/signal.h
cp include/stdarg.h /after/include/stdarg.h
cp include/stdbool.h /after/include/stdbool.h
cp include/stddef.h /after/include/stddef.h
cp include/stdint.h /after/include/stdint.h
cp include/stdio.h /after/include/stdio.h
cp include/stdlib.h /after/include/stdlib.h
cp include/stdnoreturn.h /after/include/stdnoreturn.h
cp include/string.h /after/include/string.h
cp include/strings.h /after/include/strings.h
cp include/termio.h /after/include/termio.h
cp include/time.h /after/include/time.h
cp include/unistd.h /after/include/unistd.h
cp include/alloca.h ${incdir}/alloca.h
cp include/argz.h ${incdir}/argz.h
cp include/ar.h ${incdir}/ar.h
cp include/assert.h ${incdir}/assert.h
cp include/ctype.h ${incdir}/ctype.h
cp include/dirent.h ${incdir}/dirent.h
cp include/dirstream.h ${incdir}/dirstream.h
cp include/dlfcn.h ${incdir}/dlfcn.h
cp include/endian.h ${incdir}/endian.h
cp include/errno.h ${incdir}/errno.h
cp include/fcntl.h ${incdir}/fcntl.h
cp include/features.h ${incdir}/features.h
cp include/float.h ${incdir}/float.h
cp include/getopt.h ${incdir}/getopt.h
cp include/grp.h ${incdir}/grp.h
cp include/inttypes.h ${incdir}/inttypes.h
cp include/libgen.h ${incdir}/libgen.h
cp include/limits.h ${incdir}/limits.h
cp include/locale.h ${incdir}/locale.h
cp include/math.h ${incdir}/math.h
cp include/memory.h ${incdir}/memory.h
cp include/pwd.h ${incdir}/pwd.h
cp include/setjmp.h ${incdir}/setjmp.h
cp include/signal.h ${incdir}/signal.h
cp include/stdarg.h ${incdir}/stdarg.h
cp include/stdbool.h ${incdir}/stdbool.h
cp include/stddef.h ${incdir}/stddef.h
cp include/stdint.h ${incdir}/stdint.h
cp include/stdio.h ${incdir}/stdio.h
cp include/stdlib.h ${incdir}/stdlib.h
cp include/stdnoreturn.h ${incdir}/stdnoreturn.h
cp include/string.h ${incdir}/string.h
cp include/strings.h ${incdir}/strings.h
cp include/termio.h ${incdir}/termio.h
cp include/time.h ${incdir}/time.h
cp include/unistd.h ${incdir}/unistd.h
cp include/linux/syscall.h /after/include/linux/syscall.h
cp include/linux/x86/syscall.h /after/include/linux/x86/syscall.h
cp include/linux/syscall.h ${incdir}/linux/syscall.h
cp include/linux/x86/syscall.h ${incdir}/linux/x86/syscall.h
cp include/mes/builtins.h /after/include/mes/builtins.h
cp include/mes/cc.h /after/include/mes/cc.h
cp include/mes/constants.h /after/include/mes/constants.h
cp include/mes/lib.h /after/include/mes/lib.h
cp include/mes/lib-mini.h /after/include/mes/lib-mini.h
cp include/mes/mes.h /after/include/mes/mes.h
cp include/mes/symbols.h /after/include/mes/symbols.h
cp include/mes/builtins.h ${incdir}/mes/builtins.h
cp include/mes/cc.h ${incdir}/mes/cc.h
cp include/mes/constants.h ${incdir}/mes/constants.h
cp include/mes/lib.h ${incdir}/mes/lib.h
cp include/mes/lib-mini.h ${incdir}/mes/lib-mini.h
cp include/mes/mes.h ${incdir}/mes/mes.h
cp include/mes/symbols.h ${incdir}/mes/symbols.h
cp include/sys/cdefs.h /after/include/sys/cdefs.h
cp include/sys/dir.h /after/include/sys/dir.h
cp include/sys/file.h /after/include/sys/file.h
cp include/sys/ioctl.h /after/include/sys/ioctl.h
cp include/sys/mman.h /after/include/sys/mman.h
cp include/sys/param.h /after/include/sys/param.h
cp include/sys/resource.h /after/include/sys/resource.h
cp include/sys/select.h /after/include/sys/select.h
cp include/sys/stat.h /after/include/sys/stat.h
cp include/sys/timeb.h /after/include/sys/timeb.h
cp include/sys/time.h /after/include/sys/time.h
cp include/sys/times.h /after/include/sys/times.h
cp include/sys/types.h /after/include/sys/types.h
cp include/sys/ucontext.h /after/include/sys/ucontext.h
cp include/sys/user.h /after/include/sys/user.h
cp include/sys/wait.h /after/include/sys/wait.h
cp include/sys/cdefs.h ${incdir}/sys/cdefs.h
cp include/sys/dir.h ${incdir}/sys/dir.h
cp include/sys/file.h ${incdir}/sys/file.h
cp include/sys/ioctl.h ${incdir}/sys/ioctl.h
cp include/sys/mman.h ${incdir}/sys/mman.h
cp include/sys/param.h ${incdir}/sys/param.h
cp include/sys/resource.h ${incdir}/sys/resource.h
cp include/sys/select.h ${incdir}/sys/select.h
cp include/sys/stat.h ${incdir}/sys/stat.h
cp include/sys/timeb.h ${incdir}/sys/timeb.h
cp include/sys/time.h ${incdir}/sys/time.h
cp include/sys/times.h ${incdir}/sys/times.h
cp include/sys/types.h ${incdir}/sys/types.h
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
# Test mes
libdir=/after/lib
libdir=${prefix}/lib
${MES} -c "(display 'Hello,Mes!) (newline)"
cd ..

View File

@ -3,34 +3,35 @@
set -ex
# Vars
bindir=/after/bin
libdir=/after/lib
GUILE_LOAD_PATH=/after/nyacc/module:/after/mes/mes/module
MES_PREFIX=/after/mes
bindir=${bindir}
libdir=${libdir}
prefix=${prefix}
GUILE_LOAD_PATH=${prefix}/nyacc/module:${prefix}/mes/mes/module
MES_PREFIX=${prefix}/mes
MES_STACK=15000000
MES_ARENA=30000000
MES_MAX_ARENA=30000000
MES_LIB=${MES_PREFIX}/lib
MES_SOURCE=${MES_PREFIX}
MES=/after/bin/mes
MES=${bindir}/mes
# Initial tcc
cd tcc-0.9.26
${MES} --no-auto-compile -e main /after/bin/mescc.scm -- \
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- \
-S \
-o tcc.s \
-I /after/mes/lib \
-I /after/mes/include \
-I ${prefix}/mes/lib \
-I ${prefix}/mes/include \
-D BOOTSTRAP=1 \
-I . \
-D TCC_TARGET_I386=1 \
-D inline= \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_SYSROOT=\"/\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/mes/include:/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/mes/include:${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D CONFIG_TCC_LIBTCC1_MES=0 \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -39,13 +40,13 @@ ${MES} --no-auto-compile -e main /after/bin/mescc.scm -- \
-D TCC_VERSION=\"0.9.26\" \
-D ONE_SOURCE=1 \
tcc.c
${MES} --no-auto-compile -e main /after/bin/mescc.scm -- \
${MES} --no-auto-compile -e main ${bindir}/mescc.scm -- \
-o mes-tcc \
-L /after/lib \
-L ${libdir} \
tcc.s \
-l c+tcc
cp mes-tcc /after/bin/
chmod 755 /after/bin/mes-tcc
cp mes-tcc ${bindir}/
chmod 755 ${bindir}/mes-tcc
# test mes-tcc
mes-tcc -version
@ -95,14 +96,14 @@ mes-tcc \
-D HAVE_LONG_LONG_STUB=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -111,11 +112,11 @@ mes-tcc \
-D TCC_VERSION=\"0.9.26\" \
-D ONE_SOURCE=1 \
-L . \
-L /after/lib \
-L ${libdir} \
tcc.c
# Install
cp boot0-tcc /after/bin/
chmod 755 /after/bin/boot0-tcc
cp boot0-tcc ${bindir}/
chmod 755 ${bindir}/boot0-tcc
cd ../tcc-mes
# 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
@ -144,14 +145,14 @@ boot0-tcc \
-D HAVE_LONG_LONG=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -161,8 +162,8 @@ boot0-tcc \
-D ONE_SOURCE=1 \
-L . \
tcc.c
cp boot1-tcc /after/bin
chmod 755 /after/bin/boot1-tcc
cp boot1-tcc ${bindir}
chmod 755 ${bindir}/boot1-tcc
cd ../tcc-mes
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
@ -191,14 +192,14 @@ boot1-tcc \
-D HAVE_LONG_LONG=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -208,8 +209,8 @@ boot1-tcc \
-D ONE_SOURCE=1 \
-L . \
tcc.c
cp boot2-tcc /after/bin
chmod 755 /after/bin/boot2-tcc
cp boot2-tcc ${bindir}
chmod 755 ${bindir}/boot2-tcc
cd ../tcc-mes
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
@ -238,14 +239,14 @@ boot2-tcc \
-D HAVE_LONG_LONG=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -255,8 +256,8 @@ boot2-tcc \
-D ONE_SOURCE=1 \
-L . \
tcc.c
cp boot3-tcc /after/bin
chmod 755 /after/bin/boot3-tcc
cp boot3-tcc ${bindir}
chmod 755 ${bindir}/boot3-tcc
cd ../tcc-mes
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
@ -285,14 +286,14 @@ boot3-tcc \
-D HAVE_LONG_LONG=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -302,8 +303,8 @@ boot3-tcc \
-D ONE_SOURCE=1 \
-L . \
tcc.c
cp boot4-tcc /after/bin
chmod 755 /after/bin/boot4-tcc
cp boot4-tcc ${bindir}
chmod 755 ${bindir}/boot4-tcc
cd ../tcc-mes
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
@ -332,14 +333,14 @@ boot4-tcc \
-D HAVE_LONG_LONG=1 \
-D HAVE_SETJMP=1 \
-I . \
-I /after/include \
-I ${prefix}/include \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-D CONFIG_TCC_LIBPATHS=\"${libdir}:${libdir}/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"${prefix}/include\" \
-D TCC_LIBGCC=\"${libdir}/libc.a\" \
-D TCC_LIBTCC1=\"libtcc1.a\" \
-D CONFIG_TCCBOOT=1 \
-D CONFIG_TCC_STATIC=1 \
@ -349,8 +350,8 @@ boot4-tcc \
-D ONE_SOURCE=1 \
-L . \
tcc.c
cp boot5-tcc /after/bin
chmod 755 /after/bin/boot5-tcc
cp boot5-tcc ${bindir}
chmod 755 ${bindir}/boot5-tcc
cd ../tcc-mes
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
@ -367,8 +368,8 @@ cp ${libdir}/libc+gnu.a ${libdir}/libc.a
boot5-tcc -version
# We have our final tcc 0.9.26!
cp /after/bin/boot5-tcc /after/bin/tcc
chmod 755 /after/bin/tcc
cp ${bindir}/boot5-tcc ${bindir}/tcc
chmod 755 ${bindir}/tcc
# Also recompile getopt, we don't need to do this during the boot* stages
# because nothing is linked against it
@ -384,12 +385,12 @@ tcc \
-static \
-o tcc \
-D TCC_TARGET_I386=1 \
-D CONFIG_TCCDIR=\"/after/lib/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"/after/lib\" \
-D CONFIG_TCCDIR=\"${libdir}/tcc\" \
-D CONFIG_TCC_CRTPREFIX=\"${libdir}\" \
-D CONFIG_TCC_ELFINTERP=\"/mes/loader\" \
-D CONFIG_TCC_LIBPATHS=\"/after/lib:/after/lib/tcc\" \
-D CONFIG_TCC_SYSINCLUDEPATHS=\"/after/include\" \
-D TCC_LIBGCC=\"/after/lib/libc.a\" \
-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\" \
@ -397,8 +398,8 @@ tcc \
tcc.c
# Install the binary
cp tcc /after/bin/tcc
chmod 755 /after/bin/tcc
cp tcc ${bindir}/tcc
chmod 755 ${bindir}/tcc
# Test
tcc -version