commit:     9d427990c39a9ab3cf97b6feb243e9f28620f79c
Author:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
AuthorDate: Wed Apr  4 12:07:03 2018 +0000
Commit:     Göktürk Yüksek <gokturk <AT> gentoo <DOT> org>
CommitDate: Wed Apr  4 12:08:32 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9d427990

sys-fs/ext4magic: fix #650074

Also bump EAPI and enable USE=expert_mode by default.

Bug: https://sourceforge.net/p/ext4magic/tickets/10/
Closes: https://bugs.gentoo.org/650074
Package-Manager: Portage-2.3.27, Repoman-2.3.9

 sys-fs/ext4magic/ext4magic-0.3.2-r1.ebuild         | 36 ++++++++++++++++++++++
 .../files/ext4magic-0.3.2-i_dir_acl.patch          | 32 +++++++++++++++++++
 2 files changed, 68 insertions(+)

diff --git a/sys-fs/ext4magic/ext4magic-0.3.2-r1.ebuild 
b/sys-fs/ext4magic/ext4magic-0.3.2-r1.ebuild
new file mode 100644
index 00000000000..f26ce3b1d1d
--- /dev/null
+++ b/sys-fs/ext4magic/ext4magic-0.3.2-r1.ebuild
@@ -0,0 +1,36 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+DESCRIPTION="Tool for recovery of deleted or overwritten files on ext3/ext4 
filesystems"
+HOMEPAGE="https://sourceforge.net/projects/ext4magic/";
+SRC_URI="mirror://sourceforge/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="debug +expert-mode file-attr"
+
+RDEPEND="app-arch/bzip2
+       >=sys-apps/file-5.04
+       sys-apps/util-linux
+       >=sys-fs/e2fsprogs-1.41.9
+       sys-libs/zlib"
+DEPEND="${RDEPEND}"
+
+DOCS="AUTHORS ChangeLog NEWS README TODO"
+
+PATCHES=(
+       "${FILESDIR}"/${PN}-0.3.2-sysmacros.patch
+       "${FILESDIR}"/${PN}-0.3.2-i_dir_acl.patch
+)
+
+src_configure() {
+       # build-system incorrectly recognizes '--disable-feature' options as 
enabled!
+       econf \
+               $(usex debug '--enable-debug' '') \
+               $(usex debug '--enable-debug-magic' '') \
+               $(usex expert-mode '--enable-expert-mode' '') \
+               $(usex file-attr '--enable-file-attr' '')
+}

diff --git a/sys-fs/ext4magic/files/ext4magic-0.3.2-i_dir_acl.patch 
b/sys-fs/ext4magic/files/ext4magic-0.3.2-i_dir_acl.patch
new file mode 100644
index 00000000000..9c7e86a2af1
--- /dev/null
+++ b/sys-fs/ext4magic/files/ext4magic-0.3.2-i_dir_acl.patch
@@ -0,0 +1,32 @@
+From: Gokturk Yuksek <[email protected]>
+Subject: [PATCH] src/inode: supersede i_dir_acl with i_size_high
+
+The upstream has removed the macro that defined i_dir_acl as
+i_size_high which causes a build failure with the later versions of
+e2fsprogs. Replace every reference to inode->i_dir_acl with
+inode->i_size_high.
+
+Bug: https://bugs.gentoo.org/650074
+Bug: https://sourceforge.net/p/ext4magic/tickets/10/
+
+[0] 
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=578fcbfd2e61e0b13ce8c7b62804c941d6c1eb8e
+
+--- a/src/inode.c
++++ b/src/inode.c
+@@ -404,14 +404,14 @@
+         fprintf(out,
+                         "%sFile ACL: %d    Directory ACL: %d Translator: 
%d\n",
+                         prefix,
+-                        inode->i_file_acl, LINUX_S_ISDIR(inode->i_mode) ? 
inode->i_dir_acl : 0,
++                        inode->i_file_acl, LINUX_S_ISDIR(inode->i_mode) ? 
inode->i_size_high : 0,
+                         inode->osd1.hurd1.h_i_translator);
+         else
+                 fprintf(out, "%sFile ACL: %llu    Directory ACL: %d\n",
+                         prefix,
+                         inode->i_file_acl | ((long long)
+                                 (inode->osd2.linux2.l_i_file_acl_high) << 32),
+-                        LINUX_S_ISDIR(inode->i_mode) ? inode->i_dir_acl : 0);
++                        LINUX_S_ISDIR(inode->i_mode) ? inode->i_size_high : 
0);
+         if (os == EXT2_OS_LINUX)
+                 fprintf(out, "%sLinks: %d   Blockcount: %llu\n",
+                         prefix, inode->i_links_count,

Reply via email to