#
#  Copyright (c) 2018, The OpenThread Authors.
#  All rights reserved.
#
#  Redistribution and use in source and binary forms, with or without
#  modification, are permitted provided that the following conditions are met:
#  1. Redistributions of source code must retain the above copyright
#     notice, this list of conditions and the following disclaimer.
#  2. Redistributions in binary form must reproduce the above copyright
#     notice, this list of conditions and the following disclaimer in the
#     documentation and/or other materials provided with the distribution.
#  3. Neither the name of the copyright holder nor the
#     names of its contributors may be used to endorse or promote products
#     derived from this software without specific prior written permission.
#
#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
#  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
#  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
#  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
#  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
#  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
#  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
#  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
#  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
#  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
#  POSSIBILITY OF SUCH DAMAGE.
#

LOCAL_PATH := $(call my-dir)

OPENTHREAD_DEFAULT_VERSION := $(shell cat $(LOCAL_PATH)/.default-version)
OPENTHREAD_SOURCE_VERSION := $(shell git -C $(LOCAL_PATH) describe --always --match "[0-9].*" 2> /dev/null)
OPENTHREAD_PROJECT_CFLAGS ?= -DOPENTHREAD_PROJECT_CORE_CONFIG_FILE=\"openthread-core-posix-config.h\"

OPENTHREAD_COMMON_FLAGS                                          := \
    -DOPENTHREAD_CONFIG_LOG_LEVEL_DYNAMIC_ENABLE=1                  \
    -DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1                         \
    -DPACKAGE=\"openthread\"                                        \
    -DPACKAGE_BUGREPORT=\"openthread-devel@googlegroups.com\"       \
    -DPACKAGE_NAME=\"OPENTHREAD\"                                   \
    -DPACKAGE_STRING=\"OPENTHREAD\ $(OPENTHREAD_DEFAULT_VERSION)\"  \
    -DPACKAGE_VERSION=\"$(OPENTHREAD_SOURCE_VERSION)\"              \
    -DPACKAGE_TARNAME=\"openthread\"                                \
    -DVERSION=\"$(OPENTHREAD_DEFAULT_VERSION)\"                     \
    -DPACKAGE_URL=\"http://github.com/openthread/openthread\"       \
    -DOPENTHREAD_CONFIG_MAC_FILTER_ENABLE=1                         \
    $(NULL)

# Enable required features for on-device tests.
ifeq ($(TARGET_BUILD_VARIANT),eng)
OPENTHREAD_COMMON_FLAGS                                          += \
    -DOPENTHREAD_CONFIG_DIAG_ENABLE=1                               \
    $(NULL)
endif

# Enable all optional features for CI tests.
ifeq ($(TARGET_PRODUCT),generic)
OPENTHREAD_COMMON_FLAGS                                          += \
    -DOPENTHREAD_CONFIG_COAP_API_ENABLE=1                           \
    -DOPENTHREAD_CONFIG_COMMISSIONER_ENABLE=1                       \
    -DOPENTHREAD_CONFIG_DHCP6_CLIENT_ENABLE=1                       \
    -DOPENTHREAD_CONFIG_DHCP6_SERVER_ENABLE=1                       \
    -DOPENTHREAD_CONFIG_DNS_CLIENT_ENABLE=1                         \
    -DOPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE=0                   \
    -DOPENTHREAD_CONFIG_TMF_NETWORK_DIAG_MTD_ENABLE=1               \
    $(NULL)
endif

include $(CLEAR_VARS)

LOCAL_MODULE := spi-hdlc-adapter
LOCAL_MODULE_TAGS := eng
LOCAL_SRC_FILES := tools/spi-hdlc-adapter/spi-hdlc-adapter.c

include $(BUILD_EXECUTABLE)

include $(CLEAR_VARS)

LOCAL_MODULE := ot-core
LOCAL_MODULE_TAGS := eng

LOCAL_C_INCLUDES                                         := \
    $(OPENTHREAD_PROJECT_INCLUDES)                          \
    $(LOCAL_PATH)/include                                   \
    $(LOCAL_PATH)/src                                       \
    $(LOCAL_PATH)/src/cli                                   \
    $(LOCAL_PATH)/src/core                                  \
    $(LOCAL_PATH)/src/ncp                                   \
    $(LOCAL_PATH)/src/posix/platform                        \
    $(LOCAL_PATH)/third_party                               \
    $(LOCAL_PATH)/third_party/mbedtls                       \
    $(LOCAL_PATH)/third_party/mbedtls/repo/include          \
    $(NULL)

LOCAL_CFLAGS                                                                := \
    -DMBEDTLS_CONFIG_FILE=\"mbedtls-config.h\"                                 \
    -DOPENTHREAD_CONFIG_FILE=\<openthread-config-android.h\>                   \
    $(OPENTHREAD_COMMON_FLAGS)                                                 \
    -DOPENTHREAD_CONFIG_POSIX_APP_ENABLE_PTY_DEVICE=1                          \
    -DOPENTHREAD_FTD=1                                                         \
    -DOPENTHREAD_POSIX=1                                                       \
    -DOPENTHREAD_POSIX_RCP_UART_ENABLE=1                                       \
    -DSPINEL_PLATFORM_HEADER=\"spinel_platform.h\"                             \
    $(OPENTHREAD_PROJECT_CFLAGS)                                               \
    $(NULL)

LOCAL_CPPFLAGS                                                              := \
    -Wno-non-virtual-dtor                                                      \
    $(NULL)

LOCAL_SRC_FILES                                          := \
    src/core/api/border_router_api.cpp                      \
    src/core/api/channel_manager_api.cpp                    \
    src/core/api/channel_monitor_api.cpp                    \
    src/core/api/child_supervision_api.cpp                  \
    src/core/api/coap_api.cpp                               \
    src/core/api/commissioner_api.cpp                       \
    src/core/api/crypto_api.cpp                             \
    src/core/api/dataset_api.cpp                            \
    src/core/api/dataset_ftd_api.cpp                        \
    src/core/api/diags_api.cpp                              \
    src/core/api/dns_api.cpp                                \
    src/core/api/icmp6_api.cpp                              \
    src/core/api/instance_api.cpp                           \
    src/core/api/ip6_api.cpp                                \
    src/core/api/jam_detection_api.cpp                      \
    src/core/api/joiner_api.cpp                             \
    src/core/api/link_api.cpp                               \
    src/core/api/link_raw_api.cpp                           \
    src/core/api/logging_api.cpp                            \
    src/core/api/message_api.cpp                            \
    src/core/api/netdata_api.cpp                            \
    src/core/api/random_crypto_api.cpp                      \
    src/core/api/random_noncrypto_api.cpp                   \
    src/core/api/server_api.cpp                             \
    src/core/api/tasklet_api.cpp                            \
    src/core/api/thread_api.cpp                             \
    src/core/api/thread_ftd_api.cpp                         \
    src/core/api/udp_api.cpp                                \
    src/core/coap/coap.cpp                                  \
    src/core/coap/coap_message.cpp                          \
    src/core/coap/coap_secure.cpp                           \
    src/core/common/crc16.cpp                               \
    src/core/common/instance.cpp                            \
    src/core/common/logging.cpp                             \
    src/core/common/message.cpp                             \
    src/core/common/notifier.cpp                            \
    src/core/common/random_manager.cpp                      \
    src/core/common/settings.cpp                            \
    src/core/common/string.cpp                              \
    src/core/common/tasklet.cpp                             \
    src/core/common/timer.cpp                               \
    src/core/common/tlvs.cpp                                \
    src/core/common/trickle_timer.cpp                       \
    src/core/crypto/aes_ccm.cpp                             \
    src/core/crypto/aes_ecb.cpp                             \
    src/core/crypto/hmac_sha256.cpp                         \
    src/core/crypto/mbedtls.cpp                             \
    src/core/crypto/pbkdf2_cmac.cpp                         \
    src/core/crypto/sha256.cpp                              \
    src/core/diags/factory_diags.cpp                        \
    src/core/mac/channel_mask.cpp                           \
    src/core/mac/data_poll_handler.cpp                      \
    src/core/mac/data_poll_sender.cpp                       \
    src/core/mac/mac.cpp                                    \
    src/core/mac/mac_filter.cpp                             \
    src/core/mac/mac_frame.cpp                              \
    src/core/mac/mac_types.cpp                              \
    src/core/mac/sub_mac.cpp                                \
    src/core/mac/sub_mac_callbacks.cpp                      \
    src/core/meshcop/announce_begin_client.cpp              \
    src/core/meshcop/border_agent.cpp                       \
    src/core/meshcop/commissioner.cpp                       \
    src/core/meshcop/dataset.cpp                            \
    src/core/meshcop/dataset_local.cpp                      \
    src/core/meshcop/dataset_manager.cpp                    \
    src/core/meshcop/dataset_manager_ftd.cpp                \
    src/core/meshcop/dtls.cpp                               \
    src/core/meshcop/energy_scan_client.cpp                 \
    src/core/meshcop/joiner.cpp                             \
    src/core/meshcop/joiner_router.cpp                      \
    src/core/meshcop/leader.cpp                             \
    src/core/meshcop/meshcop.cpp                            \
    src/core/meshcop/meshcop_tlvs.cpp                       \
    src/core/meshcop/panid_query_client.cpp                 \
    src/core/meshcop/timestamp.cpp                          \
    src/core/net/dhcp6_client.cpp                           \
    src/core/net/dhcp6_server.cpp                           \
    src/core/net/dns_client.cpp                             \
    src/core/net/icmp6.cpp                                  \
    src/core/net/ip6.cpp                                    \
    src/core/net/ip6_address.cpp                            \
    src/core/net/ip6_filter.cpp                             \
    src/core/net/ip6_headers.cpp                            \
    src/core/net/ip6_mpl.cpp                                \
    src/core/net/netif.cpp                                  \
    src/core/net/udp6.cpp                                   \
    src/core/radio/radio_callbacks.cpp                      \
    src/core/radio/radio_platform.cpp                       \
    src/core/thread/address_resolver.cpp                    \
    src/core/thread/announce_begin_server.cpp               \
    src/core/thread/announce_sender.cpp                     \
    src/core/thread/child_table.cpp                         \
    src/core/thread/device_mode.cpp                         \
    src/core/thread/energy_scan_server.cpp                  \
    src/core/thread/indirect_sender.cpp                     \
    src/core/thread/key_manager.cpp                         \
    src/core/thread/link_quality.cpp                        \
    src/core/thread/lowpan.cpp                              \
    src/core/thread/mesh_forwarder.cpp                      \
    src/core/thread/mesh_forwarder_ftd.cpp                  \
    src/core/thread/mesh_forwarder_mtd.cpp                  \
    src/core/thread/mle.cpp                                 \
    src/core/thread/mle_router.cpp                          \
    src/core/thread/network_data.cpp                        \
    src/core/thread/network_data_leader.cpp                 \
    src/core/thread/network_data_leader_ftd.cpp             \
    src/core/thread/network_data_local.cpp                  \
    src/core/thread/network_diagnostic.cpp                  \
    src/core/thread/panid_query_server.cpp                  \
    src/core/thread/router_table.cpp                        \
    src/core/thread/src_match_controller.cpp                \
    src/core/thread/thread_netif.cpp                        \
    src/core/thread/topology.cpp                            \
    src/core/utils/channel_manager.cpp                      \
    src/core/utils/channel_monitor.cpp                      \
    src/core/utils/child_supervision.cpp                    \
    src/core/utils/heap.cpp                                 \
    src/core/utils/jam_detector.cpp                         \
    src/core/utils/parse_cmdline.cpp                        \
    src/core/utils/slaac_address.cpp                        \
    src/ncp/hdlc.cpp                                        \
    src/ncp/spinel.c                                        \
    src/ncp/spinel_decoder.cpp                              \
    src/ncp/spinel_encoder.cpp                              \
    src/posix/platform/alarm.c                              \
    src/posix/platform/entropy.c                            \
    src/posix/platform/hdlc_interface.cpp                   \
    src/posix/platform/logging.c                            \
    src/posix/platform/misc.c                               \
    src/posix/platform/radio_spinel.cpp                     \
    src/posix/platform/settings.cpp                         \
    src/posix/platform/spi_interface.cpp                    \
    src/posix/platform/system.c                             \
    src/posix/platform/uart.c                               \
    third_party/mbedtls/repo/library/md.c                   \
    third_party/mbedtls/repo/library/md_wrap.c              \
    third_party/mbedtls/repo/library/memory_buffer_alloc.c  \
    third_party/mbedtls/repo/library/platform.c             \
    third_party/mbedtls/repo/library/platform_util.c        \
    third_party/mbedtls/repo/library/sha256.c               \
    third_party/mbedtls/repo/library/bignum.c               \
    third_party/mbedtls/repo/library/ccm.c                  \
    third_party/mbedtls/repo/library/cipher.c               \
    third_party/mbedtls/repo/library/cipher_wrap.c          \
    third_party/mbedtls/repo/library/cmac.c                 \
    third_party/mbedtls/repo/library/ctr_drbg.c             \
    third_party/mbedtls/repo/library/debug.c                \
    third_party/mbedtls/repo/library/ecjpake.c              \
    third_party/mbedtls/repo/library/ecp_curves.c           \
    third_party/mbedtls/repo/library/entropy.c              \
    third_party/mbedtls/repo/library/entropy_poll.c         \
    third_party/mbedtls/repo/library/ssl_cookie.c           \
    third_party/mbedtls/repo/library/ssl_ciphersuites.c     \
    third_party/mbedtls/repo/library/ssl_cli.c              \
    third_party/mbedtls/repo/library/ssl_srv.c              \
    third_party/mbedtls/repo/library/ssl_ticket.c           \
    third_party/mbedtls/repo/library/ssl_tls.c              \
    third_party/mbedtls/repo/library/aes.c                  \
    third_party/mbedtls/repo/library/ecp.c                  \
    $(OPENTHREAD_PROJECT_SRC_FILES)                         \
    $(NULL)

include $(BUILD_STATIC_LIBRARY)

include $(CLEAR_VARS)

LOCAL_MODULE := ot-cli
LOCAL_MODULE_TAGS := eng

LOCAL_C_INCLUDES                                         := \
    $(OPENTHREAD_PROJECT_INCLUDES)                          \
    $(LOCAL_PATH)/include                                   \
    $(LOCAL_PATH)/src                                       \
    $(LOCAL_PATH)/src/cli                                   \
    $(LOCAL_PATH)/src/core                                  \
    $(LOCAL_PATH)/src/posix/platform                        \
    $(LOCAL_PATH)/third_party/mbedtls                       \
    $(LOCAL_PATH)/third_party/mbedtls/repo/include          \
    $(NULL)

LOCAL_CFLAGS                                                                := \
    -DMBEDTLS_CONFIG_FILE=\"mbedtls-config.h\"                                 \
    -DOPENTHREAD_CONFIG_FILE=\<openthread-config-android.h\>                   \
    $(OPENTHREAD_COMMON_FLAGS)                                                 \
    -DOPENTHREAD_CONFIG_POSIX_APP_ENABLE_PTY_DEVICE=1                          \
    -DOPENTHREAD_CONFIG_UART_CLI_RAW=1                                         \
    -DOPENTHREAD_FTD=1                                                         \
    -DOPENTHREAD_POSIX=1                                                       \
    -DOPENTHREAD_POSIX_APP_TYPE=2                                              \
    -DOPENTHREAD_POSIX_RCP_UART_ENABLE=1                                       \
    -DSPINEL_PLATFORM_HEADER=\"spinel_platform.h\"                             \
    $(OPENTHREAD_PROJECT_CFLAGS)                                               \
    $(NULL)

LOCAL_CPPFLAGS                                                              := \
    -Wno-non-virtual-dtor                                                      \
    $(NULL)

LOCAL_LDLIBS                               := \
    -lutil

LOCAL_SRC_FILES                            := \
    src/cli/cli.cpp                           \
    src/cli/cli_coap.cpp                      \
    src/cli/cli_commissioner.cpp              \
    src/cli/cli_console.cpp                   \
    src/cli/cli_dataset.cpp                   \
    src/cli/cli_joiner.cpp                    \
    src/cli/cli_server.cpp                    \
    src/cli/cli_uart.cpp                      \
    src/cli/cli_udp.cpp                       \
    src/posix/main.c                          \
    $(NULL)

LOCAL_STATIC_LIBRARIES = ot-core
include $(BUILD_EXECUTABLE)

include $(CLEAR_VARS)

LOCAL_MODULE := ot-ncp
LOCAL_MODULE_TAGS := eng

LOCAL_C_INCLUDES                                         := \
    $(OPENTHREAD_PROJECT_INCLUDES)                          \
    $(LOCAL_PATH)/include                                   \
    $(LOCAL_PATH)/src                                       \
    $(LOCAL_PATH)/src/core                                  \
    $(LOCAL_PATH)/src/ncp                                   \
    $(LOCAL_PATH)/src/posix/platform                        \
    $(LOCAL_PATH)/third_party/mbedtls                       \
    $(LOCAL_PATH)/third_party/mbedtls/repo/include          \
    $(NULL)

LOCAL_CFLAGS                                                                := \
    -DMBEDTLS_CONFIG_FILE=\"mbedtls-config.h\"                                 \
    -DOPENTHREAD_CONFIG_FILE=\<openthread-config-android.h\>                   \
    $(OPENTHREAD_COMMON_FLAGS)                                                 \
    -DOPENTHREAD_CONFIG_POSIX_APP_ENABLE_PTY_DEVICE=1                          \
    -DOPENTHREAD_FTD=1                                                         \
    -DOPENTHREAD_POSIX=1                                                       \
    -DOPENTHREAD_POSIX_APP_TYPE=1                                              \
    -DOPENTHREAD_POSIX_RCP_UART_ENABLE=1                                       \
    -DSPINEL_PLATFORM_HEADER=\"spinel_platform.h\"                             \
    $(OPENTHREAD_PROJECT_CFLAGS)                                               \
    $(NULL)

LOCAL_CPPFLAGS                                                              := \
    -Wno-non-virtual-dtor                                                      \
    $(NULL)

LOCAL_LDLIBS                               := \
    -lutil

LOCAL_SRC_FILES                            := \
    src/ncp/changed_props_set.cpp             \
    src/ncp/ncp_base.cpp                      \
    src/ncp/ncp_base_mtd.cpp                  \
    src/ncp/ncp_base_ftd.cpp                  \
    src/ncp/ncp_base_dispatcher.cpp           \
    src/ncp/ncp_buffer.cpp                    \
    src/ncp/ncp_uart.cpp                      \
    src/posix/main.c                          \
    $(NULL)

LOCAL_STATIC_LIBRARIES = ot-core
include $(BUILD_EXECUTABLE)
