Avoid following CMake failure which during do_configure stemming from non-cross compile friendly condition check executed on a build host which has /usr/share/upstart directory
| CMake Error at src/CMakeLists.txt:550 (install): | install DIRECTORY given unknown argument "/etc/fluent-bit/". Also handle systemd init manager case more appropriately, so that it works also when the build host does not have a /lib/systemd/system directory. Signed-off-by: Niko Mauno <[email protected]> --- ...ts.txt-Revise-init-manager-deduction.patch | 41 +++++++++++++++++++ ...able-installing-systemd-service-file.patch | 40 ------------------ .../fluentbit/fluentbit_3.1.9.bb | 9 +++- 3 files changed, 49 insertions(+), 41 deletions(-) create mode 100644 meta-oe/recipes-extended/fluentbit/fluentbit/0003-CMakeLists.txt-Revise-init-manager-deduction.patch delete mode 100644 meta-oe/recipes-extended/fluentbit/fluentbit/0003-Disable-installing-systemd-service-file.patch diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit/0003-CMakeLists.txt-Revise-init-manager-deduction.patch b/meta-oe/recipes-extended/fluentbit/fluentbit/0003-CMakeLists.txt-Revise-init-manager-deduction.patch new file mode 100644 index 0000000000..5105444dc0 --- /dev/null +++ b/meta-oe/recipes-extended/fluentbit/fluentbit/0003-CMakeLists.txt-Revise-init-manager-deduction.patch @@ -0,0 +1,41 @@ +From c9969cc46e5e4d58db28c89b22bebe42d9f96962 Mon Sep 17 00:00:00 2001 +From: Niko Mauno <[email protected]> +Date: Mon, 21 Oct 2024 16:02:46 +0000 +Subject: [PATCH] CMakeLists.txt: Revise init manager deduction + +The init manager deduction is not cross-compile friendly, so replace +the host specific condition checks with placeholders that can be +replaced in Yocto recipe. + +Signed-off-by: Niko Mauno <[email protected]> + +Upstream-Status: Inappropriate [configuration] +--- + src/CMakeLists.txt | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 084f2c57d..f0f35f00b 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -532,7 +532,7 @@ if(FLB_BINARY) + set(SYSTEMD_UNITDIR /lib/systemd/system) + endif() + +- if(SYSTEMD_UNITDIR) ++ if(@INIT_MANAGER_IS_SYSTEMD@) + set(FLB_SYSTEMD_SCRIPT "${PROJECT_SOURCE_DIR}/init/${FLB_OUT_NAME}.service") + configure_file( + "${PROJECT_SOURCE_DIR}/init/systemd.in" +@@ -540,7 +540,7 @@ if(FLB_BINARY) + ) + install(FILES ${FLB_SYSTEMD_SCRIPT} COMPONENT binary DESTINATION ${SYSTEMD_UNITDIR}) + install(DIRECTORY DESTINATION ${FLB_INSTALL_CONFDIR} COMPONENT binary) +- elseif(IS_DIRECTORY /usr/share/upstart) ++ elseif(@INIT_MANAGER_IS_UPSTART@) + set(FLB_UPSTART_SCRIPT "${PROJECT_SOURCE_DIR}/init/${FLB_OUT_NAME}.conf") + configure_file( + "${PROJECT_SOURCE_DIR}/init/upstart.in" +-- +2.39.2 + diff --git a/meta-oe/recipes-extended/fluentbit/fluentbit/0003-Disable-installing-systemd-service-file.patch b/meta-oe/recipes-extended/fluentbit/fluentbit/0003-Disable-installing-systemd-service-file.patch deleted file mode 100644 index 36a0092ba8..0000000000 --- a/meta-oe/recipes-extended/fluentbit/fluentbit/0003-Disable-installing-systemd-service-file.patch +++ /dev/null @@ -1,40 +0,0 @@ -From c3b891eeec691753fccdf8e0a4541dcba244ec6b Mon Sep 17 00:00:00 2001 -From: Niko Mauno <[email protected]> -Date: Thu, 10 Oct 2024 11:06:07 +0300 -Subject: [PATCH] Disable installing systemd service file - -With this we avoid the the following BitBake error when using some -other init manager than SystemD: - - ERROR: fluentbit-3.1.9-r0 do_package: QA Issue: fluentbit: Files/directories were installed but not shipped in any package: - /lib - /lib/systemd - /lib/systemd/system - /lib/systemd/system/fluent-bit.service - Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install. - fluentbit: 4 installed and not shipped files. [installed-vs-shipped] - ERROR: fluentbit-3.1.9-r0 do_package: Fatal QA errors were found, failing task. - -Upstream-Status: Inappropriate [hack] - -Signed-off-by: Niko Mauno <[email protected]> ---- - src/CMakeLists.txt | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index e24666484..c102806d0 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -534,7 +534,7 @@ if(FLB_BINARY) - set(SYSTEMD_UNITDIR /lib/systemd/system) - endif() - -- if(SYSTEMD_UNITDIR) -+ if(FALSE) - set(FLB_SYSTEMD_SCRIPT "${PROJECT_SOURCE_DIR}/init/${FLB_OUT_NAME}.service") - configure_file( - "${PROJECT_SOURCE_DIR}/init/systemd.in" --- -2.39.2 - 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 fc67236d3e..f96e1a7edc 100644 --- a/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb +++ b/meta-oe/recipes-extended/fluentbit/fluentbit_3.1.9.bb @@ -22,7 +22,7 @@ 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-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)} \ + file://0003-CMakeLists.txt-Revise-init-manager-deduction.patch \ " SRC_URI:append:libc-musl = "\ file://0004-chunkio-Link-with-fts-library-with-musl.patch \ @@ -116,6 +116,13 @@ EXTRA_OECMAKE:append:riscv32 = " -DCMAKE_C_STANDARD_LIBRARIES=-latomic" EXTRA_OECMAKE:append:riscv64 = " -DCMAKE_C_STANDARD_LIBRARIES=-latomic" EXTRA_OECMAKE:append:x86 = " -DCMAKE_C_STANDARD_LIBRARIES=-latomic" +do_configure:prepend() { + sed -i \ + -e 's#@INIT_MANAGER_IS_SYSTEMD@#'${@'TRUE' if d.getVar('INIT_MANAGER') == 'systemd' else 'FALSE'}'#' \ + -e 's#@INIT_MANAGER_IS_UPSTART@#'${@'TRUE' if d.getVar('INIT_MANAGER') == 'upstart' else 'FALSE'}'#' \ + ${S}/src/CMakeLists.txt +} + # flex hardcodes the input file in #line directives leading to TMPDIR contamination of debug sources. do_compile:append() { find ${B} -name '*.c' -or -name '*.h' | xargs sed -i -e 's|${TMPDIR}|${TARGET_DBGSRC_DIR}/|g' -- 2.39.2
-=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#113080): https://lists.openembedded.org/g/openembedded-devel/message/113080 Mute This Topic: https://lists.openembedded.org/mt/109136620/21656 Group Owner: [email protected] Unsubscribe: https://lists.openembedded.org/g/openembedded-devel/unsub [[email protected]] -=-=-=-=-=-=-=-=-=-=-=-
