# make my library

export DEVKITARM:=1
include ../gbalib/master.mk

LIBNAME=libsxmp.a

CFILES = $(wildcard *.c)
SFILES = $(wildcard *.S)

INCLUDES:=-I../gbalib

CFLAGS += -g -O2 $(INCLUDES)
OUTDIR=obj
OBJECTS = $(CFILES:%.c=$(OUTDIR)/%.o) $(SFILES:%.S=$(OUTDIR)/%.o)
DEPENDS = $(CFILES:%.c=$(OUTDIR)/%.d)

all: $(LIBNAME)

DISTDIR = vsixm-src

dist: 
	@mkdir $(DISTDIR)
	@cp *.[csSh] $(DISTDIR)
	@cp Makefile $(DISTDIR)
	@$(ZIP) $(ZIPFLAGS) $(DISTDIR).$(ZIPSUFFIX) $(DISTDIR)
	@rm -rf $(DISTDIR) 

clean: 
	@-rm $(OBJECTS)

$(OUTDIR)/%.arm.o : %.arm.c
	@echo compile arm $< $(DEBUG)
	@$(GCC) $(CFLAGS) -marm -mthumb-interwork -c  $< -o $@

$(OUTDIR)/%.o: %.c
	@echo compile thumb $<
	@$(GCC) $(CFLAGS) -mthumb -c -o $@ $<

$(OUTDIR)/%.o: %.S
	@echo compile thumb $<
	@$(GCC) $(CFLAGS) -mthumb -c -o $@ $<
	
$(LIBNAME): $(OBJECTS)
	@echo creating $(LIBNAME)
	@$(AR) rcs $@ $(OBJECTS)

$(OUTDIR)/%.d:%.c
	@echo "build $@ from $<"
	@echo -n $(OUTPUTDIR)/ > $@.tmp
	@$(GCC) $(INCLUDES) -M $< >> $@.tmp
	@mv $@.tmp $@

-include $(DEPENDS)
