commit:     07e4bcef82159f63365d5922b197967e7dd7d347
Author:     Matthias Schwarzott <zzam <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 30 07:32:53 2022 +0000
Commit:     Matthias Schwarzott <zzam <AT> gentoo <DOT> org>
CommitDate: Tue Aug 30 07:38:49 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07e4bcef

sys-fs/dd-rescue: add 1.99.12

Upstream also fixed bug #787134.

The patch for musl seems no longer needed.
The macro __WORDSIZE is no longer used by dd-rescue.
loff_t should be found via fcntl.h.
The patch for 1.99.11 looked strange as it did not add new includes.

Closes: https://bugs.gentoo.org/787134
Signed-off-by: Matthias Schwarzott <zzam <AT> gentoo.org>

 sys-fs/dd-rescue/Manifest                 |   1 +
 sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild | 101 ++++++++++++++++++++++++++++++
 2 files changed, 102 insertions(+)

diff --git a/sys-fs/dd-rescue/Manifest b/sys-fs/dd-rescue/Manifest
index 8cf0f92b7681..269fad7c0926 100644
--- a/sys-fs/dd-rescue/Manifest
+++ b/sys-fs/dd-rescue/Manifest
@@ -1,2 +1,3 @@
 DIST dd_rescue-1.99.11.tar.bz2 181927 BLAKE2B 
8cd4db6cb8d85962e4cea50b0006fdbe5f085fbcf7bdbfe4d0fab1fe33412c1379317f54429c76ed1d905e32d5e791869fa27f2f14917cb1c3842fc6caca2a12
 SHA512 
e1d32711421ebbafd80fd210718667ff8c2d22b5349945105b3e4c29d54d381385b1fd188b2d8aa1b7a0aaf2cc9d8f7374373cff3992726a3d17549ca50f3904
+DIST dd_rescue-1.99.12.tar.bz2 181798 BLAKE2B 
547910af7ac5dde360179dbd75bed36e6420dda162a41f9bb60a454f5c6629d6a1be9b15240ce3d0e7b80e09c660a87765e826909614b037a506ad775b71041f
 SHA512 
61f4f09e7e8442049634c5a5659f887cf82b16bc8b768c0aa79774e18feac6e91fbc258e5a6c8c3cac0577fadbdd26206261cf6c99b3980f763a1b584fb46001
 DIST dd_rescue-1.99.8.tar.bz2 174594 BLAKE2B 
51e62989bf6318cb5926f30bc1db746bddd41fb49aab15dc2b1c67e0af079469161d390ba4e1e109d195249b3aace3aa830a3aec14ba534eb47f38c0136f910c
 SHA512 
a230e1df4532671ea631036012dd1e38614e45bed58b00757f0017b0ea60f14ac3bdac07777d175aa4929def593b3c8485e463b1fc25b5067adf4cf3f3ac040d

diff --git a/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild 
b/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild
new file mode 100644
index 000000000000..71b861626147
--- /dev/null
+++ b/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit autotools flag-o-matic toolchain-funcs
+
+MY_PN="${PN/-/_}"
+MY_P="${MY_PN}-${PV}"
+
+DESCRIPTION="Similar to dd but can copy from source with errors"
+HOMEPAGE="http://www.garloff.de/kurt/linux/ddrescue/";
+SRC_URI="http://www.garloff.de/kurt/linux/ddrescue/${MY_P}.tar.bz2";
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux 
~ppc-macos"
+IUSE="cpu_flags_x86_avx2 lzo cpu_flags_x86_sse4_2 static xattr"
+
+RDEPEND="lzo? ( dev-libs/lzo )
+       xattr? ( sys-apps/attr )"
+DEPEND="${RDEPEND}"
+
+S="${WORKDIR}/${MY_P}"
+
+src_prepare() {
+       default
+
+       if ! use cpu_flags_x86_sse4_2; then
+               sed -i \
+                       -e 's:^CC_FLAGS_CHECK(-msse4.2,SSE42):#&:' \
+                       configure.ac || die
+       fi
+
+       if ! use cpu_flags_x86_avx2; then
+               sed -i \
+                       -e 's:^CC_FLAGS_CHECK(-mavx2,AVX2):#&:' \
+                       configure.ac || die
+       fi
+
+       eautoreconf
+
+       sed -i \
+               -e 's:\(-ldl\):$(LDFLAGS) \1:' \
+               -e 's:\(-shared\):$(CFLAGS) $(LDFLAGS) \1:' \
+               Makefile || die
+}
+
+src_configure() {
+       use static && append-ldflags -static
+       # OpenSSL is only used by a random helper tool we don't install.
+       ac_cv_header_attr_xattr_h=$(usex xattr) \
+       ac_cv_header_openssl_evp_h=no \
+       ac_cv_lib_crypto_EVP_aes_192_ctr=no \
+       ac_cv_lib_lzo2_lzo1x_1_compress=$(usex lzo) \
+       ac_cv_header_lzo_lzo1x_h=$(usex lzo) \
+       econf
+}
+
+_emake() {
+       local arch
+       case ${ARCH} in
+       x86)   arch=i386;;
+       amd64) arch=x86_64;;
+       arm)   arch=arm;;
+       arm64) arch=aarch64;;
+       esac
+
+       local os=$(usex kernel_linux Linux IDK)
+
+       # The Makefile is a mess.  Override a few vars rather than patch it.
+       emake \
+               MACH="${arch}" \
+               OS="${os}" \
+               HAVE_SSE42=$(usex cpu_flags_x86_sse4_2 1 0) \
+               HAVE_AVX2=$(usex cpu_flags_x86_avx2 1 0) \
+               RPM_OPT_FLAGS="${CFLAGS} ${CPPFLAGS}" \
+               CFLAGS_OPT='$(CFLAGS)' \
+               LDFLAGS="${LDFLAGS} 
-Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/${PN}" \
+               CC="$(tc-getCC)" \
+               "$@"
+}
+
+src_compile() {
+       _emake
+}
+
+src_test() {
+       append-cflags -fcommon # bug 707796
+       _emake check
+}
+
+src_install() {
+       # easier to install by hand than trying to make sense of the Makefile.
+       dobin dd_rescue
+       dodir /usr/$(get_libdir)/${PN}
+       cp -pPR libddr_*.so "${ED}"/usr/$(get_libdir)/${PN}/ || die
+       dodoc README.dd_rescue
+       doman dd_rescue.1
+       use lzo && doman ddr_lzo.1
+}

Reply via email to