Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2016-05-10 19:43:58 +0300
committerCampbell Barton <ideasman42@gmail.com>2016-05-10 19:47:38 +0300
commita18f4d2bc69aa4707fb0efa92d28297d06be060e (patch)
tree1ca0bfde3265c507fcb46de8e2422b84fe748e92 /build_files
parentc1e4aaa289f64748093d4cd7590f5836b8873466 (diff)
CMake: optional date/time overrides for reproducible builds
Diffstat (limited to 'build_files')
-rw-r--r--build_files/cmake/buildinfo.cmake26
1 files changed, 19 insertions, 7 deletions
diff --git a/build_files/cmake/buildinfo.cmake b/build_files/cmake/buildinfo.cmake
index 4caa4a954ea..af0ccd250e8 100644
--- a/build_files/cmake/buildinfo.cmake
+++ b/build_files/cmake/buildinfo.cmake
@@ -1,5 +1,10 @@
-# This is called by cmake as an extermal process from
+# This is called by cmake as an external process from
# ./source/creator/CMakeLists.txt to write ./source/creator/buildinfo.h
+# Caller must define:
+# SOURCE_DIR
+# Optional overrides:
+# BUILD_DATE
+# BUILD_TIME
# Extract working copy information for SOURCE_DIR into MY_XXX variables
# with a default in case anything fails, for example when using git-svn
@@ -128,12 +133,19 @@ endif()
# BUILD_PLATFORM and BUILD_PLATFORM are taken from CMake
# but BUILD_DATE and BUILD_TIME are platform dependent
if(UNIX)
- execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
- execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
-endif()
-if(WIN32)
- execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
- execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
+ if(NOT BUILD_DATE)
+ execute_process(COMMAND date "+%Y-%m-%d" OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
+ endif()
+ if(NOT BUILD_TIME)
+ execute_process(COMMAND date "+%H:%M:%S" OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
+ endif()
+elseif(WIN32)
+ if(NOT BUILD_DATE)
+ execute_process(COMMAND cmd /c date /t OUTPUT_VARIABLE BUILD_DATE OUTPUT_STRIP_TRAILING_WHITESPACE)
+ endif()
+ if(NOT BUILD_TIME)
+ execute_process(COMMAND cmd /c time /t OUTPUT_VARIABLE BUILD_TIME OUTPUT_STRIP_TRAILING_WHITESPACE)
+ endif()
endif()
# Write a file with the BUILD_HASH define