|
|
|
@ -11,44 +11,44 @@ set(CMAKE_CXX_STANDARD 11) |
|
|
|
|
set(CMAKE_CXX_STANDARD_REQUIRED ON) |
|
|
|
|
set(CMAKE_INCLUDE_CURRENT_DIR ON) |
|
|
|
|
|
|
|
|
|
IF(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
SET(CMAKE_BUILD_TYPE "Debug" CACHE STRING |
|
|
|
|
if(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
set(CMAKE_BUILD_TYPE "Debug" CACHE STRING |
|
|
|
|
"Choose the type of build, options are: None Debug Release RelWithDebInfo MinSizeRel." |
|
|
|
|
FORCE) |
|
|
|
|
MESSAGE("Setting build type to '${CMAKE_BUILD_TYPE}'") |
|
|
|
|
ELSE(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
MESSAGE("Build type set to '${CMAKE_BUILD_TYPE}'") |
|
|
|
|
ENDIF(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
|
|
|
|
|
IF("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
SET(PATCH_OUT "0") |
|
|
|
|
ELSE("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
FIND_PROGRAM(GIT git) |
|
|
|
|
IF(GIT) |
|
|
|
|
EXECUTE_PROCESS( |
|
|
|
|
message("Setting build type to '${CMAKE_BUILD_TYPE}'") |
|
|
|
|
else(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
message("Build type set to '${CMAKE_BUILD_TYPE}'") |
|
|
|
|
endif(NOT CMAKE_BUILD_TYPE) |
|
|
|
|
|
|
|
|
|
if("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
set(PATCH_OUT "0") |
|
|
|
|
else("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
find_program(GIT git) |
|
|
|
|
if(GIT) |
|
|
|
|
execute_process( |
|
|
|
|
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} |
|
|
|
|
COMMAND ${GIT} rev-parse --short HEAD |
|
|
|
|
OUTPUT_VARIABLE GIT_OUT OUTPUT_STRIP_TRAILING_WHITESPACE |
|
|
|
|
) |
|
|
|
|
SET(PATCH_OUT "0-${GIT_OUT}") |
|
|
|
|
ELSE(GIT) |
|
|
|
|
SET(PATCH_OUT "0") |
|
|
|
|
ENDIF(GIT) |
|
|
|
|
ENDIF("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
|
|
|
|
|
SET(PROJECT_VERSION_PATCH ${PATCH_OUT}) |
|
|
|
|
SET(CPACK_PACKAGE_VERSION_MAJOR "0") |
|
|
|
|
SET(CPACK_PACKAGE_VERSION_MINOR "1") |
|
|
|
|
SET(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH}) |
|
|
|
|
SET(CPACK_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) |
|
|
|
|
SET(PROJECT_VERSION_MAJOR ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}) |
|
|
|
|
SET(PROJECT_VERSION ${CPACK_PACKAGE_VERSION}) |
|
|
|
|
|
|
|
|
|
MESSAGE(STATUS "Version: ${PROJECT_VERSION}") |
|
|
|
|
|
|
|
|
|
if (CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU") |
|
|
|
|
set(PATCH_OUT "0-${GIT_OUT}") |
|
|
|
|
else(GIT) |
|
|
|
|
set(PATCH_OUT "0") |
|
|
|
|
endif(GIT) |
|
|
|
|
endif("${CMAKE_BUILD_TYPE}" STREQUAL "Release") |
|
|
|
|
|
|
|
|
|
set(PROJECT_VERSION_PATCH ${PATCH_OUT}) |
|
|
|
|
set(CPACK_PACKAGE_VERSION_MAJOR "0") |
|
|
|
|
set(CPACK_PACKAGE_VERSION_MINOR "1") |
|
|
|
|
set(CPACK_PACKAGE_VERSION_PATCH ${PROJECT_VERSION_PATCH}) |
|
|
|
|
set(CPACK_PACKAGE_VERSION ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}) |
|
|
|
|
set(PROJECT_VERSION_MAJOR ${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}) |
|
|
|
|
set(PROJECT_VERSION ${CPACK_PACKAGE_VERSION}) |
|
|
|
|
|
|
|
|
|
message(STATUS "Version: ${PROJECT_VERSION}") |
|
|
|
|
|
|
|
|
|
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang" OR CMAKE_CXX_COMPILER_ID MATCHES "GNU") |
|
|
|
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} \ |
|
|
|
|
-std=gnu++11 \ |
|
|
|
|
-std=c++11 \ |
|
|
|
|
-Wall \ |
|
|
|
|
-Wextra \ |
|
|
|
|
-Werror \ |
|
|
|
|