Package: subversion
Followup-For: Bug #1023529
X-Debbugs-Cc: m...@debian.org, 1023529-submit...@bugs.debian.org

Hi,

I built a version of the package with the mentioned patch (debdiff attached), it
built correctly and passed all tests.

This was in riscv64, where the problem was detected, but I expect that it would
apply to all arches.

Hope that helps.

--
Manuel A. Fernandez Montecelo <m...@debian.org>
diff -Nru subversion-1.14.2/debian/changelog subversion-1.14.2/debian/changelog
--- subversion-1.14.2/debian/changelog  2022-07-12 16:03:54.000000000 +0200
+++ subversion-1.14.2/debian/changelog  2022-11-08 10:57:37.000000000 +0100
@@ -1,3 +1,10 @@
+subversion (1.14.2-3.1) UNRELEASED; urgency=medium
+
+  * Non-maintainer upload.
+  * Patch to fix "FTBFS: segfault in Python tests with SWIG 4.1.0" (Closes: 
#1023529)
+
+ -- Manuel A. Fernandez Montecelo <m...@debian.org>  Tue, 08 Nov 2022 09:57:37 
+0000
+
 subversion (1.14.2-3) unstable; urgency=medium
 
   * Re-enable the ability to store plaintext passwords (Closes: #995692)
diff -Nru 
subversion-1.14.2/debian/patches/8ff4cfd06ce554e9df31a088c9d09f45278c6de4.patch 
subversion-1.14.2/debian/patches/8ff4cfd06ce554e9df31a088c9d09f45278c6de4.patch
--- 
subversion-1.14.2/debian/patches/8ff4cfd06ce554e9df31a088c9d09f45278c6de4.patch 
    1970-01-01 01:00:00.000000000 +0100
+++ 
subversion-1.14.2/debian/patches/8ff4cfd06ce554e9df31a088c9d09f45278c6de4.patch 
    2022-11-08 10:57:37.000000000 +0100
@@ -0,0 +1,61 @@
+From 8ff4cfd06ce554e9df31a088c9d09f45278c6de4 Mon Sep 17 00:00:00 2001
+From: Yasuhito Futatsuki <futat...@apache.org>
+Date: Tue, 20 Sep 2022 12:57:06 +0000
+Subject: [PATCH] swig-py: Fix conditionals by SWIG version and by Python
+ version for proxy code.
+
+We are using different code for proxy object, by Python version and by SWIG
+version.  The distinguish between Python 2 and Python 3 was done by SWIG
+macro "SWIGPYTHON_PY3".  However, the macro was dropped since SWIG commit
+a343b7e[1], between SWIG 4.0.2 release and upcoming SWIG 4.1.0 release.
+
+As we already dropped support for the combination of SWIG >= 4.0 and Python 2,
+we should detect Python 2 only in SWIG < 4.0 case. So we can rely on the macro
+only in the case.
+
+* subversion/bindings/swig/include/proxy.swg ():
+  Reorder the conditionals distinguish SWIG versions and Python versions,
+  as described above.
+
+Found by: Jitka Plesnikova (jplesnik {_AT_} redhat.com)
+
+Suggested by: Julien Schueller (schueller {_AT_} phimeca.com) [2]
+
+[1] 
https://github.com/swig/swig/commit/a343b7e254567a64761bc1be7dc55b7b7424ec52
+[2] https://github.com/swig/swig/issues/2373#issuecomment-1250997124
+
+
+git-svn-id: https://svn.apache.org/repos/asf/subversion/trunk@1904167 
13f79535-47bb-0310-9956-ffa450edef68
+---
+ subversion/bindings/swig/include/proxy.swg | 4 +---
+ 1 file changed, 1 insertion(+), 3 deletions(-)
+
+Index: subversion-1.14.2/subversion/bindings/swig/include/proxy.swg
+===================================================================
+--- subversion-1.14.2.orig/subversion/bindings/swig/include/proxy.swg
++++ subversion-1.14.2/subversion/bindings/swig/include/proxy.swg
+@@ -66,7 +66,6 @@
+         fn()
+ 
+ %}
+-#if defined(SWIGPYTHON_PY3)
+ #if SWIG_VERSION >= 0x040000
+ %pythoncode %{
+   # -classic and -modern options have been dropped and this variable
+@@ -76,7 +75,7 @@
+   _set_instance_attr = 
_swig_setattr_nondynamic_instance_variable(object.__setattr__)
+ 
+ %}
+-#else
++#elif defined(SWIGPYTHON_PY3)
+ %pythoncode %{
+   # SWIG classes generated with -modern do not define this variable
+   try:
+@@ -90,7 +89,6 @@
+   _set_instance_attr = _swig_setattr_nondynamic_method(object.__setattr__)
+ 
+ %}
+-#endif
+ #else
+ %pythoncode %{
+   # SWIG classes generated with -classic do not define this variable,
diff -Nru subversion-1.14.2/debian/patches/series 
subversion-1.14.2/debian/patches/series
--- subversion-1.14.2/debian/patches/series     2022-07-12 16:03:54.000000000 
+0200
+++ subversion-1.14.2/debian/patches/series     2022-11-08 10:57:37.000000000 
+0100
@@ -10,3 +10,4 @@
 examples-compile-instructions
 workaround_EINVAL_on_kfreebsd
 use-python3-as-the-interpreter-now-for-tests-not-python.patch
+8ff4cfd06ce554e9df31a088c9d09f45278c6de4.patch

Reply via email to