hyperscan/hyperscan.spec
wk333 0e9006c2e5 Update to 5.4.2 for fix CVE-2023-28711
(cherry picked from commit 31219d884b1afb2c6ffc8c2d1ea033026e5f6598)
2023-09-01 17:06:48 +08:00

100 lines
2.8 KiB
RPMSpec

Name: hyperscan
Version: 5.4.2
Release: 1
Summary: High-performance regular expression matching library
License: BSD
URL: https://www.hyperscan.io/
Source0: https://github.com/intel/%{name}/archive/v%{version}.tar.gz#/%{name}-%{version}.tar.gz
Patch0: hyperscan-aarch64-support.patch
Patch1: Fix-hyperscan-gcc10.patch
BuildRequires: gcc-c++
BuildRequires: boost-devel
BuildRequires: cmake
BuildRequires: pcre-devel
BuildRequires: python3
BuildRequires: ragel
BuildRequires: sqlite-devel >= 3.0
BuildRequires: libpcap-devel
%description
Hyperscan is a high-performance multiple regex matching library. It
follows the regular expression syntax of the commonly-used libpcre
library, but is a standalone library with its own C API.
Hyperscan uses hybrid automata techniques to allow simultaneous
matching of large numbers (up to tens of thousands) of regular
expressions and for the matching of regular expressions across streams
of data.
Hyperscan is typically used in a DPI library stack.
%package devel
Summary: Libraries and header files for the hyperscan library
Requires: %{name}%{?_isa} = %{version}-%{release}
%description devel
Hyperscan is a high-performance multiple regex matching library. It
follows the regular expression syntax of the commonly-used libpcre
library, but is a standalone library with its own C API.
Hyperscan uses hybrid automata techniques to allow simultaneous
matching of large numbers (up to tens of thousands) of regular
expressions and for the matching of regular expressions across streams
of data.
Hyperscan is typically used in a DPI library stack.
This package provides the libraries, include files and other resources
needed for developing Hyperscan applications.
%prep
%setup -q -n %{name}-%{version}
cd %{_builddir}/%{name}-%{version}
mv src/util/simd_utils.h src/util/simd_x86.h
sed -i 's/SIMD_UTILS/SIMD_X86/' src/util/simd_x86.h
sed -i 's/_mm_set_epi32/set32x4/' src/util/state_compress.c
sed -i 's/_mm_set_epi64x/set64x2/' src/util/state_compress.c
sed -i 's/_mm_srli_si128/rshiftbyte_m128/' src/util/state_compress.c
cd -
%autopatch -p1
%build
%cmake -DBUILD_SHARED_LIBS:BOOL=ON -DBUILD_STATIC_AND_SHARED:BOOL=OFF .
%make_build
%install
%make_install
%check
./bin/unit-hyperscan
%files
%doc %{_defaultdocdir}/%{name}/examples/README.md
%doc %{_defaultdocdir}/%{name}/examples/*.cc
%doc %{_defaultdocdir}/%{name}/examples/*.c
%license COPYING
%license LICENSE
%{_libdir}/*.so.*
%files devel
%{_libdir}/*.so
%{_libdir}/pkgconfig/libhs.pc
%{_includedir}/hs/
%changelog
* Fri Sep 01 2023 wangkai <13474090681@163.com> - 5.4.2-1
- Update to 5.4.2 for fix CVE-2023-28711
* Thu Apr 20 2023 wangkai <13474090681@163.com> - 5.2.1-3
- Fix CVE-2022-29486
* Mon Jul 20 2020 Yikun Jiang <yikunkero@gmail.com> - 5.2.1-2
- Add aarch64 support
* Fri Jun 12 2020 Yikun Jiang <yikunkero@gmail.com> - 5.2.1-1
- Init x86 package