Skip to content

Commit

Permalink
package/squashfs: fix build on hosts with glibc >= 2.28
Browse files Browse the repository at this point in the history
Since glibc 2.28, sys/sysmacros.h is no longer included from sys/types.h
This patch fixes the resulting build error by explicitly including
sys/sysmacros.h

See also plougher/squashfs-tools#52

Signed-off-by: Richard Kunze <richard.kunze@web.de>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
  • Loading branch information
rkunze authored and jacmet committed Sep 1, 2018
1 parent d114494 commit ed0e556
Showing 1 changed file with 47 additions and 0 deletions.
47 changes: 47 additions & 0 deletions package/squashfs/0001-include-sysmacros.patch
@@ -0,0 +1,47 @@
From 968aa53dd6d2c0831a9af01873441767c06b88d0 Mon Sep 17 00:00:00 2001
From: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Date: Wed, 1 Aug 2018 12:17:10 +0200
Subject: [PATCH] mksquashfs/unsquashfs: fix compilation with glibc 2.25+
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

From glibc 2.25 release notes:
https://sourceware.org/ml/libc-alpha/2017-02/msg00079.html
"* The inclusion of <sys/sysmacros.h> by <sys/types.h> is deprecated.
This means that in a future release, the macros “major”, “minor”, and
“makedev” will only be available from <sys/sysmacros.h>."

See glibc bug https://sourceware.org/bugzilla/show_bug.cgi?id=19239 .

Fetch from: https://github.com/plougher/squashfs-tools/pull/52.patch
Signed-off-by: Richard Kunze <richard.kunze@web.de>
---
squashfs-tools/mksquashfs.c | 1 +
squashfs-tools/unsquashfs.c | 1 +
2 files changed, 2 insertions(+)

diff --git a/squashfs-tools/mksquashfs.c b/squashfs-tools/mksquashfs.c
index d696a51..8d57c3e 100644
--- a/squashfs-tools/mksquashfs.c
+++ b/squashfs-tools/mksquashfs.c
@@ -35,6 +35,7 @@
#include <stddef.h>
#include <sys/types.h>
#include <sys/stat.h>
+#include <sys/sysmacros.h>
#include <fcntl.h>
#include <errno.h>
#include <dirent.h>
diff --git a/squashfs-tools/unsquashfs.c b/squashfs-tools/unsquashfs.c
index a57f85c..a492b27 100644
--- a/squashfs-tools/unsquashfs.c
+++ b/squashfs-tools/unsquashfs.c
@@ -33,6 +33,7 @@
#include "fnmatch_compat.h"

#include <sys/sysinfo.h>
+#include <sys/sysmacros.h>
#include <sys/types.h>
#include <sys/time.h>
#include <sys/resource.h>

0 comments on commit ed0e556

Please sign in to comment.