From 81fdc61cb17ab0805472c710f5628afa1ce31c18 Mon Sep 17 00:00:00 2001 From: Lars Melchior Date: Wed, 3 Jun 2020 16:15:11 +0200 Subject: [PATCH] move includes into project directory and create version header --- CMakeLists.txt | 5 ++++- include/{ => greeter}/greeter.h | 0 source/greeter.cpp | 2 +- standalone/CMakeLists.txt | 1 - standalone/source/main.cpp | 3 ++- test/source/greeter.cpp | 11 ++++++++++- 6 files changed, 17 insertions(+), 5 deletions(-) rename include/{ => greeter}/greeter.h (100%) diff --git a/CMakeLists.txt b/CMakeLists.txt index 20ba77d..7239ead 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -23,7 +23,7 @@ include(cmake/CPM.cmake) CPMAddPackage( NAME PackageProject.cmake GITHUB_REPOSITORY TheLartians/PackageProject.cmake - VERSION 1.2.1 + VERSION 1.3 ) # ---- Add source files ---- @@ -58,11 +58,14 @@ target_include_directories(Greeter # ---- Create an installable target ---- # this allows users to install and find the library via `find_package()`. +string(TOLOWER ${PROJECT_NAME} LOWERCASE_PROJECT_NAME) + packageProject( NAME ${PROJECT_NAME} VERSION ${PROJECT_VERSION} BINARY_DIR ${PROJECT_BINARY_DIR} INCLUDE_DIR ${PROJECT_SOURCE_DIR}/include INCLUDE_DESTINATION include/${PROJECT_NAME}-${PROJECT_VERSION} + VERSION_HEADER "${LOWERCASE_PROJECT_NAME}/version.h" DEPENDENCIES "" ) diff --git a/include/greeter.h b/include/greeter/greeter.h similarity index 100% rename from include/greeter.h rename to include/greeter/greeter.h diff --git a/source/greeter.cpp b/source/greeter.cpp index e75363f..b1c54a7 100644 --- a/source/greeter.cpp +++ b/source/greeter.cpp @@ -1,4 +1,4 @@ -#include +#include using namespace greeter; diff --git a/standalone/CMakeLists.txt b/standalone/CMakeLists.txt index 1af3b65..19a4993 100644 --- a/standalone/CMakeLists.txt +++ b/standalone/CMakeLists.txt @@ -38,4 +38,3 @@ set_target_properties(GreeterStandalone PROPERTIES ) target_link_libraries(GreeterStandalone Greeter cxxopts) -target_compile_definitions(GreeterStandalone PRIVATE -DGREETER_VERSION=\"${Greeter_VERSION}\") diff --git a/standalone/source/main.cpp b/standalone/source/main.cpp index bc0f550..5464fa5 100644 --- a/standalone/source/main.cpp +++ b/standalone/source/main.cpp @@ -1,4 +1,5 @@ -#include +#include +#include #include #include diff --git a/test/source/greeter.cpp b/test/source/greeter.cpp index eb12ab3..2eeee83 100644 --- a/test/source/greeter.cpp +++ b/test/source/greeter.cpp @@ -1,5 +1,9 @@ #include -#include + +#include +#include + +#include TEST_CASE("Greeter") { using namespace greeter; @@ -11,3 +15,8 @@ TEST_CASE("Greeter") { CHECK(greeter.greet(LanguageCode::ES) == "¡Hola Tests!"); CHECK(greeter.greet(LanguageCode::FR) == "Bonjour Tests!"); } + +TEST_CASE("Greeter version") { + static_assert(std::string_view(GREETER_VERSION) == std::string_view("1.0")); + CHECK(std::string(GREETER_VERSION) == std::string("1.0")); +} \ No newline at end of file