summaryrefslogtreecommitdiff
path: root/Tests/CTestUpdateCVS.cmake.in
diff options
context:
space:
mode:
authorWilliam R. Dieter <william.r.dieter@intel.com>2021-01-21 19:15:22 -0500
committerBrad King <brad.king@kitware.com>2021-01-28 09:05:35 -0500
commit4c7e2615b8ddf162f18521c4685fddbb8010eb68 (patch)
treef1293227632bfbffb92a2d644cb094addcfe4167 /Tests/CTestUpdateCVS.cmake.in
parent549eedfe859db7cd7f57a446332b489a511d26ce (diff)
downloadcmake-4c7e2615b8ddf162f18521c4685fddbb8010eb68.tar.gz
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>
Diffstat (limited to 'Tests/CTestUpdateCVS.cmake.in')
-rw-r--r--Tests/CTestUpdateCVS.cmake.in18
1 files changed, 4 insertions, 14 deletions
diff --git a/Tests/CTestUpdateCVS.cmake.in b/Tests/CTestUpdateCVS.cmake.in
index 5389bdf512..8e0b6110b8 100644
--- a/Tests/CTestUpdateCVS.cmake.in
+++ b/Tests/CTestUpdateCVS.cmake.in
@@ -17,21 +17,11 @@ message("Using CVS tools:")
set(CVS "@CVS_EXECUTABLE@")
message(" cvs = ${CVS}")
-set(REPO ${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()
+# Pre-pending :local: prevents cvs from trying to interpret Windows drive
+# letters, like "C:", as host names.
+set(REPO ":local:${TOP}/repo")
-set(CVSCMD ${CVS} -d${REPO})
+set(CVSCMD ${CVS} -d "${REPO}")
# CVSNT requires an extra option to 'cvs init'.
set(CVS_INIT_OPT)