diff options
Diffstat (limited to 'src/Makefile')
| -rw-r--r-- | src/Makefile | 27 |
1 files changed, 8 insertions, 19 deletions
diff --git a/src/Makefile b/src/Makefile index f5f9c83..08b31d7 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,34 +1,23 @@ EXEC := bringelle CC := gcc -c -m32 -fno-pie -fno-builtin -fno-stack-protector -UTILS_SRC := $(wildcard utils/*.c) +UTILS_OBJ := $(addsuffix .o,$(basename $(wildcard utils/*.c))) all: $(EXEC) -$(EXEC): boot.o utils.o bringelle.o - for obj in $^ ;\ - do \ - objcopy --remove-section .note.gnu.property $${obj} ; \ - done +$(EXEC): boot/boot.o $(UTILS_OBJ) bringelle.o ld -Ttext=0x00100000 -melf_i386 -nostdlib --oformat=binary -o bringelle $^ -bringelle.o: bringelle.c - $(CC) $^ - -utils.o: $(UTILS_SRC) - for src in $^ ;\ - do \ - obj=$$(basename $${src} ".c")".o" ;\ - $(CC) $${src} -o utils/$${obj} ;\ - done - ld -melf_i386 -relocatable utils/*.o -o utils.o - -boot.o: ./boot/boot.S +boot/boot.o: ./boot/boot.S as --32 -o $@ $^ -mx86-used-note=no +%.o: %.c + $(CC) -o $@ $< + objcopy --remove-section .note.gnu.property $@ + clean: - find ./ -name "*.o" -delete - rm $(EXEC) + - find ./ -name "*.o" -delete .PHONY: clean |
