summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--system/jfsutils/APKBUILD6
-rw-r--r--system/jfsutils/modern-gcc.patch72
2 files changed, 76 insertions, 2 deletions
diff --git a/system/jfsutils/APKBUILD b/system/jfsutils/APKBUILD
index cf9d19a1e..e02cf1f62 100644
--- a/system/jfsutils/APKBUILD
+++ b/system/jfsutils/APKBUILD
@@ -2,7 +2,7 @@
# Maintainer: A. Wilcox <awilfox@adelielinux.org>
pkgname=jfsutils
pkgver=1.1.15
-pkgrel=3
+pkgrel=4
pkgdesc="JFS filesystem utilities"
url="http://jfs.sourceforge.net"
arch="all"
@@ -14,6 +14,7 @@ source="http://jfs.sourceforge.net/project/pub/jfsutils-$pkgver.tar.gz
musl-fix-includes.patch
missing-stdinth.patch
sysmacros.patch
+ modern-gcc.patch
"
build() {
@@ -36,4 +37,5 @@ package() {
sha512sums="fa8ba7f4997471da3e6ea7239564f3395046222cfbb2b10e37b24ad0bd107b7eadbb51ce328d89d193034360b4035ca5e0e5b0b416a74483d7a2c0a2b9c65858 jfsutils-1.1.15.tar.gz
fb0d7348e2e13a6a9c3a987d161e0cf05363649515366ef49a45e3580b8f6135fce8465b99ff8a351231d970371c00bea6ceb9edb1d0f24da20d261b06ec85bd musl-fix-includes.patch
a8e2332f2dec37affa8404b31e7e68399d815d450422ad342243c51d117e4d7ef4aaa0e30d1389380a81ed076a7ef1e1d41fcf260fa05ce4d823aa779628982d missing-stdinth.patch
-9e5006bcee7595ee978bdd6791867a22de26b241dcd8d19b84a7694b3de11b20adcfd46d7999062663bdabf985abe3a53865089fdc219ecfe5476f2dcb93eaff sysmacros.patch"
+9e5006bcee7595ee978bdd6791867a22de26b241dcd8d19b84a7694b3de11b20adcfd46d7999062663bdabf985abe3a53865089fdc219ecfe5476f2dcb93eaff sysmacros.patch
+8571affb0af6e4b5613e361ce69693be2b481ca0d18c5461ab248baa3946afa3370801469f3b215acf5085267acbd4b2f9e7819cfa59ae1014c47c638b641916 modern-gcc.patch"
diff --git a/system/jfsutils/modern-gcc.patch b/system/jfsutils/modern-gcc.patch
new file mode 100644
index 000000000..24476df7b
--- /dev/null
+++ b/system/jfsutils/modern-gcc.patch
@@ -0,0 +1,72 @@
+Fix building with GCC 10 or later.
+
+Based-on: https://sources.debian.org/patches/jfsutils/1.1.15-5/gcc10_fix-1.patch/
+Source: https://gitweb.gentoo.org/repo/gentoo.git/plain/sys-fs/jfsutils/files/jfsutils-1.1.15-gcc10.patch
+
+--- jfsutils-1.1.15/fscklog/display.c
++++ jfsutils-1.1.15/fscklog/display.c
+@@ -54,7 +54,7 @@
+ * output: fsck extracted service log I/O buffer
+ *
+ */
+-char xchklog_buffer[XCHKLOG_BUFSIZE];
++static char xchklog_buffer[XCHKLOG_BUFSIZE];
+
+ /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ *
+--- jfsutils-1.1.15/libfs/logredo.c
++++ jfsutils-1.1.15/libfs/logredo.c
+@@ -87,9 +87,9 @@
+ * S T U F F F O R T H E L O G
+ *
+ */
+-struct logsuper logsup; /* log super block */
+-int32_t numdoblk; /* number of do blocks used */
+-int32_t numnodofile; /* number of nodo file blocks used */
++static struct logsuper logsup; /* log super block */
++static int32_t numdoblk; /* number of do blocks used */
++static int32_t numnodofile; /* number of nodo file blocks used */
+ int32_t numExtDtPg = 0; /* number of extended dtpage blocks used */
+
+ /*
+@@ -129,7 +129,7 @@
+ */
+
+ /* buffer header table */
+-struct bufhdr {
++static struct bufhdr {
+ int16_t next; /* 2: next on free/lru list */
+ int16_t prev; /* 2: previous on free/lru list */
+ int16_t hnext; /* 2: next on hash chain */
+@@ -142,7 +142,7 @@
+ } bufhdr[NBUFPOOL]; /* (24) */
+
+ /* buffer table */
+-struct bufpool {
++static struct bufpool {
+ char bytes[PSIZE];
+ } buffer[NBUFPOOL - 1];
+
+@@ -151,15 +151,16 @@
+ *
+ * log has its own 4 page buffer pool.
+ */
+-uint8_t afterdata[LOGPSIZE * 2]; /* buffer to read in redopage data */
++static uint8_t afterdata[LOGPSIZE * 2]; /* buffer to read in redopage data */
+
+ /*
+ * Miscellaneous
+ */
+-caddr_t prog; /* Program name */
+-int32_t mntcnt, bufsize;
+-char *mntinfo;
+-int32_t retcode; /* return code from logredo */
++static caddr_t prog; /* Program name */
++extern int32_t mntcnt;
++static int32_t bufsize;
++static char *mntinfo;
++static int32_t retcode; /* return code from logredo */
+ int end_of_transaction = 0;
+
+ /*
+