forked from eden-emu/eden
		
	 4a9fadecfe
			
		
	
	
		4a9fadecfe
		
	
	
	
	
		
			
			CMake is case senstive, so Libzip vs LIBZIP was a bug. Upstream calls themself libzip, so let's pick this naming.
		
			
				
	
	
		
			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
 | |
| )
 |