ROOTDIR = ../../../../../..
TARGET = $(notdir $(shell pwd))

include $(ROOTDIR)/xdcpaths.mak

C_FLAGS += -Wall -fno-strict-aliasing

CPP_FLAGS += -Ifreetype2

COMPILE.c = $(MVTOOL_PREFIX)gcc $(C_FLAGS) $(CPP_FLAGS) -c
AR.c	  = $(MVTOOL_PREFIX)ar rc

INCLUDEDIR = ../include
LIBDIR	   = ../lib

DBGTARGET = $(LIBDIR)/$(TARGET)d.a
RELTARGET = $(LIBDIR)/$(TARGET).a

DBGCFLAGS = -g -D__DEBUG
RELCFLAGS = -O2

SOURCES = $(wildcard *.c)
HEADERS = simplewidget.h

TARGETHEADERS = $(addprefix $(INCLUDEDIR)/, $(HEADERS))

DBGOBJFILES = $(SOURCES:%.c=debug/%.o) 
RELOBJFILES = $(SOURCES:%.c=release/%.o) 

.PHONY: clean debug release install

all:	debug release

install:

release:	$(RELTARGET) $(TARGETHEADERS)

debug:		$(DBGTARGET) $(TARGETHEADERS)

$(RELTARGET):	$(RELOBJFILES)
	@mkdir -p $(LIBDIR)
	$(AR.c) $@ $(RELOBJFILES)

$(DBGTARGET):	$(DBGOBJFILES) 
	@mkdir -p $(LIBDIR)
	$(AR.c) $@ $(DBGOBJFILES)

$(RELOBJFILES):	release/%.o: %.c $(HEADERS)
	@mkdir -p release
	$(COMPILE.c) $(RELCFLAGS) -o $@ $<

$(DBGOBJFILES):	debug/%.o: %.c $(HEADERS)
	@mkdir -p debug
	$(COMPILE.c) $(DBGCFLAGS) -o $@ $<

$(TARGETHEADERS): $(HEADERS)
	@echo Installing headers...
	@install -d $(INCLUDEDIR)
	@install -m 666 $< $@

clean:
	-rm -rf release debug *~

