167 lines
6.1 KiB
CMake
167 lines
6.1 KiB
CMake
cmake_minimum_required(VERSION 3.15.3)
|
|
|
|
# ==========================
|
|
# Source Files
|
|
# ==========================
|
|
set(STARTUP_SRC
|
|
${NRF_SDK_DIR}/modules/nrfx/mdk/gcc_startup_nrf52840.S
|
|
${NRF_SDK_DIR}/modules/nrfx/mdk/system_nrf52.c
|
|
)
|
|
|
|
set(LOGGING_SRC
|
|
${NRF_SDK_DIR}/components/libraries/log/src/nrf_log_backend_rtt.c
|
|
${NRF_SDK_DIR}/components/libraries/log/src/nrf_log_backend_serial.c
|
|
${NRF_SDK_DIR}/components/libraries/log/src/nrf_log_default_backends.c
|
|
${NRF_SDK_DIR}/components/libraries/log/src/nrf_log_frontend.c
|
|
${NRF_SDK_DIR}/components/libraries/log/src/nrf_log_str_formatter.c
|
|
)
|
|
|
|
set(UTILS_SRC
|
|
${NRF_SDK_DIR}/components/libraries/util/nrf_assert.c
|
|
${NRF_SDK_DIR}/components/libraries/util/app_error.c
|
|
${NRF_SDK_DIR}/components/libraries/util/app_error_handler_gcc.c
|
|
${NRF_SDK_DIR}/components/libraries/util/app_error_weak.c
|
|
${NRF_SDK_DIR}/components/libraries/util/app_util_platform.c
|
|
${NRF_SDK_DIR}/components/libraries/strerror/nrf_strerror.c
|
|
${NRF_SDK_DIR}/components/libraries/pwr_mgmt/nrf_pwr_mgmt.c
|
|
)
|
|
|
|
set(ATOMIC_SRC
|
|
${NRF_SDK_DIR}/components/libraries/atomic/nrf_atomic.c
|
|
${NRF_SDK_DIR}/components/libraries/atomic_fifo/nrf_atfifo.c
|
|
${NRF_SDK_DIR}/components/libraries/atomic_flags/nrf_atflags.c
|
|
${NRF_SDK_DIR}/components/libraries/memobj/nrf_memobj.c
|
|
${NRF_SDK_DIR}/components/libraries/balloc/nrf_balloc.c
|
|
${NRF_SDK_DIR}/components/libraries/ringbuf/nrf_ringbuf.c
|
|
)
|
|
|
|
set(USBD_SRC
|
|
${NRF_SDK_DIR}/components/libraries/usbd/app_usbd.c
|
|
${NRF_SDK_DIR}/components/libraries/usbd/app_usbd_core.c
|
|
${NRF_SDK_DIR}/components/libraries/usbd/app_usbd_serial_num.c
|
|
${NRF_SDK_DIR}/components/libraries/usbd/app_usbd_string_desc.c
|
|
${NRF_SDK_DIR}/components/libraries/usbd/class/cdc/acm/app_usbd_cdc_acm.c
|
|
${NRF_SDK_DIR}/components/libraries/usbd/class/nrf_dfu_trigger/app_usbd_nrf_dfu_trigger.c
|
|
)
|
|
|
|
set(SOFTDEVICE_SRC
|
|
${NRF_SDK_DIR}/components/softdevice/common/nrf_sdh.c
|
|
${NRF_SDK_DIR}/components/softdevice/common/nrf_sdh_freertos.c
|
|
${NRF_SDK_DIR}/components/softdevice/common/nrf_sdh_ble.c
|
|
)
|
|
|
|
set(BLE_SRC
|
|
${NRF_SDK_DIR}/components/ble/common/ble_advdata.c
|
|
${NRF_SDK_DIR}/components/ble/common/ble_conn_state.c
|
|
${NRF_SDK_DIR}/components/ble/common/ble_srv_common.c
|
|
${NRF_SDK_DIR}/components/ble/ble_advertising/ble_advertising.c
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dis/ble_dis.c
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dfu/ble_dfu.c
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dfu/ble_dfu_unbonded.c
|
|
${NRF_SDK_DIR}/components/ble/nrf_ble_gatt/nrf_ble_gatt.c
|
|
)
|
|
|
|
set(PRINTF_SRC
|
|
${NRF_SDK_DIR}/external/fprintf/nrf_fprintf.c
|
|
${NRF_SDK_DIR}/external/fprintf/nrf_fprintf_format.c
|
|
${NRF_SDK_DIR}/external/segger_rtt/SEGGER_RTT.c
|
|
${NRF_SDK_DIR}/external/segger_rtt/SEGGER_RTT_printf.c
|
|
)
|
|
|
|
set(NRFX_DRIVERS_SRC
|
|
${NRF_SDK_DIR}/modules/nrfx/drivers/src/nrfx_clock.c
|
|
${NRF_SDK_DIR}/modules/nrfx/drivers/src/nrfx_power.c
|
|
${NRF_SDK_DIR}/modules/nrfx/drivers/src/nrfx_usbd.c
|
|
${NRF_SDK_DIR}/modules/nrfx/soc/nrfx_atomic.c
|
|
)
|
|
|
|
set(NRFX_LEGACY_SRC
|
|
${NRF_SDK_DIR}/integration/nrfx/legacy/nrf_drv_clock.c
|
|
${NRF_SDK_DIR}/integration/nrfx/legacy/nrf_drv_power.c
|
|
)
|
|
|
|
set(EXPERIMENTAL_SRC
|
|
${NRF_SDK_DIR}/components/libraries/experimental_section_vars/nrf_section_iter.c
|
|
)
|
|
|
|
set(PWR_MGMT_SRC
|
|
${NRF_SDK_DIR}/components/libraries/pwr_mgmt/nrf_pwr_mgmt.c
|
|
)
|
|
|
|
add_library(sdk OBJECT
|
|
${STARTUP_SRC}
|
|
${LOGGING_SRC}
|
|
${UTILS_SRC}
|
|
${ATOMIC_SRC}
|
|
${USBD_SRC}
|
|
${SOFTDEVICE_SRC}
|
|
${BLE_SRC}
|
|
${PRINTF_SRC}
|
|
${NRFX_DRIVERS_SRC}
|
|
${NRFX_LEGACY_SRC}
|
|
${EXPERIMENTAL_SRC}
|
|
${PWR_MGMT_SRC}
|
|
)
|
|
|
|
target_include_directories(sdk PUBLIC
|
|
${NRF_SDK_DIR}/components/ble/ble_db_discovery
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dis
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dis_c
|
|
${NRF_SDK_DIR}/components/ble/common/
|
|
${NRF_SDK_DIR}/components/ble/nrf_ble_gatt
|
|
${NRF_SDK_DIR}/components/ble/nrf_ble_gq
|
|
${NRF_SDK_DIR}/components/ble/nrf_ble_scan
|
|
${NRF_SDK_DIR}/components/ble/ble_services/ble_dfu
|
|
${NRF_SDK_DIR}/components/ble/ble_advertising
|
|
${NRF_SDK_DIR}/components/ble/peer_manager
|
|
|
|
${NRF_SDK_DIR}/components/libraries/atomic
|
|
${NRF_SDK_DIR}/components/libraries/atomic_flags
|
|
${NRF_SDK_DIR}/components/libraries/balloc
|
|
${NRF_SDK_DIR}/components/libraries/delay
|
|
${NRF_SDK_DIR}/components/libraries/experimental_section_vars
|
|
${NRF_SDK_DIR}/components/libraries/log
|
|
${NRF_SDK_DIR}/components/libraries/log/src
|
|
${NRF_SDK_DIR}/components/libraries/memobj
|
|
${NRF_SDK_DIR}/components/libraries/queue
|
|
${NRF_SDK_DIR}/components/libraries/ringbuf
|
|
${NRF_SDK_DIR}/components/libraries/strerror
|
|
${NRF_SDK_DIR}/components/libraries/util
|
|
${NRF_SDK_DIR}/components/libraries/block_dev
|
|
${NRF_SDK_DIR}/components/libraries/bootloader
|
|
${NRF_SDK_DIR}/components/libraries/bootloader/ble_dfu
|
|
${NRF_SDK_DIR}/components/libraries/bootloader/dfu
|
|
${NRF_SDK_DIR}/components/libraries/pwr_mgmt
|
|
${NRF_SDK_DIR}/components/libraries/usbd
|
|
${NRF_SDK_DIR}/components/libraries/usbd/class/cdc
|
|
${NRF_SDK_DIR}/components/libraries/usbd/class/cdc/acm
|
|
${NRF_SDK_DIR}/components/libraries/usbd/class/nrf_dfu_trigger
|
|
${NRF_SDK_DIR}/components/libraries/atomic_fifo
|
|
${NRF_SDK_DIR}/components/libraries/svc
|
|
${NRF_SDK_DIR}/components/libraries/mutex
|
|
|
|
${NRF_SDK_DIR}/components/softdevice/common
|
|
${NRF_SDK_DIR}/components/softdevice/mbr/headers
|
|
${NRF_SDK_DIR}/components/softdevice/s140/headers
|
|
|
|
${NRF_SDK_DIR}/components/toolchain/cmsis/include
|
|
${NRF_SDK_DIR}/modules/nrfx
|
|
${NRF_SDK_DIR}/modules/nrfx/hal
|
|
${NRF_SDK_DIR}/modules/nrfx/mdk
|
|
${NRF_SDK_DIR}/modules/nrfx/drivers/include
|
|
|
|
${NRF_SDK_DIR}/external/fprintf
|
|
${NRF_SDK_DIR}/external/freertos/portable/CMSIS/nrf52
|
|
${NRF_SDK_DIR}/external/freertos/portable/GCC/nrf52
|
|
${NRF_SDK_DIR}/external/freertos/source/include
|
|
${NRF_SDK_DIR}/external/segger_rtt
|
|
${NRF_SDK_DIR}/external/utf_converter
|
|
|
|
${NRF_SDK_DIR}/integration/nrfx
|
|
${NRF_SDK_DIR}/integration/nrfx/legacy
|
|
)
|
|
|
|
target_link_libraries(sdk PRIVATE
|
|
prj_config
|
|
)
|