commit:     2884aec0a0df113a67cd545b0ed298fa29b1c2b2
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 13 21:00:02 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Mar 13 21:00:02 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2884aec0

sys-fs/dd-rescue: add 1.99.13

Closes: https://bugs.gentoo.org/901083
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-fs/dd-rescue/Manifest                 |   1 +
 sys-fs/dd-rescue/dd-rescue-1.99.13.ebuild | 103 ++++++++++++++++++++++++++++++
 2 files changed, 104 insertions(+)

diff --git a/sys-fs/dd-rescue/Manifest b/sys-fs/dd-rescue/Manifest
index 0e9690fb61e1..1ecb88836db8 100644
--- a/sys-fs/dd-rescue/Manifest
+++ b/sys-fs/dd-rescue/Manifest
@@ -1 +1,2 @@
 DIST dd_rescue-1.99.12.tar.bz2 181798 BLAKE2B 
547910af7ac5dde360179dbd75bed36e6420dda162a41f9bb60a454f5c6629d6a1be9b15240ce3d0e7b80e09c660a87765e826909614b037a506ad775b71041f
 SHA512 
61f4f09e7e8442049634c5a5659f887cf82b16bc8b768c0aa79774e18feac6e91fbc258e5a6c8c3cac0577fadbdd26206261cf6c99b3980f763a1b584fb46001
+DIST dd_rescue-1.99.13.tar.bz2 182574 BLAKE2B 
da16f37dffc702695d49517aed9a33ce4d00b5e9903c363deaf4b4ed8b5294246d0fe78e977b8a6f6128b9b643a8986437359c78726695fc8e68be41bb11d93e
 SHA512 
2276128fe176dce3ecbd6aa8e0d00b9547887f0498ce0cd135e61dbf882c521e22e2afce3539a73496da1d0472cd9582971a30eb558ce3211820c8d0358c8241

diff --git a/sys-fs/dd-rescue/dd-rescue-1.99.13.ebuild 
b/sys-fs/dd-rescue/dd-rescue-1.99.13.ebuild
new file mode 100644
index 000000000000..4d5c1eb6052a
--- /dev/null
+++ b/sys-fs/dd-rescue/dd-rescue-1.99.13.ebuild
@@ -0,0 +1,103 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+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