summaryrefslogtreecommitdiffstats
path: root/meta-filesystems
diff options
context:
space:
mode:
authorKhem Raj <raj.khem@gmail.com>2017-07-14 11:34:51 -0700
committerMartin Jansa <Martin.Jansa@gmail.com>2017-07-24 18:57:36 +0200
commite16fef4f4d1ea2ec0fab8d0f3c898e4fcc687343 (patch)
tree62dc691cec050bbefd603ffa189e24403b720129 /meta-filesystems
parent50a3d4e5d3f457356180ad088bd54f7ae48e870a (diff)
downloadmeta-openembedded-e16fef4f4d1ea2ec0fab8d0f3c898e4fcc687343.tar.gz
unionfs-fuse: Fix build with musl
Signed-off-by: Khem Raj <raj.khem@gmail.com> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-filesystems')
-rw-r--r--meta-filesystems/recipes-filesystems/unionfs-fuse/files/0001-unionfs-Define-IOCPARM_LEN-if-undefined.patch62
-rw-r--r--meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.0.bb3
2 files changed, 64 insertions, 1 deletions
diff --git a/meta-filesystems/recipes-filesystems/unionfs-fuse/files/0001-unionfs-Define-IOCPARM_LEN-if-undefined.patch b/meta-filesystems/recipes-filesystems/unionfs-fuse/files/0001-unionfs-Define-IOCPARM_LEN-if-undefined.patch
new file mode 100644
index 000000000..8f991cd3f
--- /dev/null
+++ b/meta-filesystems/recipes-filesystems/unionfs-fuse/files/0001-unionfs-Define-IOCPARM_LEN-if-undefined.patch
@@ -0,0 +1,62 @@
1From 10411fa8658621822ae394160daffaced4a4cd7f Mon Sep 17 00:00:00 2001
2From: Khem Raj <raj.khem@gmail.com>
3Date: Thu, 13 Jul 2017 23:07:29 -0700
4Subject: [PATCH] unionfs: Define IOCPARM_LEN if undefined
5
6musl does not have sysctl.h which defines this
7for glibc
8
9Signed-off-by: Khem Raj <raj.khem@gmail.com>
10---
11 src/unionfs.c | 8 --------
12 src/unionfs.h | 15 +++++++++++++++
13 2 files changed, 15 insertions(+), 8 deletions(-)
14
15diff --git a/src/unionfs.c b/src/unionfs.c
16index a34d34e..51684a7 100644
17--- a/src/unionfs.c
18+++ b/src/unionfs.c
19@@ -21,14 +21,6 @@
20 #include "opts.h"
21 #include "usyslog.h"
22
23-#ifndef _IOC_SIZE
24-#ifdef IOCPARM_LEN
25-#define _IOC_SIZE(x) IOCPARM_LEN(x)
26-#else
27-#error "No mechanism for determining ioctl length found."
28-#endif
29-#endif
30-
31 static struct fuse_opt unionfs_opts[] = {
32 FUSE_OPT_KEY("chroot=%s,", KEY_CHROOT),
33 FUSE_OPT_KEY("cow", KEY_COW),
34diff --git a/src/unionfs.h b/src/unionfs.h
35index 8f5e0bf..b02de5a 100644
36--- a/src/unionfs.h
37+++ b/src/unionfs.h
38@@ -17,6 +17,21 @@
39 #define FUSE_META_FILE ".fuse_hidden"
40 #define FUSE_META_LENGTH 12
41
42+#ifndef IOCPARM_MASK
43+#define IOCPARM_MASK 0x1FFF
44+#endif
45+#ifndef IOCPARM_LEN
46+#define IOCPARM_LEN(a) (((a) >> 16) & IOCPARM_MASK)
47+#endif
48+
49+#ifndef _IOC_SIZE
50+#ifdef IOCPARM_LEN
51+#define _IOC_SIZE(x) IOCPARM_LEN(x)
52+#else
53+#error "No mechanism for determining ioctl length found."
54+#endif
55+#endif
56+
57 // file access protection mask
58 #define S_PROT_MASK (S_ISUID| S_ISGID | S_ISVTX | S_IRWXU | S_IRWXG | S_IRWXO)
59
60--
612.13.2
62
diff --git a/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.0.bb b/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.0.bb
index b89d8db15..6bedf16b0 100644
--- a/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.0.bb
+++ b/meta-filesystems/recipes-filesystems/unionfs-fuse/unionfs-fuse_2.0.bb
@@ -8,7 +8,8 @@ LIC_FILES_CHKSUM = "file://src/unionfs.c;beginline=3;endline=8;md5=30fa8de70fd8a
8 8
9SRC_URI = "git://github.com/rpodgorny/${BPN}.git;branch=master \ 9SRC_URI = "git://github.com/rpodgorny/${BPN}.git;branch=master \
10 file://0001-support-cross-compiling.patch \ 10 file://0001-support-cross-compiling.patch \
11" 11 file://0001-unionfs-Define-IOCPARM_LEN-if-undefined.patch \
12 "
12SRCREV = "c8d23a9a75f1a62988593671839e8a168a79f3e5" 13SRCREV = "c8d23a9a75f1a62988593671839e8a168a79f3e5"
13 14
14DEPENDS = "fuse" 15DEPENDS = "fuse"