From 0da51a91d53a899e6e8e5a91fbe4049393e22f3e7151584a66b320462caa626d Mon Sep 17 00:00:00 2001 From: Atri Bhattacharya Date: Sun, 3 May 2020 12:11:10 +0000 Subject: [PATCH] Accepting request 796658 from home:badshah400:GW [New package] lal: A collection of various gravitational wave data analysis routines Depends on sr#796602. Part of a series of sr for gravitaional wave analysis packages. OBS-URL: https://build.opensuse.org/request/show/796658 OBS-URL: https://build.opensuse.org/package/show/science/lal?expand=0&rev=1 --- .gitattributes | 23 +++++++ .gitignore | 1 + _constraints | 8 +++ lal-6.22.0.tar.xz | 3 + lal.changes | 104 ++++++++++++++++++++++++++++++ lal.spec | 159 ++++++++++++++++++++++++++++++++++++++++++++++ 6 files changed, 298 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 _constraints create mode 100644 lal-6.22.0.tar.xz create mode 100644 lal.changes create mode 100644 lal.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/_constraints b/_constraints new file mode 100644 index 0000000..a2b6e52 --- /dev/null +++ b/_constraints @@ -0,0 +1,8 @@ + + + + 4 + + + + diff --git a/lal-6.22.0.tar.xz b/lal-6.22.0.tar.xz new file mode 100644 index 0000000..8f6c2ac --- /dev/null +++ b/lal-6.22.0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2dddf32cb84a5124381f114ee35f017538e6748827fd7c3eab8f69cc685f5b12 +size 1687992 diff --git a/lal.changes b/lal.changes new file mode 100644 index 0000000..b45b64a --- /dev/null +++ b/lal.changes @@ -0,0 +1,104 @@ +------------------------------------------------------------------- +Thu Apr 23 13:33:00 UTC 2020 - Atri Bhattacharya + +- Add Requires: python-numpy, python-lscsoft-glue required by the + python module. + +------------------------------------------------------------------- +Fri Apr 3 01:15:58 UTC 2020 - Atri Bhattacharya + +- Update to version 6.22.0. +- Drop lal-build-octave44-with-swig3.patch: Incorporated upstream; + drop BuildRequires: libtool and don't run autoreconf before + configure required due to this patch. + +------------------------------------------------------------------- +Sun Feb 2 22:59:09 UTC 2020 - Atri Bhattacharya + +- Update to version 6.21.0: + * O3b release +- Rebase lal-build-octave44-with-swig3.patch to conform to + upstream's reworking for swig and octave version tests. + +------------------------------------------------------------------- +Mon Sep 30 15:11:36 UTC 2019 - Atri Bhattacharya + +- Build both python2 and python3 flavours. + +------------------------------------------------------------------- +Mon Jul 22 12:25:58 UTC 2019 - Atri Bhattacharya + +- Update to version 6.20.2 + * MKL FFT fixes +- Changes from version 6.20.1: + * O3 point release. +- Changes from version 6.20.0: + * O3 release. +- Update shared lib package names in keeping with upstream so + versioning. +- Rebase lal-build-octave44-with-swig3.patch to conform to + upstream's reworking for swig and octave version tests. + +------------------------------------------------------------------- +Fri Feb 8 13:32:33 UTC 2019 - badshah400@gmail.com + +- Switch builds to python2. + +------------------------------------------------------------------- +Thu Feb 7 14:28:59 UTC 2019 - badshah400@gmail.com + +- Add fftw3 and gsl to -devel package's Requires. +- Drop -devel pkg requirement for octave-lal. + +------------------------------------------------------------------- +Sun Jan 27 15:00:41 UTC 2019 - badshah400@gmail.com + +- Add zlib-devel Requires for -devel pkg: required for compiling + code that makes use of lalsupport. + +------------------------------------------------------------------- +Sat Jan 26 21:27:42 UTC 2019 - badshah400@gmail.com + +- Update to version 6.19.1. + +------------------------------------------------------------------- +Sat Jan 26 20:27:31 UTC 2019 - badshah400@gmail.com + +- Add _constraints file to ensure enough memory during building. + +------------------------------------------------------------------- +Fri Jan 25 16:46:55 UTC 2019 - badshah400@gmail.com + +- Add lal-build-octave44-with-swig3.patch: allow building octave + bindings with swig 3.0.x rather than requiring swig 4.x. + +------------------------------------------------------------------- +Wed Nov 28 17:20:43 UTC 2018 - badshah400@gmail.com + +- Update to version 6.19.0. +- Drop patches incorporated upstream: + * lal-int-in-boolean-context.patch + * lal-implicit-fallthrough.patch + * lal-format-truncate.patch +- New BuildRequires: python-numpy-devel +- Update lalsupport shlib version: 11 -> 12. +- Exclusively build on x86_64 arch; other archs not supported. +- Update URL: upstream URL changed. + +------------------------------------------------------------------- +Fri Jun 15 11:22:10 UTC 2018 - badshah400@gmail.com + +- Add patches from upstream to fix compilation against gcc >= 7.1: + * lal-int-in-boolean-context.patch: Avoid '*' in boolean + expressions to avoid int-in-boolean-context warnings from gcc. + * lal-implicit-fallthrough.patch: Avoid implict-fallthrough + warnings when compiling against GCC >= 7. + * lal-format-truncate.patch: GCC >= 7 does not allow snprintf() + return values to go unchecked when it believes there is a risk + of the result being truncated; update patch to include + additional fix. + +------------------------------------------------------------------- +Fri Jun 15 11:22:07 UTC 2018 - badshah400@gmail.com + +- Initial package. diff --git a/lal.spec b/lal.spec new file mode 100644 index 0000000..2f9a581 --- /dev/null +++ b/lal.spec @@ -0,0 +1,159 @@ +# +# spec file for package lal +# +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. +# +# 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/ +# + +%define shliblal liblal18 +%define shliblalsupport liblalsupport14 +Name: lal +Version: 6.22.0 +Release: 0 +Summary: A collection of various gravitational wave data analysis routines +License: GPL-2.0-only +Group: Productivity/Scientific/Physics +URL: https://wiki.ligo.org/Computing/DASWG/LALSuite +Source: http://software.ligo.org/lscsoft/source/lalsuite/lal-%{version}.tar.xz +BuildRequires: %{python_module devel} +BuildRequires: %{python_module lscsoft-glue} +BuildRequires: %{python_module numpy-devel} +BuildRequires: %{python_module numpy} +BuildRequires: %{python_module six} +BuildRequires: %{python_module xml} +BuildRequires: bc +BuildRequires: fdupes +BuildRequires: hdf5-devel +BuildRequires: octave-devel +BuildRequires: pkgconfig +BuildRequires: python-rpm-macros +BuildRequires: swig +BuildRequires: pkgconfig(fftw3) +BuildRequires: pkgconfig(gsl) +BuildRequires: pkgconfig(zlib) +Requires: python-lscsoft-glue +Requires: python-numpy +ExclusiveArch: x86_64 + +%description +The LSC Algorithm Library Suite (LALSuite) is comprised of various gravitational wave data analysis routines written in C following the ISO/IEC 9899:1999 standard. + +%package -n %{shliblal} +Summary: Shared library for LAL +Group: System/Libraries + +%description -n %{shliblal} +The LSC Algorithm Library Suite (LALSuite) is comprised of various gravitational wave data analysis routines written in C following the ISO/IEC 9899:1999 standard. + +This package provides the shared library for lal. + +%package -n %{shliblalsupport} +Summary: Shared library for LALSupport +Group: System/Libraries + +%description -n %{shliblalsupport} +The LSC Algorithm Library Suite (LALSuite) is comprised of various gravitational wave data analysis routines written in C following the ISO/IEC 9899:1999 standard. + +This package provides the shared library for lalsupport. + +%package -n %{name}-devel +Summary: Headers and source files for building against lal +Group: Productivity/Scientific/Physics +Requires: %{shliblalsupport} = %{version} +Requires: %{shliblal} = %{version} +Requires: pkgconfig(zlib) +Requires: pkgconfig(fftw3) +Requires: pkgconfig(gsl) + +%description -n %{name}-devel +The LSC Algorithm Library Suite (LALSuite) is comprised of various gravitational wave data analysis routines written in C following the ISO/IEC 9899:1999 standard. + +This package provides the header files and sources need for building software against lal. + +%package -n octave-lal +Summary: Octave module for lal +Group: Productivity/Scientific/Physics +%requires_eq octave-cli + +%description -n octave-lal +The LSC Algorithm Library Suite (LALSuite) is comprised of various gravitational wave data analysis routines written in C following the ISO/IEC 9899:1999 standard. + +This package provides the octave module for lal. + +%python_subpackages + +%prep +%autosetup -p1 + +%build +%{python_expand # Necessary to run %%configure with both py2 and py3 +export PYTHON=$python +mkdir ../${PYTHON}_build +cp -pr ./ ../${PYTHON}_build +pushd ../${PYTHON}_build +%configure --enable-swig +make %{?_smp_mflags} +popd +} + +%install +%{python_expand # py2 and py3 make_install +export PYTHON=$python +pushd ../${PYTHON}_build +%make_install +popd +} + +rm %{buildroot}%{_sysconfdir}/* + +find %{buildroot} -type f -name "*.la" -delete -print +find %{buildroot}%{_libdir} -name "*.a" -delete -print + +%python_expand %fdupes %{buildroot}%{$python_sitearch}/ + +%{python_expand # FIX env HASHBANGS +sed -Ei "1{/^#!\/usr\/bin\/env python/d}" %{buildroot}%{$python_sitearch}/lal/gpstime.py +sed -Ei "1{/^#!\/usr\/bin\/env python/d}" %{buildroot}%{$python_sitearch}/lal/series.py +sed -Ei "1{/^#!\/usr\/bin\/env python/d}" %{buildroot}%{$python_sitearch}/lal/antenna.py +} + +%post -n %{shliblal} -p /sbin/ldconfig +%post -n %{shliblalsupport} -p /sbin/ldconfig +%postun -n %{shliblal} -p /sbin/ldconfig +%postun -n %{shliblalsupport} -p /sbin/ldconfig + +%files %{python_files} +%{python_sitearch}/* + +%files -n %{shliblal} +%{_libdir}/liblal.so.* + +%files -n %{shliblalsupport} +%{_libdir}/liblalsupport.so.* + +%files -n %{name}-devel +%doc AUTHORS README.md +%license COPYING +%{_bindir}/* +%{_includedir}/lal/ +%{_libdir}/liblal.so +%{_libdir}/liblalsupport.so +%{_libdir}/pkgconfig/*.pc + +%files -n octave-lal +%dir %{_libdir}/octave/*/site +%dir %{_libdir}/octave/*/site/oct +%dir %{_libdir}/octave/*/site/oct/* +%{_libdir}/octave/*/site/oct/*/*.oct + +%changelog