############################################################################################
#
# OnMicro makefile
#
############################################################################################

# Project
PROJECT = ble_app_simple_cmsisos2_freertos

# SDK ROOT dir and current ROM/Library dir
ROOT_DIR = ../../../
CUR_ROMLIB_DIR = $(ROOT_DIR)hal/device/om6626/rom_lib/current/

# Defines
DEFINES = CONFIG_OM6626A=1 CONFIG_LIB_PRESET_BLE_1PERIPHERAL CONFIG_AUTOCONF_PRESET _start=main

# Optimization: 0, 1, 2, 3, s, 4(ultrasize)
CONFIG_OPTIMIZATION_LEVEL = 4

# is create library ?
CONFIG_LIB_GENERATE = n

# Postbuild prog
POSTBUILDPROG =

# library
LIBRARIES =

# Sources
SOURCES = \
    $(ROOT_DIR)bsp/OM662X_EVB/board_om6626a_evb.c \
    $(ROOT_DIR)common/om_libc_retarget.c \
    $(ROOT_DIR)common/om_printf.c \
    $(ROOT_DIR)common/om_fifo.c \
    $(ROOT_DIR)common/om_list.c \
    $(ROOT_DIR)common/om_utils.c \
    $(ROOT_DIR)common/om_log.c \
    $(ROOT_DIR)components/shell/shell.c \
    $(ROOT_DIR)components/shell/shell_cmd.c \
    $(ROOT_DIR)components/shell/shell_port.c \
    $(ROOT_DIR)components/unity/unity_fixture.c \
    $(ROOT_DIR)components/unity/unity.c \
    $(ROOT_DIR)components/ble/common/ob_mem_heap.c \
    $(ROOT_DIR)components/evt/evt.c \
    $(ROOT_DIR)components/evt/evt_timer.c \
    $(ROOT_DIR)components/crypto/sha256.c \
    $(ROOT_DIR)components/crypto/micro_ecc/uECC.c \
    $(ROOT_DIR)components/pm/pm.c \
    $(ROOT_DIR)components/mbr/mbr.c \
    $(ROOT_DIR)components/trace/trc_io.c \
    $(ROOT_DIR)hal/driver/common/drv_isr.c \
    $(ROOT_DIR)hal/driver/common/drv_usart.c \
    $(ROOT_DIR)hal/driver/common/drv_usart_ex.c \
    $(ROOT_DIR)hal/driver/common/drv_wdt.c \
    $(ROOT_DIR)hal/driver/common/drv_pmu_timer.c \
    $(ROOT_DIR)hal/driver/common/drv_cortex.c \
    $(ROOT_DIR)hal/driver/common/drv_24g.c \
    $(ROOT_DIR)hal/driver/common/drv_aes_hw.c \
    $(ROOT_DIR)hal/driver/common/drv_gpio.c \
    $(ROOT_DIR)hal/driver/common/drv_efuse.c \
    $(ROOT_DIR)hal/driver/common/drv_sf_base.c \
    $(ROOT_DIR)hal/driver/common/drv_sf_sys.c \
    $(ROOT_DIR)hal/driver/common/drv_sf.c \
    $(ROOT_DIR)hal/driver/common/drv_dma.c \
    $(ROOT_DIR)hal/driver/common/drv_spi.c \
    $(ROOT_DIR)hal/driver/common/drv_i2c.c \
    $(ROOT_DIR)hal/driver/common/drv_rtc.c \
    $(ROOT_DIR)hal/driver/common/drv_radio.c \
    $(ROOT_DIR)hal/driver/common/drv_tim.c \
    $(ROOT_DIR)hal/driver/common/drv_lp_tim.c \
    $(ROOT_DIR)hal/driver/common/drv_rng.c \
    $(ROOT_DIR)hal/driver/om6626/drv_pinmux.c \
    $(ROOT_DIR)hal/driver/om6626/drv_pmu.c \
    $(ROOT_DIR)hal/driver/om6626/drv_rcc.c \
    $(ROOT_DIR)hal/driver/om6626/drv_calib.c \
    $(ROOT_DIR)hal/driver/om6626/drv_calib_repair.c \
    $(ROOT_DIR)hal/driver/om6626/drv_adc.c \
    $(ROOT_DIR)hal/device/om6626/GCC/system_asm.S \
    $(ROOT_DIR)hal/device/om6626/GCC/startup.S \
    $(ROOT_DIR)hal/device/om6626/system.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/src/main.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/src/evt_task.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/src/app_adv.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/src/app_sec.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_ancs/ancs_client.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_dfu/onmicro_dfu.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_dfu/onmicro_dfu_nvds.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_dfu/service_onmicro_dfu.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_gap_dis_batt/service_common.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_hid_media/app_hid_media.c \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_tspp/service_tspp.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/croutine.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/event_groups.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/list.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/queue.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/stream_buffer.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/tasks.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/timers.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/Portable/MemMang/heap_5.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/Portable/Common/mpu_wrappers.c \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Source/cmsis_os2.c \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Source/freertos_evr.c \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Source/cmsis_os1.c \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Source/os_systick.c \
    $(ROOT_DIR)rtos/FreeRTOS/Source/Portable/om662x/GCC/port.c \


# Includes
INCLUDES = \
    $(ROOT_DIR)bsp/include \
    $(ROOT_DIR)bsp/OM662X_EVB \
    $(ROOT_DIR)common/ \
    $(ROOT_DIR)components/shell/ \
    $(ROOT_DIR)components/unity \
    $(ROOT_DIR)components/ble/include/ \
    $(ROOT_DIR)components/ble/controller/include/ \
    $(ROOT_DIR)components/ble/host/include/ \
    $(ROOT_DIR)components/ble/mesh/include/ \
    $(ROOT_DIR)components/ble/controller/ \
    $(ROOT_DIR)components/ble/controller/include/ \
    $(ROOT_DIR)components/ble/controller/main/ \
    $(ROOT_DIR)components/ble/controller/cc/ \
    $(ROOT_DIR)components/ble/controller/llp/ \
    $(ROOT_DIR)components/ble/controller/dbg/ \
    $(ROOT_DIR)components/ble/controller/ecc_p256/ \
    $(ROOT_DIR)components/ble/controller/co/ \
    $(ROOT_DIR)components/ble/controller/rf/ \
    $(ROOT_DIR)components/ble/controller/bb/ \
    $(ROOT_DIR)components/ble/controller/bb/reg/ \
    $(ROOT_DIR)components/ble/controller/ll/ \
    $(ROOT_DIR)components/ble/controller/hci/ \
    $(ROOT_DIR)components/ble/controller/llt/ \
    $(ROOT_DIR)components/ble/common/ \
    $(ROOT_DIR)components/nvds/ \
    $(ROOT_DIR)components/evt/ \
    $(ROOT_DIR)components/crypto/ \
    $(ROOT_DIR)components/crypto/micro_ecc \
    $(ROOT_DIR)components/pm \
    $(ROOT_DIR)components/mbr \
    $(ROOT_DIR)components/trace \
    $(ROOT_DIR)hal/CMSIS/Core/Include \
    $(ROOT_DIR)hal/driver/include \
    $(ROOT_DIR)hal/device/include \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/src \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_ancs \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_dfu \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_gap_dis_batt \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_hid_media \
    $(ROOT_DIR)projects/ble_app_simple_cmsisos2_freertos/../common/om_tspp \
    $(ROOT_DIR)rtos/include \
    $(ROOT_DIR)rtos/FreeRTOS/Source/Include \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Config/ARMCM \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Include \
    $(ROOT_DIR)rtos/FreeRTOS/CMSIS/Include1 \
    $(ROOT_DIR)rtos/FreeRTOS/Source/Portable/om662x/GCC \
    $(ROOT_DIR)include \


# ld and library
LDSCRIPT = $(ROOT_DIR)hal/device/om6626/rom_lib/current/GCC/linker_flash.ld
LDEXTFILE = $(ROOT_DIR)hal/device/om6626/rom_lib/current/GCC/linker_ble_1peripheral.mk

# rules
include $(ROOT_DIR)tools/build/rules_prj.mk

