diff options
Diffstat (limited to 'kdoctools/ConfigureChecks.cmake')
-rw-r--r-- | kdoctools/ConfigureChecks.cmake | 56 |
1 files changed, 22 insertions, 34 deletions
diff --git a/kdoctools/ConfigureChecks.cmake b/kdoctools/ConfigureChecks.cmake index 432811825..876f91037 100644 --- a/kdoctools/ConfigureChecks.cmake +++ b/kdoctools/ConfigureChecks.cmake @@ -14,9 +14,11 @@ if( NOT TDE_RELEASE_ENTITIES ) set( ENTITIES_FILE "${CMAKE_CURRENT_SOURCE_DIR}/customization/entities/general.entities" ) if( NOT EXISTS ${TDEVERSION_FILE} ) + file( RELATIVE_PATH TDEVERSION_FILE ${CMAKE_SOURCE_DIR} ${TDEVERSION_FILE} ) tde_message_fatal( "${TDEVERSION_FILE} not found! Check your sources." ) endif( ) if( NOT EXISTS ${ENTITIES_FILE} ) + file( RELATIVE_PATH ENTITIES_FILE ${CMAKE_SOURCE_DIR} ${ENTITIES_FILE} ) tde_message_fatal( "${ENTITIES_FILE} not found! Check your sources." ) endif( ) @@ -38,53 +40,39 @@ if( NOT TDE_RELEASE_ENTITIES ) if( TDE_SCM_MODULE_DATETIME ) set( TDE_RELEASE_DATE "${TDE_SCM_MODULE_DATETIME}" ) else( ) + if( ${CMAKE_SYSTEM_NAME} MATCHES "BSD" ) + set( GNU_FIND_EXECUTABLE "gfind" ) + else( ) + set( GNU_FIND_EXECUTABLE "find" ) + endif( ) execute_process( - COMMAND find ${TDEVERSION_FILE} -printf "%Tm/%Te/%TY" + COMMAND ${GNU_FIND_EXECUTABLE} ${TDEVERSION_FILE} -printf "%Tm/%Te/%TY" OUTPUT_VARIABLE TDE_RELEASE_DATE OUTPUT_STRIP_TRAILING_WHITESPACE ) endif( ) endif( ) - execute_process( - COMMAND date +2010-%Y -d "${TDE_RELEASE_DATE}" - OUTPUT_VARIABLE TDE_RELEASE_COPYRIGHT - OUTPUT_STRIP_TRAILING_WHITESPACE - ) - execute_process( - COMMAND date +%B\ %e,\ %Y -d "${TDE_RELEASE_DATE}" - OUTPUT_VARIABLE TDE_RELEASE_DATE - OUTPUT_STRIP_TRAILING_WHITESPACE - ) + + string( REGEX REPLACE "^([0-9]+)/([0-9]+)*/([0-9]+).*" "2010-\\3" + TDE_RELEASE_COPYRIGHT "${TDE_RELEASE_DATE}" ) + + string( REGEX REPLACE "^([0-9]+)/([0-9]+)*/([0-9]+).*" "\\1" + _release_month_num "${TDE_RELEASE_DATE}" ) + math( EXPR _release_month_index "${_release_month_num}-1" ) + set( _month_names "January;February;March;April;May;June;July;August;September;October;November;December" ) + list( GET _month_names ${_release_month_index} _release_month_name ) + string( REGEX REPLACE + "^([0-9]+)/([0-9]+)*/([0-9]+).*" + "${_release_month_name} \\2, \\3" + TDE_RELEASE_DATE "${TDE_RELEASE_DATE}" ) # update entities + file( RELATIVE_PATH ENTITIES_FILE ${CMAKE_SOURCE_DIR} ${ENTITIES_FILE} ) message( STATUS "Updating ${ENTITIES_FILE} TDE Release Version: ${TDE_VERSION_STRING} TDE Release Date: ${TDE_RELEASE_DATE} TDE Release Copyright: ${TDE_RELEASE_COPYRIGHT}" ) - file( READ ${ENTITIES_FILE} ENTITIES_DATA ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-release-version" ) - string( REGEX REPLACE "(ENTITY tde-release-version) \"[^\"]*\"" - "\\1 \"${TDE_VERSION_STRING}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-release-version \"${TDE_VERSION_STRING}\">\n" ) - endif( ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-release-date" ) - string( REGEX REPLACE "(ENTITY tde-release-date) \"[^\"]*\"" - "\\1 \"${TDE_RELEASE_DATE}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-release-date \"${TDE_RELEASE_DATE}\">\n" ) - endif( ) - if( "${ENTITIES_DATA}" MATCHES "ENTITY tde-copyright-date" ) - string( REGEX REPLACE "(ENTITY tde-copyright-date) \"[^\"]*\"" - "\\1 \"${TDE_RELEASE_COPYRIGHT}\"" ENTITIES_DATA "${ENTITIES_DATA}" ) - else( ) - set( ENTITIES_DATA - "${ENTITIES_DATA}<!ENTITY tde-copyright-date \"${TDE_RELEASE_COPYRIGHT}\">\n" ) - endif( ) - file( WRITE ${ENTITIES_FILE} "${ENTITIES_DATA}" ) set( TDE_RELEASE_ENTITIES 1 CACHE INTERNAL "" ) endif( ) |