diff options
author | Peter Wu <peter@lekensteyn.nl> | 2014-09-25 12:09:23 +0200 |
---|---|---|
committer | Anders Broman <a.broman58@gmail.com> | 2014-10-01 08:14:34 +0000 |
commit | 9506909223f6155085a7a4d5adc039ebf60030f2 (patch) | |
tree | 56fa8255ec510c82e412ebff32f7e0b0bab705d9 /cmake/modules/FindCAP.cmake | |
parent | 0ac441b3ec36a65090721ffaf8bf668dd1b0bbbb (diff) |
cmake: use pkg-config for resolving dependencies
Changes:
* Fix glib2 search path.
* Add pkg-config support to CAP, GEOIP, GNUTLS, LUA, PortAudio (API
19), zlib, kerberos.
* Add pkg-config support to libnl3, libnl2 and libnl1 (but tested only
with libnl3).
This makes it easier to do 32-bit builds on 64-bit hosts by just setting
`PKG_CONFIG_LIBDIR`. Due to how HINTS work, it is still fragile though:
missing 32-bit libraries will cause a fallback to 64-bit libraries.
A future patch could check for `<PREFIX>_FOUND` and remove the manual
`find_path` and `find_library` hackery since the paths are already
known.
Change-Id: Ieb4fb74695c96afb1a4c70168e84abb1fa4612c6
Reviewed-on: https://code.wireshark.org/review/4292
Reviewed-by: Anders Broman <a.broman58@gmail.com>
Diffstat (limited to 'cmake/modules/FindCAP.cmake')
-rw-r--r-- | cmake/modules/FindCAP.cmake | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/cmake/modules/FindCAP.cmake b/cmake/modules/FindCAP.cmake index 09d3b86620..0ed69f671f 100644 --- a/cmake/modules/FindCAP.cmake +++ b/cmake/modules/FindCAP.cmake @@ -12,12 +12,19 @@ IF (CAP_INCLUDE_DIRS) SET(CAP_FIND_QUIETLY TRUE) ENDIF (CAP_INCLUDE_DIRS) -FIND_PATH(CAP_INCLUDE_DIR sys/capability.h) +find_package(PkgConfig) +pkg_search_module(CAP libcap) + +FIND_PATH(CAP_INCLUDE_DIR sys/capability.h + HINTS ${CAP_INCLUDEDIR} +) SET(CAP_NAMES cap) -FIND_LIBRARY(CAP_LIBRARY NAMES ${CAP_NAMES} ) +FIND_LIBRARY(CAP_LIBRARY NAMES ${CAP_NAMES} + HINTS ${CAP_LIBDIR} +) -# handle the QUIETLY and REQUIRED arguments and set CAP_FOUND to TRUE if +# handle the QUIETLY and REQUIRED arguments and set CAP_FOUND to TRUE if # all listed variables are TRUE INCLUDE(FindPackageHandleStandardArgs) FIND_PACKAGE_HANDLE_STANDARD_ARGS(CAP DEFAULT_MSG CAP_LIBRARY CAP_INCLUDE_DIR) |