PROCESSOR=POSEIDON
ENDIAN=EL
OBJ=obj
RES=res
INCLUDE=$(ENVPATH)/include
LIB=$(ENVPATH)/lib

OBJS=$(RES)/resource.o $(OBJ)/main.o

ifdef DEBUG
ifeq "$(DEBUG)" "SERDBG"
AS= gcc -O2 -G0 -c -g -$(ENDIAN) -DPR31700 -DDEBUG -DSERDBG
CC= gcc -O2 -G0 -c -g -I$(INCLUDE) -s -$(ENDIAN) -msoft-float -mno-abicalls -mips2 -DPR31700 -DDEBUG -DSERDBG
else
AS= gcc -O2 -G0 -c -g -$(ENDIAN) -DPR31700 -DDEBUG
CC= gcc -O2 -G0 -c -g -I$(INCLUDE) -s -$(ENDIAN) -msoft-float -mno-abicalls -mips2 -DPR31700 -DDEBUG
endif
else
AS= gcc -O2 -G0 -c -g -$(ENDIAN) -DPR31700
CC= gcc -O2 -G0 -c -g -I$(INCLUDE) -s -$(ENDIAN) -msoft-float -mno-abicalls -mips2 -DPR31700
endif

LD= ld -n -warn-common -Map $(LIB)/link.map -$(ENDIAN)

$(OBJ)/%.o: %.S
	echo $(AS) $<
	$(AS) $< -o $@

$(OBJ)/%.o: %.c
	echo $(CC) $<
	$(CC) $< -o $@

$(RES)/%.o: %.c
	echo $(CC) $<
	$(CC) $< -o $@

main.obj: $(OBJS)
ifdef DEBUG
	$(LD)  -nostdlib -G 0 -T $(LIB)/link.CMD -o $@ $(OBJS) $(OBJ)/appstart.o $(OBJ)/syscall.o $(OBJ)/emudbg.o
else
	$(LD)  -nostdlib -G 0 -T $(LIB)/link.CMD -o $@ $(OBJS) $(OBJ)/appstart.o $(OBJ)/syscall.o
endif