squashfs-tools: Mark as incompatible with musl

Silently ignoring FNM_EXTMATCH makes fnmatch()
behave different from what callers expect.

Mark as incompatible with musl instead of risking
broken runtime behaviour.

The practical consequences should be small since
what is used in OE is mainly squashfs-tools-native.

(From OE-Core rev: c9aed6a84c0a33fee8a52603b22cc2b78928eb5f)

Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Adrian Bunk
2019-05-22 11:29:54 +03:00
committed by Richard Purdie
parent 919d8bd056
commit c6dbd6c528
2 changed files with 3 additions and 46 deletions

View File

@@ -1,39 +1,8 @@
Define FNM_EXTMATCH if not defined its glibc specific define
include missing sys/stat.h for stat* function declarations
Upstream-Status: Pending
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Index: squashfs-tools/action.c
===================================================================
--- squashfs-tools.orig/action.c
+++ squashfs-tools/action.c
@@ -44,6 +44,10 @@
#include "action.h"
#include "error.h"
+#if !defined(FNM_EXTMATCH)
+#define FNM_EXTMATCH 0
+#endif
+
/*
* code to parse actions
*/
Index: squashfs-tools/mksquashfs.c
===================================================================
--- squashfs-tools.orig/mksquashfs.c
+++ squashfs-tools/mksquashfs.c
@@ -1261,6 +1261,10 @@ void write_dir(squashfs_inode *inode, st
dir_size + 3, directory_block, directory_offset, NULL, NULL,
dir, 0);
+#if !defined(FNM_EXTMATCH)
+#define FNM_EXTMATCH 0
+#endif
+
#ifdef SQUASHFS_TRACE
{
unsigned char *dirp;
Index: squashfs-tools/pseudo.c
===================================================================
--- squashfs-tools.orig/pseudo.c
@@ -46,18 +15,3 @@ Index: squashfs-tools/pseudo.c
#include <ctype.h>
#include "pseudo.h"
Index: squashfs-tools/unsquashfs.c
===================================================================
--- squashfs-tools.orig/unsquashfs.c
+++ squashfs-tools/unsquashfs.c
@@ -42,6 +42,10 @@
#include <sys/sysmacros.h>
#endif
+#ifndef FNM_EXTMATCH
+#define FNM_EXTMATCH 0
+#endif
+
struct cache *fragment_cache, *data_cache;
struct queue *to_reader, *to_inflate, *to_writer, *from_writer;
pthread_t *thread, *inflator_thread;

View File

@@ -19,6 +19,9 @@ SRC_URI[lzma.sha256sum] = "c935fd04dd8e0e8c688a3078f3675d699679a90be81c12686837e
S = "${WORKDIR}/git/squashfs-tools"
# needs FNM_EXTMATCH
COMPATIBLE_HOST_libc-musl = 'null'
EXTRA_OEMAKE = "${PACKAGECONFIG_CONFARGS}"
PACKAGECONFIG ??= "gzip xz lzo lz4 lzma xattr"