Compare commits
1 commit
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
97b70fdff3 |
2 changed files with 120 additions and 12 deletions
100
dc3dd-30_fix-FTBFS-with-glibc-2.28.patch
Normal file
100
dc3dd-30_fix-FTBFS-with-glibc-2.28.patch
Normal file
|
|
@ -0,0 +1,100 @@
|
||||||
|
Description: fix a FTBFS with glibc 2.28
|
||||||
|
Author: mschlenker
|
||||||
|
Origin: https://aur.archlinux.org/packages/dc3dd/
|
||||||
|
Bug-Debian: https://bugs.debian.org/915431
|
||||||
|
Forwarded: https://sourceforge.net/p/dc3dd/bugs/19/
|
||||||
|
Reviewed-By: Joao Eriberto Mota Filho <eriberto@debian.org>
|
||||||
|
Last-Update: 2018-10-17
|
||||||
|
--- dc3dd-7.2.646.orig/lib/fpurge.c
|
||||||
|
+++ dc3dd-7.2.646/lib/fpurge.c
|
||||||
|
@@ -61,7 +61,7 @@ fpurge (FILE *fp)
|
||||||
|
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||||
|
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||||
|
fast macros. */
|
||||||
|
-# if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
fp->_IO_read_end = fp->_IO_read_ptr;
|
||||||
|
fp->_IO_write_ptr = fp->_IO_write_base;
|
||||||
|
/* Avoid memory leak when there is an active ungetc buffer. */
|
||||||
|
--- dc3dd-7.2.646.orig/lib/freadahead.c
|
||||||
|
+++ dc3dd-7.2.646/lib/freadahead.c
|
||||||
|
@@ -24,7 +24,7 @@
|
||||||
|
size_t
|
||||||
|
freadahead (FILE *fp)
|
||||||
|
{
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
if (fp->_IO_write_ptr > fp->_IO_write_base)
|
||||||
|
return 0;
|
||||||
|
return (fp->_IO_read_end - fp->_IO_read_ptr)
|
||||||
|
--- dc3dd-7.2.646.orig/lib/freading.c
|
||||||
|
+++ dc3dd-7.2.646/lib/freading.c
|
||||||
|
@@ -31,7 +31,7 @@ freading (FILE *fp)
|
||||||
|
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||||
|
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||||
|
fast macros. */
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
return ((fp->_flags & _IO_NO_WRITES) != 0
|
||||||
|
|| ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0
|
||||||
|
&& fp->_IO_read_base != NULL));
|
||||||
|
--- dc3dd-7.2.646.orig/lib/freadptr.c
|
||||||
|
+++ dc3dd-7.2.646/lib/freadptr.c
|
||||||
|
@@ -29,7 +29,7 @@ freadptr (FILE *fp, size_t *sizep)
|
||||||
|
size_t size;
|
||||||
|
|
||||||
|
/* Keep this code in sync with freadahead! */
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
if (fp->_IO_write_ptr > fp->_IO_write_base)
|
||||||
|
return NULL;
|
||||||
|
size = fp->_IO_read_end - fp->_IO_read_ptr;
|
||||||
|
--- dc3dd-7.2.646.orig/lib/freadseek.c
|
||||||
|
+++ dc3dd-7.2.646/lib/freadseek.c
|
||||||
|
@@ -34,7 +34,7 @@ static inline void
|
||||||
|
freadptrinc (FILE *fp, size_t increment)
|
||||||
|
{
|
||||||
|
/* Keep this code in sync with freadptr! */
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
fp->_IO_read_ptr += increment;
|
||||||
|
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
|
||||||
|
fp_->_p += increment;
|
||||||
|
--- dc3dd-7.2.646.orig/lib/fseeko.c
|
||||||
|
+++ dc3dd-7.2.646/lib/fseeko.c
|
||||||
|
@@ -44,7 +44,7 @@ rpl_fseeko (FILE *fp, off_t offset, int
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/* These tests are based on fpurge.c. */
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
if (fp->_IO_read_end == fp->_IO_read_ptr
|
||||||
|
&& fp->_IO_write_ptr == fp->_IO_write_base
|
||||||
|
&& fp->_IO_save_base == NULL)
|
||||||
|
--- dc3dd-7.2.646.orig/lib/fseterr.c
|
||||||
|
+++ dc3dd-7.2.646/lib/fseterr.c
|
||||||
|
@@ -29,7 +29,7 @@ fseterr (FILE *fp)
|
||||||
|
/* Most systems provide FILE as a struct and the necessary bitmask in
|
||||||
|
<stdio.h>, because they need it for implementing getc() and putc() as
|
||||||
|
fast macros. */
|
||||||
|
-#if defined _IO_ferror_unlocked || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Linux libc5 */
|
||||||
|
fp->_flags |= _IO_ERR_SEEN;
|
||||||
|
#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, MacOS X, Cygwin */
|
||||||
|
fp_->_flags |= __SERR;
|
||||||
|
--- dc3dd-7.2.646.orig/lib/stdio-impl.h
|
||||||
|
+++ dc3dd-7.2.646/lib/stdio-impl.h
|
||||||
|
@@ -18,6 +18,13 @@
|
||||||
|
the same implementation of stdio extension API, except that some fields
|
||||||
|
have different naming conventions, or their access requires some casts. */
|
||||||
|
|
||||||
|
+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this
|
||||||
|
+ problem by defining it ourselves. FIXME: Do not rely on glibc
|
||||||
|
+ internals. */
|
||||||
|
+
|
||||||
|
+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN
|
||||||
|
+# define _IO_IN_BACKUP 0x100
|
||||||
|
+#endif
|
||||||
|
|
||||||
|
/* BSD stdio derived implementations. */
|
||||||
|
|
||||||
32
dc3dd.spec
32
dc3dd.spec
|
|
@ -1,6 +1,6 @@
|
||||||
Name: dc3dd
|
Name: dc3dd
|
||||||
Version: 7.2.646
|
Version: 7.2.646
|
||||||
Release: 7%{?dist}
|
Release: 8%{?dist}
|
||||||
Summary: Patched version of GNU dd for use in computer forensics
|
Summary: Patched version of GNU dd for use in computer forensics
|
||||||
|
|
||||||
License: GPLv2+ and GPLv3+
|
License: GPLv2+ and GPLv3+
|
||||||
|
|
@ -11,6 +11,11 @@ Source0: http://downloads.sourceforge.net/dc3dd/%{name}-%{version}.7z
|
||||||
#Removing the check for AM_C_PROTOTYPES
|
#Removing the check for AM_C_PROTOTYPES
|
||||||
Patch0: dc3dd-automake.patch
|
Patch0: dc3dd-automake.patch
|
||||||
|
|
||||||
|
# Original Archlinux patch to fix build wiht recent libtools version
|
||||||
|
# Author: mschlenker
|
||||||
|
Patch1: dc3dd-30_fix-FTBFS-with-glibc-2.28.patch
|
||||||
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: git
|
BuildRequires: git
|
||||||
BuildRequires: gettext
|
BuildRequires: gettext
|
||||||
|
|
@ -25,30 +30,30 @@ dc3dd is a patched version of GNU dd to include a number of features useful
|
||||||
for computer forensics. Many of these features were inspired by dcfldd, but
|
for computer forensics. Many of these features were inspired by dcfldd, but
|
||||||
were rewritten for dc3dd.
|
were rewritten for dc3dd.
|
||||||
|
|
||||||
* Pattern writes. The program can write a single hexadecimal value or a
|
* Pattern writes. The program can write a single hexadecimal value or a
|
||||||
text string to the output device for wiping purposes.
|
text string to the output device for wiping purposes.
|
||||||
* Piecewise and overall hashing with multiple algorithms and variable
|
* Piecewise and overall hashing with multiple algorithms and variable
|
||||||
size windows. Supports MD5, SHA-1, SHA-256, and SHA-512. Hashes can be
|
size windows. Supports MD5, SHA-1, SHA-256, and SHA-512. Hashes can be
|
||||||
computed before or after conversions are made.
|
computed before or after conversions are made.
|
||||||
* Progress meter with automatic input/output file size probing
|
* Progress meter with automatic input/output file size probing
|
||||||
* Combined log for hashes and errors
|
* Combined log for hashes and errors
|
||||||
* Error grouping. Produces one error message for identical sequential
|
* Error grouping. Produces one error message for identical sequential
|
||||||
errors
|
errors
|
||||||
* Verify mode. Able to repeat any transformations done to the input
|
* Verify mode. Able to repeat any transformations done to the input
|
||||||
file and compare it to an output.
|
file and compare it to an output.
|
||||||
* Ability to split the output into chunks with numerical or alphabetic
|
* Ability to split the output into chunks with numerical or alphabetic
|
||||||
extensions
|
extensions
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%autosetup -S git
|
%autosetup -S git
|
||||||
|
|
||||||
# Update the embedded gnulib library files
|
|
||||||
gnulib-tool --update
|
|
||||||
|
|
||||||
#Missing x flag in version 7.2.646 makes the build fail
|
#Missing x flag in version 7.2.646 makes the build fail
|
||||||
chmod +x build-aux/git-version-gen configure
|
chmod +x build-aux/git-version-gen configure
|
||||||
|
|
||||||
|
# ChangeLog having wrong ends of lines
|
||||||
|
sed -i -e 's|\r||g' ChangeLog
|
||||||
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
autoreconf -vif #BZ925238 - support aarch64
|
autoreconf -vif #BZ925238 - support aarch64
|
||||||
|
|
@ -68,11 +73,14 @@ make install DESTDIR=$RPM_BUILD_ROOT
|
||||||
%{_mandir}/man1/%{name}.*
|
%{_mandir}/man1/%{name}.*
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Sun Oct 20 2019 Michal Ambroz <rebus [AT] seznam.cz> - 7.2.646-8
|
||||||
|
- use Archlinux patch to fix FTBFS, do not update gnulib embedded library files
|
||||||
|
|
||||||
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.646-7
|
* Thu Jan 31 2019 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.646-7
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||||
|
|
||||||
* Tue Aug 28 2018 Michal Ambroz <rebus [AT] seznam.cz> - 7.2.646-6
|
* Tue Aug 28 2018 Michal Ambroz <rebus [AT] seznam.cz> - 7.2.646-6
|
||||||
- fix FTBS, update gnulib embedded library files
|
- fix FTBFS, update gnulib embedded library files
|
||||||
|
|
||||||
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.646-5
|
* Thu Jul 12 2018 Fedora Release Engineering <releng@fedoraproject.org> - 7.2.646-5
|
||||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue