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/FindNL.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/FindNL.cmake')
-rw-r--r-- | cmake/modules/FindNL.cmake | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/cmake/modules/FindNL.cmake b/cmake/modules/FindNL.cmake index dea96ba4b0..46ca03dbef 100644 --- a/cmake/modules/FindNL.cmake +++ b/cmake/modules/FindNL.cmake @@ -20,11 +20,19 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) /usr /usr/local ) + + find_package(PkgConfig) + pkg_check_modules(NL3 libnl-3.0 libnl-genl-3.0 libnl-route-3.0) + pkg_search_module(NL2 libnl-2.0) + FIND_PATH( NL_INCLUDE_DIR PATH_SUFFIXES include/libnl3 NAMES netlink/version.h + HINTS + "${NL3_libnl-3.0_INCLUDEDIR}" + "${NL2_INCLUDEDIR}" PATHS $(SEARCHPATHS) ) @@ -35,6 +43,9 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) nl-3 nl PATH_SUFFIXES lib64 lib + HINTS + "${NL3_libnl-3.0_LIBDIR}" + "${NL2_LIBDIR}" PATHS $(SEARCHPATHS) ) @@ -43,6 +54,9 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) nl-genl-3 nl-genl PATH_SUFFIXES lib64 lib + HINTS + "${NL3_libnl-genl-3.0_LIBDIR}" + "${NL2_LIBDIR}" PATHS $(SEARCHPATHS) ) @@ -51,6 +65,9 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) nl-route-3 nl-route PATH_SUFFIXES lib64 lib + HINTS + "${NL3_libnl-route-3.0_LIBDIR}" + "${NL2_LIBDIR}" PATHS $(SEARCHPATHS) ) @@ -71,9 +88,12 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) ENDIF( NL_LIBRARY ) ELSE( NL_INCLUDE_DIR ) # NL version 1 ? + pkg_search_module(NL1 libnl-1) FIND_PATH( NL_INCLUDE_DIR NAMES netlink/netlink.h + HINTS + "${NL1_INCLUDEDIR}" PATHS $(SEARCHPATHS) ) @@ -82,6 +102,8 @@ ELSE (NL_LIBRARIES AND NL_INCLUDE_DIRS ) nl PATH_SUFFIXES lib64 lib + HINTS + "${NL1_LIBDIR}" PATHS $(SEARCHPATHS) ) |