EXEC := bringelle CC := gcc -c -m32 -fno-pie -fno-builtin UTILS_SRC := $(wildcard utils/*.c) all: $(EXEC) $(EXEC): boot.o utils.o bringelle.o for obj in $^ ;\ do \ objcopy --remove-section .note.gnu.property $${obj} ; \ done ld -Ttext=0x00100000 -melf_i386 -nostdlib --oformat=binary -o bringelle $^ bringelle.o: bringelle.c $(CC) $^ utils.o: $(UTILS_SRC) $(CC) $^ -o $@ boot.o: ./boot/boot.S as --32 -o $@ $^ -mx86-used-note=no clean: - rm $(EXEC) - rm ./*.o .PHONY: clean