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/593/head
Gleb Mazovetskiy 4 years ago
parent fd602e2c31
commit 823e7bea38

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

Loading…
Cancel
Save