--- /dev/null
+From 05a895b3f996d1ac157d95b04980f5f047e7dbf7 Mon Sep 17 00:00:00 2001
+From: Ross Burton <ross.burton@arm.com>
+Date: Fri, 6 Jun 2025 15:23:07 +0100
+Subject: [PATCH] print_pager: add missing includes
+
+When building with musl:
+
+ print_pager.h:33:25: error: unknown type name 'pid_t'
+ 33 | extern void wait_to_die(pid_t process);
+ | ^~~~~
+ print_pager.h:34:25: error: unknown type name 'pid_t'
+ 34 | extern FILE *exec_pager(pid_t *process);
+ | ^~~~~
+
+print_pager.h uses pid_t and FILE, so add the required #includes to
+ensure that these are defined.
+
+Upstream-Status: Submitted [https://github.com/plougher/squashfs-tools/pull/314]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+---
+ squashfs-tools/print_pager.h | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git a/squashfs-tools/print_pager.h b/squashfs-tools/print_pager.h
+index c33d4d2e..f3e0da6c 100644
+--- a/squashfs-tools/print_pager.h
++++ b/squashfs-tools/print_pager.h
+@@ -30,6 +30,9 @@
+ #define MORE_PAGER 2
+ #define UNKNOWN_PAGER 3
+
++#include <stdio.h>
++#include <sys/types.h>
++
+ extern void wait_to_die(pid_t process);
+ extern FILE *exec_pager(pid_t *process);
+ extern int get_column_width();
+--
+2.43.0
+
--- /dev/null
+From b6e9f4b62cc3e762ceeddc0fc099f7d65f7b7361 Mon Sep 17 00:00:00 2001
+From: Shiji Yang <yangshiji66@outlook.com>
+Date: Wed, 4 Jun 2025 19:53:39 +0800
+Subject: [PATCH] thread: add the missing pthread.h header
+
+Fix build error on macos:
+
+In file included from mksquashfs_help.c:35:
+./thread.h:46:39: error: unknown type name 'pthread_mutex_t'; did you mean 'pthread_attr_t'?
+ 46 | extern void wait_thread_idle(int tid, pthread_mutex_t *mutex);
+ | ^~~~~~~~~~~~~~~
+ | pthread_attr_t
+
+Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
+
+Upstream-Status: Backport [b6e9f4b62cc3e762ceeddc0fc099f7d65f7b7361]
+Signed-off-by: Ross Burton <ross.burton@arm.com>
+---
+ squashfs-tools/thread.h | 1 +
+ 1 file changed, 1 insertion(+)
+
+diff --git a/squashfs-tools/thread.h b/squashfs-tools/thread.h
+index 5a22fc43..e56a58cf 100644
+--- a/squashfs-tools/thread.h
++++ b/squashfs-tools/thread.h
+@@ -22,6 +22,7 @@
+ *
+ * thread.h
+ */
++#include <pthread.h>
+
+ #define TRUE 1
+ #define FALSE 0
LICENSE = "GPL-2.0-only"
LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263"
-SRC_URI = "git://github.com/plougher/squashfs-tools.git;protocol=https;branch=v6.1.1"
-SRCREV = "d8cb82d9840330f9344ec37b992595b5d7b44184"
+SRC_URI = "git://github.com/plougher/squashfs-tools.git;protocol=https;branch=master;tag=${PV} \
+ file://pid.patch \
+ file://thread.patch"
+SRCREV = "2e87d42ed089dc31990d83eeb07437b9d085d6d1"
UPSTREAM_CHECK_GITTAGREGEX = "(?P<pver>(\d+(\.\d+)+))"
EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS}"
-PACKAGECONFIG ??= "gzip xz lzo lz4 lzma xattr zstd reproducible"
+PACKAGECONFIG ??= "gzip xz lzo lz4 lzma xattr zstd"
PACKAGECONFIG[gzip] = "GZIP_SUPPORT=1,GZIP_SUPPORT=0,zlib"
PACKAGECONFIG[xz] = "XZ_SUPPORT=1,XZ_SUPPORT=0,xz"
PACKAGECONFIG[lzo] = "LZO_SUPPORT=1,LZO_SUPPORT=0,lzo"
PACKAGECONFIG[lzma] = "LZMA_XZ_SUPPORT=1,LZMA_XZ_SUPPORT=0,xz"
PACKAGECONFIG[xattr] = "XATTR_SUPPORT=1,XATTR_SUPPORT=0,attr"
PACKAGECONFIG[zstd] = "ZSTD_SUPPORT=1,ZSTD_SUPPORT=0,zstd"
-PACKAGECONFIG[reproducible] = "REPRODUCIBLE_DEFAULT=1,REPRODUCIBLE_DEFAULT=0,"
do_compile() {
- cd ${S}/squashfs-tools
- oe_runmake all
+ oe_runmake -C ${S}/squashfs-tools all
}
do_install() {
- cd ${S}/squashfs-tools
+ oe_runmake -C ${S}/squashfs-tools install INSTALL_PREFIX=${D}${prefix} INSTALL_MANPAGES_DIR=${D}${datadir}/man/man1
+
install -d "${D}${includedir}"
- oe_runmake install INSTALL_PREFIX=${D}${prefix} INSTALL_MANPAGES_DIR=${D}${datadir}/man/man1
install -m 0644 "${S}"/squashfs-tools/squashfs_fs.h "${D}${includedir}"
}