aboutsummaryrefslogtreecommitdiff
path: root/bootstrap
diff options
context:
space:
mode:
Diffstat (limited to 'bootstrap')
-rwxr-xr-xbootstrap/bootstrap.sh19
-rwxr-xr-xbootstrap/cff2bin0 -> 469728 bytes
2 files changed, 16 insertions, 3 deletions
diff --git a/bootstrap/bootstrap.sh b/bootstrap/bootstrap.sh
index 64b7186..4a45470 100755
--- a/bootstrap/bootstrap.sh
+++ b/bootstrap/bootstrap.sh
@@ -10,6 +10,9 @@ if command -v ccache > /dev/null; then
export CC="ccache $CC"
fi
+echo '=========================================='
+echo '=== Building bootstrap compiler (cff0) ==='
+echo '=========================================='
./build.sh || exit 1
export CFLAGS="-Wno-builtin-declaration-mismatch -Wno-discarded-qualifiers -g"
@@ -18,6 +21,9 @@ set -euo pipefail
echo "extern static host_target_triple const *const u8 = \"`clang -print-target-triple`\";" > ../src/host-target-triple.cff
+echo '====================================================================='
+echo '=== Building self-hosted compiler using bootstrap compiler (cff1) ==='
+echo '====================================================================='
mkdir -p obj1/
for f in $(find ../src/ -name '*.cff'); do
out=obj1/$(basename "$f").o
@@ -27,7 +33,14 @@ for f in $(find ../src/ -name '*.c'); do
out=obj1/$(basename "$f").o
(set -x ; $CC $CFLAGS "$f" -c -o $out)
done
-set -x
-$CC $CFLAGS -ocff1 obj1/*.o
+:$(set -x ; $CC $CFLAGS -ocff1 obj1/*.o)
-CFFC=$(dirname "$0")/cff1 make -C ../
+echo '======================================================================='
+echo '=== Building self-hosted compiler using self-hosted compiler (cff2) ==='
+echo '======================================================================='
+OUT=bootstrap/cff2 CFFC=$(dirname "$0")/cff1 make -C ../
+
+echo '==============================================================================='
+echo '=== Building self-hosted compiler using self-hosted compiler squared (cffc) ==='
+echo '==============================================================================='
+CFFC=$(dirname "$0")/cff2 make -C ../ clean all
diff --git a/bootstrap/cff2 b/bootstrap/cff2
new file mode 100755
index 0000000..2de32e6
--- /dev/null
+++ b/bootstrap/cff2
Binary files differ