From 501f27b5c6a62e835fb9854b0aa360371ecfb366 Mon Sep 17 00:00:00 2001 From: Kai Koehne Date: Wed, 4 Nov 2020 12:31:39 +0100 Subject: [PATCH] Normalize dir separators in CMAKE_TOOLCHAIN_FILE when forwarded to CTest This fixes an issue where, on Windows, 'ninja test' will error out: [0/1] Running tests... Test project C:/dev/qt/dev/cmake-msvc-2019-amd64/qttools CMake Warning (dev) at C:/dev/qt/dev/cmake-msvc-2019-amd64/qttools/tests/auto/cmake/CTestTestfile.cmake:7 (add_test): Syntax error in cmake code at C:/dev/qt/dev/cmake-msvc-2019-amd64/qttools/tests/auto/cmake/CTestTestfile.cmake:7 when parsing string -DCMAKE_TOOLCHAIN_FILE=C:\dev\qt\dev\cmake-msvc-2019-amd64\qtbase\bin\/../lib/cmake/Qt6/qt.toolchain.cmake Invalid escape sequence \d Change-Id: Ifc727e44b20b899b44c7c1398d4273d73b7519ca Reviewed-by: Alexandru Croitor --- src/corelib/Qt6CTestMacros.cmake | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/corelib/Qt6CTestMacros.cmake b/src/corelib/Qt6CTestMacros.cmake index ccfa4c5c993..2e0ea919ad7 100644 --- a/src/corelib/Qt6CTestMacros.cmake +++ b/src/corelib/Qt6CTestMacros.cmake @@ -32,7 +32,8 @@ if (CMAKE_BUILD_TYPE) endif() if (CMAKE_TOOLCHAIN_FILE) - list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_TOOLCHAIN_FILE=${CMAKE_TOOLCHAIN_FILE}") + file(TO_CMAKE_PATH "${CMAKE_TOOLCHAIN_FILE}" _CMAKE_TOOLCHAIN_FILE) + list(APPEND BUILD_OPTIONS_LIST "-DCMAKE_TOOLCHAIN_FILE=${_CMAKE_TOOLCHAIN_FILE}") endif() if (CMAKE_VERBOSE_MAKEFILE)