guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

03/19: gnu: freeimage: Adjust for LibTIFF 4.4.


From: guix-commits
Subject: 03/19: gnu: freeimage: Adjust for LibTIFF 4.4.
Date: Fri, 16 Sep 2022 16:45:30 -0400 (EDT)

mbakke pushed a commit to branch core-updates
in repository guix.

commit 757aeb1d3a4397dab85e4c8436c3361cfa11cf60
Author: Marius Bakke <marius@gnu.org>
AuthorDate: Fri Sep 16 03:22:03 2022 +0200

    gnu: freeimage: Adjust for LibTIFF 4.4.
    
    * gnu/packages/patches/freeimage-libtiff-compat.patch: New file.
    * gnu/local.mk (dist_patch_DATA): Adjust accordingly.
    * gnu/packages/image.scm (freeimage)[source](patches): Add it.
---
 gnu/local.mk                                        |  1 +
 gnu/packages/image.scm                              |  3 ++-
 gnu/packages/patches/freeimage-libtiff-compat.patch | 19 +++++++++++++++++++
 3 files changed, 22 insertions(+), 1 deletion(-)

diff --git a/gnu/local.mk b/gnu/local.mk
index 1f3169bb1a..86dbd51a0b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1089,6 +1089,7 @@ dist_patch_DATA =                                         
\
   %D%/packages/patches/fp16-system-libraries.patch             \
   %D%/packages/patches/fpc-reproducibility.patch               \
   %D%/packages/patches/freedink-engine-fix-sdl-hints.patch     \
+  %D%/packages/patches/freeimage-libtiff-compat.patch          \
   %D%/packages/patches/freeimage-unbundle.patch                \
   %D%/packages/patches/fuse-glibc-2.34.patch                   \
   %D%/packages/patches/fuse-overlapping-headers.patch          \
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index ce48b9fefe..0461835a70 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -1082,7 +1082,8 @@ supplies a generic doubly-linked list and some string 
functions.")
                      "LibJXR" "LibWebP" "OpenEXR" "ZLib"))))
               (patches
                (append
-                (search-patches "freeimage-unbundle.patch")
+                (search-patches "freeimage-unbundle.patch"
+                                "freeimage-libtiff-compat.patch")
                 ;; Take one patch from Arch Linux that adds LibRaw 0.20 
compatibility.
                 (list (origin
                         (method url-fetch)
diff --git a/gnu/packages/patches/freeimage-libtiff-compat.patch 
b/gnu/packages/patches/freeimage-libtiff-compat.patch
new file mode 100644
index 0000000000..00c5bf659a
--- /dev/null
+++ b/gnu/packages/patches/freeimage-libtiff-compat.patch
@@ -0,0 +1,19 @@
+Use the new TIFFFieldSetGetSize API from libtiff 4.4 instead of the
+private and removed _TIFFDataSize declared in the unbundling patch.
+
+Patch taken from Fedora:
+
+  
https://src.fedoraproject.org/rpms/freeimage/blob/rawhide/f/freeimage-libtiff44.patch
+
+diff -rupN --no-dereference 
freeimage-svn-r1889-FreeImage-trunk/Source/Metadata/XTIFF.cpp 
freeimage-svn-r1889-FreeImage-trunk-new/Source/Metadata/XTIFF.cpp
+--- freeimage-svn-r1889-FreeImage-trunk/Source/Metadata/XTIFF.cpp      
2022-06-23 11:56:32.561043826 +0200
++++ freeimage-svn-r1889-FreeImage-trunk-new/Source/Metadata/XTIFF.cpp  
2022-06-23 11:56:32.764043827 +0200
+@@ -747,7 +747,7 @@ tiff_write_exif_tags(TIFF *tif, TagLib::
+                               continue;
+                       }
+                       // type of storage may differ (e.g. rationnal array vs 
float array type)
+-                      if((unsigned)_TIFFDataSize(tif_tag_type) != 
FreeImage_TagDataWidth(tag_type)) {
++                      if((unsigned)TIFFFieldSetGetSize(fld) != 
FreeImage_TagDataWidth(tag_type)) {
+                               // skip tag or _TIFFmemcpy will fail
+                               continue;
+                       }



reply via email to

[Prev in Thread] Current Thread [Next in Thread]