]> git.ipfire.org Git - ipfire-2.x.git/commitdiff
vectorscan: Install vectorscan to replace hypersan
authorAdolf Belka <adolf.belka@ipfire.org>
Tue, 14 May 2024 10:39:55 +0000 (12:39 +0200)
committerArne Fitzenreiter <arne_f@ipfire.org>
Sat, 25 May 2024 09:02:01 +0000 (11:02 +0200)
- It has been announced that from hyperscan-5.5 onwards the licence for this package
   will change from BSD tp proprietarty paid for version
- This patch submission installs vectorscan whihc was created as a fork from hyperscan
   andf that is being maintained and has indicated it will suay Open Source
- Created new lfs file
- Created nbew rootfile. This looks to match the hyperscan rootfile closely
- Added vector scan to the make.sh file and removed hyperscan from it.

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Reviewed-by: Michael Tremer <michael.tremer@ipfire.org>
Signed-off-by: Arne Fitzenreiter <arne_f@ipfire.org>
config/rootfiles/common/vectorscan [new file with mode: 0644]
lfs/vectorscan [new file with mode: 0644]
make.sh

diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/vectorscan
new file mode 100644 (file)
index 0000000..160dc3a
--- /dev/null
@@ -0,0 +1,13 @@
+#usr/include/hs
+#usr/include/hs/hs.h
+#usr/include/hs/hs_common.h
+#usr/include/hs/hs_compile.h
+#usr/include/hs/hs_runtime.h
+#usr/include/hs/hs_version.h
+#usr/lib/libhs.so
+usr/lib/libhs.so.5
+usr/lib/libhs.so.5.4.11
+#usr/lib/libhs_runtime.so
+usr/lib/libhs_runtime.so.5
+usr/lib/libhs_runtime.so.5.4.11
+#usr/lib/pkgconfig/libhs.pc
diff --git a/lfs/vectorscan b/lfs/vectorscan
new file mode 100644 (file)
index 0000000..0b60e19
--- /dev/null
@@ -0,0 +1,86 @@
+###############################################################################
+#                                                                             #
+# IPFire.org - A linux based firewall                                         #
+# Copyright (C) 2007-2024  IPFire Team  <info@ipfire.org>                     #
+#                                                                             #
+# This program 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 3 of the License, or           #
+# (at your option) any later version.                                         #
+#                                                                             #
+# This program 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 <http://www.gnu.org/licenses/>.       #
+#                                                                             #
+###############################################################################
+
+###############################################################################
+# Definitions
+###############################################################################
+
+include Config
+
+VER        = 5.4.11
+
+THISAPP    = vectorscan-vectorscan-$(VER)
+DL_FILE    = $(THISAPP).tar.gz
+DL_FROM    = $(URL_IPFIRE)
+DIR_APP    = $(DIR_SRC)/$(THISAPP)
+TARGET     = $(DIR_INFO)/$(THISAPP)
+
+# The compiler uses a lot of memory to compile hyperscan, hence we reduce
+# the total number of processes a little bit to be able to build on
+# smaller machines
+MAX_PARALLELISM = $(shell echo $$(( $(SYSTEM_MEMORY) / 1024)))
+
+###############################################################################
+# Top-level Rules
+###############################################################################
+
+objects = $(DL_FILE)
+
+$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
+
+$(DL_FILE)_BLAKE2 = a8f5a1230af0ddf7d9fb9299769ec1736d37ac3284f6a98b1e650af461206cf459eac35d13a47beb6683786c6529539b2d082edf426e7d4890ed11804c76268b
+
+install : $(TARGET)
+
+check : $(patsubst %,$(DIR_CHK)/%,$(objects))
+
+download :$(patsubst %,$(DIR_DL)/%,$(objects))
+
+b2 : $(subst %,%_BLAKE2,$(objects))
+
+###############################################################################
+# Downloading, checking, b2sum
+###############################################################################
+
+$(patsubst %,$(DIR_CHK)/%,$(objects)) :
+       @$(CHECK)
+
+$(patsubst %,$(DIR_DL)/%,$(objects)) :
+       @$(LOAD)
+
+$(subst %,%_BLAKE2,$(objects)) :
+       @$(B2SUM)
+
+###############################################################################
+# Installation Details
+###############################################################################
+
+$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
+       @$(PREBUILD)
+       @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
+       cd $(DIR_APP) && cmake . \
+               -DCMAKE_INSTALL_PREFIX:PATH=/usr \
+               -DBUILD_SHARED_LIBS=ON \
+               -DCMAKE_BUILD_TYPE=RELEASE \
+               -DBUILD_EXAMPLES=OFF
+       cd $(DIR_APP) && make $(MAKETUNING)
+       cd $(DIR_APP) && make install
+       @rm -rf $(DIR_APP)
+       @$(POSTBUILD)
diff --git a/make.sh b/make.sh
index 7b99ea11a4a6f7e116288b0401de32a0a45c16eb..f8221bc2c7decd77af2c70bf7b07af615ead747f 100755 (executable)
--- a/make.sh
+++ b/make.sh
@@ -1402,7 +1402,7 @@ buildipfire() {
   lfsmake2 libhtp
   lfsmake2 colm
   lfsmake2 ragel
-  lfsmake2 hyperscan
+  lfsmake2 vectorscan
   lfsmake2 suricata
   lfsmake2 ids-ruleset-sources
   lfsmake2 ipblocklist-sources