May be you can avoid localized output by setting LANG env var to "C".
Or you can ask svn for xml output which may not be localized e.g. # Get the SVN revision number of an svn command line client is # available. This version will run at build time rather than only # at configuration generation time. FIND_PROGRAM(SVN_EXECUTABLE svn DOC "subversion command line client") # only do this if we have an svn client. if (SVN_EXECUTABLE) MACRO(Subversion_GET_REVISION dir variable) EXECUTE_PROCESS(COMMAND ${SVN_EXECUTABLE} --xml info ${dir} OUTPUT_VARIABLE ${variable} OUTPUT_STRIP_TRAILING_WHITESPACE) STRING(REGEX REPLACE ".*entry.*revision=\"([0-9]+)\"\n.*kind.*" "\\1" ${variable} "${${variable}}") ENDMACRO(Subversion_GET_REVISION) Subversion_GET_REVISION(${CMAKE_SOURCE_DIR} ORX_BLD_LVL) endif () message(STATUS "SVN Revision Number is ${ORX_BLD_LVL}") 2014-07-02 1:04 GMT+02:00 Rick McGuire <object.r...@gmail.com>: > We like to include the SVN revision number in our build artifacts to help > keep track of what version people are working with. I found the following > code on the mailing lists which appears to work fine: > > # Get the SVN revision number of an svn command line client is > # available. This version will run at build time rather than only > # at configuration generation time. > FIND_PROGRAM(SVN_EXECUTABLE svn > DOC "subversion command line client") > > # only do this if we have an svn client. > if (SVN_EXECUTABLE) > MACRO(Subversion_GET_REVISION dir variable) > EXECUTE_PROCESS(COMMAND ${SVN_EXECUTABLE} info ${dir} > OUTPUT_VARIABLE ${variable} > OUTPUT_STRIP_TRAILING_WHITESPACE) > STRING(REGEX REPLACE "^(.*\n)?Revision: ([^\n]+).*" > "\\2" ${variable} "${${variable}}") > ENDMACRO(Subversion_GET_REVISION) > > Subversion_GET_REVISION(${CMAKE_SOURCE_DIR} ORX_BLD_LVL) > endif () > > message(STATUS "SVN Revision Number is ${ORX_BLD_LVL}") > > > Unfortunately, the first person not in the core team who building was running > a Spanish language version of SVN, so the ORX_BLD_LEVEL variable ended up > with the entire output of the svn info command because it could not find the > string REVISION. This was not a good thing! > > > Is there a better way to obtain the SVN revision number that does not suffer > from this sort of problem? > > > Rick > > > -- > > Powered by www.kitware.com > > Please keep messages on-topic and check the CMake FAQ at: > http://www.cmake.org/Wiki/CMake_FAQ > > Kitware offers various services to support the CMake community. For more > information on each offering, please visit: > > CMake Support: http://cmake.org/cmake/help/support.html > CMake Consulting: http://cmake.org/cmake/help/consulting.html > CMake Training Courses: http://cmake.org/cmake/help/training.html > > Visit other Kitware open-source projects at > http://www.kitware.com/opensource/opensource.html > > Follow this link to subscribe/unsubscribe: > http://public.kitware.com/mailman/listinfo/cmake > -- Erk L'élection n'est pas la démocratie -- http://www.le-message.org
-- Powered by www.kitware.com Please keep messages on-topic and check the CMake FAQ at: http://www.cmake.org/Wiki/CMake_FAQ Kitware offers various services to support the CMake community. For more information on each offering, please visit: CMake Support: http://cmake.org/cmake/help/support.html CMake Consulting: http://cmake.org/cmake/help/consulting.html CMake Training Courses: http://cmake.org/cmake/help/training.html Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html Follow this link to subscribe/unsubscribe: http://public.kitware.com/mailman/listinfo/cmake