ARCH = $(shell uname -m)
ifneq ("$(ARCH)", "ppc64")
ifneq ("$(ARCH)", "ppc64le")
        CROSS_COMPILE ?= powerpc64le-linux-gnu-
        endif
        endif

CC = $(CROSS_COMPILE)gcc
LD = $(CROSS_COMPILE)ld
OBJCOPY = $(CROSS_COMPILE)objcopy

CFLAGS = -Os -g -Wall -std=c99 -nostdinc -msoft-float -mno-string -mno-multiple -mno-vsx -mno-altivec -mlittle-endian -fno-stack-protector -mstrict-align -ffreestanding -fdata-sections -ffunction-sections -I ../../include -isystem $(shell $(CC) -print-file-name=include)
ASFLAGS = $(CFLAGS)
LDFLAGS = -T powerpc.lds

all: $(TEST).hex

console.o: ../../lib/console.c
	$(CC) $(CPPFLAGS) $(CFLAGS) -c $< -o $@

$(TEST).elf: $(TEST).o head.o console.o
	$(LD) $(LDFLAGS) -o $(TEST).elf $(TEST).o head.o console.o

$(TEST).bin: $(TEST).elf
	$(OBJCOPY) -O binary $(TEST).elf $(TEST).bin

$(TEST).hex: $(TEST).bin
	../../scripts/bin2hex.py $(TEST).bin > $(TEST).hex

clean:
	@rm -f *.o $(TEST).elf $(TEST).bin $(TEST).hex