[meta-filesystems,v3] overlayfs-progs: add new recipe

Message ID 20220523174430.2485833-1-uvv.mail@gmail.com
State Under Review
Headers show
Series [meta-filesystems,v3] overlayfs-progs: add new recipe | expand

Commit Message

Vyacheslav Yurkov May 23, 2022, 5:44 p.m. UTC
From: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>

overlayfs-progs contains fsck.overlay, which is used to check and optionally
repair underlying directories of overlay-filesystem.

Signed-off-by: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
---
 ...-Makefile-proper-location-of-LDFLAGS.patch | 30 +++++++++++++++++
 .../overlayfs/overlayfs-progs_git.bb          | 32 +++++++++++++++++++
 2 files changed, 62 insertions(+)
 create mode 100644 meta-filesystems/recipes-utils/overlayfs/overlayfs-progs/0001-Makefile-proper-location-of-LDFLAGS.patch
 create mode 100644 meta-filesystems/recipes-utils/overlayfs/overlayfs-progs_git.bb

Patch

diff --git a/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs/0001-Makefile-proper-location-of-LDFLAGS.patch b/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs/0001-Makefile-proper-location-of-LDFLAGS.patch
new file mode 100644
index 000000000..d9f285d94
--- /dev/null
+++ b/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs/0001-Makefile-proper-location-of-LDFLAGS.patch
@@ -0,0 +1,30 @@ 
+From 8eeaee82dcfdf47f16ad880e416b722827f41bdb Mon Sep 17 00:00:00 2001
+From: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
+Date: Mon, 23 May 2022 19:37:32 +0200
+Subject: [PATCH] Makefile: proper location of LDFLAGS
+
+Signed-off-by: Vyacheslav Yurkov <Vyacheslav.Yurkov@bruker.com>
+---
+ Makefile | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/Makefile b/Makefile
+index e3c5207..14b155e 100644
+--- a/Makefile
++++ b/Makefile
+@@ -1,5 +1,5 @@
+ CFLAGS = -Wall -g
+-LFLAGS = -lm
++LDFLAGS = -lm
+ CC = gcc
+ 
+ all: overlay
+@@ -7,7 +7,7 @@ all: overlay
+ objects = fsck.o common.o lib.o check.o mount.o path.o overlayfs.o
+ 
+ overlay: $(objects)
+-	$(CC) $(LFLAGS) $(objects) -o fsck.overlay
++	$(CC) $(objects) -o fsck.overlay $(LDFLAGS) 
+ 
+ .c.o:
+ 	$(CC) $(CFLAGS) -c $<
diff --git a/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs_git.bb b/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs_git.bb
new file mode 100644
index 000000000..9d58b9a63
--- /dev/null
+++ b/meta-filesystems/recipes-utils/overlayfs/overlayfs-progs_git.bb
@@ -0,0 +1,32 @@ 
+SUMMARY = "File system check utility for OverlayFS"
+HOMEPAGE = "https://github.com/hisilicon/overlayfs-progs"
+LICENSE = "PD"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/PD;md5=b3597d12946881e13cb3b548d1173851"
+
+SRC_URI = "\
+    git://github.com/hisilicon/overlayfs-progs.git;protocol=https;branch=master \
+    file://0001-Makefile-proper-location-of-LDFLAGS.patch \
+"
+
+PV = "1.0+git${SRCPV}"
+SRCREV = "e10ef686570d9c7eff42f52461593a5c15da56bd"
+
+S = "${WORKDIR}/git"
+B = "${S}"
+
+# Required to have the fts.h header for musl
+DEPENDS:append:libc-musl = " fts"
+# Fix the missing fts libs when using musl
+EXTRA_OEMAKE:append:libc-musl = " LDFLAGS='-lfts'"
+
+EXTRA_OEMAKE += "'CC=${CC} -O2' "
+TARGET_CC_ARCH += "${LDFLAGS}"
+
+do_compile () {
+    oe_runmake
+}
+
+do_install () {
+    install -d ${D}${bindir}
+    install -m 0755 ${B}/fsck.overlay ${D}${bindir}
+}