1find_package(PkgConfig)
2pkg_check_modules(PC_LIBZIP QUIET libzip)
3
4find_path(LIBZIP_INCLUDE_DIR_ZIP
5 NAMES zip.h
6 HINTS ${PC_LIBZIP_INCLUDE_DIRS})
7
8find_path(LIBZIP_INCLUDE_DIR_ZIPCONF
9 NAMES zipconf.h
10 HINTS ${PC_LIBZIP_INCLUDE_DIRS})
11
12find_library(LIBZIP_LIBRARY
13 NAMES zip)
14
15include(FindPackageHandleStandardArgs)
16FIND_PACKAGE_HANDLE_STANDARD_ARGS(
17 LIBZIP DEFAULT_MSG
18 LIBZIP_LIBRARY LIBZIP_INCLUDE_DIR_ZIP LIBZIP_INCLUDE_DIR_ZIPCONF)
19
20set(LIBZIP_VERSION 0)
21
22if (LIBZIP_INCLUDE_DIR_ZIPCONF)
23 FILE(READ "${LIBZIP_INCLUDE_DIR_ZIPCONF}/zipconf.h" _LIBZIP_VERSION_CONTENTS)
24 if (_LIBZIP_VERSION_CONTENTS)
25 STRING(REGEX REPLACE ".*#define LIBZIP_VERSION \"([0-9.]+)\".*" "\\1" LIBZIP_VERSION "${_LIBZIP_VERSION_CONTENTS}")
26 endif ()
27endif ()
28
29set(LIBZIP_VERSION ${LIBZIP_VERSION} CACHE STRING "Version number of libzip")