From eb02e03c01bbf4011c8c14f58bd32c93457bc80e5e77b79fc8ccfcf4dda02fe0 Mon Sep 17 00:00:00 2001 From: Dmitry Roshchin Date: Thu, 12 Sep 2024 06:46:16 +0000 Subject: [PATCH] Version update and numpy 2.0 compatibilty OBS-URL: https://build.opensuse.org/package/show/science/lalsimulation?expand=0&rev=28 --- .gitattributes | 23 ++++ .gitignore | 1 + lalsimulation-5.3.1.tar.xz | 3 + lalsimulation-5.4.0.tar.xz | 3 + lalsimulation-6.0.0.tar.xz | 3 + lalsimulation.changes | 222 +++++++++++++++++++++++++++++++++++++ lalsimulation.spec | 203 +++++++++++++++++++++++++++++++++ 7 files changed, 458 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 lalsimulation-5.3.1.tar.xz create mode 100644 lalsimulation-5.4.0.tar.xz create mode 100644 lalsimulation-6.0.0.tar.xz create mode 100644 lalsimulation.changes create mode 100644 lalsimulation.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/lalsimulation-5.3.1.tar.xz b/lalsimulation-5.3.1.tar.xz new file mode 100644 index 0000000..7f1a850 --- /dev/null +++ b/lalsimulation-5.3.1.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:e822fdc3fee8084086d66d62543c886c4c88677012a4b9f15021c7e8aacab1f2 +size 10420444 diff --git a/lalsimulation-5.4.0.tar.xz b/lalsimulation-5.4.0.tar.xz new file mode 100644 index 0000000..47a508b --- /dev/null +++ b/lalsimulation-5.4.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b6c1781e81134108845f38e3a66963ae661c2a915d413cf14e68995888dcc0a5 +size 10773572 diff --git a/lalsimulation-6.0.0.tar.xz b/lalsimulation-6.0.0.tar.xz new file mode 100644 index 0000000..5369946 --- /dev/null +++ b/lalsimulation-6.0.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:258a6951e71b84db80d354d37ca3be459301bb52472920a9873973607b0d2323 +size 10416196 diff --git a/lalsimulation.changes b/lalsimulation.changes new file mode 100644 index 0000000..8c19ec3 --- /dev/null +++ b/lalsimulation.changes @@ -0,0 +1,222 @@ +------------------------------------------------------------------- +Wed Sep 11 17:26:10 UTC 2024 - Atri Bhattacharya + +- Update to version 6.0.0: + * No release notes. +- Pass -Wno-error=strict-prototypes to avoid triggering a numpy + 2.0.0 issue (gh#numpy/numpy#26771). +- Update shared lib name in keeping with upstream shared object + versioning update from 32 -> 37. + +------------------------------------------------------------------- +Sat Jul 20 03:01:48 UTC 2024 - Atri Bhattacharya + +- Update to version 5.4.0: + * No release notes. + +------------------------------------------------------------------- +Mon Jan 22 07:54:56 UTC 2024 - Atri Bhattacharya + +- Update to version 5.3.1: + * No release notes. + +------------------------------------------------------------------- +Tue May 23 08:02:55 UTC 2023 - Atri Bhattacharya + +- Update to version 5.2.0: + * No release notes. +- Drop swig_4_1_compat.patch: incorporated upstream. +- Pass -Wno-error=enum-int-mismatch to CFLAGS to avoid build + failures on a trivial type redefinition issue (communicated to + upstream via email). +- Update shlib package name in keeping with upstream so version. + +------------------------------------------------------------------- +Sun Feb 12 05:53:50 UTC 2023 - Atri Bhattacharya + +- Add python-py BuildRequires to fix tests that fail due to "No + module named 'py._path'" errors. + +------------------------------------------------------------------- +Mon Nov 28 05:49:17 UTC 2022 - Atri Bhattacharya + +- Add swig_4_1_compat.patch: Ensure compatibility with swig 4.1; + patch taken from upstream. +- Make %{name}-data package noarch. + +------------------------------------------------------------------- +Fri Aug 19 12:25:25 UTC 2022 - Atri Bhattacharya + +- Update to version 4.0.0: + * No release notes. +- Update source URL. +- Change python build dir names so that the env var PYTHON can be + set to the full python exec. +- Bump so version to match upstream. + +------------------------------------------------------------------- +Mon Jan 3 00:30:32 UTC 2022 - Atri Bhattacharya + +- Update to version 3.1.0: + * No release notes. +- Drop python2 support in keeping with upstream. +- Bump so number for shlib package. +- Drop enum-conversion hack: no longer needed. + +------------------------------------------------------------------- +Fri Feb 26 22:58:18 UTC 2021 - Atri Bhattacharya + +- Update to version 2.5.1: + * No release notes. + +------------------------------------------------------------------- +Fri Feb 12 16:03:20 UTC 2021 - Ben Greiner + +- Update to 2.5.0 + * no changelog found +- Skip python36 build in TW, because python36-numpy and co. are no + more. + +------------------------------------------------------------------- +Thu Jan 21 23:56:21 UTC 2021 - Atri Bhattacharya + +- Fix testing for multi-versioned python. + +------------------------------------------------------------------- +Mon Jan 18 14:08:29 UTC 2021 - Atri Bhattacharya + +- Disable octave bindings, since octave >= 6 isn't supported. + +------------------------------------------------------------------- +Fri Oct 23 05:58:27 UTC 2020 - Atri Bhattacharya + +- Update to version 2.2.1: + * NRSur7dq4: Fix memory leak when omega0 is too low. + +------------------------------------------------------------------- +Sat Aug 15 09:32:15 UTC 2020 - Atri Bhattacharya + +- Implement tests in %check section; BuildRequires: python3-pytest + required for python tests. +- ExcludeArch 32-bit, as tests fail and upstream confirms that it + is not supported + (https://git.ligo.org/lscsoft/lalsuite/-/issues/371). + +------------------------------------------------------------------- +Tue Aug 11 13:33:01 UTC 2020 - Atri Bhattacharya + +- Update to version 2.2.0: + * No release notes. + +------------------------------------------------------------------- +Tue Jul 7 00:28:13 UTC 2020 - Atri Bhattacharya + +- Update to version 2.1.0: + * No release notes. +- Re-enable octave bindings: fixed upstream. + +------------------------------------------------------------------- +Tue Jun 30 09:56:06 UTC 2020 - Atri Bhattacharya + +- Pass "-Wno-enum-conversion" to CFLAGS to workaround build errors + because XLAL_ERROR implictly converts to different function + return types. +- Disable octave support as compilation error with current swig. + +------------------------------------------------------------------- +Fri May 29 12:05:57 UTC 2020 - Atri Bhattacharya + +- Fix Requires for python package: %{name}-data expands to + python-lalsimulation-data whereas we really need + lalsimulation-data. + +------------------------------------------------------------------- +Wed May 27 21:39:31 UTC 2020 - Atri Bhattacharya + +- Split out separate package %{name}-data which installs the data + files needed for analyses using lalsimulation; these data files + are required whether running analyses in C/C++ + (lalsimulation-devel), python (python-lalsimulation), or octave + (octave-lalsimulation). +- Fix incorrect Summary for package octave-lalsimulation. +- Drop Group tag from packages. + +------------------------------------------------------------------- +Wed Apr 22 17:57:39 UTC 2020 - Atri Bhattacharya + +- BuildRequires: python-xml only for openSUSE <= 15.2 since + python2 is disabled for newer openSUSE. + +------------------------------------------------------------------- +Fri Apr 3 23:43:51 UTC 2020 - Atri Bhattacharya + +- Update to version 2.0.0 +- Drop lalsimulation-build-octave44-with-swig3.patch: incorporated + upstream. +- Enable acceleration using openmp. +- Generate man files (BuildRequires: help2man). + +------------------------------------------------------------------- +Sun Feb 2 23:51:52 UTC 2020 - Atri Bhattacharya + +- Update to version 1.10.1 + * Add a fix to aligned-spin limit + * NRHybSur3dq8: Use XLAL_EDOM for extrapolation errors + * Fix Bh1-Bh2 swap bug in NRSur7dq4 when m1 < m2 +- Changes from version 1.10.0: + * O3b release +- Rebase lalsimulation-build-octave44-with-swig3.patch for updated + version. + +------------------------------------------------------------------- +Mon Sep 30 16:22:29 UTC 2019 - Atri Bhattacharya + +- Build packages for both python2 and python3. + +------------------------------------------------------------------- +Mon Jul 22 14:19:29 UTC 2019 - Atri Bhattacharya + +- Update to version 1.9.1: + * O3 point release +- Changes from version 1.9.0: + * O3 release. +- Update shared lib package names in keeping with upstream so + versioning. +- Rebase lalsimulation-build-octave44-with-swig3.patch to conform + to upstream's reworking for swig and octave version tests. + +------------------------------------------------------------------- +Fri Feb 8 13:32:42 UTC 2019 - badshah400@gmail.com + +- Switch builds to python2; add python-xml to BuildRequires. + +------------------------------------------------------------------- +Thu Feb 7 15:09:50 UTC 2019 - badshah400@gmail.com + +- Update Requires for %{name}-devel, octave-%{name}, and python-%{name}. + +------------------------------------------------------------------- +Sun Jan 27 21:10:07 UTC 2019 - badshah400@gmail.com + +- Fix env variable scripts: extract pkg specific env variables + and install them in %{_sysconfdir}/profile.d/ instead of using + upstream's which mess with standard env variables (PATH, etc.) + +------------------------------------------------------------------- +Sun Jan 27 20:31:25 UTC 2019 - badshah400@gmail.com + +- Add lalsimulation-build-octave44-with-swig3.patch: allow + building octave bindings with swig 3.0.x rather than requiring + swig 4.x. +- Enable octave binding and include in new subpackage + octave-%{name}. + +------------------------------------------------------------------- +Sat Jan 26 21:23:10 UTC 2019 - badshah400@gmail.com + +- Update to version 1.8.1 + +------------------------------------------------------------------- +Wed Nov 28 18:03:47 UTC 2018 - badshah400@gmail.com + +- Initial Package. diff --git a/lalsimulation.spec b/lalsimulation.spec new file mode 100644 index 0000000..65b34e6 --- /dev/null +++ b/lalsimulation.spec @@ -0,0 +1,203 @@ +# +# spec file for package lalsimulation +# +# Copyright (c) 2024 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +# NEP 29: python36-numpy and co. in TW are no more +%define skip_python36 1 +# Py2 support dropped upstream +%define skip_python2 1 + +%define shlib liblalsimulation37 +# octave >= 6 not supported +%bcond_with octave +Name: lalsimulation +Version: 6.0.0 +Release: 0 +Summary: LSC Algorithm Simulation Library +License: GPL-2.0-only +URL: https://wiki.ligo.org/Computing/DASWG/LALSuite +Source: https://software.igwn.org/sources/source/lalsuite/%{name}-%{version}.tar.xz +BuildRequires: %{python_module devel} +BuildRequires: %{python_module lal >= 7.2.0} +BuildRequires: %{python_module numpy >= 1.7} +BuildRequires: %{python_module numpy-devel >= 1.7} +# python-py - remove with next update -- https://git.ligo.org/lscsoft/lalsuite/-/merge_requests/2033 +BuildRequires: %{python_module py} +BuildRequires: fdupes +BuildRequires: help2man +BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +%if 0%{?suse_version} < 1550 +BuildRequires: python-xml +%endif +BuildRequires: swig >= 3.0.10 +BuildRequires: pkgconfig(gsl) +BuildRequires: pkgconfig(lal) >= 7.2.0 +BuildRequires: pkgconfig(zlib) +%if %{with octave} +BuildRequires: octave-lal >= 7.2.0 +BuildRequires: pkgconfig(octave) +%endif +# SECTION For tests +BuildRequires: %{python_module pytest} +# /SECTION +Requires: python-lal >= 7.2.0 +Requires: python-numpy >= 1.7 +# FOR PYTHON PACKAGE +Requires: lalsimulation-data = %{version} +ExcludeArch: %{ix86} + +%python_subpackages + +%description +The LSC Algorithm Simulation Library for gravitational wave data analysis. This +package contains the shared-object libraries needed to run applications +that use the LAL Simulation library. + +%package -n %{shlib} +Summary: Shared library for LALSimulation + +%description -n %{shlib} +This package provides the shared library for LALSimulation. + +%package -n %{name}-devel +Summary: Headers and source files for building against LALSimulation +Requires: %{name}-data = %{version} +Requires: %{shlib} = %{version} +Requires: pkgconfig(gsl) +Requires: pkgconfig(lal) >= 7.2.0 +Requires: pkgconfig(zlib) + +%description -n %{name}-devel +This package provides the header and sources for coding against LALSimulation. + +%package -n %{name}-data +Summary: Data files required for analyses using lalsimulation +BuildArch: noarch + +%description -n %{name}-data +This package provides the data files used when running analyses involving +lalsimulation. + +%package -n octave-lalsimulation +Summary: Octave bindings for LALSimulation +Requires: %{name}-data = %{version} +Requires: octave-lal +%requires_eq octave-cli + +%description -n octave-lalsimulation +This package provides the necessary files for using LALSimulation with octave. + +%prep +%autosetup -p2 + +%build +%{python_expand # Necessary to run configure with multiple py3 flavors +export PYTHON=%{_bindir}/$python +mkdir ../$python +cp -pr ./ ../$python +pushd ../$python +# strict-prototypes: https://github.com/numpy/numpy/pull/26771 (remove for numpy >= 2.0.1) +export CFLAGS="%{optflags} -Wno-error=enum-int-mismatch -Wno-error=strict-prototypes" +export CXXFLAGS=$CFLAGS +%configure \ + %{?with_octave:--enable-swig-octave} \ + %{!?with_octave:--disable-swig-octave} +%make_build +popd +} + +%install +%{python_expand # py2 and py3 make_install +export PYTHON=%{_bindir}/$python +pushd ../$python +%make_install +popd +} + +# SECTION EXPORT LAL SPECIFIC ENV VARIABLES +# We do not use upstream's env files because they also set more generic +# variables (e.g. PATH) which may ruin setups + +# NUKE UPSTREAM ENV SCRIPTS +rm %{buildroot}%{_sysconfdir}/%{name}-user-env.* + +cat << EOF >> %{name}.sh +export LALSIMULATION_PREFIX=%{_prefix} +export LALSIMULATION_DATADIR=%{_datadir}/%{name} +EOF + +cat << EOF >> %{name}.csh +setenv LALSIMULATION_PREFIX "%{_prefix}" +setenv LALSIMULATION_DATADIR "%{_datadir}/%{name}" +EOF + +cat << EOF >> %{name}.fish +set LALSIMULATION_PREFIX (echo "%{_prefix}" | %{_bindir}/sed -e 's| |:|g;') +set LALSIMULATION_DATADIR (echo "%{_datadir}/%{name}" | %{_bindir}/sed -e 's| |:|g;') +EOF + +install -D -m0644 %{name}.sh %{buildroot}%{_sysconfdir}/profile.d/%{name}.sh +install -D -m0644 %{name}.csh %{buildroot}%{_sysconfdir}/profile.d/%{name}.csh +install -D -m0644 %{name}.fish %{buildroot}%{_sysconfdir}/profile.d/%{name}.fish + +# /SECTION + +find %{buildroot} -name "*.a" -delete -print +find %{buildroot} -type f -name "*.la" -delete -print + +%fdupes %{buildroot}%{_datadir}/%{name} +%python_expand %fdupes %{buildroot}%{$python_sitearch}/%{name}/ + +%check +%{python_expand export PYTHON=%{_bindir}/$python +pushd ../$python +%make_build check +popd +} + +%post -n %{shlib} -p /sbin/ldconfig +%postun -n %{shlib} -p /sbin/ldconfig + +%files -n %{shlib} +%{_libdir}/*.so.* + +%files -n %{name}-devel +%license COPYING +%doc AUTHORS README.md +%config %{_sysconfdir}/profile.d/%{name}.* +%{_bindir}/* +%{_libdir}/*.so +%{_includedir}/lal/ +%{_libdir}/pkgconfig/* +%{_mandir}/man1/*.1%{?ext_man} + +%files -n %{name}-data +%{_datadir}/%{name}/ + +%files %{python_files} +%{python_sitearch}/lalsimulation/ + +%if %{with octave} +%files -n octave-%{name} +%dir %{_libdir}/octave/*/site +%dir %{_libdir}/octave/*/site/oct +%dir %{_libdir}/octave/*/site/oct/* +%{_libdir}/octave/*/site/oct/*/*.oct +%endif + +%changelog