mirror of
https://github.com/VectorCamp/vectorscan.git
synced 2025-06-28 16:41:01 +03:00
Merge pull request #85 from VectorCamp/feature/add-debian-package
Feature/add debian package
This commit is contained in:
commit
6cd6957a23
@ -3,7 +3,7 @@ project (vectorscan C CXX)
|
||||
|
||||
set (HS_MAJOR_VERSION 5)
|
||||
set (HS_MINOR_VERSION 4)
|
||||
set (HS_PATCH_VERSION 5)
|
||||
set (HS_PATCH_VERSION 6)
|
||||
set (HS_VERSION ${HS_MAJOR_VERSION}.${HS_MINOR_VERSION}.${HS_PATCH_VERSION})
|
||||
|
||||
set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake)
|
||||
@ -236,8 +236,14 @@ if (ARCH_AARCH64)
|
||||
endif ()
|
||||
endif(ARCH_AARCH64)
|
||||
|
||||
set(ARCH_C_FLAGS "-${ARCH_FLAG}=${GNUCC_ARCH} -mtune=${TUNE_FLAG} ${ARCH_C_FLAGS}")
|
||||
set(ARCH_CXX_FLAGS "-${ARCH_FLAG}=${GNUCC_ARCH} -mtune=${TUNE_FLAG} ${ARCH_CXX_FLAGS}")
|
||||
|
||||
message(STATUS "ARCH_C_FLAGS : ${ARCH_C_FLAGS}")
|
||||
message(STATUS "ARCH_CXX_FLAGS : ${ARCH_CXX_FLAGS}")
|
||||
|
||||
if (NOT FAT_RUNTIME)
|
||||
set(ARCH_C_FLAGS "-${ARCH_FLAG}=${GNUCC_ARCH} -mtune=${TUNE_FLAG} ${ARCH_C_FLAGS}")
|
||||
set(ARCH_CXX_FLAGS "-${ARCH_FLAG}=${GNUCC_ARCH} -mtune=${TUNE_FLAG} ${ARCH_CXX_FLAGS}")
|
||||
endif()
|
||||
|
||||
#if (ARCH_IA32 OR ARCH_X86_64 OR ARCH_ARM32 OR ARCH_AARCH64)
|
||||
# if (NOT CMAKE_C_FLAGS MATCHES .*march.* AND NOT CMAKE_C_FLAGS MATCHES .*mtune.*)
|
||||
|
5
debian/changelog
vendored
Normal file
5
debian/changelog
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
vectorscan (5.4.6.1) unstable; urgency=medium
|
||||
|
||||
* Initial release. (Closes: #1004079)
|
||||
|
||||
-- Konstantinos Margaritis <markos@debian.org> Wed, 15 Dec 2021 13:20:38 +0200
|
60
debian/control
vendored
Normal file
60
debian/control
vendored
Normal file
@ -0,0 +1,60 @@
|
||||
Source: vectorscan
|
||||
Priority: optional
|
||||
Maintainer: Konstantinos Margaritis <markos@debian.org>
|
||||
Build-Depends: cmake (>=2.8.11),
|
||||
debhelper-compat (=12),
|
||||
libboost-dev (>=1.57),
|
||||
libpcap-dev,
|
||||
pkg-config,
|
||||
po-debconf,
|
||||
python3,
|
||||
ragel (>=6.9)
|
||||
Standards-Version: 4.5.1
|
||||
Section: libs
|
||||
Rules-Requires-Root: no
|
||||
Homepage: https://vectorcamp.gr/vectorscan
|
||||
Vcs-Git: https://salsa.debian.org/debian/hyperscan.git
|
||||
Vcs-Browser: https://salsa.debian.org/debian/vectorscan
|
||||
|
||||
Package: libvectorscan-dev
|
||||
Section: libdevel
|
||||
Architecture: any-amd64 arm64 ppc64el
|
||||
Replaces: libhyperscan-dev
|
||||
Conflicts: libhyperscan-dev
|
||||
Provides: libhyperscan-dev
|
||||
Depends: libvectorscan5 (= ${binary:Version}), ${misc:Depends}
|
||||
Description: Portable fork of Intel's Hyperscan library (development files)
|
||||
Vectorscan is a portable fork of Intel's Hyperscan project. It is a drop-in
|
||||
replacement that promises to be API/ABI compatible with the original project,
|
||||
while allowing it to run on other architectures such as AArch64 and Power9.
|
||||
.
|
||||
This package contains development libraries, header files and documentation for
|
||||
the regular expression matching library libhyperscan. You can either use the
|
||||
supplied shared or static library.
|
||||
.
|
||||
Vectorscan only runs on CPUs with a SIMD unit. On x86 CPUs, the minimum
|
||||
requirement is SSE4.2, AArch64 ISA already implies Advanced SIMD/NEON and
|
||||
ppc64le (Power8/Power9) already implies VSX enabled by default.
|
||||
|
||||
Package: libvectorscan5
|
||||
Architecture: any-amd64 arm64 ppc64el
|
||||
Depends: ${misc:Depends}, ${shlibs:Depends}, sse4.2-support [any-amd64]
|
||||
Pre-Depends: debconf
|
||||
Replaces: libhyperscan5
|
||||
Conflicts: libhyperscan5
|
||||
Provides: libhyperscan5
|
||||
Description: Portable fork of Intel's Hyperscan library
|
||||
Vectorscan is a portable fork of Intel's Hyperscan project. It is a drop-in
|
||||
replacement that promises to be API/ABI compatible with the original project,
|
||||
while allowing it to run on other architectures such as AArch64 and Power9.
|
||||
.
|
||||
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.
|
||||
.
|
||||
Vectorscan only runs on CPUs with a SIMD unit. On x86 CPUs, the minimum
|
||||
requirement is SSE4.2, AArch64 ISA already implies Advanced SIMD/NEON and
|
||||
ppc64le (Power8/Power9) already implies VSX enabled by default.
|
130
debian/copyright
vendored
Normal file
130
debian/copyright
vendored
Normal file
@ -0,0 +1,130 @@
|
||||
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
|
||||
Upstream-Name: vectorscan
|
||||
Source: https://github.com/VectorCamp/vectorscan
|
||||
|
||||
Files: *
|
||||
Copyright: 2015 Intel Corporation <hyperscan@intel.com>
|
||||
2019-2022 VectorCamp PC <vectorscan@vectorcamp.gr>
|
||||
2021-2022 Arm Limited
|
||||
License: BSD-3-Clause-Intel
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of Intel Corporation nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
.
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
Files: src/crc32.c
|
||||
Copyright: 2004-2006 Intel Corporation
|
||||
License: BSD-2-Clause
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
.
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
Files: include/boost-patched/graph/dominator_tree.hpp
|
||||
Copyright: 2005-2009 Jongsoo Park <jongsoo.park@gmail.com>
|
||||
License: BSL-1.0
|
||||
Permission is hereby granted, free of charge, to any person or organization
|
||||
obtaining a copy of the software and accompanying documentation covered by
|
||||
this license (the "Software") to use, reproduce, display, distribute,
|
||||
execute, and transmit the Software, and to prepare derivative works of the
|
||||
Software, and to permit third-parties to whom the Software is furnished to
|
||||
do so, all subject to the following:
|
||||
.
|
||||
The copyright notices in the Software and this entire statement, including
|
||||
the above license grant, this restriction and the following disclaimer,
|
||||
must be included in all copies of the Software, in whole or in part, and
|
||||
all derivative works of the Software, unless such copies or derivative
|
||||
works are solely in the form of machine-executable object code generated by
|
||||
a source language processor.
|
||||
.
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE, TITLE AND NON-INFRINGEMENT. IN NO EVENT
|
||||
SHALL THE COPYRIGHT HOLDERS OR ANYONE DISTRIBUTING THE SOFTWARE BE LIABLE
|
||||
FOR ANY DAMAGES OR OTHER LIABILITY, WHETHER IN CONTRACT, TORT OR OTHERWISE,
|
||||
ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
|
||||
DEALINGS IN THE SOFTWARE.
|
||||
|
||||
Files: unit/gtest/*
|
||||
Copyright: 2008 Google Inc.
|
||||
License: BSD-3-Clause-Google
|
||||
Redistribution and use in source and binary forms, with or without
|
||||
modification, are permitted provided that the following conditions
|
||||
are met:
|
||||
1. Redistributions of source code must retain the above copyright
|
||||
notice, this list of conditions and the following disclaimer.
|
||||
2. Redistributions in binary form must reproduce the above copyright
|
||||
notice, this list of conditions and the following disclaimer in the
|
||||
documentation and/or other materials provided with the distribution.
|
||||
3. Neither the name of Google Inc. nor the names of its contributors
|
||||
may be used to endorse or promote products derived from this software
|
||||
without specific prior written permission.
|
||||
.
|
||||
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE HOLDERS OR
|
||||
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
|
||||
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
|
||||
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
|
||||
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
|
||||
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
|
||||
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
Files: debian/*
|
||||
Copyright: 2016 Robert Haist <rhaist@mailbox.org>
|
||||
2016 Hilko Bengen <bengen@debian.org>
|
||||
2016 SZLin <szlin@cs.nctu.edu.tw>
|
||||
2021-2022 VectorCamp PC
|
||||
License: GPL-2+
|
||||
This package is free software; you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation; either version 2 of the License, or
|
||||
(at your option) any later version.
|
||||
.
|
||||
This package is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
.
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program. If not, see <https://www.gnu.org/licenses/>
|
||||
.
|
||||
On Debian systems, the complete text of the GNU General
|
||||
Public License version 2 can be found in "/usr/share/common-licenses/GPL-2".
|
1
debian/libvectorscan-dev.examples
vendored
Normal file
1
debian/libvectorscan-dev.examples
vendored
Normal file
@ -0,0 +1 @@
|
||||
usr/share/doc/vectorscan/examples/*
|
4
debian/libvectorscan-dev.install
vendored
Normal file
4
debian/libvectorscan-dev.install
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
usr/include/*
|
||||
usr/lib/*/lib*.a
|
||||
usr/lib/*/lib*.so
|
||||
usr/lib/*/pkgconfig/*
|
1
debian/libvectorscan5.install
vendored
Normal file
1
debian/libvectorscan5.install
vendored
Normal file
@ -0,0 +1 @@
|
||||
usr/lib/*/lib*.so.*
|
5
debian/libvectorscan5.lintian-overrides
vendored
Normal file
5
debian/libvectorscan5.lintian-overrides
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
# Rationale:
|
||||
# The original library name libhs4 is to short and could
|
||||
# be mistaken. So we changed it to libhyperscan5 for Debian.
|
||||
|
||||
libvectorscan5: package-name-doesnt-match-sonames
|
19
debian/rules
vendored
Executable file
19
debian/rules
vendored
Executable file
@ -0,0 +1,19 @@
|
||||
#!/usr/bin/make -f
|
||||
|
||||
export DEB_BUILD_MAINT_OPTIONS = hardening=+all
|
||||
|
||||
ifeq ($(DEB_HOST_ARCH),amd64)
|
||||
export DEB_CMAKE_FLAGS = -DBUILD_AVX2=on -DBUILD_AVX512=on -DBUILD_AVX512VBMI=off -DFAT_RUNTIME=on
|
||||
endif
|
||||
|
||||
%:
|
||||
dh $@
|
||||
|
||||
override_dh_auto_configure:
|
||||
dh_auto_configure -- \
|
||||
-DBUILD_STATIC_AND_SHARED=1 \
|
||||
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
|
||||
${DEB_CMAKE_FLAGS}
|
||||
|
||||
override_dh_missing:
|
||||
dh_missing --fail-missing
|
1
debian/source/format
vendored
Normal file
1
debian/source/format
vendored
Normal file
@ -0,0 +1 @@
|
||||
3.0 (native)
|
21
debian/tests/build-lib
vendored
Executable file
21
debian/tests/build-lib
vendored
Executable file
@ -0,0 +1,21 @@
|
||||
#!/bin/sh
|
||||
# autopkgtest check: Build a program against libhyperscan and check whether a
|
||||
# runnable binary is produced.
|
||||
# Author: Sascha Steinbiss <satta@debian.org>
|
||||
set -e
|
||||
|
||||
SRC=$(pwd)/examples/simplegrep.c
|
||||
RES=$(pwd)/debian/tests/simplegrep.result
|
||||
WORKDIR=$(mktemp -d)
|
||||
|
||||
trap "rm -rf $WORKDIR" 0 INT QUIT ABRT PIPE TERM
|
||||
cd $WORKDIR
|
||||
|
||||
gcc -o simplegrep $SRC $(pkg-config --cflags --libs libhs)
|
||||
[ -x simplegrep ]
|
||||
echo "build: OK"
|
||||
|
||||
echo "barbaz" > 1
|
||||
./simplegrep ba 1 > 2
|
||||
diff 2 $RES
|
||||
echo "run: OK"
|
2
debian/tests/control
vendored
Normal file
2
debian/tests/control
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
Tests: build-lib
|
||||
Depends: build-essential, pkg-config, @
|
3
debian/tests/simplegrep.result
vendored
Normal file
3
debian/tests/simplegrep.result
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
Scanning 7 bytes with Hyperscan
|
||||
Match for pattern "ba" at offset 2
|
||||
Match for pattern "ba" at offset 5
|
5
debian/upstream/metadata
vendored
Normal file
5
debian/upstream/metadata
vendored
Normal file
@ -0,0 +1,5 @@
|
||||
---
|
||||
Bug-Database: https://github.com/VectorCamp/vectorscan/issues
|
||||
Bug-Submit: https://github.com/VectorCamp/vectorscan/issues/new
|
||||
Repository: https://github.com/VectorCamp/vectorscan.git
|
||||
Repository-Browse: https://github.com/VectorCamp/vectorscan
|
4
debian/watch
vendored
Normal file
4
debian/watch
vendored
Normal file
@ -0,0 +1,4 @@
|
||||
version=4
|
||||
opts="filenamemangle=s%(?:.*?)?v?(\d[\d.]*)\.tar\.gz%<project>-$1.tar.gz%" \
|
||||
https://github.com/vectorcamp/vectorscan/releases \
|
||||
(?:.*?/)?v?(\d[\d.]*)\.tar\.gz debian uupdate
|
Loading…
x
Reference in New Issue
Block a user