mirror of
git://git.yoctoproject.org/meta-virtualization.git
synced 2025-07-19 20:59:41 +02:00
lxcfs: update to 5.0.4 and convert to meson
This is a large update to lxcfs, that includes a move to meson as the build backend. We drop a couple of uneeded patches, and add a new meson specific one as the detection of pid_* functions is failing. Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
This commit is contained in:
parent
6b10588476
commit
4ecc9488d1
|
@ -1,49 +0,0 @@
|
|||
From 66a71fbf94020651880f1dbb6e4663d93391b47c Mon Sep 17 00:00:00 2001
|
||||
From: Mark Asselstine <mark.asselstine@windriver.com>
|
||||
Date: Mon, 10 Sep 2018 13:14:07 -0400
|
||||
Subject: [PATCH] systemd: allow for distinct build directory
|
||||
|
||||
The Makefile.am is currently written in a way that doesn't allow for a
|
||||
distinct build directory. As such we get the error:
|
||||
|
||||
install: cannot stat 'lxcfs.service': No such file or directory
|
||||
|
||||
Make use of $(srcdir) to correct this.
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
|
||||
---
|
||||
config/init/systemd/Makefile.am | 2 +-
|
||||
config/init/systemd/Makefile.in | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/config/init/systemd/Makefile.am b/config/init/systemd/Makefile.am
|
||||
index 79e96f5..d6933f9 100644
|
||||
--- a/config/init/systemd/Makefile.am
|
||||
+++ b/config/init/systemd/Makefile.am
|
||||
@@ -5,7 +5,7 @@ SYSTEMD_UNIT_DIR = /lib/systemd/system
|
||||
|
||||
install-systemd: lxcfs.service
|
||||
$(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR)
|
||||
- $(INSTALL_DATA) lxcfs.service $(DESTDIR)$(SYSTEMD_UNIT_DIR)/
|
||||
+ $(INSTALL_DATA) $(srcdir)/lxcfs.service $(DESTDIR)$(SYSTEMD_UNIT_DIR)/
|
||||
|
||||
uninstall-systemd:
|
||||
rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/lxcfs.service
|
||||
diff --git a/config/init/systemd/Makefile.in b/config/init/systemd/Makefile.in
|
||||
index d433e8a..430190c 100644
|
||||
--- a/config/init/systemd/Makefile.in
|
||||
+++ b/config/init/systemd/Makefile.in
|
||||
@@ -450,7 +450,7 @@ uninstall-am: uninstall-local
|
||||
|
||||
@INIT_SCRIPT_SYSTEMD_TRUE@install-systemd: lxcfs.service
|
||||
@INIT_SCRIPT_SYSTEMD_TRUE@ $(MKDIR_P) $(DESTDIR)$(SYSTEMD_UNIT_DIR)
|
||||
-@INIT_SCRIPT_SYSTEMD_TRUE@ $(INSTALL_DATA) lxcfs.service $(DESTDIR)$(SYSTEMD_UNIT_DIR)/
|
||||
+@INIT_SCRIPT_SYSTEMD_TRUE@ $(INSTALL_DATA) $(srcdir)/lxcfs.service $(DESTDIR)$(SYSTEMD_UNIT_DIR)/
|
||||
|
||||
@INIT_SCRIPT_SYSTEMD_TRUE@uninstall-systemd:
|
||||
@INIT_SCRIPT_SYSTEMD_TRUE@ rm -f $(DESTDIR)$(SYSTEMD_UNIT_DIR)/lxcfs.service
|
||||
--
|
||||
2.7.4
|
||||
|
|
@ -1,26 +0,0 @@
|
|||
From 89bf4b64e810e174068e7861490e6d6ab2d14854 Mon Sep 17 00:00:00 2001
|
||||
From: Mark Asselstine <mark.asselstine@windriver.com>
|
||||
Date: Mon, 10 Sep 2018 15:01:54 -0400
|
||||
Subject: [PATCH] systemd: ensure /var/lib/lxcfs exists
|
||||
|
||||
If the directory doesn't exist the service will fail to start.
|
||||
|
||||
Upstream-Status: Inappropriate [embedded specific]
|
||||
|
||||
Signed-off-by: Mark Asselstine <mark.asselstine@windriver.com>
|
||||
---
|
||||
config/init/systemd/lxcfs.service | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
Index: lxcfs-4.0.7/config/init/systemd/lxcfs.service
|
||||
===================================================================
|
||||
--- lxcfs-4.0.7.orig/config/init/systemd/lxcfs.service
|
||||
+++ lxcfs-4.0.7/config/init/systemd/lxcfs.service
|
||||
@@ -5,6 +5,7 @@
|
||||
Documentation=man:lxcfs(1)
|
||||
|
||||
[Service]
|
||||
+ExecStartPre=-/bin/mkdir /var/lib/lxcfs
|
||||
ExecStart=/usr/bin/lxcfs /usr/local/var/lib/lxcfs
|
||||
KillMode=process
|
||||
Restart=on-failure
|
|
@ -0,0 +1,38 @@
|
|||
From 65fcb73cdef34609f28461424672551a6e65327e Mon Sep 17 00:00:00 2001
|
||||
From: Bruce Ashfield <bruce.ashfield@gmail.com>
|
||||
Date: Thu, 3 Aug 2023 15:01:42 +0000
|
||||
Subject: [PATCH] meson.build: force pid open/send_signal detection
|
||||
|
||||
meson is not correctly detecting that our cross build environment
|
||||
has the pid* definitions, which leads to compile errors when internal
|
||||
definitions conflict:
|
||||
|
||||
lxcfs-5.0.4/src/utils.h:45:19: error: static declaration of 'pidfd_open' follows non-static declaration
|
||||
|
||||
We could possibly generate a meson.cross file, and specify it via
|
||||
--cross-file, but we can just force the detection to 'true' as we
|
||||
don't have to support configurations without the functionality.
|
||||
|
||||
Upstream-Status: Inappropriate [OE-Specific]
|
||||
|
||||
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
|
||||
---
|
||||
meson.build | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/meson.build b/meson.build
|
||||
index a0289ad..9480c30 100644
|
||||
--- a/meson.build
|
||||
+++ b/meson.build
|
||||
@@ -143,6 +143,8 @@ foreach ident: [
|
||||
]
|
||||
have = cc.has_function(ident[0], prefix: ident[1], args: '-D_GNU_SOURCE')
|
||||
conf.set10('HAVE_' + ident[0].to_upper(), have)
|
||||
+ conf.set10('HAVE_PIDFD_OPEN', true)
|
||||
+ conf.set10('HAVE_PIDFD_SEND_SIGNAL', true)
|
||||
endforeach
|
||||
|
||||
fuse_version = get_option('fuse-version')
|
||||
--
|
||||
2.39.2
|
||||
|
|
@ -1,26 +1,25 @@
|
|||
SUMMARY = "LXCFS is a userspace filesystem created to avoid kernel limitations"
|
||||
LICENSE = "LGPL-2.1-or-later"
|
||||
|
||||
inherit autotools pkgconfig systemd
|
||||
inherit meson pkgconfig systemd
|
||||
|
||||
SRC_URI = " \
|
||||
https://linuxcontainers.org/downloads/lxcfs/lxcfs-${PV}.tar.gz \
|
||||
file://systemd-allow-for-distinct-build-directory.patch \
|
||||
file://systemd-ensure-var-lib-lxcfs-exists.patch \
|
||||
file://0001-bindings-fix-build-with-newer-linux-libc-headers.patch \
|
||||
file://0001-meson.build-force-pid-open-send_signal-detection.patch \
|
||||
"
|
||||
|
||||
LIC_FILES_CHKSUM = "file://COPYING;md5=29ae50a788f33f663405488bc61eecb1"
|
||||
SRC_URI[md5sum] = "9d963976207fb0ca4701428ae0587aeb"
|
||||
SRC_URI[sha256sum] = "3f28e2f4b04c0090aaf88b72666505f0313768a5254dd48a14c43cf78c543ec8"
|
||||
SRC_URI[md5sum] = "00a6632e094d0a2f2308c8365ac91912"
|
||||
SRC_URI[sha256sum] = "c2b361edc881d5ca8fa2cd3260a4999b8f87afce8d937be2160e5cf0b482c52f"
|
||||
|
||||
DEPENDS += "fuse"
|
||||
DEPENDS += "fuse python3-jinja2-native help2man-native systemd"
|
||||
RDEPENDS:${PN} += "fuse"
|
||||
|
||||
FILES:${PN} += "${datadir}/lxc/config/common.conf.d/*"
|
||||
|
||||
CACHED_CONFIGUREVARS += "ac_cv_path_HELP2MAN='false // No help2man //'"
|
||||
EXTRA_OECONF += "--with-distro=unknown --with-init-script=${VIRTUAL-RUNTIME_init_manager}"
|
||||
# help2man doesn't work, so we disable docs
|
||||
EXTRA_OEMESON += "-Dinit-script=${VIRTUAL-RUNTIME_init_manager} -Ddocs=false"
|
||||
|
||||
SYSTEMD_PACKAGES = "${PN}"
|
||||
SYSTEMD_SERVICE:${PN} = "lxcfs.service"
|
Loading…
Reference in New Issue
Block a user