aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cmake/genrev.cmake12
-rw-r--r--revision_data.h.in.cmake2
2 files changed, 13 insertions, 1 deletions
diff --git a/cmake/genrev.cmake b/cmake/genrev.cmake
index dea062f1a4b..1d334e393e9 100644
--- a/cmake/genrev.cmake
+++ b/cmake/genrev.cmake
@@ -20,6 +20,8 @@ if(WITHOUT_GIT)
set(rev_date "1970-01-01 00:00:00 +0000")
set(rev_hash "unknown")
set(rev_branch "Archived")
+ # No valid git commit date, use today
+ string(TIMESTAMP rev_date_fallback "%Y-%m-%d %H:%M:%S" UTC)
else()
if(GIT_EXECUTABLE)
# Retrieve repository dirty status
@@ -102,10 +104,20 @@ else()
set(rev_date "1970-01-01 00:00:00 +0000")
set(rev_hash "unknown")
set(rev_branch "Archived")
+ # No valid git commit date, use today
+ string(TIMESTAMP rev_date_fallback "%Y-%m-%d %H:%M:%S" UTC)
else()
+ # We have valid date from git commit, use that
+ set(rev_date_fallback ${rev_date})
endif()
endif()
+# For package/copyright information we always need a proper date - keep "Archived/1970" for displaying git info but a valid year elsewhere
+string(REGEX MATCH "([0-9]+)-([0-9]+)-([0-9]+)" rev_date_fallback_match ${rev_date_fallback})
+set(rev_year ${CMAKE_MATCH_1})
+set(rev_month ${CMAKE_MATCH_2})
+set(rev_day ${CMAKE_MATCH_3})
+
# Create the actual revision_data.h file from the above params
if(NOT "${rev_hash_cached}" STREQUAL "${rev_hash}" OR NOT "${rev_branch_cached}" STREQUAL "${rev_branch}" OR NOT EXISTS "${BUILDDIR}/revision_data.h")
configure_file(
diff --git a/revision_data.h.in.cmake b/revision_data.h.in.cmake
index 9958455887a..80c7ae90ff2 100644
--- a/revision_data.h.in.cmake
+++ b/revision_data.h.in.cmake
@@ -12,7 +12,7 @@
#define _FULL_DATABASE "TDB_full_world_920.22031_2022_03_06.sql"
#define _HOTFIXES_DATABASE "TDB_full_hotfixes_920.22031_2022_03_06.sql"
#define VER_COMPANYNAME_STR "TrinityCore Developers"
- #define VER_LEGALCOPYRIGHT_STR "(c)2008-2022 TrinityCore"
+ #define VER_LEGALCOPYRIGHT_STR "(c)2008-@rev_year@ TrinityCore"
#define VER_FILEVERSION 0,0,0
#define VER_FILEVERSION_STR "@rev_hash@ @rev_date@ (@rev_branch@ branch)"
#define VER_PRODUCTVERSION VER_FILEVERSION