aboutsummaryrefslogtreecommitdiff
path: root/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'Makefile')
-rw-r--r--Makefile52
1 files changed, 23 insertions, 29 deletions
diff --git a/Makefile b/Makefile
index 6adc710..e5d56b6 100644
--- a/Makefile
+++ b/Makefile
@@ -1,7 +1,19 @@
MAKE = make
MAKEFLAGS += --no-print-directory
--include Makefile.config
+include Makefile.config
+
+.PHONY: all run clean FORCE
+all: glitch.elf
+
+run: glitch.iso
+ @qemu-system-i386 -cdrom glitch.iso -accel kvm -d cpu_reset -display gtk,zoom-to-fit=on
+
+clean:
+ @${MAKE} ARCH=${ARCH} -C lib clean
+ @${MAKE} ARCH=${ARCH} -C ${ARCH} clean
+ @${MAKE} ARCH=${ARCH} -C devices clean
+ @${MAKE} ARCH=${ARCH} -C src clean
info:
@echo "* Build information *"
@@ -12,6 +24,8 @@ info:
@echo " LD $(shell ${LD} --version | head -n1)"
@echo " ${LDFLAGS}"
+FORCE:
+
.config: Kconfig
@alldefconfig
@@ -20,34 +34,14 @@ Makefile.config: .config
@echo -e '\n# toolchain.mk' >> Makefile.config
@cat $$(sed -nE "s/CONFIG_ARCH_(.+)=y/\1/p" .config)/toolchain.mk >> Makefile.config
-.PHONY: all run clean purge
-all:
- @${MAKE} ARCH=${ARCH} -C lib all
- @${MAKE} ARCH=${ARCH} -C ${ARCH} all
- @${MAKE} ARCH=${ARCH} -C devices all
- @${MAKE} ARCH=${ARCH} -C src all
-
-run: glitch.iso
- qemu-system-i386 -cdrom glitch.iso -cpu pentium3 -d cpu_reset -display gtk,zoom-to-fit=on
-
-clean:
- @${MAKE} ARCH=${ARCH} -C lib clean
- @${MAKE} ARCH=${ARCH} -C ${ARCH} clean
- @${MAKE} ARCH=${ARCH} -C devices clean
- @${MAKE} ARCH=${ARCH} -C src clean
-
-purge: clean
- rm -f lib/libk.a ${ARCH}/arch.a devices/devs.a src/kernel.a
- rm -rf glitch.elf glitch.iso isodir
-
-lib/libk.a:
- ${MAKE} ARCH=${ARCH} -C lib libk.a
-i686/arch.a:
- ${MAKE} ARCH=${ARCH} -C i686 arch.a
-devices/devs.a:
- ${MAKE} ARCH=${ARCH} -C devices devs.a
-src/kernel.a:
- ${MAKE} ARCH=${ARCH} -C src kernel.a
+lib/libk.a: FORCE
+ @${MAKE} -C lib libk.a
+i686/arch.a: FORCE
+ @${MAKE} -C ${ARCH} arch.a
+devices/devs.a: FORCE
+ @${MAKE} -C devices devs.a
+src/kernel.a: FORCE
+ @${MAKE} -C src kernel.a
glitch.elf: ${ARCH}/arch.a src/kernel.a devices/devs.a lib/libk.a
@echo ' LD $@'