Use the source package date or the source git repository date

instead of the current build date. The use of a stable date
is necessary to achieve reproducible builds.

Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
pull/32/head
Slávek Banko 5 years ago
parent ad602fcd91
commit 589e29d020
No known key found for this signature in database
GPG Key ID: 608F5293A04BE668

@ -89,13 +89,8 @@ if( NOT TDE_FOUND )
set( KDE3_DCOPIDLNG_EXECUTABLE env KDECONFIG=${KDECONFIG_EXECUTABLE} ${KDE3_DCOPIDLNG_EXECUTABLE}
CACHE INTERNAL "dcopidlng executable" FORCE )
# look for SCM data if present
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" )
file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmmodule" TDE_SCM_MODULE_NAME )
endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" )
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" )
file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmrevision" TDE_SCM_MODULE_REVISION )
endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" )
# read source metadata
tde_read_src_metadata()
message( STATUS " found 'TDE', version ${TDE_VERSION}" )

@ -102,6 +102,47 @@ macro( tde_execute_process )
endmacro( tde_execute_process )
################################################
#####
##### tde_read_src_metadata
macro( tde_read_src_metadata )
# look for SCM data if present
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescminfo" )
file( READ "${CMAKE_SOURCE_DIR}/.tdescminfo" TDE_SCM_INFO )
string( REGEX MATCH "(^|\n)Name: ([^\n]*)" TDE_SCM_MODULE_NAME "${TDE_SCM_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_SCM_MODULE_NAME "${TDE_SCM_MODULE_NAME}" )
string( REGEX MATCH "(^|\n)Revision: ([^\n]*)" TDE_SCM_MODULE_REVISION "${TDE_SCM_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_SCM_MODULE_REVISION "${TDE_SCM_MODULE_REVISION}" )
string( REGEX MATCH "(^|\n)DateTime: ([^\n]*)" TDE_SCM_MODULE_DATETIME "${TDE_SCM_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_SCM_MODULE_DATETIME "${TDE_SCM_MODULE_DATETIME}" )
else( )
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" )
file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmmodule" TDE_SCM_MODULE_NAME )
endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" )
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" )
file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmrevision" TDE_SCM_MODULE_REVISION )
endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" )
endif( )
# look for package data if present
if( EXISTS "${CMAKE_SOURCE_DIR}/.tdepkginfo" )
file( READ "${CMAKE_SOURCE_DIR}/.tdepkginfo" TDE_PKG_INFO )
endif( )
if( EXISTS "${CMAKE_BINARY_DIR}/.tdepkginfo" )
file( READ "${CMAKE_BINARY_DIR}/.tdepkginfo" TDE_PKG_INFO )
endif( )
if( TDE_PKG_INFO )
string( REGEX MATCH "(^|\n)Name: ([^\n]*)" TDE_PKG_NAME "${TDE_PKG_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_PKG_NAME "${TDE_PKG_NAME}" )
string( REGEX MATCH "(^|\n)Version: ([^\n]*)" TDE_PKG_REVISION "${TDE_PKG_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_PKG_VERSION "${TDE_PKG_VERSION}" )
string( REGEX MATCH "(^|\n)DateTime: ([^\n]*)" TDE_PKG_DATETIME "${TDE_PKG_INFO}" )
string( REGEX REPLACE "^[^:]*: " "" TDE_PKG_DATETIME "${TDE_PKG_DATETIME}" )
endif( )
endmacro( tde_read_src_metadata )
if( DEFINED MASTER_SOURCE_DIR )
return( )
endif( )
@ -942,9 +983,16 @@ endmacro( tde_add_kpart )
#################################################
#####
##### tde_curdatetime
macro( tde_curdatetime result )
tde_execute_process( COMMAND "date" "+%m/%d/%Y %H:%M:%S" OUTPUT_VARIABLE ${result} )
string( REGEX REPLACE "(..)/(..)/(....) (........).*" "\\1/\\2/\\3 \\4" ${result} ${${result}} )
if( TDE_PKG_DATETIME )
set( ${result} ${TDE_PKG_DATETIME} )
elseif( TDE_SCM_MODULE_DATETIME )
set( ${result} ${TDE_SCM_MODULE_DATETIME} )
else( )
tde_execute_process( COMMAND "date" "+%m/%d/%Y %H:%M:%S" OUTPUT_VARIABLE ${result} )
string( REGEX REPLACE "(..)/(..)/(....) (........).*" "\\1/\\2/\\3 \\4" ${result} ${${result}} )
endif( )
endmacro( tde_curdatetime )
@ -978,6 +1026,9 @@ macro( tde_add_executable _arg_target )
# default metadata
set( _product "Trinity Desktop Environment" )
set( _version "${TDE_VERSION}" )
if( TDE_PKG_VERSION )
set( _version "${_version} (${TDE_PKG_VERSION})" )
endif( )
tde_curdatetime( _datetime )
foreach( _arg ${ARGV} )

Loading…
Cancel
Save