KERNEL := hos LDFLAGS := -T link.ld export PLATFORM := $(shell if [[ `uname` =~ "CYGWIN" ]]; then \ echo cygwin; \ else \ echo unix; \ fi) ifeq ($(PLATFORM), cygwin) export LD := i586-elf-ld export CC := i586-elf-gcc export CXX := i586-elf-g++ else export LD := ld export CC := gcc export CXX := g++ endif export NASM := nasm .PHONY: all all: $(KERNEL).gz $(KERNEL).gz: $(KERNEL) gzip -c $< > $@ $(KERNEL): boot.o $(LD) $(LDFLAGS) -o $@ $< boot.o: boot.asm $(NASM) -f elf -o $@ $< .PHONY: clean clean: -rm -f *~ $(KERNEL) $(KERNEL).gz *.o