forked from eden-emu/eden
		
	
		
			
				
	
	
		
			72 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			72 lines
		
	
	
	
		
			1.9 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| 
 | |
| find_package(PkgConfig QUIET)
 | |
| pkg_check_modules(PC_LIBZIP QUIET libzip)
 | |
| 
 | |
| find_path(LIBZIP_INCLUDE_DIR
 | |
|   NAMES zip.h
 | |
|   PATHS ${PC_LIBZIP_INCLUDE_DIRS}
 | |
|   "$ENV{LIB_DIR}/include"
 | |
|   "$ENV{INCLUDE}"
 | |
|   /usr/local/include
 | |
|   /usr/include
 | |
| )
 | |
| find_path(LIBZIP_INCLUDE_DIR_ZIPCONF
 | |
|   NAMES zipconf.h
 | |
|   HINTS ${PC_LIBZIP_INCLUDE_DIRS}
 | |
|   "$ENV{LIB_DIR}/include"
 | |
|   "$ENV{LIB_DIR}/lib/libzip/include"
 | |
|   "$ENV{LIB}/lib/libzip/include"
 | |
|   /usr/local/lib/libzip/include
 | |
|   /usr/lib/libzip/include
 | |
|   /usr/local/include
 | |
|   /usr/include
 | |
|   "$ENV{INCLUDE}"
 | |
| )
 | |
| find_library(LIBZIP_LIBRARY
 | |
|   NAMES zip
 | |
|   PATHS ${PC_LIBZIP_LIBRARY_DIRS}
 | |
|   "$ENV{LIB_DIR}/lib" "$ENV{LIB}" /usr/local/lib /usr/lib
 | |
| )
 | |
| 
 | |
| if (LIBZIP_INCLUDE_DIR_ZIPCONF)
 | |
|   FILE(READ "${LIBZIP_INCLUDE_DIR_ZIPCONF}/zipconf.h" _LIBZIP_VERSION_CONTENTS)
 | |
|   if (_LIBZIP_VERSION_CONTENTS)
 | |
|     STRING(REGEX REPLACE ".*#define LIBZIP_VERSION \"([0-9.]+)\".*" "\\1" LIBZIP_VERSION "${_LIBZIP_VERSION_CONTENTS}")
 | |
|   endif()
 | |
|   unset(_LIBZIP_VERSION_CONTENTS)
 | |
| endif()
 | |
| 
 | |
| set(LIBZIP_VERSION ${LIBZIP_VERSION} CACHE STRING "Version number of libzip")
 | |
| 
 | |
| include(FindPackageHandleStandardArgs)
 | |
| find_package_handle_standard_args(Libzip
 | |
|   FOUND_VAR LIBZIP_FOUND
 | |
|   REQUIRED_VARS
 | |
|     LIBZIP_LIBRARY
 | |
|     LIBZIP_INCLUDE_DIR
 | |
|     LIBZIP_INCLUDE_DIR_ZIPCONF
 | |
|     LIBZIP_VERSION
 | |
|   VERSION_VAR LIBZIP_VERSION
 | |
| )
 | |
| 
 | |
| if(LIBZIP_FOUND)
 | |
|   set(LIBZIP_LIBRARIES ${LIBZIP_LIBRARY})
 | |
|   set(LIBZIP_INCLUDE_DIRS ${LIBZIP_INCLUDE_DIR})
 | |
|   set(LIBZIP_DEFINITIONS ${PC_LIBZIP_CFLAGS_OTHER})
 | |
| endif()
 | |
| 
 | |
| if(LIBZIP_FOUND AND NOT TARGET libzip::libzip)
 | |
|   add_library(libzip::libzip UNKNOWN IMPORTED)
 | |
|   set_target_properties(libzip::libzip PROPERTIES
 | |
|     IMPORTED_LOCATION "${LIBZIP_LIBRARY}"
 | |
|     INTERFACE_COMPILE_OPTIONS "${PC_LIBZIP_CFLAGS_OTHER}"
 | |
|     INTERFACE_INCLUDE_DIRECTORIES "${LIBZIP_INCLUDE_DIR}"
 | |
|   )
 | |
| endif()
 | |
| 
 | |
| mark_as_advanced(
 | |
|     LIBZIP_INCLUDE_DIR
 | |
|     LIBZIP_INCLUDE_DIR_ZIPCONF
 | |
|     LIBZIP_LIBRARY
 | |
|     LIBZIP_VERSION
 | |
| )
 | 
