cmake_minimum_required(VERSION 2.8) ## Setup the environment for you, this would usually be done by something else) set(ENV{CMAKE_SVN_USERNAME} foo) set(ENV{CMAKE_SVN_PASSWORD} bar) find_program(svnexe svn DOC "subversion command line client") if(NOT $ENV{CMAKE_SVN_USERNAME} STREQUAL "") set(_SvnCredPart "--no-auth-cache") set(_SvnUserPart " --username $ENV{CMAKE_SVN_USERNAME}") endif() if(NOT $ENV{CMAKE_SVN_PASSWORD} STREQUAL "") set(_SvnCredPart "--no-auth-cache") set(_SvnPassPart " --password $ENV{CMAKE_SVN_PASSWORD}") endif() if(DEFINED TestFile) file(WRITE "${CMAKE_BINARY_DIR}/svncmd.cmd" "@\"${svnexe}\" --non-interactive ${_SvnCredPart}${_SvnUserPart}${_SvnPassPart} info .") execute_process(COMMAND "${CMAKE_BINARY_DIR}/svncmd.cmd" OUTPUT_VARIABLE _out ERROR_VARIABLE _err RESULT_VARIABLE _res) else() execute_process(COMMAND "${svnexe}" --non-interactive ${_SvnCredPart}${_SvnUserPart}${_SvnPassPart} info . OUTPUT_VARIABLE _out ERROR_VARIABLE _err RESULT_VARIABLE _res) endif() message(STATUS "out: ${_out}") message(STATUS "err: ${_err}") message(STATUS "res: ${_res}")