gnu: swig: Fix build with GCC-12.

* gnu/packages/patches/swig-support-gcc-12.patch: New file.
* gnu/local.mk: Add it.
* gnu/packages/swig.scm (swig)[source]: Add patch.

Signed-off-by: Marius Bakke <marius@gnu.org>
This commit is contained in:
Greg Hogan 2022-07-28 20:25:27 +00:00 committed by Marius Bakke
parent 6f8083e6ec
commit 35db5d5ca4
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
3 changed files with 20 additions and 1 deletions

View file

@ -1819,6 +1819,7 @@ dist_patch_DATA = \
%D%/packages/patches/superlu-dist-awpm-grid.patch \
%D%/packages/patches/superlu-dist-scotchmetis.patch \
%D%/packages/patches/supertux-unbundle-squirrel.patch \
%D%/packages/patches/swig-support-gcc-12.patch \
%D%/packages/patches/swish-e-search.patch \
%D%/packages/patches/swish-e-format-security.patch \
%D%/packages/patches/symmetrica-bruch.patch \

View file

@ -0,0 +1,16 @@
Fix for https://github.com/swig/swig/issues/2145 made in unreleased upstream commit
https://github.com/swig/swig/commit/76d5a9ec270a763c892ae28070e391cf99e0b7cd
diff --git a/Examples/test-suite/nested_class.i b/Examples/test-suite/nested_class.i
index b10c339493e..c778a12cf7c 100644
--- a/Examples/test-suite/nested_class.i
+++ b/Examples/test-suite/nested_class.i
@@ -201,7 +201,7 @@ struct Outer {
Integer xx;
} MultipleInstanceAnonDerived1, MultipleInstanceAnonDerived2, *MultipleInstanceAnonDerived3, MultipleInstanceAnonDerived4[2];
-#if defined(__GNUC__) || defined(_MSC_VER) || defined(SWIG)
+#if (defined(__GNUC__) && __GNUC__ < 12) || defined(_MSC_VER) || defined(SWIG)
/* some compilers do not accept these */
struct : public InnerMultiple {
Integer xx;

View file

@ -43,7 +43,9 @@ (define-public swig
name "-" version ".tar.gz"))
(sha256
(base32
"1z06m5zv87mha6hvys1iay810ghc1jngilfby1ms2n4d1mryjfym"))))
"1z06m5zv87mha6hvys1iay810ghc1jngilfby1ms2n4d1mryjfym"))
;; Remove with next release.
(patches (search-patches "swig-support-gcc-12.patch"))))
(build-system gnu-build-system)
(native-inputs (list boost
`(,pcre "bin") ;for 'pcre-config'