<pre style='margin:0'>
Marius Schamschula (Schamschula) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/62ea63a91f9e75a4f94c44dd96dd99b1398ccfba">https://github.com/macports/macports-ports/commit/62ea63a91f9e75a4f94c44dd96dd99b1398ccfba</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 62ea63a91f9 gmic: add HEIF support
</span>62ea63a91f9 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 62ea63a91f9e75a4f94c44dd96dd99b1398ccfba
</span>Author: Marius Schamschula <mps@macports.org>
AuthorDate: Fri Dec 10 16:08:18 2021 -0600

<span style='display:block; white-space:pre;color:#404040;'>    gmic: add HEIF support
</span>---
 science/gmic/Portfile                              |  8 +-
 science/gmic/files/FindHEIF.cmake                  | 93 ++++++++++++++++++++++
 science/gmic/files/patch-cmake-FindCImg.cmake.diff | 26 ++++++
 3 files changed, 126 insertions(+), 1 deletion(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gmic/Portfile b/science/gmic/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 156f71083bd..edf55983ce7 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/science/gmic/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/gmic/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -15,7 +15,7 @@ if {${subport} ne "gmic" && ${subport} ne "gmic-clib"} {
</span> 
 name                gmic
 version             3.0.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-revision            0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision            1
</span> license             CeCILL
 categories          science graphics
 platforms           darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -49,6 +49,7 @@ depends_lib         port:curl \
</span>                     port:fftw-3 \
                     port:GraphicsMagick \
                     port:ilmbase \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    port:libheif \
</span>                     path:include/turbojpeg.h:libjpeg-turbo \
                     port:libpng \
                     port:openexr \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,6 +57,7 @@ depends_lib         port:curl \
</span>                     port:zlib
 
 patchfiles          patch-CMakeLists.txt.diff \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    patch-cmake-FindCImg.cmake.diff \
</span>                     patch-src-Makefile.diff
 
 compiler.cxx_standard           2011
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -94,6 +96,10 @@ if {${subport} eq ${name}} {
</span>         cmake.build_type        Release
     }
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    post-extract {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+        copy ${filespath}/FindHEIF.cmake ${worksrcpath}/cmake/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     configure.args-append       -DCUSTOM_CFLAGS=ON \
                                 -DENABLE_OPENMP=OFF \
                                 -DENABLE_X=OFF
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gmic/files/FindHEIF.cmake b/science/gmic/files/FindHEIF.cmake
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..4c9fa5b9e10
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/gmic/files/FindHEIF.cmake
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,93 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# - Find the native HEIF includes and library
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# This module defines
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  HEIF_INCLUDE_DIR, where to find heif.h, etc.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  HEIF_LIBRARIES, the libraries to link against to use HEIF.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  HEIF_FOUND, If false, do not try to use HEIF.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Also defined, but not for general use are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  HEIF_LIBRARY, where to find the HEIF library.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Copyright (c) 2002 Kitware, Inc., Insight Consortium.  All rights reserved.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Redistribution and use in source and binary forms, with or without
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# modification, are permitted provided that the following conditions are
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# met:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  * Redistributions of source code must retain the above copyright notice,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    this list of conditions and the following disclaimer.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  * Redistributions in binary form must reproduce the above copyright notice,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    this list of conditions and the following disclaimer in the documentation
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    and/or other materials provided with the distribution.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#  * The names of Kitware, Inc., the Insight Consortium, or the names of
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    any consortium members, or of any contributors, may not be used to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    endorse or promote products derived from this software without
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#    specific prior written permission.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND CONTRIBUTORS ``AS IS''
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+SET(HEIF_FOUND "NO")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# use pkg-config to get the directories and then use these values
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# in the FIND_PATH() and FIND_LIBRARY() calls
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if( NOT WIN32 )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  find_package(PkgConfig)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  pkg_check_modules(HEIF_PKG libheif>=1.7.0 QUIET)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+endif( NOT WIN32 )
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+FIND_PATH(HEIF_INCLUDE_DIR NAMES libheif/heif.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  PATHS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    /opt/local/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    /usr/include
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  HINTS
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    ${HEIF_PKG_INCLUDE_DIRS} # Generated by pkg-config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IF (HEIF_INCLUDE_DIR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  include(CheckStructHasMember)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  CHECK_STRUCT_HAS_MEMBER("struct heif_decoding_options" convert_hdr_to_8bit libheif/heif.h HEIF_HDR_TO_8BIT LANGUAGE C)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  if (WIN32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    SET(HEIF_PKG_FOUND 1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  endif (WIN32)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ENDIF (HEIF_INCLUDE_DIR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IF (NOT HEIF_HDR_TO_8BIT AND NOT HEIF_PKG_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  MESSAGE(FATAL_ERROR "libheif version found is too old")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ENDIF (NOT HEIF_HDR_TO_8BIT AND NOT HEIF_PKG_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+SET(HEIF_NAMES ${HEIF_NAMES} heif ${HEIF_PKG_LIBRARY})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+FIND_LIBRARY(HEIF_LIBRARY
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  NAMES ${HEIF_NAMES}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  PATH /opt/local/lib /usr/lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  PATH_SUFFIXES lib64 lib
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+  HINTS ${HEIF_PKG_LIBRARY_DIRS} # Generated by pkg-config
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IF (HEIF_LIBRARY AND HEIF_INCLUDE_DIR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SET(HEIF_FOUND "YES")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SET(HAVE_LIBHEIF 1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   SET(HEIF_LIBRARIES ${HEIF_LIBRARY})
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ENDIF (HEIF_LIBRARY AND HEIF_INCLUDE_DIR)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+IF (HEIF_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   IF (NOT HEIF_FIND_QUIETLY)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           MESSAGE(STATUS "Find HEIF: ${HEIF_LIBRARY}")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ENDIF (NOT HEIF_FIND_QUIETLY)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ELSE (HEIF_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   IF (HEIF_FIND_REQUIRED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+           MESSAGE(FATAL_ERROR "Could not find HEIF library")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   ENDIF (HEIF_FIND_REQUIRED)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ENDIF (HEIF_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+MARK_AS_ADVANCED(HEIF_INCLUDE_DIR HEIF_LIBRARY)
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/science/gmic/files/patch-cmake-FindCImg.cmake.diff b/science/gmic/files/patch-cmake-FindCImg.cmake.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..9600390b589
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/science/gmic/files/patch-cmake-FindCImg.cmake.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,26 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- cmake/FindCImg.cmake.orig      2021-12-09 03:25:45.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ cmake/FindCImg.cmake   2021-12-10 15:18:02.000000000 -0600
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -31,6 +31,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option(ENABLE_OPENMP "Add support for parallel processing" ON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option(ENABLE_PNG "Add support for handling images in PNG format" ON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option(ENABLE_TIFF "Add support for handling images in Tiff format" ON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++option(ENABLE_HEIF "Add support for handling images in HEIF format" ON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ option(ENABLE_ZLIB "Add support for data compression via Zlib" ON)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set(COMPILE_FLAGS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -137,6 +138,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if(ENABLE_HEIF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  find_package(HEIF)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if(HEIF_FOUND)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    list(APPEND CLI_COMPILE_FLAGS "cimg_use_heif")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    list(APPEND EXTRA_LIBRARY_TARGETS heif)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++endif()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if(ENABLE_JPEG)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   find_package(JPEG)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>