Fix: Remove /MP flag and improve FindEditbin.cmake for Windows clang-cl build

This commit is contained in:
laikh
2020-08-05 11:15:20 +08:00
committed by Charles Pigott
parent ab420d8cc0
commit 6358ae47de
2 changed files with 23 additions and 4 deletions

View File

@@ -1,11 +1,28 @@
# Autodetect editbin. Only useful for MSVC.
get_filename_component(MSVC_COMPILE_DIRECTORY ${CMAKE_CXX_COMPILER} DIRECTORY)
if (NOT EDITBIN_DIRECTORY)
if (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
get_filename_component(MSVC_COMPILE_DIRECTORY ${CMAKE_CXX_COMPILER} DIRECTORY)
set(EDITBIN_DIRECTORY ${MSVC_COMPILE_DIRECTORY})
else (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
# For clang-cl build
# find editbin.exe from environmental variable VCToolsInstallDir
set(EDITBIN_DIRECTORY "$ENV{VCToolsInstallDir}/bin/Hostx64/x64")
endif (CMAKE_CXX_COMPILER_ID STREQUAL "MSVC")
endif (NOT EDITBIN_DIRECTORY)
message(CHECK_START "Finding editbin.exe")
find_program(
EDITBIN_EXECUTABLE editbin.exe
HINTS ${MSVC_COMPILE_DIRECTORY}
HINTS ${EDITBIN_DIRECTORY}
)
if (EDITBIN_EXECUTABLE)
message(CHECK_PASS "found")
else (EDITBIN_EXECUTABLE)
message(CHECK_FAIL "not found , please manually specify EDITBIN_DIRECTORY")
endif (EDITBIN_EXECUTABLE)
include(FindPackageHandleStandardArgs)
find_package_handle_standard_args(Editbin
FOUND_VAR EDITBIN_FOUND