Merge pull request #4167 from bmiklautz/buildversion
feat: add support for .source_version
This commit is contained in:
commit
d7154444ff
1
.gitignore
vendored
1
.gitignore
vendored
@ -136,6 +136,7 @@ TAGS
|
||||
packaging/deb/freerdp-nightly/freerdp-nightly
|
||||
packaging/deb/freerdp-nightly/freerdp-nightly-dev
|
||||
packaging/deb/freerdp-nightly/freerdp-nightly-dbg
|
||||
.source_version
|
||||
|
||||
#
|
||||
.idea
|
||||
|
@ -59,7 +59,6 @@ include(FindPkgConfig)
|
||||
include(TestBigEndian)
|
||||
|
||||
include(FindFeature)
|
||||
include(AutoVersioning)
|
||||
include(ConfigOptions)
|
||||
include(ComplexLibrary)
|
||||
include(FeatureSummary)
|
||||
@ -102,7 +101,7 @@ if (FREERDP_EXTERNAL_PATH)
|
||||
get_filename_component (FREERDP_EXTERNAL_PATH "${FREERDP_EXTERNAL_PATH}" ABSOLUTE)
|
||||
endif()
|
||||
|
||||
# Allow to search the host machine for git
|
||||
# Allow to search the host machine for git/ccache
|
||||
if(CMAKE_CROSSCOMPILING)
|
||||
SET(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM BOTH)
|
||||
endif(CMAKE_CROSSCOMPILING)
|
||||
@ -113,15 +112,23 @@ if(CCACHE AND WITH_CCACHE)
|
||||
set_property(GLOBAL PROPERTY RULE_LAUNCH_LINK ${CCACHE})
|
||||
endif(CCACHE AND WITH_CCACHE)
|
||||
|
||||
include(GetGitRevisionDescription)
|
||||
git_get_exact_tag(GIT_REVISION --tags --always)
|
||||
if(EXISTS "${CMAKE_SOURCE_DIR}/.source_version" )
|
||||
file(READ ${CMAKE_SOURCE_DIR}/.source_version GIT_REVISION)
|
||||
|
||||
if (${GIT_REVISION} STREQUAL "n/a")
|
||||
git_rev_parse (GIT_REVISION --short)
|
||||
string(STRIP ${GIT_REVISION} GIT_REVISION)
|
||||
else()
|
||||
include(GetGitRevisionDescription)
|
||||
git_get_exact_tag(GIT_REVISION --tags --always)
|
||||
|
||||
if (${GIT_REVISION} STREQUAL "n/a")
|
||||
git_rev_parse (GIT_REVISION --short)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
if(CMAKE_CROSSCOMPILING)
|
||||
SET (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM ONLY)
|
||||
endif(CMAKE_CROSSCOMPILING)
|
||||
# /Allow to search the host machine for git/ccache
|
||||
|
||||
message(STATUS "Git Revision ${GIT_REVISION}")
|
||||
|
||||
|
@ -202,7 +202,7 @@ static COMMAND_LINE_ARGUMENT_A args[] =
|
||||
|
||||
BOOL freerdp_client_print_version()
|
||||
{
|
||||
printf("This is FreeRDP version %s (git %s)\n", FREERDP_VERSION_FULL,
|
||||
printf("This is FreeRDP version %s (%s)\n", FREERDP_VERSION_FULL,
|
||||
GIT_REVISION);
|
||||
return TRUE;
|
||||
}
|
||||
|
@ -1,55 +0,0 @@
|
||||
# - AutoVersioning
|
||||
# Gather version from tarball or SCM
|
||||
#
|
||||
# This module defines the following variables:
|
||||
# PRODUCT_VERSION - Version of product
|
||||
#
|
||||
|
||||
#=============================================================================
|
||||
# Copyright 2011 O.S. Systems Software Ltda.
|
||||
# Copyright 2011 Otavio Salvador <otavio@ossystems.com.br>
|
||||
#
|
||||
# Licensed under the Apache License, Version 2.0 (the "License");
|
||||
# you may not use this file except in compliance with the License.
|
||||
# You may obtain a copy of the License at
|
||||
#
|
||||
# http://www.apache.org/licenses/LICENSE-2.0
|
||||
#
|
||||
# Unless required by applicable law or agreed to in writing, software
|
||||
# distributed under the License is distributed on an "AS IS" BASIS,
|
||||
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
#=============================================================================
|
||||
|
||||
if(EXISTS "${CMAKE_SOURCE_DIR}/.version" )
|
||||
file(READ ${CMAKE_SOURCE_DIR}/.version PRODUCT_VERSION)
|
||||
|
||||
string(STRIP ${PRODUCT_VERSION} PRODUCT_VERSION)
|
||||
else()
|
||||
execute_process(COMMAND git describe --match "v[0-9]*" --abbrev=4
|
||||
OUTPUT_VARIABLE PRODUCT_VERSION
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
ERROR_QUIET)
|
||||
|
||||
if(PRODUCT_VERSION)
|
||||
string(REGEX REPLACE "^v(.*)" "\\1" PRODUCT_VERSION ${PRODUCT_VERSION})
|
||||
else()
|
||||
# GIT is the default version
|
||||
set(PRODUCT_VERSION GIT)
|
||||
endif()
|
||||
|
||||
# Check if has not commited changes
|
||||
execute_process(COMMAND git update-index -q --refresh
|
||||
ERROR_QUIET)
|
||||
execute_process(COMMAND git diff-index --name-only HEAD --
|
||||
OUTPUT_VARIABLE CHANGED_SOURCE
|
||||
OUTPUT_STRIP_TRAILING_WHITESPACE
|
||||
ERROR_QUIET)
|
||||
|
||||
if(CHANGED_SOURCE)
|
||||
set(PRODUCT_VERSION ${PRODUCT_VERSION}-dirty)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
message(STATUS "${CMAKE_PROJECT_NAME} ${PRODUCT_VERSION}")
|
@ -1,3 +1,4 @@
|
||||
#!/bin/sh
|
||||
|
||||
ln -s packaging/deb/freerdp-nightly debian
|
||||
git rev-parse --short HEAD > .source_version
|
||||
|
@ -34,7 +34,6 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/)
|
||||
# Check for cmake compatibility (enable/disable features)
|
||||
include(CheckCmakeCompat)
|
||||
include(FindFeature)
|
||||
include(AutoVersioning)
|
||||
include(ConfigOptions)
|
||||
include(CheckCCompilerFlag)
|
||||
include(GNUInstallDirsWrapper)
|
||||
|
@ -39,7 +39,6 @@ set(CMAKE_MODULE_PATH ${CMAKE_CURRENT_SOURCE_DIR}/../cmake/)
|
||||
# Check for cmake compatibility (enable/disable features)
|
||||
include(CheckCmakeCompat)
|
||||
include(FindFeature)
|
||||
include(AutoVersioning)
|
||||
include(ConfigOptions)
|
||||
include(ComplexLibrary)
|
||||
include(FeatureSummary)
|
||||
|
Loading…
Reference in New Issue
Block a user