commit
ae746bb0a6
|
@ -1,2 +1,3 @@
|
|||
tmp/
|
||||
kernel
|
||||
sources/
|
||||
|
|
|
@ -22,6 +22,6 @@
|
|||
[submodule "sysa/tcc-0.9.27"]
|
||||
path = sysa/tcc-0.9.27
|
||||
url = git://repo.or.cz/tinycc.git
|
||||
[submodule "sysa/sed-1.18"]
|
||||
path = sysa/sed-1.18
|
||||
url = git://git.savannah.gnu.org/sed/sed-history.git
|
||||
[submodule "sysa/sed-4.0.7"]
|
||||
path = sysa/sed-4.0.7
|
||||
url = https://git.savannah.gnu.org/git/sed/sed-history.git
|
||||
|
|
35
rootfs.sh
35
rootfs.sh
|
@ -75,9 +75,36 @@ popd
|
|||
|
||||
mkdir -p ../sources
|
||||
|
||||
# sed 1.18
|
||||
cp sed-1.18.kaem tmp/after
|
||||
cp -r sed-1.18 tmp/after
|
||||
# sed 4.0.7
|
||||
cp sed-4.0.7.kaem tmp/after
|
||||
cp -r sed-4.0.7 tmp/after
|
||||
|
||||
# tar 1.12
|
||||
url=https://ftp.gnu.org/gnu/tar/tar-1.12.tar.gz
|
||||
pushd ../sources
|
||||
wget --continue "$url"
|
||||
popd
|
||||
cp "$(basename $url .tar.gz).kaem" tmp/after
|
||||
tar -C tmp/after -xf "../sources/$(basename $url)"
|
||||
|
||||
get_file() {
|
||||
url=$1
|
||||
pushd ../sources
|
||||
wget --continue "$url"
|
||||
popd
|
||||
ext="${url##*.}"
|
||||
if [ "$ext" = "tar" ]; then
|
||||
bname=$(basename "$url" .tar)
|
||||
else
|
||||
bname=$(basename "$url" ".tar.${ext}")
|
||||
fi
|
||||
cp "${bname}.kaem" tmp/after
|
||||
cp "../sources/$(basename "$url")" tmp/after
|
||||
}
|
||||
|
||||
# Download remaining sources
|
||||
get_file https://ftp.gnu.org/gnu/gzip/gzip-1.2.4.tar
|
||||
get_file https://ftp.gnu.org/gnu/diffutils/diffutils-2.7.tar.gz
|
||||
|
||||
# General cleanup
|
||||
find tmp -name .git -exec rm -rf \;
|
||||
|
@ -88,7 +115,7 @@ find . | cpio -H newc -o | gzip > initramfs.igz
|
|||
|
||||
# Run
|
||||
${QEMU_CMD:-qemu-system-x86_64} -enable-kvm \
|
||||
-m ${RAM:-8G} \
|
||||
-m "${RAM:-8G}" \
|
||||
-nographic \
|
||||
-no-reboot \
|
||||
-kernel ../../kernel -initrd initramfs.igz -append console=ttyS0
|
||||
|
|
|
@ -49,6 +49,24 @@ kaem --file mes.kaem
|
|||
kaem --file tcc.kaem
|
||||
|
||||
# Part 7: sed
|
||||
cd sed-1.18
|
||||
kaem --file ../sed-1.18.kaem
|
||||
cd sed-4.0.7
|
||||
kaem --file ../sed-4.0.7.kaem
|
||||
cd ..
|
||||
|
||||
# Part 8: tar
|
||||
cd tar-1.12
|
||||
kaem --file ../tar-1.12.kaem
|
||||
cd ..
|
||||
|
||||
# Part 9: gzip
|
||||
/after/bin/tar xf gzip-1.2.4.tar
|
||||
cd gzip-1.2.4
|
||||
kaem --file ../gzip-1.2.4.kaem
|
||||
cd ..
|
||||
|
||||
# Part 10: diffutils
|
||||
/after/bin/gunzip diffutils-2.7.tar.gz
|
||||
/after/bin/tar xf diffutils-2.7.tar
|
||||
cd diffutils-2.7
|
||||
kaem --file ../diffutils-2.7.kaem
|
||||
cd ..
|
||||
|
|
|
@ -0,0 +1,34 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
# Variables
|
||||
bindir=/after/bin
|
||||
|
||||
# Touch config.h file
|
||||
catm config.h
|
||||
|
||||
# Compile
|
||||
tcc -c -I. -DNULL_DEVICE=\"/dev/null\" cmp.c
|
||||
tcc -c -I. cmpbuf.c
|
||||
tcc -c -I. error.c
|
||||
tcc -c -I. getopt.c
|
||||
tcc -c -I. getopt1.c
|
||||
tcc -c -I. xmalloc.c
|
||||
tcc -c -I. version.c
|
||||
tcc -c -I. diff.c
|
||||
tcc -c -I. analyze.c
|
||||
tcc -c -I. -DHAVE_DIRENT_H dir.c
|
||||
tcc -c -I. io.c
|
||||
tcc -c -I. -DHAVE_DUP2 -DHAVE_FORK=0 util.c
|
||||
tcc -c -I. context.c
|
||||
tcc -c -I. ed.c
|
||||
tcc -c -I. ifdef.c
|
||||
tcc -c -I. normal.c
|
||||
tcc -c -I. side.c
|
||||
tcc -c -I. fnmatch.c
|
||||
tcc -c -I. regex.c
|
||||
|
||||
# Link
|
||||
tcc -static -o ${bindir}/cmp cmp.o cmpbuf.o error.o getopt.o getopt1.o xmalloc.o version.o
|
||||
tcc -static -o ${bindir}/diff diff.o analyze.o cmpbuf.o dir.o io.o util.o context.o ed.o ifdef.o normal.o side.o fnmatch.o getopt.o getopt1.o regex.o version.o
|
|
@ -0,0 +1,34 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
# Variables
|
||||
bindir=/after/bin
|
||||
|
||||
# Compile
|
||||
tcc -c -DNO_UTIME gzip.c
|
||||
tcc -c bits.c
|
||||
tcc -c crypt.c
|
||||
tcc -c deflate.c
|
||||
tcc -c getopt.c
|
||||
tcc -c inflate.c
|
||||
tcc -c lzw.c
|
||||
tcc -c trees.c
|
||||
tcc -c unlzh.c
|
||||
tcc -c unlzw.c
|
||||
tcc -c unpack.c
|
||||
tcc -c unzip.c
|
||||
# Remove strlwr, it does not build with mes libc
|
||||
cp util.c util_patched.c
|
||||
sed -i 165,174d util_patched.c
|
||||
tcc -c util_patched.c
|
||||
tcc -c zip.c
|
||||
|
||||
# Link
|
||||
tcc -static -o ${bindir}/gzip gzip.o zip.o deflate.o trees.o bits.o unzip.o inflate.o util_patched.o crypt.o lzw.o unlzw.o unpack.o unlzh.o getopt.o
|
||||
|
||||
# Install
|
||||
cp ${bindir}/gzip ${bindir}/gunzip
|
||||
cp ${bindir}/gzip ${bindir}/zcat
|
||||
chmod 755 ${bindir}/gunzip
|
||||
chmod 755 ${bindir}/zcat
|
|
@ -1 +0,0 @@
|
|||
Subproject commit cff4df55786bae5f4f0c042a13d30cd1a962040c
|
|
@ -1,17 +0,0 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
# Variables
|
||||
bindir=/after/bin
|
||||
|
||||
# Compile
|
||||
tcc -c getopt1.c
|
||||
tcc -c getopt.c
|
||||
tcc -c regex.c
|
||||
tcc -c utils.c
|
||||
tcc -c -Dalloca alloca.c
|
||||
tcc -c -DHAVE_BCOPY sed.c
|
||||
|
||||
# Link
|
||||
tcc -static -o ${bindir}/sed alloca.o getopt1.o getopt.o regex.o sed.o utils.o
|
|
@ -0,0 +1 @@
|
|||
Subproject commit b8fb156db0eedfd28db3340b418591e8fcab08bc
|
|
@ -0,0 +1,37 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
# Variables
|
||||
bindir=/after/bin
|
||||
|
||||
catm config.h
|
||||
|
||||
# Compile
|
||||
|
||||
## libsed.a
|
||||
cd lib
|
||||
|
||||
tcc -c getopt1.c
|
||||
tcc -c -I .. getopt.c
|
||||
tcc -c -I .. -DENABLE_NLS=0 utils.c
|
||||
cp regex_.h regex.h
|
||||
tcc -c -I . regex.c
|
||||
tcc -c obstack.c
|
||||
tcc -c strverscmp.c
|
||||
tcc -c getline.c
|
||||
tcc -c -DHAVE_FCNTL_H mkstemp.c
|
||||
|
||||
tcc -ar cr libsed.a getopt1.o getopt.o utils.o regex.o obstack.o strverscmp.o getline.o mkstemp.o
|
||||
cd ..
|
||||
|
||||
## sed
|
||||
tcc -c -I . -I lib -DSED_FEATURE_VERSION=\"4.0\" sed/compile.c
|
||||
tcc -c -I . -I lib sed/execute.c
|
||||
tcc -c -I . -I lib sed/regex.c
|
||||
tcc -c -I . -I lib sed/fmt.c
|
||||
tcc -c -I . -I lib -DPACKAGE=\"sed\" -DVERSION=\"4.0.7\" sed/sed.c
|
||||
|
||||
# Link
|
||||
tcc -static -o ${bindir}/sed -L lib lib/libsed.a compile.o execute.o regex.o fmt.o sed.o -lsed
|
||||
|
|
@ -0,0 +1,51 @@
|
|||
#!/bin/sh
|
||||
|
||||
set -ex
|
||||
|
||||
# Variables
|
||||
bindir=/after/bin
|
||||
|
||||
# Compile
|
||||
|
||||
## libtar.a
|
||||
cd lib
|
||||
|
||||
tcc -c argmatch.c
|
||||
tcc -c -DHAVE_DIRENT_H backupfile.c
|
||||
tcc -c -I . error.c
|
||||
tcc -c -I . fnmatch.c
|
||||
tcc -c ftruncate.c
|
||||
tcc -c getdate.c
|
||||
tcc -c getopt.c
|
||||
tcc -c getopt1.c
|
||||
tcc -c getversion.c
|
||||
tcc -c modechange.c
|
||||
tcc -c msleep.c
|
||||
tcc -c -DHAVE_GETCWD xgetcwd.c
|
||||
tcc -c xmalloc.c
|
||||
tcc -c xstrdup.c
|
||||
|
||||
tcc -ar cr libtar.a argmatch.o backupfile.o error.o fnmatch.o ftruncate.o getdate.o getopt.o getopt1.o getversion.o modechange.o msleep.o xgetcwd.o xmalloc.o xstrdup.o
|
||||
cd ..
|
||||
|
||||
## tar
|
||||
# -DSIZEOF_UNSIGNED_LONG=4 forces use of simulated arithmetic
|
||||
# This is to avoid running configure test to determine sizeof(long long)
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/arith.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/buffer.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/compare.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H -DHAVE_DIRENT_H src/create.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/delete.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/extract.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H -DHAVE_GETCWD -DHAVE_DIRENT_H src/incremen.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/list.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/mangle.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H -DHAVE_DIRENT_H src/misc.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H -DHAVE_GETCWD src/names.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/open3.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/rtapelib.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H -DPACKAGE=\"tar\" -DVERSION=\"1.12\" src/tar.c
|
||||
tcc -c -I lib -DSIZEOF_UNSIGNED_LONG=4 -DHAVE_FCNTL_H src/update.c
|
||||
|
||||
# Link
|
||||
tcc -static -o ${bindir}/tar -L lib lib/libtar.a arith.o buffer.o compare.o create.o delete.o extract.o incremen.o list.o mangle.o misc.o names.o open3.o rtapelib.o tar.o update.o -ltar
|
Loading…
Reference in New Issue