diff options
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 52 |
1 files changed, 23 insertions, 29 deletions
@@ -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 $@' |