LOCAL_PATH:= $(call my-dir)

include $(CLEAR_VARS)
LOCAL_MODULE := libteecl
ifeq ($(APP_ABI), arm64-v8a)
    MACHINE_PREFIX := 64bit
    ifeq ($(TG_SDK_VER), "V3.0")
        LOCAL_SRC_FILES := $(BLOWFISH_BASE)/platforms/TEEGRIS-3.0/nwd/android/arch-arm64/libteecl.so
    else #sdk ver2.0
        LOCAL_SRC_FILES := $(BLOWFISH_BASE)/platforms/BF-2.0/nwd/android/arch-arm64/libteecl.so
    endif
else
    MACHINE_PREFIX := 32bit
    ifeq ($(TG_SDK_VER), "V3.0")
        LOCAL_SRC_FILES := $(BLOWFISH_BASE)/platforms/TEEGRIS-3.0/nwd/android/arch-arm/libteecl.so
    else #sdk ver2.0
        LOCAL_SRC_FILES := $(BLOWFISH_BASE)/platforms/BF-2.0/nwd/android/arch-arm/libteecl.so
    endif
endif
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libcrypto
LOCAL_SRC_FILES := ../common/lib/$(MACHINE_PREFIX)/libcrypto.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libcutils
LOCAL_SRC_FILES := ../common/lib/$(MACHINE_PREFIX)/libcutils.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := libc
LOCAL_SRC_FILES := ../common/lib/$(MACHINE_PREFIX)/libc.so
include $(PREBUILT_SHARED_LIBRARY)

#_ONLY_64_BUILD_ENV
ifeq ($(MACHINE_PREFIX), 64bit)
include $(CLEAR_VARS)
LOCAL_MODULE := libutils
LOCAL_SRC_FILES := ../common/lib/$(MACHINE_PREFIX)/libutils.so
include $(PREBUILT_SHARED_LIBRARY)
endif
#_END_ONLY_64_BUILD_ENV

include $(CLEAR_VARS)
LOCAL_MODULE := libc++
LOCAL_SRC_FILES := ../common/lib/$(MACHINE_PREFIX)/libc++.so
include $(PREBUILT_SHARED_LIBRARY)

include $(CLEAR_VARS)
LOCAL_MODULE := MLDAP

LOCAL_C_INCLUDES := \
    $(LOCAL_PATH)/../common/libdk_native \
    $(BLOWFISH_BASE)/platforms/BF-2.0/nwd/android/includes \
    $(LOCAL_PATH)/../common/include \
    $(LOCAL_PATH)/include

LOCAL_SHARED_LIBRARIES += libcrypto libdk_native_client

LOCAL_SRC_FILES := \
    ../common/MLDAP.c \
    ../common/TAStartupCode.c \
    ../common/TLV.c \
    ../common/Synchronization.c \
    ../common/Utils.c \
    ../common/base64.c \
    ../common/ServiceName.c \
    ../common/ServiceKey.c \
    TAStartupCodeBF.c

LOCAL_CFLAGS := -Wall -Wunused
LOCAL_LDLIBS := -llog

ifeq ($(MACHINE_PREFIX), 64bit)
    LOCAL_CFLAGS += -DUSE_MACHINE64
endif

ifeq ($(USE_NEW_POS_PATH), TRUE)
    LOCAL_CFLAGS += -DUSE_NEW_POS_PATH
endif

ifeq ($(USE_DRKV2), TRUE)
    LOCAL_CFLAGS += -DUSE_DRKV2
endif

LOCAL_CFLAGS += -DUSE_BLOWFISH
LOCAL_STATIC_LIBRARIES += libteecl

ifeq ($(MODE), Debug)
    LOCAL_CFLAGS += -DNWD_DEBUG -g
endif # NDK_DEBUG

include $(BUILD_SHARED_LIBRARY)
