X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=testpico%2FMakefile;h=b8c7988bac611de256248c90f139eced184e5812;hb=6474d733133dc605ee02e4e2e02f025c41d202df;hp=f997368bafad972aee2878ea096a9c0a598e8712;hpb=ffd4b35c4235e0c1a10cb8137c607c4788fd543a;p=megadrive.git diff --git a/testpico/Makefile b/testpico/Makefile index f997368..b8c7988 100644 --- a/testpico/Makefile +++ b/testpico/Makefile @@ -5,22 +5,34 @@ AS = $(CROSS)as LD = $(CROSS)ld OBJCOPY = $(CROSS)objcopy +CROSS_SH = sh-elf- +CC_SH = $(CROSS_SH)gcc +LD_SH = $(CROSS_SH)ld +OBJCOPY_SH = $(CROSS_SH)objcopy + ASFLAGS += -m68000 --register-prefix-optional --bitwise-or -pic ASFLAGS_CC += -Wa,-m68000 -Wa,--register-prefix-optional -Wa,--bitwise-or -Wa,-pic CFLAGS += -Wall -g -O2 -m68000 -fomit-frame-pointer -LDLIBS += $(shell $(CC) -print-file-name=libgcc.a) +LDLIBS_LIBGCC := $(shell $(CC) -print-file-name=libgcc.a) +LDLIBS += $(LDLIBS_LIBGCC) -TARGET = testpico -OBJS = sega_gcc.o main.o asmtools.o data.o +SUFFIX := $(shell git describe --always --dirty) +ifdef PICO +CFLAGS += -DPICO +SUFFIX := $(SUFFIX)-for-pd +endif +TARGET_BASE = testpico +TARGET = $(TARGET_BASE)-$(SUFFIX) +OBJS = sega_gcc.o main.o asmtools.o all: $(TARGET).bin $(TARGET).elf: $(OBJS) - $(LD) -o $@ -Tsega.ld -Map $(TARGET).map $^ $(LDLIBS) + $(LD) -o $@ -Tsega.ld -Map $(TARGET_BASE).map $^ $(LDLIBS) clean: - $(RM) $(TARGET).bin $(OBJS) $(TARGET).elf $(TARGET).map fill - $(RM) *.lst *.bin80 + $(RM) $(TARGET_BASE)*.bin $(OBJS) *.elf *.map fill + $(RM) *.lst *.bin80 *.osh *.binsh $(TARGET).bin: $(TARGET).elf fill $(OBJCOPY) -I elf32-m68k -O binary $< $@ @@ -30,12 +42,34 @@ fill: fill.c $(HOSTCC) -o $@ $^ -Wall -O2 %.o: %.S - $(CC) -c -o $@ $^ $(ASFLAGS_CC) + $(CC) -c -o $@ $^ $(CFLAGS) $(ASFLAGS_CC) %.bin80: %.s80 sjasm $< $@ +# sh2 +TARGET_SH = sh2_test +OBJS_SH = sh2_test.osh sh2_main.osh + +CFLAGS_SH = -m2 -mb -O2 -Wall + +%.binsh: %.elf + $(OBJCOPY_SH) -O binary $< $@ + +$(TARGET_SH).elf: $(OBJS_SH) + $(LD_SH) -o $@ $^ -Tmars.ld -Map $(TARGET_SH).map -nostdlib + +%.osh: %.sh2 + $(CC_SH) -o $@ -c -x assembler $< $(CFLAGS_SH) + +%.osh: %.c + $(CC_SH) -o $@ -c $< $(CFLAGS_SH) + # manual deps -data.o: z80_test.bin80 +sega_gcc.o: z80_test.bin80 +sega_gcc.o: sh2_test.binsh + +up: $(TARGET).bin + scp $< root@router:/tmp/ .PHONY: all clean