fluentbit: fix building with wasm support

Patch the cmake config of the wasm micro runtime dependency. This fixes
the build for x86 by avoiding the cmake try_run() which cannot be
invoked in cross-compiling mode.

Signed-off-by: Patrick Wicki <patrick.wicki@siemens.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
This commit is contained in:
Patrick Wicki
2024-10-21 23:36:25 +02:00
committed by Khem Raj
parent b2c86b47f0
commit 9ec4514267
2 changed files with 43 additions and 0 deletions
@@ -0,0 +1,42 @@
From 5b6d274664f92a6c6083f4d27a1b1604a326f22c Mon Sep 17 00:00:00 2001
From: Patrick Wicki <patrick.wicki@siemens.com>
Date: Sat, 5 Oct 2024 21:36:12 +0200
Subject: [PATCH] wasm: avoid cmake try_run when cross-compiling for x86
This fixes building the wasm micro runtime used when enabling wasm
support in fluentbit.
cmake try_run does not work when cross-compiling because the test program
cannot be executed:
| CMake Error: try_run() invoked in cross-compiling mode, please set the following cache variables appropriately:
| TEST_WRGSBASE_RESULT (advanced)
| For details see .../fluentbit/3.1.9/build/TryRunResults.cmake
| Write linear memory base addr to x86 GS register disabled
| -- Configuring incomplete, errors occurred!
Since we cannot run the test program, assume that the instruction is not
available and disable the option.
This patch is no longer needed once fluentbit updates WAMR, as it's been
fixed in https://github.com/bytecodealliance/wasm-micro-runtime/pull/3066.
Upstream-Status: Pending [https://github.com/fluent/fluent-bit/pull/8744]
Signed-off-by: Patrick Wicki <patrick.wicki@siemens.com>
---
.../build-scripts/config_common.cmake | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/wasm-micro-runtime-WAMR-1.3.0/build-scripts/config_common.cmake b/lib/wasm-micro-runtime-WAMR-1.3.0/build-scripts/config_common.cmake
index e73ebc85f..c2504e007 100644
--- a/lib/wasm-micro-runtime-WAMR-1.3.0/build-scripts/config_common.cmake
+++ b/lib/wasm-micro-runtime-WAMR-1.3.0/build-scripts/config_common.cmake
@@ -408,7 +408,7 @@ if (WAMR_BUILD_STATIC_PGO EQUAL 1)
add_definitions (-DWASM_ENABLE_STATIC_PGO=1)
message (" AOT static PGO enabled")
endif ()
-if (WAMR_DISABLE_WRITE_GS_BASE EQUAL 1)
+if (WAMR_DISABLE_WRITE_GS_BASE EQUAL 1 OR CMAKE_CROSSCOMPILING)
add_definitions (-DWASM_DISABLE_WRITE_GS_BASE=1)
message (" Write linear memory base addr to x86 GS register disabled")
elseif (WAMR_BUILD_TARGET STREQUAL "X86_64"
@@ -23,6 +23,7 @@ SRC_URI = "\
file://0001-lib-Do-not-use-private-makefile-targets-in-CMakelist.patch \
file://0002-flb_info.h.in-Do-not-hardcode-compilation-directorie.patch \
file://0003-CMakeLists.txt-Revise-init-manager-deduction.patch \
file://0004-wasm-avoid-cmake-try_run-when-cross-compiling.patch \
"
SRC_URI:append:libc-musl = "\
file://0004-chunkio-Link-with-fts-library-with-musl.patch \