Fix MyGUI detection

`libfind_pkg_detect` used `pkg_check_modules`, which requires all the
given modules to be found.

This means it always failed for MyGUI, which passes
`MyGUI${MYGUI_STATIC_SUFFIX} MYGUI${MYGUI_STATIC_SUFFIX}` to it.

Replaces `pkg_check_modules` with `pkg_search_module`, which finds the
first match instead.
pull/3043/head
Gleb Mazovetskiy 3 years ago
parent fd602e2c31
commit 823e7bea38

@ -19,11 +19,11 @@ macro (libfind_package PREFIX PKG)
endmacro()
# A simple wrapper to make pkg-config searches a bit easier.
# Works the same as CMake's internal pkg_check_modules but is always quiet.
macro (libfind_pkg_check_modules)
# Works the same as CMake's internal pkg_search_module but is always quiet.
macro (libfind_pkg_search_module)
find_package(PkgConfig QUIET)
if (PKG_CONFIG_FOUND)
pkg_check_modules(${ARGN} QUIET)
pkg_search_module(${ARGN} QUIET)
endif()
endmacro()
@ -47,7 +47,7 @@ function (libfind_pkg_detect PREFIX)
message(FATAL_ERROR "libfind_pkg_detect requires at least a pkg_config package name to be passed.")
endif()
# Find library
libfind_pkg_check_modules(${PREFIX}_PKGCONF ${pkgargs})
libfind_pkg_search_module(${PREFIX}_PKGCONF ${pkgargs})
if (pathargs)
find_path(${PREFIX}_INCLUDE_DIR NAMES ${pathargs} HINTS ${${PREFIX}_PKGCONF_INCLUDE_DIRS})
endif()

Loading…
Cancel
Save