diff --git a/CMakeLists.txt b/CMakeLists.txt index 0580d4e..f7728f3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -40,6 +40,9 @@ else() set(PROJECT_NAME_UPPERCASE ${PROJECT_NAME}) endif() +# Transform PROJECT_NAME into valid C/C++ identifier +string(REGEX REPLACE "[^A-Za-z0-9_]" "_" PROJECT_NAME_C "${PROJECT_NAME_UPPERCASE}") + # # Prevent building in the source directory # @@ -210,6 +213,7 @@ else() $ PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src + ${CMAKE_CURRENT_BINARY_DIR}/include ) if(${PROJECT_NAME}_BUILD_EXECUTABLE AND ${PROJECT_NAME}_ENABLE_UNIT_TESTING) target_include_directories( @@ -219,6 +223,7 @@ else() $ PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/src + ${CMAKE_CURRENT_BINARY_DIR}/include ) endif() endif() diff --git a/cmake/version.hpp.in b/cmake/version.hpp.in index 985bad6..51a18f7 100644 --- a/cmake/version.hpp.in +++ b/cmake/version.hpp.in @@ -1,11 +1,11 @@ -#ifndef @PROJECT_NAME_UPPERCASE@_VERSION_H_ -#define @PROJECT_NAME_UPPERCASE@_VERSION_H_ +#ifndef @PROJECT_NAME_C@_VERSION_H_ +#define @PROJECT_NAME_C@_VERSION_H_ -#define @PROJECT_NAME_UPPERCASE@_VERSION "@PROJECT_VERSION@" +#define @PROJECT_NAME_C@_VERSION "@PROJECT_VERSION@" -#define @PROJECT_NAME_UPPERCASE@_MAJOR_VERSION @PROJECT_VERSION_MAJOR@ -#define @PROJECT_NAME_UPPERCASE@_MINOR_VERSION @PROJECT_VERSION_MINOR@ -#define @PROJECT_NAME_UPPERCASE@_PATCH_VERSION @PROJECT_VERSION_PATCH@ +#define @PROJECT_NAME_C@_MAJOR_VERSION @PROJECT_VERSION_MAJOR@ +#define @PROJECT_NAME_C@_MINOR_VERSION @PROJECT_VERSION_MINOR@ +#define @PROJECT_NAME_C@_PATCH_VERSION @PROJECT_VERSION_PATCH@ -#endif // @PROJECT_NAME_UPPERCASE@_VERSION_H_ +#endif // @PROJECT_NAME_C@_VERSION_H_