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

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

LOCAL_MODULE = librilfusion
LOCAL_PATH   = .

LOCAL_CFLAGS += -Wall \
                -std=gnu++14 \
                -DANDROID_MULTI_SIM \
                -DDSDA_RILD1 \

CFLAGS += $(LOCAL_CFLAGS)

LOCAL_C_INCLUDES = -I$(ROOT)/usr/include/mtkadapter/ \
                   -I$(LOCAL_PATH)/../include/ \
                   -I$(LOCAL_PATH)/../misc/nanopb-c/ \
                   -I$(LOCAL_PATH)/../librilutils/ \
                   -I$(LOCAL_PATH)/

LOCAL_SRC_FILES = \
    ril.cpp \
    ril_event.cpp\
    RilSocket.cpp \
    RilSapSocket.cpp \

LOCAL_OBJ_FILES = $(LOCAL_SRC_FILES:.cpp=.o)

ifeq ($(TARGET_OS), ANDROID)
LOCAL_LIBS := -lstdc++ -L$(ROOT)/lib -lmtklog \
              -L../librilutils -lrilutils \
              -L../librilutilsmtk -lrilutilsmtk \
              -L../misc/nanopb-c  -lprotobuf-c-nano-enable_malloc \
              -lpower -lcutils -lutils -lbinder \

else ifeq ($(TARGET_OS), YUNOS)
LOCAL_LIBS := -lstdc++ -L$(ROOT)/lib -llog \
              -L../librilutils -lrilutils \
              -L../librilutilsmtk -lrilutilsmtk \
              -L../misc/nanopb-c  -lprotobuf-c-nano-enable_malloc \
              -lmtkpower -lmtkcutils -lmtkutils -lmtkbinder -lmtkproperty \
              -lpthread

endif

LDFLAGS += $(OFLAGS) $(LOCAL_LIBS)

.PHONY: build clean install pack_rootfs

all: build

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

%.o: %.cpp
	$(warning ----->build $<)
	$(CXX) $(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

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