From 09aab743d55fd7aa1c56df5cdc72bf04c41f7fce Mon Sep 17 00:00:00 2001
From: Moritz Eckert <mo@mightym0.de>
Date: Tue, 3 Jul 2018 13:31:48 +0200
Subject: [PATCH] Add build tools

---
 build/Makefile      | 15 +++++++++++++++
 build/build-diet.sh | 23 +++++++++++++++++++++++
 2 files changed, 38 insertions(+)
 create mode 100755 build/Makefile
 create mode 100755 build/build-diet.sh

diff --git a/build/Makefile b/build/Makefile
new file mode 100755
index 0000000..5ff62f5
--- /dev/null
+++ b/build/Makefile
@@ -0,0 +1,15 @@
+.PHONY: all clean
+
+all: x86_64
+
+x86_64: x.c util.c
+	build-diet.sh x86-64
+	gcc -nostdlib -static -fomit-frame-pointer -L./dietlibc/bin ./dietlibc/bin-arm/start.o -o x $^ -isystem ./dietlibc/include -D__dietlibc__ ./dietlibc/bin-arm/dietlibc.a -lgcc ./dietlibc/bin-arm/dietlibc.a
+
+i386: x.c util.c
+	build-diet.sh i386
+	gcc -nostdlib -static -fomit-frame-pointer -L./dietlibc/bin-arm ./dietlibc/bin-arm/start.o -o x $^ -isystem ./dietlibc/include -D__dietlibc__ ./dietlibc/bin-arm/dietlibc.a -lgcc ./dietlibc/bin-arm/dietlibc.a
+
+arm: x.c util.c
+	build-diet.sh arm
+	arm-linux-gnueabihf-gcc -nostdlib -static -fomit-frame-pointer -L./dietlibc/bin-arm ./dietlibc/bin-arm/start.o -o x $^ -isystem ./dietlibc/include -D__dietlibc__ ./dietlibc/bin-arm/dietlibc.a -lgcc ./dietlibc/bin-arm/dietlibc.a
diff --git a/build/build-diet.sh b/build/build-diet.sh
new file mode 100755
index 0000000..76c99e8
--- /dev/null
+++ b/build/build-diet.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+
+set -v
+
+if [ $# -lt 1 ]; then
+	echo "Usage: $0 <ARCH> <CROSS>"
+    exit 1
+fi
+
+if [ ! -d ./dietlibc ]; then
+	cvs -d :pserver:cvs@cvs.fefe.de:/cvs -z9 co dietlibc
+fi
+
+cd dietlibc
+make clean
+if [ $1 = "arm" ]; then
+	make ARCH="$1" CROSS=arm-linux-gnueabihf-
+elif [ $1 = "i386" ]; then
+	make ARCH="$1" EXTRACFLAGS="-m32"
+elif [ $1 = "x86_64" ]; then
+    make ARCH="$1"
+fi
+cd ..
-- 
GitLab