Skip to content
Snippets Groups Projects
Commit 9bf621b3 authored by Kiyofumi Abe's avatar Kiyofumi Abe
Browse files

JVET_L0118_ALIGN_MTS_INDEX : Restore modules/GetSVN.cmake

parent 6c7e924a
No related branches found
No related tags found
No related merge requests found
if( GENERATE_DUMMY )
file( WRITE svnrevision.h.in "\n" )
else()
include( FindSubversion )
if( SUBVERSION_FOUND )
# Copied from FindSubversion: need to change to fix the SEND_ERROR problem
# the subversion commands should be executed with the C locale, otherwise
# the message (which are parsed) may be translated, Alex
set( _Subversion_SAVED_LC_ALL "$ENV{LC_ALL}" )
set( ENV{LC_ALL} C )
execute_process( COMMAND ${Subversion_SVN_EXECUTABLE} info ${SOURCE_DIR}
OUTPUT_VARIABLE NEXT_WC_INFO
ERROR_VARIABLE Subversion_svn_info_error
RESULT_VARIABLE Subversion_svn_info_result
OUTPUT_STRIP_TRAILING_WHITESPACE )
if( NOT ${Subversion_svn_info_result} EQUAL 0 )
message( "${SOURCE_DIR} is not a subversion directory" )
file( WRITE svnrevision.h.in "\n" )
else()
string( REGEX REPLACE "^(.*\n)?URL: ([^\n]+).*"
"\\2" NEXT_WC_URL "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*\n)?Repository Root: ([^\n]+).*"
"\\2" NEXT_WC_ROOT "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*\n)?Revision: ([^\n]+).*"
"\\2" NEXT_WC_REVISION "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*\n)?Last Changed Author: ([^\n]+).*"
"\\2" NEXT_WC_LAST_CHANGED_AUTHOR "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*\n)?Last Changed Rev: ([^\n]+).*"
"\\2" NEXT_WC_LAST_CHANGED_REV "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*\n)?Last Changed Date: ([^\n]+).*"
"\\2" NEXT_WC_LAST_CHANGED_DATE "${NEXT_WC_INFO}" )
string( REGEX REPLACE "^(.*)?:(.*)"
"\\2" NEXT_WC_URL_PATH "${NEXT_WC_URL}" )
string( REGEX REPLACE "^(.*)?:(.*)"
"\\2" NEXT_WC_ROOT_PATH "${NEXT_WC_ROOT}" )
file( RELATIVE_PATH NEXT_WC_RELATIVE_URL "${NEXT_WC_ROOT_PATH}" "${NEXT_WC_URL_PATH}" )
execute_process( COMMAND ${Subversion_SVN_EXECUTABLE} status ${SOURCE_DIR}
OUTPUT_VARIABLE NEXT_WC_STATUS
ERROR_VARIABLE Subversion_svn_status_error
RESULT_VARIABLE Subversion_svn_status_result
OUTPUT_STRIP_TRAILING_WHITESPACE )
if( ${Subversion_svn_status_result} EQUAL 0 )
if( NEXT_WC_STATUS )
set( NEXT_WC_STATUS "M" )
else()
set( NEXT_WC_STATUS "" )
endif()
endif()
# write a file with the SVNVERSION define
file( WRITE svnrevision.h.in "#define SVNREVISION \"${NEXT_WC_LAST_CHANGED_REV}${NEXT_WC_STATUS}\"\n" )
file( APPEND svnrevision.h.in "#define SVNRELATIVEURL \"${NEXT_WC_RELATIVE_URL}\"\n" )
endif()
# restore the previous LC_ALL
set( ENV{LC_ALL} ${_Subversion_SAVED_LC_ALL} )
else()
message( "Subversion executable not found!" )
file( WRITE svnrevision.h.in "\n" )
endif()
endif()
# copy the file to the final header only if the version changes
# reduces needless rebuilds
execute_process( COMMAND ${CMAKE_COMMAND} -E copy_if_different svnrevision.h.in svnrevision.h )
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment