tools/squashfskit4: fix build on non-linux systems
authorFelix Fietkau <nbd@nbd.name>
Tue, 1 Sep 2020 13:37:14 +0000 (15:37 +0200)
committerFelix Fietkau <nbd@nbd.name>
Tue, 1 Sep 2020 15:01:56 +0000 (17:01 +0200)
The xattr related function calls are linux specific

Signed-off-by: Felix Fietkau <nbd@nbd.name>
tools/squashfskit4/patches/0010-portability.patch [new file with mode: 0644]

diff --git a/tools/squashfskit4/patches/0010-portability.patch b/tools/squashfskit4/patches/0010-portability.patch
new file mode 100644 (file)
index 0000000..2cc50ae
--- /dev/null
@@ -0,0 +1,37 @@
+--- a/squashfs-tools/xattr.c
++++ b/squashfs-tools/xattr.c
+@@ -113,6 +113,7 @@ static int get_prefix(struct xattr_list
+ static int read_xattrs_from_system(char *filename, struct xattr_list **xattrs)
+ {
++#if defined(linux)
+       ssize_t size, vsize;
+       char *xattr_names, *p;
+       int i;
+@@ -222,6 +223,10 @@ failed:
+       free(xattr_list);
+       free(xattr_names);
+       return 0;
++#else
++      *xattrs = NULL;
++      return 0;
++#endif
+ }
+--- a/squashfs-tools/unsquashfs_xattr.c
++++ b/squashfs-tools/unsquashfs_xattr.c
+@@ -34,6 +34,7 @@ extern int user_xattrs;
+ void write_xattr(char *pathname, unsigned int xattr)
+ {
++#if defined(linux)
+       unsigned int count;
+       struct xattr_list *xattr_list;
+       int i;
+@@ -136,4 +137,5 @@ void write_xattr(char *pathname, unsigne
+       }
+       free_xattr(xattr_list, count);
++#endif
+ }