Browse Source
Allow overriding SCM version info
If the build is from a non-repository, these functions will return empty. This
patch allows using defines to CMake to set version info such as
-DGIT_BRANCH=master.
pull/15/merge
Andrew Udvare
4 years ago
No known key found for this signature in database
GPG Key ID: 1AFD9AFC120C26DD
2 changed files with
14 additions and
3 deletions
CMakeModules/GenerateSCMRev.cmake
src/common/CMakeLists.txt
@ -11,9 +11,15 @@ find_package(Git QUIET PATHS "${GIT_EXECUTABLE}")
# g e n e r a t e g i t / b u i l d i n f o r m a t i o n
include ( GetGitRevisionDescription )
get_git_head_revision ( GIT_REF_SPEC GIT_REV )
git_describe ( GIT_DESC --always --long --dirty )
git_branch_name ( GIT_BRANCH )
if ( NOT GIT_REF_SPEC )
get_git_head_revision ( GIT_REF_SPEC GIT_REV )
endif ( )
if ( NOT GIT_DESC )
git_describe ( GIT_DESC --always --long --dirty )
endif ( )
if ( NOT GIT_BRANCH )
git_branch_name ( GIT_BRANCH )
endif ( )
get_timestamp ( BUILD_DATE )
# G e n e r a t e c p p w i t h G i t r e v i s i o n f r o m t e m p l a t e
@ -22,6 +22,11 @@ add_custom_command(OUTPUT scm_rev.cpp
- D T I T L E _ B A R _ F O R M A T _ R U N N I N G = $ { T I T L E _ B A R _ F O R M A T _ R U N N I N G }
- D B U I L D _ T A G = $ { B U I L D _ T A G }
- D B U I L D _ I D = $ { D I S P L A Y _ V E R S I O N }
- D G I T _ R E F _ S P E C = $ { G I T _ R E F _ S P E C }
- D G I T _ R E V = $ { G I T _ R E V }
- D G I T _ D E S C = $ { G I T _ D E S C }
- D G I T _ B R A N C H = $ { G I T _ B R A N C H }
- D B U I L D _ F U L L N A M E = $ { B U I L D _ F U L L N A M E }
- D G I T _ E X E C U T A B L E = $ { G I T _ E X E C U T A B L E }
- P $ { C M A K E _ S O U R C E _ D I R } / C M a k e M o d u l e s / G e n e r a t e S C M R e v . c m a k e
D E P E N D S