Mercurial > molko
comparison cmake/FindJansson.cmake @ 447:e1fa1b867281
cmake: resurrection
Using GNU make for such a big project is tedious.
author | David Demelier <markand@malikania.fr> |
---|---|
date | Sat, 18 Feb 2023 12:43:05 +0100 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
446:4607eea0eabc | 447:e1fa1b867281 |
---|---|
1 # FindJansson | |
2 # ----------- | |
3 # | |
4 # Find Jansson library, this modules defines: | |
5 # | |
6 # Jansson_INCLUDE_DIRS, where to find jansson.h | |
7 # Jansson_LIBRARIES, where to find library | |
8 # Jansson_FOUND, if it is found | |
9 # | |
10 # The following imported targets will be available: | |
11 # | |
12 # Jansson::Jansson, if found. | |
13 # | |
14 | |
15 find_path(Jansson_INCLUDE_DIR NAMES jansson.h) | |
16 find_library(Jansson_LIBRARY NAMES libjansson jansson jansson_d libjansson_d) | |
17 | |
18 include(FindPackageHandleStandardArgs) | |
19 | |
20 find_package_handle_standard_args( | |
21 Jansson | |
22 FOUND_VAR Jansson_FOUND | |
23 REQUIRED_VARS Jansson_LIBRARY Jansson_INCLUDE_DIR | |
24 ) | |
25 | |
26 if (Jansson_FOUND) | |
27 set(Jansson_LIBRARIES ${Jansson_LIBRARY}) | |
28 set(Jansson_INCLUDE_DIRS ${Jansson_INCLUDE_DIR}) | |
29 | |
30 if (NOT TARGET Jansson::Jansson) | |
31 add_library(Jansson::Jansson UNKNOWN IMPORTED) | |
32 set_target_properties( | |
33 Jansson::Jansson | |
34 PROPERTIES | |
35 IMPORTED_LINK_INTERFACE_LANGUAGES "C" | |
36 IMPORTED_LOCATION "${Jansson_LIBRARY}" | |
37 INTERFACE_INCLUDE_DIRECTORIES "${Jansson_INCLUDE_DIRS}" | |
38 ) | |
39 endif () | |
40 endif () | |
41 | |
42 mark_as_advanced(Jansson_INCLUDE_DIR Jansson_LIBRARY) |