From dd10c33a1a1ab178828139937b9299eabbd5bf02 Mon Sep 17 00:00:00 2001 From: Holger Nahrstaedt Date: Wed, 9 Mar 2016 14:12:09 +0100 Subject: [PATCH] some changes in cmake --- CMakeLists.txt | 20 +++++++++++++++++++- unitTests/wavelibBoostTests/CMakeLists.txt | 2 +- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a0c5278..a5292f4 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,6 +1,8 @@ cmake_minimum_required(VERSION 3.0) -project(wavelib VERSION 1.0) +set(PROJECT_NAME wavelib) +project(${PROJECT_NAME} CXX C) + # src root path set(WAVELIB_SRC_ROOT ${PROJECT_SOURCE_DIR} CACHE PATH "Wavelib source root") @@ -12,8 +14,21 @@ set(EXECUTABLE_OUTPUT_PATH ${COMMON_BIN_PATH}/${CMAKE_BUILD_TYPE}) set(CMAKE_MODULE_PATH ${WAVELIB_SRC_ROOT}/cmake ${CMAKE_MODULE_PATH}) +set(WAVELIB_VERSION "1.0.0" CACHE STRING "Wavelib version" FORCE) +message(">>> Building Wavelib version: ${WAVELIB_VERSION}") +message(">>> EXECUTABLE_OUTPUT_PATH = ${EXECUTABLE_OUTPUT_PATH}") + option(BUILD_UT "Enable Unit test" ON) +# cleanup prefix lib for Unix-like OSes +set(CMAKE_SHARED_MODULE_PREFIX) + +# install target to this folder by default +set(WAVELIB_BINARY_DIR ${WAVELIB_SRC_ROOT}/bin) +if(CMAKE_INSTALL_PREFIX_INITIALIZED_TO_DEFAULT) + set(CMAKE_INSTALL_PREFIX "${WAVELIB_BINARY_DIR}" CACHE PATH "default install path" FORCE) +endif() + # make include globaly visible set(PROJECT_WIDE_INCLUDE ${WAVELIB_SRC_ROOT}/include) include_directories(${PROJECT_WIDE_INCLUDE}) @@ -32,6 +47,7 @@ else() message(FATAL_ERROR "Boost >= 1.35 required for testing wavelib") endif() +include_directories(${COMMON_BIN_PATH}) if(BUILD_UT) include(CTest) @@ -57,3 +73,5 @@ if(BUILD_UT) endif() add_subdirectory(src) + +install(DIRECTORY ${WAVELIB_SRC_ROOT}/include/ DESTINATION include FILES_MATCHING PATTERN "*.h") \ No newline at end of file diff --git a/unitTests/wavelibBoostTests/CMakeLists.txt b/unitTests/wavelibBoostTests/CMakeLists.txt index c56c194..0c0b447 100644 --- a/unitTests/wavelibBoostTests/CMakeLists.txt +++ b/unitTests/wavelibBoostTests/CMakeLists.txt @@ -16,7 +16,7 @@ set(HEADER_FILES add_executable(wavelibLibTests ${SOURCE_FILES} ${HEADER_FILES}) -add_test(NAME wavelibTests COMMAND wavelibTests) +add_test(NAME wavelibTests WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH} COMMAND wavelibTests) include_directories(${BOOST_DIR}) add_dependencies(wavelibLibTests wavelib)