1*ed5d4f18SDominic Spillset(LATEST_RELEASE "2017-03-R2") 2*ed5d4f18SDominic Spill 3*ed5d4f18SDominic Spillexecute_process( 4*ed5d4f18SDominic Spill COMMAND git log -n 1 --format=%h 5*ed5d4f18SDominic Spill WORKING_DIRECTORY ${PROJECT_SOURCE_DIR} 6*ed5d4f18SDominic Spill RESULT_VARIABLE GIT_EXIT_ERROR 7*ed5d4f18SDominic Spill ERROR_QUIET 8*ed5d4f18SDominic Spill OUTPUT_VARIABLE GIT_VERSION 9*ed5d4f18SDominic Spill OUTPUT_STRIP_TRAILING_WHITESPACE 10*ed5d4f18SDominic Spill) 11*ed5d4f18SDominic Spillif (GIT_EXIT_ERROR) 12*ed5d4f18SDominic Spill # We're probably not in a git repo 13*ed5d4f18SDominic Spill set(RELEASE ${LATEST_RELEASE}) 14*ed5d4f18SDominic Spillelse (GIT_EXIT_ERROR) 15*ed5d4f18SDominic Spill # We're in a git repo 16*ed5d4f18SDominic Spill execute_process( 17*ed5d4f18SDominic Spill COMMAND git status -s --untracked-files=no 18*ed5d4f18SDominic Spill OUTPUT_VARIABLE DIRTY 19*ed5d4f18SDominic Spill ) 20*ed5d4f18SDominic Spill if ( NOT "${DIRTY}" STREQUAL "" ) 21*ed5d4f18SDominic Spill set(DIRTY_FLAG "*") 22*ed5d4f18SDominic Spill else() 23*ed5d4f18SDominic Spill set(DIRTY_FLAG "") 24*ed5d4f18SDominic Spill endif() 25*ed5d4f18SDominic Spill set(RELEASE "git-${GIT_VERSION}${DIRTY_FLAG}") 26*ed5d4f18SDominic Spillendif (GIT_EXIT_ERROR) 27