126 lines
3.8 KiB
CMake
126 lines
3.8 KiB
CMake
# This CMake file tries to find the DI common firmware C (embedded) library
|
|
#
|
|
# The following variables are set:
|
|
# LIBDI_FW_FOUND - Libdi sources are found
|
|
# Libdi_fw_LIBRARY - Libdi static name
|
|
# Libdi_fw_INCLUDE_DIRS - Libdi include directories
|
|
###
|
|
|
|
set (LIBDIFW_COMPONENTS
|
|
adc
|
|
assert
|
|
board
|
|
dac
|
|
i2c
|
|
spi
|
|
onewire
|
|
uid
|
|
exception
|
|
semihosting
|
|
stack_profiling
|
|
periodic
|
|
drv_24xx
|
|
drv_stm32fx_flash
|
|
drv_stm32l0_eeprom
|
|
drv_lsm9ds0
|
|
drv_w5500
|
|
drv_ds18b20
|
|
drv_xbee
|
|
cloudlight
|
|
battery_indicator
|
|
battery
|
|
heartbeat
|
|
serial
|
|
syshalt
|
|
can
|
|
can_callbacks
|
|
charger
|
|
config
|
|
time
|
|
test
|
|
)
|
|
|
|
set (LIBDIFW_adc_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/adc.c")
|
|
set (LIBDIFW_board_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/board.c")
|
|
set (LIBDIFW_dac_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/dac.c")
|
|
set (LIBDIFW_i2c_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/i2c.c")
|
|
set (LIBDIFW_spi_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/spi.c")
|
|
set (LIBDIFW_onewire_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/onewire.c")
|
|
set (LIBDIFW_uid_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/uid.c")
|
|
set (LIBDIFW_exception_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/exception.c")
|
|
set (LIBDIFW_semihosting_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/semihosting.c")
|
|
set (LIBDIFW_stack_profiling_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/stack_profiling.c")
|
|
set (LIBDIFW_periodic_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/periodic.c")
|
|
set (LIBDIFW_drv_24xx_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/24xx.c")
|
|
set (LIBDIFW_drv_stm32fx_flash_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/stm32fx_flash.c")
|
|
set (LIBDIFW_drv_stm32l0_eeprom_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/stm32l0_eeprom.c")
|
|
set (LIBDIFW_drv_lsm9ds0_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/lsm9ds0.c"
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/lsm9ds0/magnet_lut.c")
|
|
set (LIBDIFW_drv_w5500_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/w5500.c")
|
|
set (LIBDIFW_drv_ds18b20_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/ds18b20.c")
|
|
set (LIBDIFW_drv_xbee_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/xbee.c"
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/drv/xbee/callbacks.c")
|
|
set (LIBDIFW_cloudlight_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/cloudlight.c")
|
|
set (LIBDIFW_battery_indicator_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/battery_indicator.c")
|
|
set (LIBDIFW_battery_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/battery.c")
|
|
set (LIBDIFW_heartbeat_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/heartbeat.c")
|
|
set (LIBDIFW_syshalt_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/syshalt.c")
|
|
set (LIBDIFW_serial_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/serial.c")
|
|
set (LIBDIFW_can_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/can.c")
|
|
set (LIBDIFW_can_callbacks_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/can/callbacks.c")
|
|
set (LIBDIFW_charger_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/charger.c")
|
|
set (LIBDIFW_config_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/config.c")
|
|
set (LIBDIFW_time_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/time.c")
|
|
set (LIBDIFW_assert_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/assert.c")
|
|
set (LIBDIFW_test_SOURCES
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/src/test.c")
|
|
|
|
FOREACH(comp ${Libdi_fw_FIND_COMPONENTS})
|
|
LIST(FIND LIBDIFW_COMPONENTS ${comp} INDEX)
|
|
IF(INDEX EQUAL -1)
|
|
MESSAGE(FATAL_ERROR "Unknown Libdi_fw component: ${comp}\nSupported components: ${LIBDIFW_COMPONENTS}")
|
|
ENDIF()
|
|
LIST(APPEND Libdi_fw_SOURCES ${LIBDIFW_${comp}_SOURCES})
|
|
ENDFOREACH()
|
|
|
|
set(Libdi_fw_INCLUDE_DIRS
|
|
"${PROJECT_SOURCE_DIR}/libdi_fw/include"
|
|
)
|
|
|
|
set(Libdi_fw_NAME "libdi_fw")
|
|
|
|
set_source_files_properties(${Libdi_fw_SOURCES} PROPERTIES COMPILE_FLAGS -DDI_LOG_COMPONENT=DI_LOG_COMPONENT_LIBDI_FW)
|
|
|
|
include(FindPackageHandleStandardArgs)
|
|
find_package_handle_standard_args(Libdi_fw DEFAULT_MSG Libdi_fw_NAME Libdi_fw_INCLUDE_DIRS Libdi_fw_SOURCES)
|