diff options
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/file-systems.scm | 1 | ||||
-rw-r--r-- | gnu/packages/patches/jfsutils-gcc-compat.patch | 72 |
2 files changed, 73 insertions, 0 deletions
diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index eb424224b9..e2335b8a86 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -576,6 +576,7 @@ single file can be mounted.") (sha256 (base32 "0kbsy2sk1jv4m82rxyl25gwrlkzvl3hzdga9gshkxkhm83v1aji4")) (patches (search-patches "jfsutils-add-sysmacros.patch" + "jfsutils-gcc-compat.patch" "jfsutils-include-systypes.patch")))) (build-system gnu-build-system) (inputs diff --git a/gnu/packages/patches/jfsutils-gcc-compat.patch b/gnu/packages/patches/jfsutils-gcc-compat.patch new file mode 100644 index 0000000000..45b6ec25a1 --- /dev/null +++ b/gnu/packages/patches/jfsutils-gcc-compat.patch @@ -0,0 +1,72 @@ +Various fixes for building with GCC 10. + +Taken from Debian: +https://sources.debian.org/patches/jfsutils/1.1.15-5/gcc10_fix-1.patch/ + +--- jfsutils-1.1.15.old/fscklog/display.c 2005-11-22 21:43:54.000000000 +0100 ++++ jfsutils-1.1.15.new/fscklog/display.c 2020-05-21 18:15:13.410617620 +0200 +@@ -54,7 +54,7 @@ + * output: fsck extracted service log I/O buffer + * + */ +-char xchklog_buffer[XCHKLOG_BUFSIZE]; ++static char xchklog_buffer[XCHKLOG_BUFSIZE]; + + /* + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + * +diff -ur --exclude '*.o' --exclude '*.a' jfsutils-1.1.15.old/libfs/logredo.c jfsutils-1.1.15.new/libfs/logredo.c +--- jfsutils-1.1.15.old/libfs/logredo.c 2005-11-22 21:43:55.000000000 +0100 ++++ jfsutils-1.1.15.new/libfs/logredo.c 2020-05-21 18:19:44.927703271 +0200 +@@ -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; + + /* |