diff --git a/CMakeModules/FindDiscordRPC.cmake b/CMakeModules/FindDiscordRPC.cmake index 44ca9904f4..d189d15d5d 100644 --- a/CMakeModules/FindDiscordRPC.cmake +++ b/CMakeModules/FindDiscordRPC.cmake @@ -2,26 +2,29 @@ # # SPDX-License-Identifier: GPL-3.0-or-later -find_path(DiscordRPC_INCLUDE_DIR discord_rpc.h) +find_package(DiscordRPC CONFIG QUIET) -find_library(DiscordRPC_LIBRARY discord-rpc) +if (NOT DiscordRPC_FOUND) + find_path(DiscordRPC_INCLUDE_DIR discord_rpc.h) + find_library(DiscordRPC_LIBRARY discord-rpc) -include(FindPackageHandleStandardArgs) -find_package_handle_standard_args(DiscordRPC - REQUIRED_VARS - DiscordRPC_LIBRARY - DiscordRPC_INCLUDE_DIR -) + include(FindPackageHandleStandardArgs) + find_package_handle_standard_args(DiscordRPC + REQUIRED_VARS + DiscordRPC_LIBRARY + DiscordRPC_INCLUDE_DIR + ) + + if (DiscordRPC_FOUND AND NOT TARGET DiscordRPC::discord-rpc) + add_library(DiscordRPC::discord-rpc UNKNOWN IMPORTED) + set_target_properties(DiscordRPC::discord-rpc PROPERTIES + IMPORTED_LOCATION "${DiscordRPC_LIBRARY}" + INTERFACE_INCLUDE_DIRECTORIES "${DiscordRPC_INCLUDE_DIR}" + ) + endif() -if (DiscordRPC_FOUND AND NOT TARGET DiscordRPC::discord-rpc) - add_library(DiscordRPC::discord-rpc UNKNOWN IMPORTED) - set_target_properties(DiscordRPC::discord-rpc PROPERTIES - IMPORTED_LOCATION "${DiscordRPC_LIBRARY}" - INTERFACE_INCLUDE_DIRECTORIES "${DiscordRPC_INCLUDE_DIR}" + mark_as_advanced( + DiscordRPC_INCLUDE_DIR + DiscordRPC_LIBRARY ) endif() - -mark_as_advanced( - DiscordRPC_INCLUDE_DIR - DiscordRPC_LIBRARY -)