# Build Android module.

_sdk_dir := $(realpath $(dir $(lastword $(MAKEFILE_LIST))))

include $(_sdk_dir)/blowfish-utils.mk

############################
# Build Android executable #
############################

_local_blowfish_platform := $(strip $(_local_blowfish_platform))

ifeq ($(_local_blowfish_platform),)
  _local_blowfish_platform := blowfish
endif

_target_prefix := $(LOCAL_MODULE)_$(LOCAL_TARGET_NAME)_$(_local_blowfish_platform)

_target_out := $(TARGET_OUT)
_dst_dir := $(NDK_APP_DST_DIR)

TARGET_OUT := out/$(LOCAL_TARGET_NAME)/$(_local_blowfish_platform)/$(LOCAL_MODULE)/$(TARGET_ARCH_ABI)/nonstrip
NDK_APP_DST_DIR := out/$(LOCAL_TARGET_NAME)/$(_local_blowfish_platform)/$(LOCAL_MODULE)/$(TARGET_ARCH_ABI)

# Each Android module should have different name (LOCAL_MODULE), so we changed it.
# LOCAL_MODULE_FILENAME is set to still have expected output file name.
LOCAL_MODULE_FILENAME := $(LOCAL_MODULE)
LOCAL_MODULE := $(_target_prefix)

LOCAL_SHARED_LIBRARIES += $(TARGET_ARCH_ABI)_$(_local_blowfish_platform)_platform_libs

ifneq ($(LOCAL_TARGET_LINK_GP_CLIENT_API),n)
  LOCAL_STATIC_LIBRARIES += $(_target_prefix)_gp_client
endif

LOCAL_LDLIBS += -llog

LOCAL_SHARED_LIBRARIES += $(addsuffix _$(LOCAL_TARGET_NAME)_$(_local_blowfish_platform),$(LOCAL_TARGET_SHARED_LIBRARIES))

include $(BUILD_EXECUTABLE)

TARGET_OUT := $(_target_out)
NDK_APP_DST_DIR := $(_dst_dir)

###########################
# Build support libraries #
###########################

include $(_sdk_dir)/import-blowfish-gp-client.mk

##############
# Clear vars #
##############

include $(_sdk_dir)/clear-vars.mk
