mirror of
https://github.com/vincentmli/bpfire.git
synced 2026-04-27 11:13:24 +02:00
vectorscan: Build as a fat library
The build system defaults to building the library for the host system and therefore uses instructions that might not be available on the target system. This patch changes that we will build the library so that it will choose the most optimised functions at runtime. Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
This commit is contained in:
@@ -38,6 +38,22 @@ SUP_ARCH = x86_64 aarch64
|
||||
# smaller machines
|
||||
MAX_PARALLELISM = $(shell echo $$(( $(SYSTEM_MEMORY) / 1024)))
|
||||
|
||||
ifeq "$(BUILD_ARCH)" "aarch64"
|
||||
EXTRA_ARGS += \
|
||||
-DFAT_RUNTIME=ON \
|
||||
-DBUILD_SVE=ON \
|
||||
-DBUILD_SVE2=ON \
|
||||
-DBUILD_SVE2_BITPERM=ON
|
||||
endif
|
||||
|
||||
ifeq "$(BUILD_ARCH)" "x86_64"
|
||||
EXTRA_ARGS += \
|
||||
-DFAT_RUNTIME=ON \
|
||||
-DBUILD_AVX2=ON \
|
||||
-DBUILD_AVX512=ON \
|
||||
-DBUILD_AVX512VBMI=ON
|
||||
endif
|
||||
|
||||
###############################################################################
|
||||
# Top-level Rules
|
||||
###############################################################################
|
||||
@@ -80,7 +96,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
|
||||
-DCMAKE_INSTALL_PREFIX:PATH=/usr \
|
||||
-DBUILD_SHARED_LIBS=ON \
|
||||
-DCMAKE_BUILD_TYPE=RELEASE \
|
||||
-DBUILD_EXAMPLES=OFF
|
||||
-DBUILD_EXAMPLES=OFF \
|
||||
$(EXTRA_ARGS)
|
||||
-Wno-dev
|
||||
cd $(DIR_APP) && make $(MAKETUNING)
|
||||
cd $(DIR_APP) && make install
|
||||
@rm -rf $(DIR_APP)
|
||||
|
||||
Reference in New Issue
Block a user