4db6e09f |
1 | CROSS = m68k-elf-\r |
8689c962 |
2 | CC = $(CROSS)gcc\r |
4db6e09f |
3 | AS = $(CROSS)as\r |
4 | LD = $(CROSS)ld\r |
5 | OBJCOPY = $(CROSS)objcopy\r |
6 | \r |
318e20ff |
7 | ASFLAGS += -m68000 --register-prefix-optional --bitwise-or -pic\r |
8689c962 |
8 | CPPFLAGS += -Wa,-m68000 -Wa,--register-prefix-optional -Wa,--bitwise-or -Wa,-pic\r |
4db6e09f |
9 | \r |
570c4371 |
10 | TARGET = hexed.bin\r |
8689c962 |
11 | OBJS = sega_gcc.o hexed.o transfer.o font.o\r |
4db6e09f |
12 | \r |
6f93f411 |
13 | all: $(TARGET)\r |
4db6e09f |
14 | \r |
6f93f411 |
15 | $(TARGET): a.out\r |
4db6e09f |
16 | $(OBJCOPY) -I elf32-m68k -O binary $^ $@\r |
17 | \r |
6f93f411 |
18 | a.out: $(OBJS)\r |
4db6e09f |
19 | $(LD) -Tmd.ld -Map $(TARGET).map $^\r |
20 | \r |
21 | clean:\r |
6f93f411 |
22 | $(RM) $(TARGET) $(OBJS) $(TARGET).map a.out pc_transfer\r |
23 | \r |
4db6e09f |
24 | \r |
d13f0e28 |
25 | pc_transfer: pc_transfer.c\r |
4e6ba16d |
26 | gcc -Wall -O2 -ggdb -o $@ $^ -lz\r |
d13f0e28 |
27 | \r |
6f93f411 |
28 | %.o: %.S\r |
8689c962 |
29 | $(CC) -c -o $@ $^ $(CPPFLAGS)\r |
30 | \r |
6f93f411 |
31 | %.bin: %.o\r |
32 | $(OBJCOPY) -I elf32-m68k -O binary $^ $@\r |
33 | \r |
34 | \r |
74d5977b |
35 | # ----------- release -----------\r |
36 | ifneq ($(findstring rel,$(MAKECMDGOALS)),)\r |
37 | ifeq ($(VER),)\r |
38 | $(error need VER)\r |
39 | endif\r |
40 | endif\r |
41 | \r |
42 | rel: hexed.bin readme.txt src\r |
43 | zip -9 -r hexed_r$(VER).zip $^\r |
44 | rm -rf src\r |
45 | \r |
46 | src: hexed.s font.s sega_gcc.s md.ld Makefile\r |
47 | mkdir src\r |
48 | cp $^ src/\r |