Page MenuHomec4science

CMakeLists.txt
No OneTemporary

File Metadata

Created
Thu, May 2, 10:51

CMakeLists.txt

project( liboncilla C CXX )
cmake_minimum_required(VERSION 2.8 )
#set( LIBNAME "oncilla" )
#SET( CMAKE_ALLOW_LOOSE_LOOP_CONSTRUCTS TRUE )
#SET( LIBONCILLA_CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/cmake )
#SET( CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE )
# CMake module path and modules
find_package(RSC REQUIRED )
find_package(BiorobCMakeUtils 0.3.4 REQUIRED)
include_all_biorob_cmake_utils()
set(CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}" "${RSC_CMAKE_MODULE_PATH}" )
#MESSAGE( STATUS "RSC version: ${RSC_VERSION}" )
#include( CheckIncludeFileCXX )
#include( EnableCoverageReport )
#include( EnableSlocCount )
#include( GenerateDoxygen )
#include( GenerateCppcheck )
#include( PedanticCompilerWarnings )
#include( SuperPedanticCompilerWarnings )
#SET(CMAKE_INSTALL_RPATH_USE_LINK_PATH TRUE)
# --- user options ---
option(BUILD_TESTS "Decide whether unit-tests are built" ON)
option(BUILD_EXAMPLES "Decide whether the examples are built" ON)
option(BUILD_DOCS "Decide whether the docygen documentation is built" OFF)
find_package(RCI REQUIRED)
add_definitions(${RCI_DEFINITIONS})
find_package(PkgConfig REQUIRED)
pkg_check_modules(BIOROB_CPP biorob-cpp-0.2>=0.2.8 REQUIRED)
# --- global definitions ---
make_std_versionning(MAJOR 0 MINOR 3 PATCH 0~dev1)
set(LIBONCILLA_CMAKE_MODULE_PATH "share/cmake/Modules")
# Includes
include_directories(BEFORE src
${PROJECT_BINARY_DIR}/src
${BIOROB_CPP_INCLUDE_DIRS})
include_directories(SYSTEM
${RCI_INCLUDE_DIRS})
add_subdirectory(src)
find_package(GMock)
if(BUILD_TESTS AND GMOCK_FOUND)
enable_testing()
message(STATUS "Building tests - deactivate by adapting BUILD_TESTS")
add_subdirectory(test)
elseif(BUILD_TESTS AND NOT GMOCK_FOUND)
message(WARNING "Could not build unit tests even though desired because Google Mock could not be installed.")
endif(BUILD_TESTS AND GMOCK_FOUND)
if(BUILD_EXAMPLES)
add_subdirectory(examples)
endif(BUILD_EXAMPLES)
# --- pkgconfig file ---
set(PKG_CONFIG_FILE liboncilla-${VERSION_MAJOR}.pc )
configure_file(liboncilla.pc.in ${PKG_CONFIG_FILE} @ONLY)
install(FILES ${CMAKE_BINARY_DIR}/${PKG_CONFIG_FILE} DESTINATION lib/pkgconfig)
# --- cmake config file ---
configure_file(liboncillaConfig.cmake.in LibOncillaConfig.cmake @ONLY)
install(FILES ${CMAKE_CURRENT_BINARY_DIR}/LibOncillaConfig.cmake DESTINATION share/liboncilla)
# --- documentation generation ---
if(BUILD_DOCS)
add_subdirectory(doc)
endif(BUILD_DOCS)
# --- coverage ---
#if(BUILD_TESTS)
# enable_coverage_report(TARGETS liboncilla TESTS ${DTO_TEST_NAME} ${INTEGRATED_TEST_NAME} FILTER "*3rdparty*" "*test/*")
#endif(BUILD_TESTS)
# --- sloccount ---
#enable_sloccount(FOLDERS src test examples)
# --- cppcheck ---
#generate_cppcheck(SOURCES src test examples
# "${CMAKE_CURRENT_BINARY_DIR}/src" "${CMAKE_CURRENT_BINARY_DIR}/test" "${CMAKE_CURRENT_BINARY_DIR}/examples"
# ENABLE_IDS style)

Event Timeline