From d9c97d327a017ee782a7d2c0b262201d4d31d03d Mon Sep 17 00:00:00 2001 From: EhWhoAmI Date: Wed, 24 May 2023 10:38:47 +0800 Subject: [PATCH 1/2] Add git hash. Fixes #85 --- CMakeLists.txt | 8 ++++++++ src/CMakeLists.txt | 3 ++- src/test_application/main.cpp | 10 ++++++++++ 3 files changed, 20 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 80a0fd24..510dd6db 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -66,6 +66,14 @@ if(NOT MSVC) add_compile_options(-fno-omit-frame-pointer) endif() +include(FetchContent) + +FetchContent_Declare(cmake_git_version_tracking + GIT_REPOSITORY https://github.com/andrew-hardin/cmake-git-version-tracking.git + GIT_TAG 904dbda1336ba4b9a1415a68d5f203f576b696bb +) +FetchContent_MakeAvailable(cmake_git_version_tracking) + # Compiler warnings can help find problems in code. IF(OSP_ENABLE_COMPILER_WARNINGS) # Enable additional warnings. diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index c16b8226..3ab91d06 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -102,7 +102,8 @@ SET(OSP_MAGNUM_DEPS_LIBS dNewton dScene dModel dVehicle toml11 spdlog - longeron) + longeron + cmake_git_version_tracking) target_link_libraries(osp-magnum-deps INTERFACE ${OSP_MAGNUM_DEPS_LIBS}) add_dependencies(compile-osp-magnum-deps ${OSP_MAGNUM_DEPS_LIBS}) diff --git a/src/test_application/main.cpp b/src/test_application/main.cpp index 45f6f1df..66205d49 100644 --- a/src/test_application/main.cpp +++ b/src/test_application/main.cpp @@ -64,6 +64,14 @@ #include #include #include +#if __has_include("git.h") +#include "git.h" +#define GIT_HASH git_Describe() +#define GIT_BRANCH git_Branch() +#else +#define GIT_HASH "00000" +#define GIT_BRANCH "n/a" +#endif using namespace testapp; @@ -495,6 +503,8 @@ void debug_print_help() << "OSP-Magnum Temporary Debug CLI\n" << "Open a scenario:\n"; + std::cout << "Version: " << GIT_HASH << " (" << GIT_BRANCH << ")\n"; + for (auto const& [name, rTestScn] : scenarios()) { std::string spaces(longestName - name.length(), ' '); From 3827d0a1b3b055ef994db8c80cd18b35edd1adb5 Mon Sep 17 00:00:00 2001 From: EhWhoAmI Date: Wed, 24 May 2023 14:33:23 +0800 Subject: [PATCH 2/2] Add requested fixes. --- .gitmodules | 3 +++ .vscode/settings.json | 3 +++ 3rdparty/CMakeLists.txt | 1 + 3rdparty/cmake-git-version-tracking | 1 + CMakeLists.txt | 8 -------- src/test_application/main.cpp | 7 +++---- 6 files changed, 11 insertions(+), 12 deletions(-) create mode 100644 .vscode/settings.json create mode 160000 3rdparty/cmake-git-version-tracking diff --git a/.gitmodules b/.gitmodules index e874ffe5..1e3253da 100644 --- a/.gitmodules +++ b/.gitmodules @@ -37,3 +37,6 @@ [submodule "3rdparty/freetype"] path = 3rdparty/freetype url = https://github.com/freetype/freetype +[submodule "3rdparty/cmake-git-version-tracking"] + path = 3rdparty/cmake-git-version-tracking + url = https://github.com/andrew-hardin/cmake-git-version-tracking.git diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 00000000..b72607f9 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,3 @@ +{ + "gitlens.currentLine.enabled": false +} \ No newline at end of file diff --git a/3rdparty/CMakeLists.txt b/3rdparty/CMakeLists.txt index 10d65341..08f3256d 100644 --- a/3rdparty/CMakeLists.txt +++ b/3rdparty/CMakeLists.txt @@ -197,6 +197,7 @@ ADD_SUBDIRECTORY(toml11 EXCLUDE_FROM_ALL) ADD_SUBDIRECTORY(spdlog EXCLUDE_FROM_ALL) ADD_SUBDIRECTORY(longeronpp EXCLUDE_FROM_ALL) +ADD_SUBDIRECTORY(cmake-git-version-tracking EXCLUDE_FROM_ALL) # For Windows: Prevent overriding the parent project's compiler/linker settings SET(gtest_force_shared_crt ON CACHE BOOL "" FORCE) ADD_SUBDIRECTORY(googletest EXCLUDE_FROM_ALL) diff --git a/3rdparty/cmake-git-version-tracking b/3rdparty/cmake-git-version-tracking new file mode 160000 index 00000000..7d9442bf --- /dev/null +++ b/3rdparty/cmake-git-version-tracking @@ -0,0 +1 @@ +Subproject commit 7d9442bfade5a47b77291e4117f81cc65887c7b9 diff --git a/CMakeLists.txt b/CMakeLists.txt index 510dd6db..80a0fd24 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -66,14 +66,6 @@ if(NOT MSVC) add_compile_options(-fno-omit-frame-pointer) endif() -include(FetchContent) - -FetchContent_Declare(cmake_git_version_tracking - GIT_REPOSITORY https://github.com/andrew-hardin/cmake-git-version-tracking.git - GIT_TAG 904dbda1336ba4b9a1415a68d5f203f576b696bb -) -FetchContent_MakeAvailable(cmake_git_version_tracking) - # Compiler warnings can help find problems in code. IF(OSP_ENABLE_COMPILER_WARNINGS) # Enable additional warnings. diff --git a/src/test_application/main.cpp b/src/test_application/main.cpp index 66205d49..cbab7a03 100644 --- a/src/test_application/main.cpp +++ b/src/test_application/main.cpp @@ -499,12 +499,11 @@ void debug_print_help() longestName = std::max(name.size(), longestName); } - std::cout - << "OSP-Magnum Temporary Debug CLI\n" - << "Open a scenario:\n"; + std::cout << "OSP-Magnum Temporary Debug CLI\n"; - std::cout << "Version: " << GIT_HASH << " (" << GIT_BRANCH << ")\n"; + std::cout << "Version: " << GIT_HASH << " (" << GIT_BRANCH << ")\n\n"; + std::cout << "Open a scenario:\n"; for (auto const& [name, rTestScn] : scenarios()) { std::string spaces(longestName - name.length(), ' ');