[From nobody Thu Aug 27 15:37:07 2026
Received: (at submit) by bugs.debian.org; 24 Aug 2026 12:35:23 +0000
X-Spam-Checker-Version: SpamAssassin 4.0.1-bugs.debian.org_2005_01_02
 (2024-03-25) on buxtehude.debian.org
X-Spam-Level: 
X-Spam-Status: No, score=-107.1 required=4.0 tests=ALL_TRUSTED,BAYES_00,
 DKIMWL_WL_HIGH,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,
 FOURLA,FROMDEVELOPER,FVGT_m_MULTI_ODD,SPF_HELO_NONE,SPF_PASS,
 USER_IN_DKIM_WELCOMELIST autolearn=ham autolearn_force=no
 version=4.0.1-bugs.debian.org_2005_01_02
X-Spam-Bayes: score:0.0000 Tokens: new, 19; hammy, 150; neutral, 129; spammy,
 0. spammytokens:
 hammytokens:0.000-+--Hx-spam-relays-external:sk:stravin,
 0.000-+--H*RT:sk:stravin, 0.000-+--Hx-spam-relays-external:311,
 0.000-+--H*RT:311, 0.000-+--H*RT:108
Return-path: &lt;rafael@debian.org&gt;
Received: from stravinsky.debian.org ([2001:41b8:202:deb::311:108]:39438)
 by buxtehude.debian.org with esmtps
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;rafael@debian.org&gt;) id 1wyTtb-000wiz-0P
 for submit@bugs.debian.org; Mon, 24 Aug 2026 12:35:23 +0000
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=debian.org; 
 s=smtpauto.stravinsky;
 h=X-Debian-User:Content-Transfer-Encoding:Content-Type
 :MIME-Version:Message-ID:Subject:To:From:Date:Reply-To:Cc:Content-ID:
 Content-Description:In-Reply-To:References;
 bh=AST5dEHUo+oyii7ZyKiVS2X349NLwpzy4AmqR8obS6Y=; b=DFlBXt10qYm/KJLPtCW2Cm6Apj
 674fKHfrymNKohfPhOPPxV9pVjTsZC6RUOY51znC0BlyCsLTJbNPGaTXm0ziwcGtSyTGrKDmlvt8/
 GWhW8+OgRZddvocyHqparE+Ji9QjISiS9kRkKA/6vK/lLhOC9AH7mhSTKkV8KZUqPXk1sU6Egrc4k
 rBzgnnUEYRR+ttHiHiBa5ka73wxvZ7iwR3+Dyf0P4g7+LsjE7UyZTdq/OtehHg8LIMT77RBWechd0
 U0zwZNy6xqfvn6KrNLCbcaMQBmZtLPvq0yo6ly0NElR9HQMNn0IP9eZvcK2ecRSmQoDqhoGOKrqu8
 D5vMA8NA==;
Received: from authenticated-user by stravinsky.debian.org with esmtpsa
 (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
 (Exim 4.96) (envelope-from &lt;rafael@debian.org&gt;) id 1wyTtZ-00DfKp-1q;
 Mon, 24 Aug 2026 12:35:21 +0000
Received: from rafael by laboissiere.net with local (Exim 4.100-RC3)
 (envelope-from &lt;rafael@laboissiere.net&gt;) id 1wyTtZ-0000000BrXR-09wj;
 Mon, 24 Aug 2026 14:35:21 +0200
Date: Mon, 24 Aug 2026 14:35:20 +0200
From: Rafael =?utf-8?Q?Laboissi=C3=A8re?= &lt;rafael@debian.org&gt;
To: Debian Bug Tracking System &lt;submit@bugs.debian.org&gt;
Subject: gdcm: FTBFS with swig 4.5.0
Message-ID: &lt;aow6iL_debDmwY9v@laboissiere.net&gt;
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Disposition: inline
Content-Transfer-Encoding: 8bit
Organization: Debian GNU/Linux
X-Content-Language: en
X-Position: 18
X-Debian-User: rafael
Delivered-To: submit@bugs.debian.org

Source: gdcm
Version: 3.0.24-13
Severity: serious
Tags: ftbfs sid forky
Justification: Policy 4.9
User: rafael@debian.org
Usertags: swig-4.5.0

Dear Maintainer,

The gdcm package FTBFS with swig 4.5.0, which is currently in unstable. An excerpt of the build log is shown below.

This is due to the removal of the Python 2 compatibility macros in version 4.5.0. According to the SWIG authors, these macros were retained in the generated code (pyhead.swg) solely for user typemaps. Any typemap using these macros must be updated to call the Python 3 C API directly.

Best,

Rafael Laboissière

##### Build log excerpt

[538/600] /usr/bin/x86_64-linux-gnu-g++ -Dgdcmswig_EXPORTS -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Source/Common -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/Common -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/DataStructur
eAndEncodingDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/InformationObjectDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/MediaStorageAndFileFormat -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/DataDictionary -I&lt;&lt;BUILD-DIR&gt;
&gt;/gdcm-3.0.24/Source/MessageExchangeDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Wrapping/Python -I/usr/include/python3.14 -g -O2 -ffile-prefix-map=&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24=. -fstack-protector-strong -fstack-clash-pr
otection -Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++20 -fPIC -MD -MT Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o -MF 
Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o.d -o Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o -c &lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.
24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx
FAILED: [code=1] Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o 
/usr/bin/x86_64-linux-gnu-g++ -Dgdcmswig_EXPORTS -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Source/Common -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/Common -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/DataStructureAndEncodi
ngDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/InformationObjectDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/MediaStorageAndFileFormat -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Source/DataDictionary -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0
.24/Source/MessageExchangeDefinition -I&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/Wrapping/Python -I/usr/include/python3.14 -g -O2 -ffile-prefix-map=&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24=. -fstack-protector-strong -fstack-clash-protection -
Wformat -Werror=format-security -fcf-protection -Wdate-time -D_FORTIFY_SOURCE=2 -std=gnu++20 -fPIC -MD -MT Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o -MF Wrapping/P
ython/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o.d -o Wrapping/Python/CMakeFiles/gdcmswig.dir/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx.o -c &lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86
_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx: In function ‘PyObject* _wrap_DataElement_SetByteStringValue(PyObject*, PyObject*)’:
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:23137:12: error: ‘PyString_AsString’ was not declared in this scope
23137 |     arg2 = PyString_AsString(swig_obj[1]);
      |            ^~~~~~~~~~~~~~~~~
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:23141:25: error: ‘PyString_Size’ was not declared in this scope; did you mean ‘PyMapping_Size’?
23141 |     Py_ssize_t length = PyString_Size(swig_obj[1]);
      |                         ^~~~~~~~~~~~~
      |                         PyMapping_Size
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx: In function ‘PyObject* _wrap_Bitmap_GetDimensions(PyObject*, PyObject*)’:
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:32202:21: error: ‘PyInt_FromLong’ was not declared in this scope; did you mean ‘PyLong_FromLong’?
32202 |       PyObject *o = PyInt_FromLong((long) result[i]);
      |                     ^~~~~~~~~~~~~~
      |                     PyLong_FromLong
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx: In function ‘PyObject* _wrap_CSAElement_SetByteStringValue(PyObject*, PyObject*)’:
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:37910:12: error: ‘PyString_AsString’ was not declared in this scope
37910 |     arg2 = PyString_AsString(swig_obj[1]);
      |            ^~~~~~~~~~~~~~~~~
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:37914:25: error: ‘PyString_Size’ was not declared in this scope; did you mean ‘PyMapping_Size’?
37914 |     Py_ssize_t length = PyString_Size(swig_obj[1]);
      |                         ^~~~~~~~~~~~~
      |                         PyMapping_Size
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx: In function ‘PyObject* _wrap_ImageCodec_GetDimensions(PyObject*, PyObject*)’:
&lt;&lt;BUILD-DIR&gt;&gt;/gdcm-3.0.24/obj-x86_64-linux-gnu/Wrapping/Python/CMakeFiles/gdcmswig.dir/gdcmswigPYTHON_wrap.cxx:74406:21: error: ‘PyInt_FromLong’ was not declared in this scope; did you mean ‘PyLong_FromLong’?
74406 |       PyObject *o = PyInt_FromLong((long) result[i]);
      |                     ^~~~~~~~~~~~~~
      |                     PyLong_FromLong
]