gnu: base: Fix a bug that occurs in non-Linux systems.

* gnu/packages/base.scm (tar): Apply patch.
* gnu/packages/patches/tar-d_ino_in_dirent-fix.patch: New file.
* gnu-system.am (dist_patch_DATA): Add it.
master
Manolis Ragkousis 2015-05-21 16:47:26 +03:00
parent dedaf76f66
commit 94d915d0b0
3 changed files with 36 additions and 1 deletions

View File

@ -541,6 +541,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-sigusr1.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
gnu/packages/patches/tar-d_ino_in_dirent-fix.patch \
gnu/packages/patches/tcsh-fix-autotest.patch \
gnu/packages/patches/teckit-cstdio.patch \
gnu/packages/patches/texi2html-document-encoding.patch \

View File

@ -136,7 +136,8 @@ implementation offers several extensions over the standard utility.")
version ".tar.xz"))
(sha256
(base32
"1wi2zwm4c9r3h3b8y4w0nm0qq897kn8kyj9k22ba0iqvxj48vvk4"))))
"1wi2zwm4c9r3h3b8y4w0nm0qq897kn8kyj9k22ba0iqvxj48vvk4"))
(patches (list (search-patch "tar-d_ino_in_dirent-fix.patch")))))
(build-system gnu-build-system)
(synopsis "Managing tar archives")
(description

View File

@ -0,0 +1,33 @@
commit e9ddc08da0982f36581ae5a8c7763453ff41cfe8
Author: Sergey Poznyakoff <gray@gnu.org>
Date: Thu Sep 25 00:22:16 2014 +0300
Bugfixes.
* doc/tar.1: Fix typo in font spec.
* src/tar.c (sort_mode_arg, sort_mode_flag): Protect "inode"
(SAVEDIR_SORT_INODE) with D_INO_IN_DIRENT
diff --git a/src/tar.c b/src/tar.c
index 225c624..f8102e0 100644
--- a/src/tar.c
+++ b/src/tar.c
@@ -1341,14 +1341,18 @@ static char filename_terminator;
static char const *const sort_mode_arg[] = {
"none",
"name",
+#if D_INO_IN_DIRENT
"inode",
+#endif
NULL
};
static int sort_mode_flag[] = {
SAVEDIR_SORT_NONE,
SAVEDIR_SORT_NAME,
+#if D_INO_IN_DIRENT
SAVEDIR_SORT_INODE
+#endif
};
ARGMATCH_VERIFY (sort_mode_arg, sort_mode_flag);