Mercurial > code
annotate cmake/FindZIP.cmake @ 624:01e01777ff50
CMake: initial import of CMake modules, closes #720
author | David Demelier <markand@malikania.fr> |
---|---|
date | Fri, 20 Oct 2017 14:18:37 +0200 |
parents | |
children | 5bd9424a523a |
rev | line source |
---|---|
624
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
1 # FindZIP |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
2 # ------- |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
3 # |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
4 # Find libzip library, this modules defines: |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
5 # |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
6 # ZIP_INCLUDE_DIRS, where to find zip.h |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
7 # ZIP_LIBRARIES, where to find library |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
8 # ZIP_FOUND, if it is found |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
9 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
10 find_package(ZLIB QUIET) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
11 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
12 find_path( |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
13 ZIP_INCLUDE_DIR |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
14 NAMES zip.h |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
15 ) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
16 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
17 find_library( |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
18 ZIP_LIBRARY |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
19 NAMES zip libzip |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
20 ) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
21 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
22 find_path( |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
23 ZIPCONF_INCLUDE_DIR |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
24 NAMES zipconf.h |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
25 ) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
26 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
27 if (NOT ZIPCONF_INCLUDE_DIR) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
28 # zipconf.h is sometimes directly in the include/ folder but on some systems |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
29 # like Windows, it is installed in the lib/ directory. |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
30 get_filename_component(_ZIP_PRIVATE_LIBRARY "${ZIP_LIBRARY}" DIRECTORY) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
31 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
32 find_path( |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
33 ZIPCONF_INCLUDE_DIR |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
34 NAMES zipconf.h |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
35 PATHS "${_ZIP_PRIVATE_LIBRARY}/libzip/include" |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
36 ) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
37 endif () |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
38 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
39 include(FindPackageHandleStandardArgs) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
40 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
41 find_package_handle_standard_args( |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
42 ZIP |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
43 REQUIRED_VARS ZLIB_LIBRARIES ZLIB_INCLUDE_DIRS ZIP_LIBRARY ZIP_INCLUDE_DIR ZIPCONF_INCLUDE_DIR |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
44 ) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
45 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
46 if (ZIP_FOUND) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
47 set(ZIP_LIBRARIES ${ZIP_LIBRARY} ${ZLIB_LIBRARIES}) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
48 set(ZIP_INCLUDE_DIRS ${ZIP_INCLUDE_DIR} ${ZIPCONF_INCLUDE_DIR} ${ZLIB_INCLUDE_DIRS}) |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
49 endif () |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
50 |
01e01777ff50
CMake: initial import of CMake modules, closes #720
David Demelier <markand@malikania.fr>
parents:
diff
changeset
|
51 mark_as_advanced(ZIP_LIBRARY ZIP_INCLUDE_DIR ZIPCONF_INCLUDE_DIR) |