refactor: use for ia86-elf-gcc toolchain + linker file
[swan-dev] / Makefile
1 #
2 # makefile for swan-sdk
3 #
4
5 OUT = test.wsc
6 CC = ia16-elf-gcc
7 LD = ia16-elf-ld
8 ODIR = obj
9 ADIR = objs
10 SDIR = src
11 INC = -Iinc
12
13 CFLAGS = -march=v30 -ffreestanding # use NEC v30 chip
14
15 _OBJS = entry.o main.o # todo: make sure entry is forced as entry point for linker
16
17 OBJS = $(patsubst %,$(ODIR)/%,$(_OBJS))
18
19 LDFILE = swan.ld
20
21
22 $(ODIR)/%.o: $(SDIR)/%.c
23         $(CC) -c $(INC) -o $@ $< $(CFLAGS)
24
25 $(ODIR)/entry.o: $(SDIR)/entry.S
26         $(CC) -c $(INC) -o $@ $< $(CFLAGS)
27
28 $(OUT): $(OBJS)
29         $(LD) -T $(LDFILE) $^ -o $(OUT)
30
31 add:
32         ./romheader
33 run:
34         mednafen test.wsc
35
36 .PHONY: clean
37
38 clean:
39         rm -f $(ODIR)/*.o $(OUT)