mirror of
https://github.com/FreeRDP/FreeRDP.git
synced 2024-12-01 05:43:49 +08:00
3d59c44f7a
Now --version prints something like "This is FreeRDP version 1.0.1 (git 1.0.1-710-g90ec2)". Having a git commit id helps to identify builds and eases debuggin. The downside is that GetGitRevisionDescription retriggers a cmake re-configuration after each git commit. But thats the only way to get correct version informations without having git hooks or similar. GetGitRevisionDescription is based on Ryan Pavlik cmake Modules.
39 lines
1.2 KiB
CMake
39 lines
1.2 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)
|
|
elseif(EXISTS "@GIT_DIR@/logs/${HEAD_REF}")
|
|
configure_file("@GIT_DIR@/logs/${HEAD_REF}" "@GIT_DATA@/head-ref" COPYONLY)
|
|
set(HEAD_HASH "${HEAD_REF}")
|
|
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()
|