mirror of
https://github.com/zephyrproject-rtos/zephyr
synced 2025-09-08 22:52:58 +00:00
This uses the version and hash (git describe) and replaces the timestamp currently used in the boot banner. This works much better than using timestamps. It lets us point to the exact commit being used to run a certain application or test. Signed-off-by: Anas Nashif <anas.nashif@intel.com>
42 lines
1.3 KiB
CMake
42 lines
1.3 KiB
CMake
#
|
|
# Internal file for GetGitRevisionDescription.cmake
|
|
#
|
|
# Requires CMake 2.6 or newer (uses the 'function' command)
|
|
#
|
|
# Original Author:
|
|
# 2009-2010 Ryan Pavlik <rpavlik@iastate.edu> <abiryan@ryand.net>
|
|
# http://academic.cleardefinition.com
|
|
# Iowa State University HCI Graduate Program/VRAC
|
|
#
|
|
# Copyright Iowa State University 2009-2010.
|
|
# Distributed under the Boost Software License, Version 1.0.
|
|
# (See accompanying file LICENSE_1_0.txt or copy at
|
|
# http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
set(HEAD_HASH)
|
|
|
|
file(READ "@HEAD_FILE@" HEAD_CONTENTS LIMIT 1024)
|
|
|
|
string(STRIP "${HEAD_CONTENTS}" HEAD_CONTENTS)
|
|
if(HEAD_CONTENTS MATCHES "ref")
|
|
# named branch
|
|
string(REPLACE "ref: " "" HEAD_REF "${HEAD_CONTENTS}")
|
|
if(EXISTS "@GIT_DIR@/${HEAD_REF}")
|
|
configure_file("@GIT_DIR@/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY)
|
|
else()
|
|
configure_file("@GIT_DIR@/packed-refs" "@GIT_DATA@/packed-refs" COPYONLY)
|
|
file(READ "@GIT_DATA@/packed-refs" PACKED_REFS)
|
|
if(${PACKED_REFS} MATCHES "([0-9a-z]*) ${HEAD_REF}")
|
|
set(HEAD_HASH "${CMAKE_MATCH_1}")
|
|
endif()
|
|
endif()
|
|
else()
|
|
# detached HEAD
|
|
configure_file("@GIT_DIR@/HEAD" "@GIT_DATA@/head-ref" COPYONLY)
|
|
endif()
|
|
|
|
if(NOT HEAD_HASH)
|
|
file(READ "@GIT_DATA@/head-ref" HEAD_HASH LIMIT 1024)
|
|
string(STRIP "${HEAD_HASH}" HEAD_HASH)
|
|
endif()
|