diff options
Diffstat (limited to 'games/vbam/4648638.diff')
-rw-r--r-- | games/vbam/4648638.diff | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/games/vbam/4648638.diff b/games/vbam/4648638.diff new file mode 100644 index 0000000000000..46af8dac2063e --- /dev/null +++ b/games/vbam/4648638.diff @@ -0,0 +1,54 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index bd09527d..4ad859b2 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -112,15 +112,12 @@ if(GIT_FOUND AND EXISTS "${CMAKE_SOURCE_DIR}/.git") + # of files that depend on version.h + include(GetGitRevisionDescription) + get_git_head_revision(REFSPEC COMMITHASH) +-else() +- message(WARNING "Git not found, cannot set version info") + endif() + +-# no git or no tags ++# no git or no tags, use ChangeLog + if(NOT VERSION) +- set(VERSION 2.0.0) +- set(REVISION "unknown") +- set(VERSION_RELEASE 0) ++ include(ChangeLogVersion) ++ changelog_version(VERSION REVISION VERSION_RELEASE) + endif() + + # generate version.h +diff --git a/cmake/ChangeLogVersion.cmake b/cmake/ChangeLogVersion.cmake +new file mode 100644 +index 00000000..101d23bd +--- /dev/null ++++ b/cmake/ChangeLogVersion.cmake +@@ -0,0 +1,25 @@ ++function(changelog_version version revision version_release) ++ set(${version} "" CACHE STRING "Latest ChangeLog Version" FORCE) ++ set(${revision} "" CACHE STRING "Latest ChangeLog Revision" FORCE) ++ set(${version_release} 0 CACHE STRING "Is this a versioned release without revision" FORCE) ++ ++ file(READ CHANGELOG.md changelog_file) ++ ++ if(NOT changelog_file) ++ return() ++ endif() ++ ++ string(REGEX MATCH "\n## +\\[([0-9.]+)(-([^] ]+))?\\] +- +[0-9][0-9]?/" match_out "${changelog_file}") ++ ++ set(changelog_version "${CMAKE_MATCH_1}") ++ ++ set(is_version_release 0) ++ set(changelog_revision "${CMAKE_MATCH_3}") ++ if(NOT changelog_revision) ++ set(is_version_release 1) ++ endif() ++ ++ set(${version} "${changelog_version}" CACHE STRING "Latest ChangeLog Version" FORCE) ++ set(${revision} "${changelog_revision}" CACHE STRING "Latest ChangeLog Revision" FORCE) ++ set(${version_release} "${is_version_release}" CACHE STRING "Is this a versioned release without revision" FORCE) ++endfunction() |