From 03fc131e2e41bd52cf481657f62e250bb61280b8 Mon Sep 17 00:00:00 2001 From: superp00t Date: Mon, 14 Apr 2025 06:11:24 -0400 Subject: [PATCH] feat(build): compile version strings from CMake --- CMakeLists.txt | 12 ++++++++++++ src/console/command/console/Ver.cpp | 16 +++++++++++++++- 2 files changed, 27 insertions(+), 1 deletion(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index a21e662..b3cd033 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -30,6 +30,18 @@ include(lib/system/cmake/system.cmake) # Build options +set(WHOA_VERSION_BUILD 12340) +set(WHOA_VERSION_MAJOR 3) +set(WHOA_VERSION_MINOR 3) +set(WHOA_VERSION_PATCH 5) +set(WHOA_VERSION_HOTFIX a) + +add_definitions(-DWHOA_VERSION_BUILD="${WHOA_VERSION_BUILD}") +add_definitions(-DWHOA_VERSION_MAJOR="${WHOA_VERSION_MAJOR}") +add_definitions(-DWHOA_VERSION_MINOR="${WHOA_VERSION_MINOR}") +add_definitions(-DWHOA_VERSION_PATCH="${WHOA_VERSION_PATCH}") +add_definitions(-DWHOA_VERSION_HOTFIX="${WHOA_VERSION_HOTFIX}") + # UBsan set(WHOA_UB_SAN_HELP_TEXT "Disable/Enable the Undefined Behavior Sanitizer. This is turned on by default in Debug build types. Has no effect when using MSVC.") if (CMAKE_BUILD_TYPE STREQUAL "Debug") diff --git a/src/console/command/console/Ver.cpp b/src/console/command/console/Ver.cpp index 8f6b964..d88dd84 100644 --- a/src/console/command/console/Ver.cpp +++ b/src/console/command/console/Ver.cpp @@ -1,7 +1,21 @@ #include "console/Console.hpp" #include "console/command/Commands.hpp" +#if defined(NDEBUG) +#define WHOA_BUILD_TYPE "Release" +#else +#define WHOA_BUILD_TYPE "Debug" +#endif + +#define WHOA_BRAND_STRING "Whoa" + +#define WHOA_PROJECT_URL "https://github.com/thunderbrewhq/thunderbrew" + +#define WHOA_VERSION_STRING WHOA_BRAND_STRING " [" WHOA_BUILD_TYPE "] Build " WHOA_VERSION_BUILD " (" __DATE__ ") <" WHOA_PROJECT_URL ">" + DECLARE_COMMAND(Ver) { - ConsoleWrite("Whoa ", DEFAULT_COLOR); + // ConsoleWrite("Thunderbrew ", ADMIN_COLOR); + ConsoleWrite(WHOA_VERSION_STRING, DEFAULT_COLOR); + return 1; }