Message ID | 20241017070839.39476-1-patrick@subset.ch |
---|---|
State | New |
Headers | show |
Series | [meta-oe,v2] fluentbit: fix building with wasm support | expand |
it fails in configure - https://valkyrie.yoctoproject.org/#/builders/81/builds/66/steps/14/logs/stdio On Thu, Oct 17, 2024 at 12:09 AM Patrick Wicki via lists.openembedded.org <patrick.wicki=subset.ch@lists.openembedded.org> wrote: > > From: Patrick Wicki <patrick.wicki@siemens.com> > > Add patch for the wasm runtime that fixes building for x86. > > Signed-off-by: Patrick Wicki <patrick.wicki@siemens.com> > --- > ...d-cmake-try_run-when-cross-compiling.patch | 42 +++++++++++++++++++ > .../fluentbit/fluentbit_3.1.9.bb | 1 + > 2 files changed, 43 insertions(+) > create mode 100644 meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch > > diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch b/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch > new file mode 100644 > index 000000000..419e85903 > --- /dev/null > +++ b/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch > @@ -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" > diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb > index fc67236d3..d42a9a964 100644 > --- a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb > +++ b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb > @@ -21,6 +21,7 @@ SRCREV = "431fa79ae27edaef8d050a7af6f038f4400193a1" > SRC_URI = "\ > git://github.com/fluent/fluent-bit.git;branch=3.1;protocol=https \ > file://0001-lib-Do-not-use-private-makefile-targets-in-CMakelist.patch \ > + file://0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch \ > file://0002-flb_info.h.in-Do-not-hardcode-compilation-directorie.patch \ > ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'file://0003-Disable-installing-systemd-service-file.patch', d)} \ > " > -- > 2.47.0 > > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#112961): https://lists.openembedded.org/g/openembedded-devel/message/112961 > Mute This Topic: https://lists.openembedded.org/mt/109059531/1997914 > Group Owner: openembedded-devel+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [raj.khem@gmail.com] > -=-=-=-=-=-=-=-=-=-=-=- >
diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch b/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch new file mode 100644 index 000000000..419e85903 --- /dev/null +++ b/meta-oe/recipes-extended/fluentbit/fluentbit/0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch @@ -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" diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb index fc67236d3..d42a9a964 100644 --- a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb +++ b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb @@ -21,6 +21,7 @@ SRCREV = "431fa79ae27edaef8d050a7af6f038f4400193a1" SRC_URI = "\ git://github.com/fluent/fluent-bit.git;branch=3.1;protocol=https \ file://0001-lib-Do-not-use-private-makefile-targets-in-CMakelist.patch \ + file://0002-wasm-avoid-cmake-try_run-when-cross-compiling.patch \ file://0002-flb_info.h.in-Do-not-hardcode-compilation-directorie.patch \ ${@bb.utils.contains('DISTRO_FEATURES', 'systemd', '', 'file://0003-Disable-installing-systemd-service-file.patch', d)} \ "