[med-svn] [Git][med-team/gdcm][master] 5 commits: Add patch to fix build with poppler 26.01

Jeremy Bícha (@jbicha) gitlab at salsa.debian.org
Sun May 3 00:59:22 BST 2026



Jeremy Bícha pushed to branch master at Debian Med / gdcm


Commits:
6813fdeb by Alessandro Astone at 2026-05-02T19:27:41-04:00
Add patch to fix build with poppler 26.01

- - - - -
b183bed1 by Jeremy Bícha at 2026-05-02T19:52:19-04:00
Fix Lintian override

- - - - -
6757a3a5 by Jeremy Bícha at 2026-05-02T19:56:35-04:00
Run wrap-and-sort -at

etc.

- - - - -
a84fb250 by Jeremy Bícha at 2026-05-02T19:57:22-04:00
Update Standards Version to 4.7.4

- - - - -
418849ed by Jeremy Bícha at 2026-05-02T19:58:20-04:00
releasing package gdcm version 3.0.24-10

- - - - -


7 changed files:

- debian/changelog
- debian/control
- debian/copyright
- debian/libvtkgdcm-9.1t64.lintian-overrides
- + debian/patches/fix-GooString-use-std-string-size.patch
- debian/patches/series
- debian/tests/control


Changes:

=====================================
debian/changelog
=====================================
@@ -1,3 +1,15 @@
+gdcm (3.0.24-10) unstable; urgency=medium
+
+  * Team upload
+
+  [ Alessandro Astone ]
+  * Add patch to fix build with poppler 26.01
+
+  [ Jeremy Bícha ]
+  * Update Standards Version to 4.7.4
+
+ -- Jeremy Bícha <jbicha at ubuntu.com>  Sat, 02 May 2026 19:57:39 -0400
+
 gdcm (3.0.24-9) unstable; urgency=medium
 
   * Team upload.


=====================================
debian/control
=====================================
@@ -1,19 +1,19 @@
 Source: gdcm
+Standards-Version: 4.7.4
 Maintainer: Debian Med Packaging Team <debian-med-packaging at lists.alioth.debian.org>
 Uploaders: Sébastien Jodogne <s.jodogne at gmail.com>,
-           Gert Wollny <gewo at debian.org>
+           Gert Wollny <gewo at debian.org>,
 Section: libs
-Priority: optional
-Build-Depends: castxml,
-               cmake,
-               debhelper-compat (= 13),
-               default-jdk [!hppa !hurd-any !kfreebsd-any],
+Build-Depends: debhelper-compat (= 13),
+               dh-sequence-javahelper,
                dh-sequence-python3,
                dh-strip-nondeterminism,
-               docbook-xsl-ns,
                dpkg-dev (>= 1.22.5),
-               dh-sequence-javahelper,
-               libcharls-dev (>= 2.4.1),
+               castxml,
+               cmake,
+               default-jdk [!hppa !hurd-any],
+               docbook-xsl-ns,
+               libcharls-dev,
                libexpat-dev,
                libjson-c-dev,
                libopenjp2-7-dev,
@@ -31,28 +31,25 @@ Build-Depends: castxml,
                python3-vtk9,
                swig,
                uuid-dev,
-               xsltproc
+               xsltproc,
 Build-Depends-Indep: doxygen,
                      doxygen-latex,
                      ghostscript,
                      graphviz,
-                     vtk9-doc
-Build-Conflicts: libopenjpeg-dev
-Standards-Version: 4.7.2
+                     vtk9-doc,
+Build-Conflicts: libopenjpeg-dev,
 Vcs-Browser: https://salsa.debian.org/med-team/gdcm
 Vcs-Git: https://salsa.debian.org/med-team/gdcm.git
 Homepage: http://gdcm.sourceforge.net/
-Rules-Requires-Root: no
 
 Package: libgdcm3.0t64
 Architecture: any
 Multi-Arch: same
 Depends: ${misc:Depends},
-         ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
-Breaks: libgdcm3.0 (<< ${source:Version})
-Provides: ${t64:Provides}
-Replaces: libgdcm3.0
+         ${shlibs:Depends},
+Breaks: libgdcm3.0 (<< ${source:Version}),
+Provides: ${t64:Provides},
+Replaces: libgdcm3.0,
 Description: Grassroots DICOM runtime libraries
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -66,10 +63,10 @@ Architecture: any
 Multi-Arch: foreign
 Section: utils
 Depends: ${misc:Depends},
-         ${shlibs:Depends}
-Recommends: pvrg-jpeg
+         ${shlibs:Depends},
+Recommends: pvrg-jpeg,
 Suggests: dcmtk,
-          dicom3tools
+          dicom3tools,
 Description: Grassroots DICOM tools and utilities
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -83,7 +80,7 @@ Package: libgdcm-dev
 Architecture: any
 Section: libdevel
 Depends: libgdcm3.0t64 (= ${binary:Version}),
-         ${misc:Depends}
+         ${misc:Depends},
 Description: Grassroots DICOM development libraries and headers
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -99,8 +96,8 @@ Section: python
 Depends: libgdcm3.0t64 (= ${binary:Version}),
          ${misc:Depends},
          ${python3:Depends},
-         ${shlibs:Depends}
-Provides: ${python:Provides}
+         ${shlibs:Depends},
+Provides: ${python:Provides},
 Description: Grassroots DICOM Python bindings
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -112,11 +109,10 @@ Package: libvtkgdcm-9.1t64
 Architecture: any
 Multi-Arch: same
 Depends: ${misc:Depends},
-         ${shlibs:Depends}
-Pre-Depends: ${misc:Pre-Depends}
-Breaks: libvtkgdcm-9.1 (<< ${source:Version})
-Provides: ${t64:Provides}
-Replaces: libvtkgdcm-9.1
+         ${shlibs:Depends},
+Breaks: libvtkgdcm-9.1 (<< ${source:Version}),
+Provides: ${t64:Provides},
+Replaces: libvtkgdcm-9.1,
 Description: Grassroots DICOM VTK runtime libraries
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -130,7 +126,7 @@ Architecture: any
 Section: libdevel
 Depends: libgdcm-dev,
          libvtkgdcm-9.1t64 (= ${binary:Version}),
-         ${misc:Depends}
+         ${misc:Depends},
 Description: Grassroots DICOM VTK development libraries and headers
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -146,9 +142,9 @@ Section: python
 Depends: libvtkgdcm-9.1t64 (= ${binary:Version}),
          ${misc:Depends},
          ${python3:Depends},
-         ${shlibs:Depends}
-Suggests: python3-gdcm
-Provides: ${python:Provides}
+         ${shlibs:Depends},
+Suggests: python3-gdcm,
+Provides: ${python:Provides},
 Description: Grassroots DICOM VTK/Python bindings
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -161,8 +157,8 @@ Architecture: any
 Multi-Arch: foreign
 Section: utils
 Depends: ${misc:Depends},
-         ${shlibs:Depends}
-Suggests: libgdcm-tools
+         ${shlibs:Depends},
+Suggests: libgdcm-tools,
 Description: Grassroots DICOM VTK tools and utilities
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -177,7 +173,7 @@ Architecture: all
 Section: doc
 Depends: doc-base,
          vtk9-doc,
-         ${misc:Depends}
+         ${misc:Depends},
 Description: Grassroots DICOM documentation
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports
@@ -190,8 +186,8 @@ Architecture: alpha amd64 arm64 armel armhf i386 ia64 loong64 m68k mips64el mips
 Section: java
 Depends: ${java:Depends},
          ${misc:Depends},
-         ${shlibs:Depends}
-Suggests: java-virtual-machine
+         ${shlibs:Depends},
+Suggests: java-virtual-machine,
 Description: Grassroots DICOM Java bindings
  Grassroots DiCoM is a C++ library for DICOM medical files. It is
  automatically wrapped to python/C#/Java (using swig). It supports


=====================================
debian/copyright
=====================================
@@ -1,7 +1,6 @@
 Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
-Upstream-Name: gdcm
-Upstream-Contact: malat at users.sf.net
 Source: http://gdcm.sf.net
+Upstream-Name: gdcm
 
 Files: *
 Copyright: 2006-2011 Mathieu Malaterre


=====================================
debian/libvtkgdcm-9.1t64.lintian-overrides
=====================================
@@ -1 +1 @@
-libvtkgdcm-9.1t64: package-name-doesnt-match-sonames libvtkgdcm-9.1-1
+libvtkgdcm-9.1t64: package-name-doesnt-match-sonames


=====================================
debian/patches/fix-GooString-use-std-string-size.patch
=====================================
@@ -0,0 +1,66 @@
+From: "Ankur Sinha (Ankur Sinha Gmail)" <sanjay.ankur at gmail.com>
+Date: Wed, 21 Jan 2026 10:37:03 +0000
+Subject: fix(GooString): use std::string::size
+
+Required for poppler rebase to 26.01.0
+
+Reference: https://gitlab.freedesktop.org/poppler/poppler/-/commit/f6dcd06445b6b7795b4c8f654206c5aef3d79100
+
+Co-authored-by: Alessandro Astone <alessandro.astone at canonical.com>
+
+Forwarded: https://github.com/malaterre/GDCM/pull/207
+---
+ Applications/Cxx/CMakeLists.txt | 6 ++++++
+ Applications/Cxx/gdcminfo.cxx   | 4 ++++
+ Applications/Cxx/gdcmpdf.cxx    | 4 ++++
+ 3 files changed, 14 insertions(+)
+
+diff --git a/Applications/Cxx/CMakeLists.txt b/Applications/Cxx/CMakeLists.txt
+index e18ec85..f22ffe3 100644
+--- a/Applications/Cxx/CMakeLists.txt
++++ b/Applications/Cxx/CMakeLists.txt
+@@ -122,6 +122,12 @@ if(GDCM_USE_SYSTEM_POPPLER)
+   if(LIBPOPPLER_PDFDOC_HAS_OPTIONAL)
+     list(APPEND libpoppler_flags -DLIBPOPPLER_PDFDOC_HAS_OPTIONAL)
+   endif()
++  CHECK_CXX_SOURCE_COMPILES(
++    "\#include <poppler/goo/GooString.h>\nint main() { GooString gs; gs.size(); return 0; }"
++    LIBPOPPLER_GOOSTRING_HAS_SIZE)
++  if(LIBPOPPLER_GOOSTRING_HAS_SIZE)
++    list(APPEND libpoppler_flags -DLIBPOPPLER_GOOSTRING_HAS_SIZE)
++  endif()
+   if(libpoppler_flags)
+     string(REPLACE ";" " " libpoppler_flags_string "${libpoppler_flags}")
+     set_source_files_properties(
+diff --git a/Applications/Cxx/gdcminfo.cxx b/Applications/Cxx/gdcminfo.cxx
+index fc82e86..ba0fa3d 100644
+--- a/Applications/Cxx/gdcminfo.cxx
++++ b/Applications/Cxx/gdcminfo.cxx
+@@ -297,7 +297,11 @@ static std::string getInfoString(Dict *infoDict, const char *key, UnicodeMap *uM
+       isUnicode = false;
+       i = 0;
+       }
++#ifdef LIBPOPPLER_GOOSTRING_HAS_SIZE
++    while (i < obj.getString()->size())
++#else
+     while (i < obj.getString()->getLength())
++#endif
+       {
+       if (isUnicode)
+         {
+diff --git a/Applications/Cxx/gdcmpdf.cxx b/Applications/Cxx/gdcmpdf.cxx
+index 5a98d28..752571c 100644
+--- a/Applications/Cxx/gdcmpdf.cxx
++++ b/Applications/Cxx/gdcmpdf.cxx
+@@ -148,7 +148,11 @@ static std::string getInfoString(Dict *infoDict, const char *key, UnicodeMap *uM
+       isUnicode = false;
+       i = 0;
+       }
++#ifdef LIBPOPPLER_GOOSTRING_HAS_SIZE
++    while (i < obj.getString()->size())
++#else
+     while (i < obj.getString()->getLength())
++#endif
+       {
+       if (isUnicode)
+         {


=====================================
debian/patches/series
=====================================
@@ -9,3 +9,4 @@ cxx-standard-20.patch
 05_vtk95.patch
 06_doxygen.patch
 CVE-2025-11266.patch
+fix-GooString-use-std-string-size.patch


=====================================
debian/tests/control
=====================================
@@ -1,3 +1,3 @@
 Tests: run-unit-test
 Depends: @
-Restrictions: allow-stderr
+Restrictions: allow-stderr,



View it on GitLab: https://salsa.debian.org/med-team/gdcm/-/compare/8f71713518ad7155462e354ca9c513fa686145a0...418849ed0a1f4a9847172537d83c026fbd75e8ad

-- 
View it on GitLab: https://salsa.debian.org/med-team/gdcm/-/compare/8f71713518ad7155462e354ca9c513fa686145a0...418849ed0a1f4a9847172537d83c026fbd75e8ad
You're receiving this email because of your account on salsa.debian.org. Manage all notifications: https://salsa.debian.org/-/profile/notifications | Help: https://salsa.debian.org/help


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/debian-med-commit/attachments/20260502/d1430576/attachment-0001.htm>


More information about the debian-med-commit mailing list