52 lines
1.3 KiB
CMake
52 lines
1.3 KiB
CMake
cmake_minimum_required(VERSION 3.3)
|
|
project(libdi)
|
|
|
|
set(PROJECT_NAME "libdi")
|
|
set(PROJECT_BRIEF "DI common C library (libdi)")
|
|
|
|
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
include("common/cmake/MemCheck.txt")
|
|
include(CTest)
|
|
endif()
|
|
include(ExternalProject)
|
|
|
|
set(PRIMARY_LANGUAGE "C")
|
|
|
|
include("common/cmake/CMakeLists.txt")
|
|
|
|
add_subdirectory("3rdparty/mpack/src")
|
|
|
|
include_directories(
|
|
"${PROJECT_BINARY_DIR}/include"
|
|
"${PROJECT_SOURCE_DIR}/include"
|
|
"${PROJECT_SOURCE_DIR}/3rdparty/mpack/src"
|
|
"${PROJECT_SOURCE_DIR}/libdi_constants/include"
|
|
)
|
|
|
|
add_subdirectory("3rdparty/mpack/test")
|
|
|
|
add_subdirectory("include-linux")
|
|
include_directories(${LIBDI_INCLUDE_LINUX})
|
|
add_definitions(${LIBDI_INCLUDE_LINUX_DEFINITIONS})
|
|
add_subdirectory("src")
|
|
|
|
add_definitions(-DDI_LOG_COMPONENT=DI_LOG_COMPONENT_LIBDI)
|
|
if (CMAKE_BUILD_TYPE STREQUAL "Debug")
|
|
add_definitions(-DMPACK_DEBUG)
|
|
endif()
|
|
|
|
###
|
|
# Create static libraries for linux or embedded target
|
|
###
|
|
add_library(di STATIC "${LIBDI_SRC};${MPACK_SRC}")
|
|
set(LIBDI_INC "${PROJECT_SOURCE_DIR}/include;${CMAKE_CURRENT_SOURCE_DIR}/libdi_constants/include" CACHE INTERNAL "incs")
|
|
|
|
file(GLOB_RECURSE INC_SRC "${CMAKE_CURRENT_SOURCE_DIR}/include/di/*.h")
|
|
if (BUILD_TESTING)
|
|
enable_linting()
|
|
add_metrix_target("${LIBDI_SRC};${INC_SRC}")
|
|
endif()
|
|
|
|
add_subdirectory("examples/linux")
|
|
add_subdirectory("tests")
|