GCC         = $(CROSS)gcc
CC          = $(GCC)
CXX         = $(CROSS)g++
OBJDUMP     = $(CROSS)objdump
OBJCOPY     = $(CROSS)objcopy
AR          = $(CROSS)ar

CFLAGS   = $(OFLAGS) -g -fPIC -O2

LOCAL_MODULE = libratconfig
LOCAL_PATH   = .

LOCAL_CFLAGS += -Wall \
                -std=gnu90 \

CFLAGS += $(LOCAL_CFLAGS)

LOCAL_C_INCLUDES = -I$(LOCAL_PATH)/../include \
                   -I$(LOCAL_PATH)/../include/ratconfig \

LOCAL_SRC_FILES = \
  ratconfig.c \

LOCAL_OBJ_FILES = $(patsubst %.c, %.o, $(filter %.c, $(LOCAL_SRC_FILES))) \
     $(patsubst %.cpp, %.o, $(filter %.cpp, $(LOCAL_SRC_FILES)))

ifeq ($(TARGET_OS), ANDROID) 
LOCAL_LIBS :=  -L../liblog/ -llog \
              -L../libutils -lutils \
              -L../libcutils -lcutils \

else ifeq($(TARGET_OS), YUNOS)
LOCAL_LIBS := -L../libmtklog/ -lmtklog \
              -L../libutils -lmtkutils \
              -L../libcutils -lmtkcutils \

endif

LDFLAGS += $(LOCAL_LIBS) $(OFLAGS)

.PHONY: build clean install

all: build

$(LOCAL_MODULE).so: $(LOCAL_OBJ_FILES)
	-rm -f $@
	$(CC) -shared -o _$@ $^ $(LDFLAGS)
	-mv _$@ $@

$(LOCAL_MODULE)_static.a: $(LOCAL_OBJ_FILES)
	$(AR) r $@ $^

%.o: %.cpp
	$(warning ----->build $<)
	$(CXX) $(CFLAGS) $(LOCAL_CPP_INCLUDES) -o $@ -c $<

%.o: %.c
	$(warning ----->build $<)
	$(CC) $(CFLAGS) $(LOCAL_C_INCLUDES) -o $@ -c $<

build:$(LOCAL_MODULE).so
	$(warning ########## build $(LOCAL_MODULE) ##########)

clean:
	$(warning ########## clean $(LOCAL_MODULE) ##########)
	-find . -name "*.o" -delete
	-rm $(LOCAL_MODULE).so
	-rm $(LOCAL_MODULE)_static.a

install:
	$(warning ########## install $(LOCAL_MODULE) ##########)
	mkdir -p $(ROOT)/$(base_libdir)/
	install $(LOCAL_MODULE).so $(ROOT)/$(base_libdir)/
	mkdir -p $(ROOT)/bin
