- 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 --- config/rootfiles/common/vectorscan | 13 +++++ lfs/vectorscan | 86 ++++++++++++++++++++++++++++++ make.sh | 2 +- 3 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 config/rootfiles/common/vectorscan create mode 100644 lfs/vectorscan
diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/vectorscan new file mode 100644 index 000000000..160dc3ae7 --- /dev/null +++ b/config/rootfiles/common/vectorscan @@ -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 index 000000000..0b60e19c9 --- /dev/null +++ b/lfs/vectorscan @@ -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 a4ba09326..9977e762b 100755 --- 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
- hyperscan will move from BSD licence to a proprietary paid for licence from version 5.5 onwards. - hyperscan will be replaced by vectorscan, a fork of hyperscan.
Signed-off-by: Adolf Belka adolf.belka@ipfire.org --- config/rootfiles/common/x86_64/hyperscan | 18 ---- lfs/hyperscan | 89 ------------------- ...can-5.4.0-fix-undefined-reference-to.patch | 24 ----- 3 files changed, 131 deletions(-) delete mode 100644 config/rootfiles/common/x86_64/hyperscan delete mode 100644 lfs/hyperscan delete mode 100644 src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch
diff --git a/config/rootfiles/common/x86_64/hyperscan b/config/rootfiles/common/x86_64/hyperscan deleted file mode 100644 index 006e0fff9..000000000 --- a/config/rootfiles/common/x86_64/hyperscan +++ /dev/null @@ -1,18 +0,0 @@ -#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/lib/libhs.so -usr/lib/libhs.so.5 -usr/lib/libhs.so.5.4.0 -usr/lib/libhs_runtime.so -usr/lib/libhs_runtime.so.5 -usr/lib/libhs_runtime.so.5.4.0 -#usr/lib/pkgconfig/libhs.pc -#usr/share/doc/hyperscan -#usr/share/doc/hyperscan/examples -#usr/share/doc/hyperscan/examples/README.md -#usr/share/doc/hyperscan/examples/patbench.cc -#usr/share/doc/hyperscan/examples/pcapscan.cc -#usr/share/doc/hyperscan/examples/simplegrep.c diff --git a/lfs/hyperscan b/lfs/hyperscan deleted file mode 100644 index 56c6290b5..000000000 --- a/lfs/hyperscan +++ /dev/null @@ -1,89 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2021 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.0 - -THISAPP = hyperscan-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -SUP_ARCH = x86_64 - -# 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 = 1a5af88655854b4c1ec58e6663b6c9c4b6fca0aa9d3e4daad3992daf911b8f359f48a95b65e4f05c71aa644e0271471d016fafaca05d547b838a9c52ea016e27 - -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 zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch - cd $(DIR_APP) && cmake . \ - -DCMAKE_INSTALL_PREFIX:PATH=/usr \ - -DBUILD_SHARED_LIBS:BOOL=ON \ - -DBUILD_STATIC_AND_SHARED:BOOL=OFF \ - -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/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch b/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch deleted file mode 100644 index fdd2543f1..000000000 --- a/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 66189546403e5476c560bdbad89d24c3df87b172 Mon Sep 17 00:00:00 2001 -From: Yue Ni niyue.com@gmail.com -Date: Tue, 19 Jan 2021 17:03:02 +0800 -Subject: [PATCH] Fix hyperscan compilation issue for - https://github.com/intel/hyperscan/issues/292, avoid the compilation error - reporting 'undefined reference to `avx2_snprintf`'. - ---- - cmake/build_wrapper.sh | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/cmake/build_wrapper.sh b/cmake/build_wrapper.sh -index 1962813f..895610c0 100755 ---- a/cmake/build_wrapper.sh -+++ b/cmake/build_wrapper.sh -@@ -17,7 +17,7 @@ KEEPSYMS=$(mktemp -p /tmp keep.syms.XXXXX) - LIBC_SO=$("$@" --print-file-name=libc.so.6) - cp ${KEEPSYMS_IN} ${KEEPSYMS} - # get all symbols from libc and turn them into patterns --nm -f p -g -D ${LIBC_SO} | sed -s 's/([^ ]*).*/^\1$/' >> ${KEEPSYMS} -+nm -f p -g -D ${LIBC_SO} | sed -s 's/([^ @]*).*/^\1$/' >> ${KEEPSYMS} - # build the object - "$@" - # rename the symbols in the object
Reviewed-by: Michael Tremer michael.tremer@ipfire.org
On 14 May 2024, at 11:39, Adolf Belka adolf.belka@ipfire.org wrote:
- hyperscan will move from BSD licence to a proprietary paid for licence from version 5.5 onwards.
- hyperscan will be replaced by vectorscan, a fork of hyperscan.
Signed-off-by: Adolf Belka adolf.belka@ipfire.org
config/rootfiles/common/x86_64/hyperscan | 18 ---- lfs/hyperscan | 89 ------------------- ...can-5.4.0-fix-undefined-reference-to.patch | 24 ----- 3 files changed, 131 deletions(-) delete mode 100644 config/rootfiles/common/x86_64/hyperscan delete mode 100644 lfs/hyperscan delete mode 100644 src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch
diff --git a/config/rootfiles/common/x86_64/hyperscan b/config/rootfiles/common/x86_64/hyperscan deleted file mode 100644 index 006e0fff9..000000000 --- a/config/rootfiles/common/x86_64/hyperscan +++ /dev/null @@ -1,18 +0,0 @@ -#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/lib/libhs.so -usr/lib/libhs.so.5 -usr/lib/libhs.so.5.4.0 -usr/lib/libhs_runtime.so -usr/lib/libhs_runtime.so.5 -usr/lib/libhs_runtime.so.5.4.0 -#usr/lib/pkgconfig/libhs.pc -#usr/share/doc/hyperscan -#usr/share/doc/hyperscan/examples -#usr/share/doc/hyperscan/examples/README.md -#usr/share/doc/hyperscan/examples/patbench.cc -#usr/share/doc/hyperscan/examples/pcapscan.cc -#usr/share/doc/hyperscan/examples/simplegrep.c diff --git a/lfs/hyperscan b/lfs/hyperscan deleted file mode 100644 index 56c6290b5..000000000 --- a/lfs/hyperscan +++ /dev/null @@ -1,89 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2021 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.0
-THISAPP = hyperscan-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -SUP_ARCH = x86_64
-# 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 = 1a5af88655854b4c1ec58e6663b6c9c4b6fca0aa9d3e4daad3992daf911b8f359f48a95b65e4f05c71aa644e0271471d016fafaca05d547b838a9c52ea016e27
-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 zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch
- cd $(DIR_APP) && cmake . \
- -DCMAKE_INSTALL_PREFIX:PATH=/usr \
- -DBUILD_SHARED_LIBS:BOOL=ON \
- -DBUILD_STATIC_AND_SHARED:BOOL=OFF \
- -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/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch b/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch deleted file mode 100644 index fdd2543f1..000000000 --- a/src/patches/hyperscan-5.4.0-fix-undefined-reference-to.patch +++ /dev/null @@ -1,24 +0,0 @@ -From 66189546403e5476c560bdbad89d24c3df87b172 Mon Sep 17 00:00:00 2001 -From: Yue Ni niyue.com@gmail.com -Date: Tue, 19 Jan 2021 17:03:02 +0800 -Subject: [PATCH] Fix hyperscan compilation issue for
- https://github.com/intel/hyperscan/issues/292, avoid the compilation error
- reporting 'undefined reference to `avx2_snprintf`'.
- cmake/build_wrapper.sh | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-diff --git a/cmake/build_wrapper.sh b/cmake/build_wrapper.sh -index 1962813f..895610c0 100755 ---- a/cmake/build_wrapper.sh -+++ b/cmake/build_wrapper.sh -@@ -17,7 +17,7 @@ KEEPSYMS=$(mktemp -p /tmp keep.syms.XXXXX)
- LIBC_SO=$("$@" --print-file-name=libc.so.6)
- cp ${KEEPSYMS_IN} ${KEEPSYMS}
- # get all symbols from libc and turn them into patterns
--nm -f p -g -D ${LIBC_SO} | sed -s 's/([^ ]*).*/^\1$/' >> ${KEEPSYMS} -+nm -f p -g -D ${LIBC_SO} | sed -s 's/([^ @]*).*/^\1$/' >> ${KEEPSYMS}
- # build the object
- "$@"
- # rename the symbols in the object
-- 2.44.0
Thank you for looking at this so quickly.
Reviewed-by: Michael Tremer michael.tremer@ipfire.org
On 14 May 2024, at 11:39, Adolf Belka adolf.belka@ipfire.org wrote:
- 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
config/rootfiles/common/vectorscan | 13 +++++ lfs/vectorscan | 86 ++++++++++++++++++++++++++++++ make.sh | 2 +- 3 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 config/rootfiles/common/vectorscan create mode 100644 lfs/vectorscan
diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/vectorscan new file mode 100644 index 000000000..160dc3ae7 --- /dev/null +++ b/config/rootfiles/common/vectorscan @@ -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 index 000000000..0b60e19c9 --- /dev/null +++ b/lfs/vectorscan @@ -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 a4ba09326..9977e762b 100755 --- 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
-- 2.44.0
make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:128: CMakeFiles/hs_compile_shared.dir/src/compiler/compiler.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:408: CMakeFiles/hs_compile_shared.dir/src/nfa/goughcompile_reg.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:240: CMakeFiles/hs_compile_shared.dir/src/fdr/teddy_compile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:142: CMakeFiles/hs_compile_shared.dir/src/compiler/error.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:310: CMakeFiles/hs_compile_shared.dir/src/nfa/accel_dfa_build_strat.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:296: CMakeFiles/hs_compile_shared.dir/src/hwlm/noodle_build.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:394: CMakeFiles/hs_compile_shared.dir/src/nfa/goughcompile_accel.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:324: CMakeFiles/hs_compile_shared.dir/src/nfa/accelcompile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:254: CMakeFiles/hs_compile_shared.dir/src/fdr/teddy_engine_description.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:352: CMakeFiles/hs_compile_shared.dir/src/nfa/dfa_build_strat.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:100: CMakeFiles/hs_compile_shared.dir/src/hs.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:170: CMakeFiles/hs_compile_shared.dir/src/fdr/fdr_compile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:282: CMakeFiles/hs_compile_shared.dir/src/hwlm/hwlm_literal.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:366: CMakeFiles/hs_compile_shared.dir/src/nfa/dfa_min.cpp.o] Error 1 make[2]: *** [CMakeFiles/Makefile2:335: CMakeFiles/hs_compile_shared.dir/all] Error 2 make[1]: *** [Makefile:136: all] Error 2 make[1]: Leaving directory '/usr/src/vectorscan-vectorscan-5.4.11' make: *** [vectorscan:79: /usr/src/log/vectorscan-vectorscan-5.4.11] Error 2
It looks like this package won’t compile on riscv64. Since this is not really a priority for us right now, we should disable the package for this architecture (I am sure hyperscan wouldn’t have compiled either) and wait for upstream to eventually provide support for this.
Any objections?
-Michael
On 14 May 2024, at 16:17, Michael Tremer michael.tremer@ipfire.org wrote:
Thank you for looking at this so quickly.
Reviewed-by: Michael Tremer michael.tremer@ipfire.org
On 14 May 2024, at 11:39, Adolf Belka adolf.belka@ipfire.org wrote:
- 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
config/rootfiles/common/vectorscan | 13 +++++ lfs/vectorscan | 86 ++++++++++++++++++++++++++++++ make.sh | 2 +- 3 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 config/rootfiles/common/vectorscan create mode 100644 lfs/vectorscan
diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/vectorscan new file mode 100644 index 000000000..160dc3ae7 --- /dev/null +++ b/config/rootfiles/common/vectorscan @@ -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 index 000000000..0b60e19c9 --- /dev/null +++ b/lfs/vectorscan @@ -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 a4ba09326..9977e762b 100755 --- 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 -- 2.44.0
On 29/05/2024 11:03, Michael Tremer wrote:
make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:128: CMakeFiles/hs_compile_shared.dir/src/compiler/compiler.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:408: CMakeFiles/hs_compile_shared.dir/src/nfa/goughcompile_reg.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:240: CMakeFiles/hs_compile_shared.dir/src/fdr/teddy_compile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:142: CMakeFiles/hs_compile_shared.dir/src/compiler/error.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:310: CMakeFiles/hs_compile_shared.dir/src/nfa/accel_dfa_build_strat.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:296: CMakeFiles/hs_compile_shared.dir/src/hwlm/noodle_build.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:394: CMakeFiles/hs_compile_shared.dir/src/nfa/goughcompile_accel.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:324: CMakeFiles/hs_compile_shared.dir/src/nfa/accelcompile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:254: CMakeFiles/hs_compile_shared.dir/src/fdr/teddy_engine_description.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:352: CMakeFiles/hs_compile_shared.dir/src/nfa/dfa_build_strat.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:100: CMakeFiles/hs_compile_shared.dir/src/hs.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:170: CMakeFiles/hs_compile_shared.dir/src/fdr/fdr_compile.cpp.o] Error 1 make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:282: CMakeFiles/hs_compile_shared.dir/src/hwlm/hwlm_literal.cpp.o] Error 1 c++: error: unrecognized command-line option '-=power9' make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:366: CMakeFiles/hs_compile_shared.dir/src/nfa/dfa_min.cpp.o] Error 1 make[2]: *** [CMakeFiles/Makefile2:335: CMakeFiles/hs_compile_shared.dir/all] Error 2 make[1]: *** [Makefile:136: all] Error 2 make[1]: Leaving directory '/usr/src/vectorscan-vectorscan-5.4.11' make: *** [vectorscan:79: /usr/src/log/vectorscan-vectorscan-5.4.11] Error 2
It looks like this package won’t compile on riscv64. Since this is not really a priority for us right now, we should disable the package for this architecture (I am sure hyperscan wouldn’t have compiled either) and wait for upstream to eventually provide support for this.
Any objections?
No objections from me.
Regards, Adolf.
-Michael
On 14 May 2024, at 16:17, Michael Tremer michael.tremer@ipfire.org wrote:
Thank you for looking at this so quickly.
Reviewed-by: Michael Tremer michael.tremer@ipfire.org
On 14 May 2024, at 11:39, Adolf Belka adolf.belka@ipfire.org wrote:
- 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
config/rootfiles/common/vectorscan | 13 +++++ lfs/vectorscan | 86 ++++++++++++++++++++++++++++++ make.sh | 2 +- 3 files changed, 100 insertions(+), 1 deletion(-) create mode 100644 config/rootfiles/common/vectorscan create mode 100644 lfs/vectorscan
diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/vectorscan new file mode 100644 index 000000000..160dc3ae7 --- /dev/null +++ b/config/rootfiles/common/vectorscan @@ -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 index 000000000..0b60e19c9 --- /dev/null +++ b/lfs/vectorscan @@ -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 a4ba09326..9977e762b 100755 --- 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
-- 2.44.0
This architecture does not seem to be support and since we don't support this as a primary architecture just yet, we will build without this package.
Signed-off-by: Michael Tremer michael.tremer@ipfire.org --- config/rootfiles/common/{ => aarch64}/vectorscan | 0 config/rootfiles/common/x86_64/vectorscan | 1 + lfs/vectorscan | 1 + 3 files changed, 2 insertions(+) rename config/rootfiles/common/{ => aarch64}/vectorscan (100%) create mode 120000 config/rootfiles/common/x86_64/vectorscan
diff --git a/config/rootfiles/common/vectorscan b/config/rootfiles/common/aarch64/vectorscan similarity index 100% rename from config/rootfiles/common/vectorscan rename to config/rootfiles/common/aarch64/vectorscan diff --git a/config/rootfiles/common/x86_64/vectorscan b/config/rootfiles/common/x86_64/vectorscan new file mode 120000 index 000000000..d9581de70 --- /dev/null +++ b/config/rootfiles/common/x86_64/vectorscan @@ -0,0 +1 @@ +../aarch64/vectorscan \ No newline at end of file diff --git a/lfs/vectorscan b/lfs/vectorscan index 0b60e19c9..0bcc1bcf4 100644 --- a/lfs/vectorscan +++ b/lfs/vectorscan @@ -31,6 +31,7 @@ DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) +SUP_ARCH = x86_64 aarch64
# 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