aboutsummaryrefslogtreecommitdiff
path: root/src/Makefile
blob: 0dee4ff444d52e30ea0a66f96fa277437e964e19 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
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