diff options
author | Pierre Joye <pierre.php@gmail.com> | 2021-08-24 15:45:55 +0700 |
---|---|---|
committer | Pierre Joye <pierre.php@gmail.com> | 2021-08-24 15:45:55 +0700 |
commit | b61fc2dbad5d1a8c0b4f0cbfa0076d9938f723d3 (patch) | |
tree | ad2647c5e2253a283277eb4a061f39a955cc11cf /cmake | |
parent | cbb07f6515577980cc10187c91134558a85e463e (diff) | |
download | libgd-b61fc2dbad5d1a8c0b4f0cbfa0076d9938f723d3.tar.gz |
simplify HEIF_HDR_TO_8BIT detection
Diffstat (limited to 'cmake')
-rw-r--r-- | cmake/modules/FindHEIF.cmake | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/cmake/modules/FindHEIF.cmake b/cmake/modules/FindHEIF.cmake index 70f14c2..1751a84 100644 --- a/cmake/modules/FindHEIF.cmake +++ b/cmake/modules/FindHEIF.cmake @@ -54,21 +54,13 @@ FIND_PATH(HEIF_INCLUDE_DIR NAMES libheif/heif.h ${HEIF_PKG_INCLUDE_DIRS} # Generated by pkg-config ) -IF (NOT HEIF_PKG_FOUND) - INCLUDE(CheckCSourceCompiles) - CHECK_C_SOURCE_COMPILES( - " - #include <libheif/heif.h> - - #if !LIBHEIF_HAVE_VERSION(1, 7, 0) - #error \"libheif version is too old\" - #endif - - int main() { return 0; } - " - HEIF_HDR_TO_8BIT - ) -ENDIF (NOT HEIF_PKG_FOUND) +IF (HEIF_INCLUDE_DIR) + include(CheckStructHasMember) + CHECK_STRUCT_HAS_MEMBER("struct heif_decoding_options" convert_hdr_to_8bit libheif/heif.h HEIF_HDR_TO_8BIT LANGUAGE C) + if (WIN32) + SET(HEIF_PKG_FOUND 1) + endif (WIN32) +ENDIF (HEIF_INCLUDE_DIR) IF (NOT HEIF_HDR_TO_8BIT AND NOT HEIF_PKG_FOUND) MESSAGE(FATAL_ERROR "libheif version found is too old") |