diff --git a/cmake/FindCrashpad.cmake b/cmake/FindCrashpad.cmake index 919ec93cd8f..8b16fd83be2 100644 --- a/cmake/FindCrashpad.cmake +++ b/cmake/FindCrashpad.cmake @@ -49,6 +49,14 @@ find_path(CRASHPAD_LIB_DIR "${CMAKE_PREFIX_PATH}" ) +find_path(CRASHPAD_GEN_DIR + NAMES build/chromeos_buildflags.h + PATH_SUFFIXES gen + HINTS + "${CRASHPAD_BIN_DIR}" + "${CMAKE_PREFIX_PATH}" +) + if(APPLE) find_path(CRASHPAD_OBJ_DIR NAMES mig_output.child_portServer.o @@ -58,13 +66,6 @@ if(APPLE) "${CRASHPAD_LIB_DIR}/out/Default" "${CMAKE_PREFIX_PATH}" ) - find_path(CRASHPAD_GEN_DIR - NAMES build/chromeos_buildflags.h - PATH_SUFFIXES gen - HINTS - "${CRASHPAD_BIN_DIR}" - "${CMAKE_PREFIX_PATH}" - ) set(CRASHPAD_APPLE_VARS CRASHPAD_OBJ_DIR CRASHPAD_GEN_DIR) find_library(FWbsm bsm) find_library(FWAppKit AppKit) @@ -81,7 +82,8 @@ if(Crashpad_FOUND) add_library(Crashpad::Crashpad UNKNOWN IMPORTED) target_include_directories(Crashpad::Crashpad INTERFACE "${CRASHPAD_INCLUDE_DIR}" - "${CRASHPAD_INCLUDE_DIR}/third_party/mini_chromium/mini_chromium") + "${CRASHPAD_INCLUDE_DIR}/third_party/mini_chromium/mini_chromium" + "${CRASHPAD_GEN_DIR}") if(WIN32) target_link_libraries(Crashpad::Crashpad INTERFACE "${CRASHPAD_LIB_DIR}/third_party/mini_chromium/mini_chromium/base/base.lib" @@ -106,7 +108,6 @@ if(Crashpad_FOUND) ${FWbsm} ${FWAppKit} ${FWIOKit} ${FWSecurity}) set_target_properties(Crashpad::Crashpad PROPERTIES IMPORTED_LOCATION "${CRASHPAD_LIB_DIR}/client/libclient.a") - target_include_directories(Crashpad::Crashpad INTERFACE "${CRASHPAD_GEN_DIR}") elseif(UNIX) # TODO: Crashpad is not well supported on linux currently target_link_libraries(Crashpad::Crashpad INTERFACE diff --git a/src/plugins/coreplugin/CMakeLists.txt b/src/plugins/coreplugin/CMakeLists.txt index 3d557cf7050..6b98b63bf9a 100644 --- a/src/plugins/coreplugin/CMakeLists.txt +++ b/src/plugins/coreplugin/CMakeLists.txt @@ -186,16 +186,10 @@ extend_qtc_plugin(Core SOURCES progressmanager/progressmanager_x11.cpp ) -if (CRASHPAD_BACKEND_URL - AND CRASHPAD_SRC - AND EXISTS "${CRASHPAD_SRC}" - AND CRASHPAD_BUILD - AND EXISTS "${CRASHPAD_BUILD}" - AND (WIN32 OR APPLE)) # LINUX isn't supported for now - extend_qtc_plugin(Core - DEFINES ENABLE_CRASHPAD - ) -endif() +extend_qtc_plugin(Core + CONDITION BUILD_WITH_CRASHPAD + DEFINES ENABLE_CRASHPAD +) if ((NOT WIN32) AND (NOT APPLE)) # install logo