diff mbox series

[meta-oe] fluentbit: Add IPO option as a packageconfig knob

Message ID 20241104213519.3656688-1-raj.khem@gmail.com
State New
Headers show
Series [meta-oe] fluentbit: Add IPO option as a packageconfig knob | expand

Commit Message

Khem Raj Nov. 4, 2024, 9:35 p.m. UTC
LTO seems to fail on clang+arm, therefore disable it for now.

| arm-yoe-linux-musleabi-ld.lld: error: undefined hidden symbol: co_swap_function.llvm.232435740610378447
| >>> referenced by arm.c:76 (lib/monkey/deps/flb_libco/arm.c:76)
| >>>               library/fluent-bit.lto.libfluent-bit.a(flb_input_thread.c.o at 1278594).o:(input_thread)
| >>> referenced by flb_input_thread.c:0 (src/flb_input_thread.c:0)
| >>>               library/fluent-bit.lto.libfluent-bit.a(flb_input_thread.c.o at 1278594).o:(input_thread)
| >>> referenced by arm.c:76 (lib/monkey/deps/flb_libco/arm.c:76)
| >>>               library/fluent-bit.lto.libfluent-bit.a(flb_output.c.o at 1447274).o:(.Lflb_output_task_flush$local)
| >>> referenced 88 more times

Signed-off-by: Khem Raj <raj.khem@gmail.com>
---
 meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox series

Patch

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 a70534e91c..ea67ac5882 100644
--- a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb
+++ b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb
@@ -39,6 +39,7 @@  PACKAGECONFIG ??= "\
     custom-calyptia \
     http-server \
     inotify \
+    ipo \
     metrics \
     parser \
     proxy-go \
@@ -51,6 +52,8 @@  PACKAGECONFIG ??= "\
     tls \
     utf8-encoder \
 "
+# See https://github.com/fluent/fluent-bit/issues/7248#issuecomment-1631280496
+PACKAGECONFIG:remove:toolchain-clang:arm = "ipo"
 
 PACKAGECONFIG[all] = "-DFLB_ALL=Yes,-DFLB_ALL=No"
 PACKAGECONFIG[arrow] = "-DFLB_ARROW=Yes,-DFLB_ARROW=No"
@@ -69,6 +72,7 @@  PACKAGECONFIG[examples] = "-DFLB_EXAMPLES=Yes,-DFLB_EXAMPLES=No"
 PACKAGECONFIG[http-client-debug] = "-DFLB_HTTP_CLIENT_DEBUG=Yes,-DFLB_HTTP_CLIENT_DEBUG=No"
 PACKAGECONFIG[http-server] = "-DFLB_HTTP_SERVER=Yes,-DFLB_HTTP_SERVER=No"
 PACKAGECONFIG[inotify] = "-DFLB_INOTIFY=Yes,-DFLB_INOTIFY=No"
+PACKAGECONFIG[ipo] = "-DFLB_IPO=Yes,-DFLB_IPO=no"
 PACKAGECONFIG[jemalloc] = "-DFLB_JEMALLOC=Yes,-DFLB_JEMALLOC=No,jemalloc"
 PACKAGECONFIG[luajit] = "-DFLB_LUAJIT=Yes,-DFLB_LUAJIT=No"
 PACKAGECONFIG[metrics] = "-DFLB_METRICS=Yes,-DFLB_METRICS=No"