fluentbit: Add IPO option as a packageconfig knob

LTO seems to fail when using clang compiler, 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>
This commit is contained in:
Khem Raj
2024-11-04 13:33:25 -08:00
parent fd57ac6162
commit 127e672ddf
@@ -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 = "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"