diff options
| -rw-r--r-- | cmake/Install.cmake.in | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/cmake/Install.cmake.in b/cmake/Install.cmake.in index 7ee27a5..c4dbba7 100644 --- a/cmake/Install.cmake.in +++ b/cmake/Install.cmake.in @@ -12,10 +12,12 @@ endif() set(cpsc_install_windows "@WIN32@") if(cpsc_install_windows) cpsc_find_dependency(PROGRAM cpsc_cmd NAMES cmd.exe REQUIRED) + # cmd scans its whole command line for switches, so C:/Windows/System32/cmd.exe would read "/cmd.exe" as /c. + file(TO_NATIVE_PATH "${cpsc_cmd}" cpsc_cmd_native) file(TO_NATIVE_PATH "@CMAKE_CURRENT_SOURCE_DIR@/install.cmd" cpsc_installer) # An explicit "call" keeps cmd's handling of the quoted script path the same on CMake 3.x and 4.x. execute_process( - COMMAND "${cpsc_cmd}" /d /c call "${cpsc_installer}" + COMMAND "${cpsc_cmd_native}" /d /c call "${cpsc_installer}" --source-dir "@CMAKE_CURRENT_BINARY_DIR@" --prefix "${CMAKE_INSTALL_PREFIX}" RESULT_VARIABLE cpsc_install_result |
