diff --git a/lalframe-swig-stringval-not-value.patch b/lalframe-swig-stringval-not-value.patch new file mode 100644 index 0000000..046f5ff --- /dev/null +++ b/lalframe-swig-stringval-not-value.patch @@ -0,0 +1,33 @@ +From 9dba245ab3692ecf691247a442704f13c075ed34 Mon Sep 17 00:00:00 2001 +From: Karl Wette +Date: Thu, 24 Oct 2024 18:06:30 +1100 +Subject: [PATCH] common/swig/generate_swig_iface.py: prefer "stringval" before + "value" attribute + +- As of SWIG 4.3.0 "value" attribute contains quote characters +- "stringval" attribute appears to still contain the raw string +--- + common/swig/generate_swig_iface.py | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/common/swig/generate_swig_iface.py b/common/swig/generate_swig_iface.py +index 530b026d5d..eaee2d41ce 100644 +--- a/common/swig/generate_swig_iface.py ++++ b/common/swig/generate_swig_iface.py +@@ -195,9 +195,11 @@ class SwigSymbols(object): + """Parse a swiglal macro + """ + cdecl_name = get_swig_attr(cdecl, 'name') +- cdecl_value = get_swig_attr(cdecl, 'value') ++ cdecl_value = get_swig_attr(cdecl, 'stringval') + if not cdecl_value: +- raise ValueError("cdecl '{}' has no value".format(cdecl_name)) ++ cdecl_value = get_swig_attr(cdecl, 'value') ++ if not cdecl_value: ++ raise ValueError("cdecl '{}' has no value".format(cdecl_name)) + macro = re.sub(r'\s', '', cdecl_value) + if cdecl_name == '__swiglal__': + if macro in clear_macros: +-- +GitLab + diff --git a/lalframe.changes b/lalframe.changes index fd5db15..a997c41 100644 --- a/lalframe.changes +++ b/lalframe.changes @@ -1,3 +1,10 @@ +------------------------------------------------------------------- +Mon Dec 2 12:08:43 UTC 2024 - Atri Bhattacharya + +- Add lalframe-swig-stringval-not-value.patch: For compatibility + with swig 4.3.0, prefer 'stringval' before 'value' attribute + (upstream commit 9dba245a). + ------------------------------------------------------------------- Mon Nov 18 12:40:11 UTC 2024 - Atri Bhattacharya diff --git a/lalframe.spec b/lalframe.spec index e857c85..c577822 100644 --- a/lalframe.spec +++ b/lalframe.spec @@ -32,6 +32,8 @@ License: GPL-2.0-or-later Group: Productivity/Scientific/Physics URL: https://wiki.ligo.org/Computing/LALSuite Source: https://software.igwn.org/sources/source/lalsuite/lalframe-%{version}.tar.xz +# PATCH-FIX-UPSTREAM +Patch0: https://git.ligo.org/lscsoft/lalsuite/-/commit/9dba245ab3692ecf691247a442704f13c075ed34.patch#/lalframe-swig-stringval-not-value.patch BuildRequires: %{python_module devel} BuildRequires: %{python_module lal >= 7.1.0} BuildRequires: %{python_module numpy >= 1.7} @@ -96,7 +98,8 @@ This package provides the necessary files for using LAL Frame with octave. %endif %prep -%autosetup -p1 +# Upstream commits are -p1 against the full lalsuite, but -p2 against individual lal* pkgs +%autosetup -p2 %build %{python_expand # Necessary to run configure with multiple py3 flavours