################################################################################
#
# aml_hal_pq
#
################################################################################
OUT_DIR ?= .
LOCAL_PATH = $(shell pwd)
LDFLAGS += -Wl,--no-as-needed -lstdc++ -lpthread -ldl -lrt -L$(STAGING_DIR)/usr/lib
CFLAGS += -Wall -Werror -Wno-unknown-pragmas -Wno-format -Wno-format-security -Wno-error=unused-result \
          -O3 -fexceptions -fnon-call-exceptions -D_GNU_SOURCE -I$(STAGING_DIR)/usr/include

SRCS = \
	$(LOCAL_PATH)/aml_hal_pq.cpp \
	$(LOCAL_PATH)/aml_hal_di.cpp \
	$(LOCAL_PATH)/aml_hal_memc.cpp \
	$(NULL)

HEADERS = \
	-I$(LOCAL_PATH)/../../../hal_inc \
	-I$(LOCAL_PATH)/../../adaptor/inc \
	-I$(LOCAL_PATH)/../../libs/vpq/LibTableLD \
	-I$(LOCAL_PATH)/../../libs/vpq/LibVPQ \
	$(NULL)

# ---------------------------------------------------------------------
#  Build rules
# ---------------------------------------------------------------------
BUILD_TARGETS = lib_hal_pq.so \

.PHONY: all install clean

lib_hal_pq.so: $(SRCS)
	$(CC) $(CFLAGS) $(LDFLAGS) -shared -fPIC $(HEADERS) \
	-L$(LOCAL_PATH)/../../adaptor/src/pq -ladap_pq \
	-L$(LOCAL_PATH)/../../libs/vpq/LibVPQ -lvip \
	-o $(OUT_DIR)/$@ $^ $(LDLIBS)


all: $(BUILD_TARGETS)

clean:
	rm -f *.o $(BUILD_TARGETS)

install:
	install -m 0644 $(OUT_DIR)/lib_hal_pq.so $(TARGET_DIR)/usr/lib

uninstall:
	rm -f $(TARGET_DIR)/usr/lib/lib_hal_pq.so
