blob: 8021079ec13c2451ab12bc53998130569b8be91e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
|
#!/usr/bin/env bash
set -euo pipefail
DIR="$(cd "$(dirname "$0")" && pwd)"
OUT="$DIR/out"
echo "Compiling userspace programs..."
CFLAGS="-static -O2 -s --sysroot $OUT/sysroot -nostdinc -isystem $OUT/sysroot/usr/include"
echo "rlinit"
musl-gcc $CFLAGS rlinit/rlinit.c -o "$OUT/rlinit"
echo "rltest"
musl-gcc $CFLAGS rltest/rltest.c -o "$OUT/rltest"
echo "Creating rootfs..."
ROOTFS="$DIR/out/rootfs"
mkdir -p "$ROOTFS/dev"
mkdir -p "$ROOTFS/proc"
mkdir -p "$ROOTFS/sys"
cp "$OUT/rlinit" "$ROOTFS/init"
cp "$OUT/rltest" "$ROOTFS/rltest"
echo "Creating initranfs..."
(
cd "$ROOTFS"
find . -print0 \
| cpio --null -ov --format=newc \
| gzip -9 > "$DIR/out/initramfs.cpio.gz"
)
|