From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adolf Belka To: development@lists.ipfire.org Subject: Re: [PATCH 1/2] vectorscan: Install vectorscan to replace hypersan Date: Wed, 29 May 2024 11:23:56 +0200 Message-ID: <3e6c06c3-9da0-4354-8a2f-beab0d9527a9@ipfire.org> In-Reply-To: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============8512053349478191032==" List-Id: --===============8512053349478191032== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable On 29/05/2024 11:03, Michael Tremer wrote: >=20 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:128: CMakeFil= es/hs_compile_shared.dir/src/compiler/compiler.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:408: CMakeFil= es/hs_compile_shared.dir/src/nfa/goughcompile_reg.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:240: CMakeFil= es/hs_compile_shared.dir/src/fdr/teddy_compile.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:142: CMakeFil= es/hs_compile_shared.dir/src/compiler/error.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:310: CMakeFil= es/hs_compile_shared.dir/src/nfa/accel_dfa_build_strat.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:296: CMakeFil= es/hs_compile_shared.dir/src/hwlm/noodle_build.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:394: CMakeFil= es/hs_compile_shared.dir/src/nfa/goughcompile_accel.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:324: CMakeFil= es/hs_compile_shared.dir/src/nfa/accelcompile.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:254: CMakeFil= es/hs_compile_shared.dir/src/fdr/teddy_engine_description.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:352: CMakeFil= es/hs_compile_shared.dir/src/nfa/dfa_build_strat.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:100: CMakeFil= es/hs_compile_shared.dir/src/hs.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:170: CMakeFil= es/hs_compile_shared.dir/src/fdr/fdr_compile.cpp.o] Error 1 > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:282: CMakeFil= es/hs_compile_shared.dir/src/hwlm/hwlm_literal.cpp.o] Error 1 > c++: error: unrecognized command-line option '-=3Dpower9' > make[3]: *** [CMakeFiles/hs_compile_shared.dir/build.make:366: CMakeFil= es/hs_compile_shared.dir/src/nfa/dfa_min.cpp.o] Error 1 > make[2]: *** [CMakeFiles/Makefile2:335: CMakeFiles/hs_compile_shared.di= r/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] Er= ror 2 >=20 > It looks like this package won=E2=80=99t compile on riscv64. Since this is = not really a priority for us right now, we should disable the package for thi= s architecture (I am sure hyperscan wouldn=E2=80=99t have compiled either) an= d wait for upstream to eventually provide support for this. >=20 > Any objections? No objections from me. Regards, Adolf. >=20 > -Michael >=20 >> On 14 May 2024, at 16:17, Michael Tremer wro= te: >> >> Thank you for looking at this so quickly. >> >> Reviewed-by: Michael Tremer >> >>> On 14 May 2024, at 11:39, Adolf Belka wrote: >>> >>> - It has been announced that from hyperscan-5.5 onwards the licence for t= his package >>> will change from BSD tp proprietarty paid for version >>> - This patch submission installs vectorscan whihc was created as a fork f= rom 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 close= ly >>> - Added vector scan to the make.sh file and removed hyperscan from it. >>> >>> Signed-off-by: Adolf Belka >>> --- >>> 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 = # >>> +# = # >>> +# 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 . = # >>> +# = # >>> +########################################################################= ####### >>> + >>> +########################################################################= ####### >>> +# Definitions >>> +########################################################################= ####### >>> + >>> +include Config >>> + >>> +VER =3D 5.4.11 >>> + >>> +THISAPP =3D vectorscan-vectorscan-$(VER) >>> +DL_FILE =3D $(THISAPP).tar.gz >>> +DL_FROM =3D $(URL_IPFIRE) >>> +DIR_APP =3D $(DIR_SRC)/$(THISAPP) >>> +TARGET =3D $(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 =3D $(shell echo $$(( $(SYSTEM_MEMORY) / 1024))) >>> + >>> +########################################################################= ####### >>> +# Top-level Rules >>> +########################################################################= ####### >>> + >>> +objects =3D $(DL_FILE) >>> + >>> +$(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) >>> + >>> +$(DL_FILE)_BLAKE2 =3D a8f5a1230af0ddf7d9fb9299769ec1736d37ac3284f6a98b1e= 650af461206cf459eac35d13a47beb6683786c6529539b2d082edf426e7d4890ed11804c76268b >>> + >>> +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=3D/usr \ >>> + -DBUILD_SHARED_LIBS=3DON \ >>> + -DCMAKE_BUILD_TYPE=3DRELEASE \ >>> + -DBUILD_EXAMPLES=3DOFF >>> + 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 >>> --=20 >>> 2.44.0 >>> >> >=20 --=20 Sent from my laptop --===============8512053349478191032==--