diff options
Diffstat (limited to 'cmake/opentrack-version.cmake')
| -rw-r--r-- | cmake/opentrack-version.cmake | 33 |
1 files changed, 12 insertions, 21 deletions
diff --git a/cmake/opentrack-version.cmake b/cmake/opentrack-version.cmake index 9cd597d3..0ff516f2 100644 --- a/cmake/opentrack-version.cmake +++ b/cmake/opentrack-version.cmake @@ -1,3 +1,4 @@ +include_guard(GLOBAL) include(GetGitRevisionDescription) find_package(Git QUIET) @@ -5,41 +6,31 @@ if(GIT_FOUND) git_describe(OPENTRACK_COMMIT --tags --always) endif() -unset(_build_type) -if(CMAKE_BUILD_TYPE) - string(TOUPPER ${CMAKE_BUILD_TYPE} _build_type) - if (NOT _build_type STREQUAL "DEBUG") - unset(_build_type) - else() - set(_build_type "-${_build_type}") - endif() -endif() - -file(WRITE ${CMAKE_BINARY_DIR}/opentrack-version.h "#define OPENTRACK_VERSION \"${OPENTRACK_COMMIT}${_build_type}\"") +file(WRITE ${CMAKE_BINARY_DIR}/opentrack-version.hxx "#define OPENTRACK_VERSION \"${OPENTRACK_COMMIT}\"") -set(version-string " +set(version-string "\ #ifdef __cplusplus extern \"C\" #else extern #endif -const char* opentrack_version; - -const char* opentrack_version = \"${OPENTRACK_COMMIT}${_build_type}\"; +const char* const opentrack_version; +const char* const opentrack_version = \"${OPENTRACK_COMMIT}\"; ") +set(file "${CMAKE_CURRENT_BINARY_DIR}/version.cpp") set(crapola-ver) -if(EXISTS ${CMAKE_BINARY_DIR}/version.c) - file(READ ${CMAKE_BINARY_DIR}/version.c crapola-ver) +if(EXISTS "${file}") + file(READ "${file}" crapola-ver) endif() if(NOT (crapola-ver STREQUAL version-string)) - file(WRITE ${CMAKE_BINARY_DIR}/version.c "${version-string}") + file(WRITE "${file}" "${version-string}") endif() -add_library(opentrack-version STATIC ${CMAKE_BINARY_DIR}/version.c) +add_library(opentrack-version STATIC "${file}") + if(NOT MSVC) - set_property(TARGET opentrack-version APPEND_STRING PROPERTY COMPILE_FLAGS "-fno-lto") + target_compile_options(opentrack-version PRIVATE -fno-lto) endif() -otr_compat(opentrack-version) |
