CMake: Avoid call of find_package(Git) for every compile with buildinfo enabled

This is a bit tricky, find_package(Git) was only used to check if git is installed
and actual git command was assumed to be in the PATH (while ideally it should have
been GIT_COMMAND variable).

This commit makes re-compile output cleaner, especially when using Ninja.

Adding proper GIT_COMMAND to buildinfo.cmake is also possible via argument.

Reviewers: campbellbarton

Reviewed By: campbellbarton

Differential Revision: https://developer.blender.org/D1847
This commit is contained in:
Sergey Sharybin 2016-03-11 13:05:44 +05:00
parent e7eb91365b
commit cc2138888a
2 changed files with 100 additions and 97 deletions

@ -704,6 +704,13 @@ else()
set(COMPILER_SSE2_FLAG)
endif()
if(WITH_BUILDINFO)
find_package(Git)
if(NOT GIT_FOUND)
set(WITH_BUILDINFO OFF)
endif()
endif()
TEST_SHARED_PTR_SUPPORT()
TEST_UNORDERED_MAP_SUPPORT()

@ -9,9 +9,6 @@ set(MY_WC_COMMIT_TIMESTAMP 0)
# Guess if this is a git working copy and then look up the revision
if(EXISTS ${SOURCE_DIR}/.git)
# The FindGit.cmake module is part of the standard distribution
find_package(Git)
if(GIT_FOUND)
execute_process(COMMAND git rev-parse --abbrev-ref HEAD
WORKING_DIRECTORY ${SOURCE_DIR}
OUTPUT_VARIABLE MY_WC_BRANCH
@ -126,7 +123,6 @@ if(EXISTS ${SOURCE_DIR}/.git)
endif()
unset(_git_changed_files)
endif()
endif()
# BUILD_PLATFORM and BUILD_PLATFORM are taken from CMake