6 OBJCOPY = $(CROSS)objcopy
11 OBJCOPY_SH = $(CROSS_SH)objcopy
13 ASFLAGS += -m68000 --register-prefix-optional --bitwise-or -pic
14 ASFLAGS_CC += -Wa,-m68000 -Wa,--register-prefix-optional -Wa,--bitwise-or -Wa,-pic
15 CFLAGS += -Wall -g -O2 -m68000 -fomit-frame-pointer
16 LDLIBS_LIBGCC := $(shell $(CC) -print-file-name=libgcc.a)
17 LDLIBS += $(LDLIBS_LIBGCC)
19 ifeq ($(shell m68k-elf-gcc -dD -E -c - --param=min-pagesize=0 < /dev/null > /dev/null 2>&1 && echo ok),ok)
20 CFLAGS += --param=min-pagesize=0
23 SUFFIX := $(shell git describe --always --dirty)
26 SUFFIX := $(SUFFIX)-for-pd
28 CFLAGS += -DVERSION=\"$(SUFFIX)\"
30 TARGET_BASE = testpico
31 TARGET = $(TARGET_BASE)-$(SUFFIX)
32 OBJS = sega_gcc.o main.o asmtools.o
36 $(TARGET).elf: $(OBJS)
37 $(LD) -o $@ -Tsega.ld -Map $(TARGET_BASE).map $^ $(LDLIBS)
40 $(RM) $(TARGET_BASE)*.bin $(OBJS) *.elf *.map fill
41 $(RM) *.lst *.bin80 *.osh *.binsh
43 $(TARGET).bin: $(TARGET).elf fill
44 $(OBJCOPY) -I elf32-m68k -O binary $< $@
48 $(HOSTCC) -o $@ $^ -Wall -O2
51 $(CC) -c -o $@ $^ $(CFLAGS) $(ASFLAGS_CC)
58 OBJS_SH = sh2_test.osh sh2_main.osh
60 CFLAGS_SH = -m2 -mb -O2 -Wall
63 $(OBJCOPY_SH) -O binary $< $@
65 $(TARGET_SH).elf: $(OBJS_SH)
66 $(LD_SH) -o $@ $^ -Tmars.ld -Map $(TARGET_SH).map -nostdlib
69 $(CC_SH) -o $@ -c -x assembler $< $(CFLAGS_SH)
72 $(CC_SH) -o $@ -c $< $(CFLAGS_SH)
75 sega_gcc.o: z80_test.bin80
76 sega_gcc.o: sh2_test.binsh
79 scp $< root@router:/tmp/