From e67d9c6e3139ec545cc90935e0d2cf7b97f1b709 Mon Sep 17 00:00:00 2001 From: Brad King Date: Mon, 27 Jul 2020 09:07:42 -0400 Subject: Compilers: Ignore -print-sysroot prefix when it is '/' Since commit 8cc384f629 (Compilers: Add paths from -print-sysroot to system prefix path, 2020-03-25, v3.18.0-rc1~337^2) we prepend the compiler's sysroot to `CMAKE_SYSTEM_PREFIX_PATH`. This does not make sense when the prefix is just `/`, such as on Ubuntu 16.04's system compiler. Fixes: #21019 --- Modules/CMakeDetermineCompiler.cmake | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Modules/CMakeDetermineCompiler.cmake b/Modules/CMakeDetermineCompiler.cmake index 7cd7c47..cb1ab1d 100644 --- a/Modules/CMakeDetermineCompiler.cmake +++ b/Modules/CMakeDetermineCompiler.cmake @@ -140,7 +140,9 @@ function(_cmake_find_compiler_sysroot lang) OUTPUT_VARIABLE _cmake_sysroot_run_out ERROR_VARIABLE _cmake_sysroot_run_err) - if(_cmake_sysroot_run_out AND NOT _cmake_sysroot_run_err AND IS_DIRECTORY "${_cmake_sysroot_run_out}/usr") + if(_cmake_sysroot_run_out AND NOT _cmake_sysroot_run_err + AND NOT _cmake_sysroot_run_out STREQUAL "/" + AND IS_DIRECTORY "${_cmake_sysroot_run_out}/usr") file(TO_CMAKE_PATH "${_cmake_sysroot_run_out}/usr" _cmake_sysroot_run_out_usr) set(CMAKE_${lang}_COMPILER_SYSROOT "${_cmake_sysroot_run_out_usr}" PARENT_SCOPE) else() -- cgit v0.12