summaryrefslogtreecommitdiff
path: root/dev-libs/vectorscan
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2023-11-29 22:58:59 +0000
committerV3n3RiX <venerix@koprulu.sector>2023-11-29 22:58:59 +0000
commite7b6f003e8384cdfc8c0e7603329e969d8806c24 (patch)
tree43f634afff484e1aabb0f8eccbd7c8d109492bfe /dev-libs/vectorscan
parent70a061c3f38986cf8f04a4c6567114cea348169e (diff)
gentoo auto-resync : 29:11:2023 - 22:58:59
Diffstat (limited to 'dev-libs/vectorscan')
-rw-r--r--dev-libs/vectorscan/Manifest3
-rw-r--r--dev-libs/vectorscan/metadata.xml24
-rw-r--r--dev-libs/vectorscan/vectorscan-5.4.11.ebuild74
3 files changed, 101 insertions, 0 deletions
diff --git a/dev-libs/vectorscan/Manifest b/dev-libs/vectorscan/Manifest
new file mode 100644
index 000000000000..f884cd4d0257
--- /dev/null
+++ b/dev-libs/vectorscan/Manifest
@@ -0,0 +1,3 @@
+DIST vectorscan-5.4.11.tar.gz 1895332 BLAKE2B a8f5a1230af0ddf7d9fb9299769ec1736d37ac3284f6a98b1e650af461206cf459eac35d13a47beb6683786c6529539b2d082edf426e7d4890ed11804c76268b SHA512 ed74e441c1106a90b344898320d20b74726db86af338dee8c908db941a88e73355ca87c6d64e212eb860bf76a96121021ebaabd48ce359b47634caaee9df3e5e
+EBUILD vectorscan-5.4.11.ebuild 1503 BLAKE2B 97269033fddf822725689b96e6dada2e4ef1272ab1a03b12f3cd4d28e22d1e6d5f26fda9b4168bb7238384e89a640b63aba336380d7b76f428a82753eb6e751d SHA512 aec3518eaf45e5b1d74390682650d979a823a5dee72ce5045b62e98a4ca24d1264e22a96bfb0610364de4da5eff9251fe0e4b51b52d1097f5432a6309c1966e8
+MISC metadata.xml 880 BLAKE2B 65aa39b8d66af4673461921cea8749918b0239d41984035e65c7f45d6caa3ed9f31b5ccabd5cf78db2926431f707334068be4c7ff9535cad4977d818b473afbe SHA512 889bf54d032723022c484019502a2f93c5bd55b52ef8399bb7ad8cafe842de42871994b446982c9f098f7955df43f094ad7700aee557132ac250a4af4ad95ec9
diff --git a/dev-libs/vectorscan/metadata.xml b/dev-libs/vectorscan/metadata.xml
new file mode 100644
index 000000000000..45e25fefd6d7
--- /dev/null
+++ b/dev-libs/vectorscan/metadata.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>arkamar@gentoo.org</email>
+ <name>Petr Vaněk</name>
+ </maintainer>
+ <longdescription>
+ A fork of Intel's Hyperscan, modified to run on more platforms.
+ Currently ARM NEON/ASIMD is 100% functional, and Power VSX are in
+ development. ARM SVE2 support is in ongoing with access to hardware now.
+ More platforms will follow in the future.
+
+ Vectorscan follows Intel's API and internal algorithms where
+ possible, but will not hesitate to make code changes where it is thought
+ of giving better performance or better portability.
+ </longdescription>
+ <slots>
+ <subslots>libhs soname version</subslots>
+ </slots>
+ <upstream>
+ <remote-id type="github">VectorCamp/vectorscan</remote-id>
+ </upstream>
+</pkgmetadata>
diff --git a/dev-libs/vectorscan/vectorscan-5.4.11.ebuild b/dev-libs/vectorscan/vectorscan-5.4.11.ebuild
new file mode 100644
index 000000000000..b047e39dd69f
--- /dev/null
+++ b/dev-libs/vectorscan/vectorscan-5.4.11.ebuild
@@ -0,0 +1,74 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit cmake edo flag-o-matic
+
+DESCRIPTION="A portable fork of the high-performance regular expression matching library"
+HOMEPAGE="
+ https://www.vectorcamp.gr/vectorscan/
+ https://github.com/VectorCamp/vectorscan
+"
+SRC_URI="
+ https://github.com/VectorCamp/vectorscan/archive/refs/tags/${PN}/${PV}.tar.gz
+ -> ${P}.tar.gz
+"
+
+S="${WORKDIR}/${PN}-${P}"
+
+LICENSE="BSD"
+SLOT="0/5"
+KEYWORDS="~amd64"
+IUSE="cpu_flags_x86_avx2 cpu_flags_x86_sse4_2"
+
+DEPEND="
+ dev-libs/boost:=
+"
+RDEPEND="
+ ${DEPEND}
+ !dev-libs/hyperscan
+"
+BDEPEND="
+ dev-util/ragel
+ virtual/pkgconfig
+"
+
+REQUIRED_USE="
+ x86? ( cpu_flags_x86_sse4_2 )
+ amd64? ( cpu_flags_x86_sse4_2 )
+"
+
+src_prepare() {
+ local sedargs=(
+ # Respect user -m flags (march/mtune)
+ -e '/set(ARCH_CX*_FLAG/d'
+ # Respect user -O flags
+ -e '/set(OPT_CX*_FLAG/d'
+ )
+ sed -i "${sedargs[@]}" CMakeLists.txt cmake/cflags-x86.cmake || die
+ cmake_src_prepare
+}
+
+src_configure() {
+ use cpu_flags_x86_avx2 && append-flags -mavx2
+ use cpu_flags_x86_sse4_2 && append-flags -msse4.2
+
+ local mycmakeargs=(
+ -DBUILD_BENCHMARKS=OFF
+ -DBUILD_EXAMPLES=OFF
+ -DBUILD_SHARED_LIBS=ON
+
+ -DBUILD_AVX2=$(usex cpu_flags_x86_avx2)
+
+ -DUSE_CPU_NATIVE=OFF
+ )
+ cmake_src_configure
+}
+
+src_test() {
+ # The unit target cannot be used currently due to a bug in it,
+ # see https://github.com/VectorCamp/vectorscan/issues/202
+ #cmake_build unit
+ edo "${BUILD_DIR}/bin/unit-hyperscan"
+}