This repository was archived by the owner on Feb 23, 2026. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathisa-l.spec
More file actions
158 lines (128 loc) · 4.23 KB
/
isa-l.spec
File metadata and controls
158 lines (128 loc) · 4.23 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
# doesn't seem to work on sles 12.3: #{!?make_build:#define make_build #{__make} #{?_smp_mflags}}
# so...
%if 0%{?suse_version} <= 1320
%define make_build %{__make} %{?_smp_mflags}
%endif
%if 0%{?suse_version} >= 1315
%define isal_libname libisal2
%define isal_devname libisal-devel
%else
%define isal_libname libisa-l
%define isal_devname libisa-l-devel
%endif
%global _hardened_build 1
Name: isa-l
Version: 2.30.0
Release: 2%{?dist}
Summary: Intelligent Storage Acceleration Library
%if 0%{?suse_version} >= 1315
Group: Development/Libraries/C and C++
%else
Group: Development/Libraries
%endif
License: BSD-3-Clause
URL: https://github.com/01org/isa-l/wiki
Source0: https://github.com/01org/%{name}/archive/v%{version}.tar.gz
BuildRequires: yasm
# to be able to generate configure if not present
BuildRequires: autoconf, automake, libtool
%description
This package contains the libisal.so dynamic library which contains
a collection of optimized low-level functions targeting storage
applications.
%package -n %{isal_libname}
Summary: Dynamic library for isa-l functions
License: BSD-3-Clause
Obsoletes: %{name} < %{version}
%description -n %{isal_libname}
This package contains the libisal.so dynamic library which contains
a collection of optimized low-level functions targeting storage
applications. ISA-L includes:
- Erasure codes - Fast block Reed-Solomon type erasure codes for any
encode/decode matrix in GF(2^8).
- CRC - Fast implementations of cyclic redundancy check. Six different
polynomials supported.
- iscsi32, ieee32, t10dif, ecma64, iso64, jones64.
- Raid - calculate and operate on XOR and P+Q parity found in common
RAID implementations.
- Compression - Fast deflate-compatible data compression.
- De-compression - Fast inflate-compatible data compression.
%package -n %{isal_devname}
Summary: ISA-L devel package
Requires: %{isal_libname}%{?_isa} = %{version}
Provides: %{isal_libname}-static%{?_isa} = %{version}
%description -n %{isal_devname}
Development files for the %{isal_libname} library.
%if (0%{?suse_version} > 0)
%global __debug_package 1
%global _debuginfo_subpackages 0
%debug_package
%endif
%prep
%autosetup -p1
%build
%if (0%{?suse_version} > 0)
export CFLAGS="%{optflags} -fPIC -pie"
export CXXFLAGS="%{optflags} -fPIC -pie"
# this results in compiler errors, so we are unable to produce PIEs on Leap15
#export LDFLAGS="$LDFLAGS -pie"
%else
export CFLAGS="${CFLAGS:-%optflags}"
export CXXFLAGS="${CXXFLAGS:-%optflags}"
export FFLAGS="${FFLAGS:-%optflags}"
%if "%{?build_ldflags}" != ""
export LDFLAGS="${LDFLAGS:-%{build_ldflags}}"
%endif
%endif
if [ ! -f configure ]; then
./autogen.sh --no-oshmem
fi
%configure --disable-static
%{make_build}
%install
%make_install
find %{?buildroot} -name *.la -print0 | xargs -r0 rm -f
%if 0%{?suse_version} >= 01315
%post -n %{isal_libname} -p /sbin/ldconfig
%postun -n %{isal_libname} -p /sbin/ldconfig
%else
%post -p /sbin/ldconfig
%postun -p /sbin/ldconfig
%endif
%files
%license LICENSE
%{_bindir}/*
%{_mandir}/man1/*
%doc
%files -n %{isal_libname}
%license LICENSE
%{_libdir}/*.so.*
%files -n %{isal_devname}
%license LICENSE
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/libisal.pc
%changelog
* Fri May 19 2023 Brian J. Murrell <brian.murrell@intel> - 2.30.0-2
- Disable static library build
- Add debuginfo generation for Leap 15
- Add hardened build flags for CentOS 7 and Leap 15
* Thu Jan 28 2021 Brian J. Murrell <brian.murrell@intel> - 2.30.0-1
- Update to latest
- Add %%{_libdir}/pkgconfig/libisal.pc to -devel package
* Tue Jun 16 2020 Brian J. Murrell <brian.murrell@intel> - 2.26.0-3
- Add %%license files
* Wed Oct 02 2019 John E. Malmberg <john.e.malmberg@intel> - 2.26.0-2
- Fix some SUSE rpmlint packaging complaints
* Wed May 15 2019 Brian J. Murrell <brian.murrell@intel> - 2.26.0-1
- Update to latest
- Split into a man utilities package with igizp and a library
package
- Obsoletes: the older isa-l packages accordingly
* Tue May 07 2019 Brian J. Murrell <brian.murrell@intel> - 2.21.0-3
- Bump release for RPM cache coherency
* Fri May 03 2019 Brian J. Murrell <brian.murrell@intel> - 2.21.0-2
- Use the more stable "archive" URL for the source
- Define a make_build macro for SLES 12.3
* Fri Apr 05 2019 Brian J. Murrell <brian.murrell@intel> - 2.21.0-1
- initial package