mblaze: fix compilation with musl 1.2.4
authorTianling Shen <cnsztl@immortalwrt.org>
Wed, 17 May 2023 12:10:04 +0000 (20:10 +0800)
committerNick Hainke <vincent@systemli.org>
Wed, 17 May 2023 12:52:12 +0000 (14:52 +0200)
musl 1.2.4 deprecated legacy "LFS64" ("large file support") interfaces so
just having _GNU_SOURCE defined is not enough anymore.

Backport an upstream fix to replace these old data types.

Signed-off-by: Tianling Shen <cnsztl@immortalwrt.org>
mail/mblaze/Makefile
mail/mblaze/patches/010-mlist-use-fixed-width-integer-types-for-struct-linux_dire.patch [new file with mode: 0644]

index 98baddfc6ff4d3f28058f7870a37548262a467f5..621fdbd04d8eaa264562add50d76791cd7927886 100644 (file)
@@ -2,7 +2,7 @@ include $(TOPDIR)/rules.mk
 
 PKG_NAME:=mblaze
 PKG_VERSION:=1.2
-PKG_RELEASE:=2
+PKG_RELEASE:=3
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=https://leahneukirchen.org/releases
diff --git a/mail/mblaze/patches/010-mlist-use-fixed-width-integer-types-for-struct-linux_dire.patch b/mail/mblaze/patches/010-mlist-use-fixed-width-integer-types-for-struct-linux_dire.patch
new file mode 100644 (file)
index 0000000..1ea1dae
--- /dev/null
@@ -0,0 +1,23 @@
+From 1babebc12c3ea8d3395f00c9607e863866c190fc Mon Sep 17 00:00:00 2001
+From: Michael Forney <mforney@mforney.org>
+Date: Wed, 7 Dec 2022 13:11:58 -0800
+Subject: [PATCH] mlist: use fixed-width integer types for struct
+ linux_dirent64 d_ino and d_off
+
+---
+ mlist.c | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/mlist.c
++++ b/mlist.c
+@@ -111,8 +111,8 @@ list(char *prefix, char *file)
+ #include <sys/syscall.h>
+ struct linux_dirent64 {
+-      ino64_t d_ino;           /* 64-bit inode number */
+-      off64_t d_off;           /* 64-bit offset to next structure */
++      uint64_t d_ino;          /* 64-bit inode number */
++      int64_t d_off;           /* 64-bit offset to next structure */
+       unsigned short d_reclen; /* Size of this dirent */
+       unsigned char d_type;    /* File type */
+       char d_name[];           /* Filename (null-terminated) */