mirror of
https://github.com/Kitware/CMake.git
synced 2025-10-14 02:08:27 +08:00
Tests: Use the CVS :local: access method for local directories
Windows absolute paths start with a drive letter, followed by the path. Without an explicit access method specification, CVS treats the drive letter as a host name. This changes explicitly adds `:local:` to local directory repository paths used in tests to avoid this confusion. See the CVS Manual [1] for more information. [1] https://www.gnu.org/software/trans-coord/manual/cvs/cvs.html#Repository Signed-off-by: William R. Dieter <william.r.dieter@intel.com>
This commit is contained in:

committed by
Brad King

parent
549eedfe85
commit
4c7e2615b8
@@ -17,21 +17,11 @@ message("Using CVS tools:")
|
||||
set(CVS "@CVS_EXECUTABLE@")
|
||||
message(" cvs = ${CVS}")
|
||||
|
||||
set(REPO ${TOP}/repo)
|
||||
# Pre-pending :local: prevents cvs from trying to interpret Windows drive
|
||||
# letters, like "C:", as host names.
|
||||
set(REPO ":local:${TOP}/repo")
|
||||
|
||||
# The MSYS cvs tool interprets "c:/" as a "machine:" name for SSH.
|
||||
# Detect the MSYS cvs and convert the repo path to an MSYS path.
|
||||
if(WIN32)
|
||||
if(EXISTS "${CVS}")
|
||||
file(STRINGS "${CVS}" cvs_is_msys LIMIT_COUNT 1 REGEX "[Mm][Ss][Yy][Ss]")
|
||||
if(cvs_is_msys)
|
||||
message(" '${CVS}' is from MSYS (contains '${cvs_is_msys}')")
|
||||
string(REGEX REPLACE "^([A-Za-z]):" "/\\1" REPO "${REPO}")
|
||||
endif()
|
||||
endif()
|
||||
endif()
|
||||
|
||||
set(CVSCMD ${CVS} -d${REPO})
|
||||
set(CVSCMD ${CVS} -d "${REPO}")
|
||||
|
||||
# CVSNT requires an extra option to 'cvs init'.
|
||||
set(CVS_INIT_OPT)
|
||||
|
@@ -161,7 +161,7 @@ if(do_cvs_tests)
|
||||
#
|
||||
set(proj TutorialStep1-CVS-20090626)
|
||||
ExternalProject_Add(${proj}
|
||||
CVS_REPOSITORY "${local_cvs_repo}"
|
||||
CVS_REPOSITORY ":local:${local_cvs_repo}"
|
||||
CVS_MODULE "TutorialStep1"
|
||||
CVS_TAG "-D2009-06-26 16:50:00 UTC"
|
||||
UPDATE_COMMAND ""
|
||||
@@ -176,7 +176,7 @@ if(do_cvs_tests)
|
||||
#
|
||||
set(proj TutorialStep1-CVS-testtag1)
|
||||
ExternalProject_Add(${proj}
|
||||
CVS_REPOSITORY "${local_cvs_repo}"
|
||||
CVS_REPOSITORY ":local:${local_cvs_repo}"
|
||||
CVS_MODULE "TutorialStep1"
|
||||
CVS_TAG -rtesttag1
|
||||
UPDATE_COMMAND ""
|
||||
@@ -191,7 +191,7 @@ if(do_cvs_tests)
|
||||
#
|
||||
set(proj TutorialStep1-CVS-HEAD)
|
||||
ExternalProject_Add(${proj}
|
||||
CVS_REPOSITORY "${local_cvs_repo}"
|
||||
CVS_REPOSITORY ":local:${local_cvs_repo}"
|
||||
CVS_MODULE "TutorialStep1"
|
||||
CMAKE_GENERATOR "${CMAKE_GENERATOR}"
|
||||
CMAKE_ARGS -DCMAKE_INSTALL_PREFIX:PATH=<INSTALL_DIR>
|
||||
|
Reference in New Issue
Block a user