lal.spec.in 3.9 KB
Newer Older
1
%define nightly @NIGHTLY_VERSION@%{nil}
2
%define _prefix /usr
3 4
%define _mandir %{_prefix}/share/man
%define _sysconfdir %{_prefix}/etc
Adam Mercer's avatar
Adam Mercer committed
5
%define release 1
6

7 8 9 10
%if "%{?nightly:%{nightly}}%{!?nightly:0}" == "%{nil}"
%undefine nightly
%endif

jolien's avatar
jolien committed
11
Name: @PACKAGE@
Adam Mercer's avatar
Adam Mercer committed
12 13
Version: @BASE_VERSION@
Release: %{?nightly:0.%{nightly}}%{!?nightly:%{release}}%{?dist}
jolien's avatar
jolien committed
14
Summary: LSC Algorithm Library
Adam Mercer's avatar
Adam Mercer committed
15
License: GPLv2+
jolien's avatar
jolien committed
16
Group: LAL
Adam Mercer's avatar
Adam Mercer committed
17
Source: %{name}-%{version}%{?nightly:-%{nightly}}.tar.xz
18
URL: https://wiki.ligo.org/Computing/DASWG/LALSuite
Adam Mercer's avatar
Adam Mercer committed
19
Packager: Adam Mercer <adam.mercer@ligo.org>
20
BuildRequires: python2-rpm-macros
21
BuildRequires: bc
Adam Mercer's avatar
Adam Mercer committed
22
BuildRequires: fftw-devel
23
BuildRequires: python2-ligo-segments
24
BuildRequires: glue >= @MIN_GLUE_VERSION@
25
BuildRequires: gsl-devel
26
BuildRequires: hdf5-devel
Adam Mercer's avatar
Adam Mercer committed
27
BuildRequires: less
28
BuildRequires: python-dateutil
Adam Mercer's avatar
Adam Mercer committed
29
BuildRequires: numpy
Duncan Macleod's avatar
Duncan Macleod committed
30
BuildRequires: scipy
31
BuildRequires: octave-devel
32
BuildRequires: python
33
BuildRequires: python-devel
34
BuildRequires: python-six
35
BuildRequires: swig >= 3.0.7
Adam Mercer's avatar
Adam Mercer committed
36
Requires: fftw
37
Requires: gsl
38
Requires: hdf5
Adam Mercer's avatar
Adam Mercer committed
39
Requires: less
40 41
Obsoletes: python-pylal < 0.13.2-1
Provides: python-pylal = 0.13.2-1
jolien's avatar
jolien committed
42 43 44 45 46 47 48 49 50 51 52
Prefix: %{_prefix}

%description
The LSC Algorithm Library for gravitational wave data analysis.
This package contains the shared-object libraries needed to run applications
that use the LAL library.

%package devel
Summary: Files and documentation needed for compiling programs that use LAL
Group: LAL
Requires: %{name} = %{version}
Adam Mercer's avatar
Adam Mercer committed
53
Requires: fftw-devel
54
Requires: gsl-devel
55
Requires: hdf5-devel
jolien's avatar
jolien committed
56 57 58 59 60
%description devel
The LSC Algorithm Library for gravitational wave data analysis.
This package contains files needed build applications that use the LAL library
as well as the documentation for the library.

61 62
%package -n python2-%{name}
Summary: Python %{python2_version} bindings for LAL
63 64
Group: LAL
Requires: %{name} = %{version}
65
Requires: python
66
Requires: python-dateutil
67
Requires: numpy
Duncan Macleod's avatar
Duncan Macleod committed
68
Requires: scipy
69
Requires: python-six
70 71
Requires: python2-ligo-segments
Requires: glue >= @MIN_GLUE_VERSION@
72 73
Obsoletes: %{name}-python
Provides: %{name}-python
74
%description -n python2-%{name}
75
The LSC Algorithm Library for gravitational wave data analysis.
76
This package provides the Python %{python2_version} bindings.
77 78 79 80 81 82 83 84 85 86

%package octave
Summary: Octave bindings for LAL
Group: LAL
Requires: %{name} = %{version}
Requires: octave
%description octave
The LSC Algorithm Library for gravitational wave data analysis.
This package provides the Octave bindings.

jolien's avatar
jolien committed
87
%prep
Adam Mercer's avatar
Adam Mercer committed
88
%setup -q -n %{name}-%{version}%{?nightly:-%{nightly}}
jolien's avatar
jolien committed
89 90

%build
91
%configure --disable-gcc-flags --enable-swig
Adam Mercer's avatar
Adam Mercer committed
92
%{__make} %{?_smp_mflags} V=1
jolien's avatar
jolien committed
93

Adam Mercer's avatar
Adam Mercer committed
94
%check
95
%{__make} %{?_smp_mflags} V=1 VERBOSE=1 check
Adam Mercer's avatar
Adam Mercer committed
96

jolien's avatar
jolien committed
97
%install
Fan Zhang's avatar
Fan Zhang committed
98
%make_install
Adam Mercer's avatar
Adam Mercer committed
99
find $RPM_BUILD_ROOT%{_libdir} -name '*.la' -delete
jolien's avatar
jolien committed
100 101 102 103 104 105 106 107 108

%post
ldconfig

%postun
ldconfig

%clean
[ ${RPM_BUILD_ROOT} != "/" ] && rm -Rf ${RPM_BUILD_ROOT}
Adam Mercer's avatar
Adam Mercer committed
109
rm -Rf ${RPM_BUILD_DIR}/%{name}-%{version}%{?nightly:-%{nightly}}
jolien's avatar
jolien committed
110 111 112

%files
%defattr(-,root,root)
113
%license COPYING
114 115
%{_bindir}/lal_simd_detect
%{_bindir}/lal_version
116
%{_libdir}/*.so.*
117
%{_sysconfdir}/lal-user-env.*
jolien's avatar
jolien committed
118 119 120

%files devel
%defattr(-,root,root)
121
%license COPYING
Adam Mercer's avatar
Adam Mercer committed
122
%{_includedir}/lal
Adam Mercer's avatar
Adam Mercer committed
123
%{_libdir}/*.a
124
%{_libdir}/*.so
jolien's avatar
jolien committed
125
%{_libdir}/pkgconfig/*
126

127
%files -n python2-%{name}
128
%defattr(-,root,root)
129
%license COPYING
130
%{python2_sitearch}/*
131 132 133

%files octave
%defattr(-,root,root)
134
%license COPYING
135
%{_prefix}/lib*/octave/*/site/oct/*/lal.oct*
136 137 138

# dates should be formatted using: 'date +"%a %b %d %Y"'
%changelog
139 140 141
* Mon Feb 25 2019 Adam Mercer <adam.mercer@ligo.org> 6.19.2-1
- ER13 release

Adam Mercer's avatar
Adam Mercer committed
142 143 144
* Mon Jan 07 2019 Adam Mercer <adam.mercer@ligo.org> 6.19.1-1
- Intel FFT complilation fixes

Adam Mercer's avatar
Adam Mercer committed
145 146 147
* Thu Sep 13 2018 Adam Mercer <adam.mercer@ligo.org> 6.19.0-1
- Pre O3 release

148 149 150
* Tue Feb 07 2017 Adam Mercer <adam.mercer@ligo.org> 6.18.0-1
- O2 release

151 152 153
* Mon Sep 26 2016 Adam Mercer <adam.mercer@lgio.org> 6.17.0-1
- ER10 Release

154 155 156
* Tue Jun 21 2016 Adam Mercer <adam.mercer@ligo.org> 6.16.1-1
- ER9 Release

157 158
* Fri Mar 25 2016 Adam Mercer <adam.mercer@ligo.org> 6.16.0-1
- Pre O2 packaging test release