csrc = $(wildcard src/*.c) ssrc = $(wildcard src/*.S) obj = $(csrc:.c=.o) $(ssrc:.S=.o) dep = $(csrc:.c=.d) $(ssrc:.S=.d) elf = test1.elf bin = test1.psx iso = test1.iso TCPREFIX = mipsel-linux-gnu- CC = $(TCPREFIX)gcc AS = $(TCPREFIX)as LD = $(TCPREFIX)ld OBJCOPY = $(TCPREFIX)objcopy arch = -march=r3000 -msoft-float -mno-abicalls -mno-shared -fno-pic CFLAGS = $(arch) -pedantic -Wall -g -MMD ASFLAGS = $(arch) LDFLAGS = -T psx.ld -print-gc-sections $(bin): $(elf) $(OBJCOPY) -O binary $< $@ $(elf): $(obj) $(LD) -o $@ $(obj) -Map link.map $(LDFLAGS) $(iso): cd/cd.xml cd/system.cnf $(bin) mkpsxiso -o $@ -y $< -include $(dep) %.s: %.c $(CC) $(CFLAGS) -S -o $@ $< .PHONY: iso iso: $(iso) .PHONY: clean clean: rm -f $(obj) $(bin) $(elf) link.map .PHONY: cleandep cleandep: rm -f $(dep) .PHONY: run run: $(bin) mednafen $< .PHONY: runiso runiso: $(iso) mednafen test1.cue