[Buildroot] [PATCH v3 2/4] package/fluent-bit: use the system provided LuaJIT
Thomas Devoogdt
thomas at devoogdt.com
Sun Jul 23 09:23:12 UTC 2023
Luajit was not used at all when it was selected, instead fluent-bit
recompiled it without taking care of the complexities that were
handled in the luajit package. Fix this by linking dynamically to the
buildroot provided version.
Signed-off-by: Thomas Devoogdt <thomas at devoogdt.com>
---
v2: No change.
v3: No change.
---
...-the-system-provided-LuaJIT-if-found.patch | 62 +++++++++++++++++++
package/fluent-bit/fluent-bit.mk | 1 +
2 files changed, 63 insertions(+)
create mode 100644 package/fluent-bit/0001-build-use-the-system-provided-LuaJIT-if-found.patch
diff --git a/package/fluent-bit/0001-build-use-the-system-provided-LuaJIT-if-found.patch b/package/fluent-bit/0001-build-use-the-system-provided-LuaJIT-if-found.patch
new file mode 100644
index 0000000000..9f6f4d0ebb
--- /dev/null
+++ b/package/fluent-bit/0001-build-use-the-system-provided-LuaJIT-if-found.patch
@@ -0,0 +1,62 @@
+From 4f8eb7bb5a39d83374806928b7a5b622136ef055 Mon Sep 17 00:00:00 2001
+From: Thomas Devoogdt <thomas at devoogdt.com>
+Date: Fri, 28 Apr 2023 10:25:16 +0200
+Subject: [PATCH] build: use the system provided LuaJIT if found
+
+e.g. buildroot has logic to build luajit,
+so if pkg_check_modules can find a suitable version,
+then use that one if -DFLB_PREFER_SYSTEM_LIBS=Yes.
+
+Upstream: https://github.com/fluent/fluent-bit/pull/7286
+Signed-off-by: Thomas Devoogdt <thomas at devoogdt.com>
+---
+ CMakeLists.txt | 12 +++++++++++-
+ src/CMakeLists.txt | 2 +-
+ 2 files changed, 12 insertions(+), 2 deletions(-)
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 9af783c79..0601b7c18 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -123,6 +123,7 @@ option(FLB_TESTS_INTERNAL_FUZZ "Enable internal fuzz tests" No)
+ option(FLB_TESTS_OSSFUZZ "Enable OSS-Fuzz build" No)
+ option(FLB_MTRACE "Enable mtrace support" No)
+ option(FLB_POSIX_TLS "Force POSIX thread storage" No)
++option(FLB_PREFER_SYSTEM_LIBS "Prefer system installed libraries" No)
+ option(FLB_INOTIFY "Enable inotify support" Yes)
+ option(FLB_SQLDB "Enable SQL embedded DB" Yes)
+ option(FLB_HTTP_SERVER "Enable HTTP Server" Yes)
+@@ -1003,7 +1004,16 @@ endif()
+ # LuaJIT (Scripting Support)
+ # ==========================
+ if(FLB_LUAJIT)
+- include(cmake/luajit.cmake)
++ if(FLB_PREFER_SYSTEM_LIBS)
++ find_package(PkgConfig)
++ pkg_check_modules(LUAJIT luajit>=2.1.0)
++ endif()
++ if(LUAJIT_FOUND)
++ include_directories(${LUAJIT_INCLUDE_DIRS})
++ else()
++ include(cmake/luajit.cmake)
++ set(LUAJIT_LIBRARIES "libluajit")
++ endif()
+ FLB_DEFINITION(FLB_HAVE_LUAJIT)
+ endif()
+
+diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
+index 06a206dd4..8b66ddd22 100644
+--- a/src/CMakeLists.txt
++++ b/src/CMakeLists.txt
+@@ -220,7 +220,7 @@ endif()
+ if(FLB_LUAJIT)
+ set(extra_libs
+ ${extra_libs}
+- "libluajit")
++ ${LUAJIT_LIBRARIES})
+ endif()
+
+ if(FLB_SQLDB)
+--
+2.34.1
+
diff --git a/package/fluent-bit/fluent-bit.mk b/package/fluent-bit/fluent-bit.mk
index 6cfa601614..b26ec2b0b6 100644
--- a/package/fluent-bit/fluent-bit.mk
+++ b/package/fluent-bit/fluent-bit.mk
@@ -20,6 +20,7 @@ FLUENT_BIT_CONF_OPTS += \
-DFLB_RELEASE=Yes \
-DFLB_EXAMPLES=No \
-DFLB_CHUNK_TRACE=No \
+ -DFLB_PREFER_SYSTEM_LIBS=Yes \
-DFLB_BACKTRACE=No
ifeq ($(BR2_PACKAGE_FLUENT_BIT_WASM),y)
--
2.34.1
More information about the buildroot
mailing list