Gentoo Archives: gentoo-commits

From: Matthias Schwarzott <zzam@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-fs/dd-rescue/
Date: Tue, 30 Aug 2022 07:42:30
Message-Id: 1661845129.07e4bcef82159f63365d5922b197967e7dd7d347.zzam@gentoo
1 commit: 07e4bcef82159f63365d5922b197967e7dd7d347
2 Author: Matthias Schwarzott <zzam <AT> gentoo <DOT> org>
3 AuthorDate: Tue Aug 30 07:32:53 2022 +0000
4 Commit: Matthias Schwarzott <zzam <AT> gentoo <DOT> org>
5 CommitDate: Tue Aug 30 07:38:49 2022 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07e4bcef
7
8 sys-fs/dd-rescue: add 1.99.12
9
10 Upstream also fixed bug #787134.
11
12 The patch for musl seems no longer needed.
13 The macro __WORDSIZE is no longer used by dd-rescue.
14 loff_t should be found via fcntl.h.
15 The patch for 1.99.11 looked strange as it did not add new includes.
16
17 Closes: https://bugs.gentoo.org/787134
18 Signed-off-by: Matthias Schwarzott <zzam <AT> gentoo.org>
19
20 sys-fs/dd-rescue/Manifest | 1 +
21 sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild | 101 ++++++++++++++++++++++++++++++
22 2 files changed, 102 insertions(+)
23
24 diff --git a/sys-fs/dd-rescue/Manifest b/sys-fs/dd-rescue/Manifest
25 index 8cf0f92b7681..269fad7c0926 100644
26 --- a/sys-fs/dd-rescue/Manifest
27 +++ b/sys-fs/dd-rescue/Manifest
28 @@ -1,2 +1,3 @@
29 DIST dd_rescue-1.99.11.tar.bz2 181927 BLAKE2B 8cd4db6cb8d85962e4cea50b0006fdbe5f085fbcf7bdbfe4d0fab1fe33412c1379317f54429c76ed1d905e32d5e791869fa27f2f14917cb1c3842fc6caca2a12 SHA512 e1d32711421ebbafd80fd210718667ff8c2d22b5349945105b3e4c29d54d381385b1fd188b2d8aa1b7a0aaf2cc9d8f7374373cff3992726a3d17549ca50f3904
30 +DIST dd_rescue-1.99.12.tar.bz2 181798 BLAKE2B 547910af7ac5dde360179dbd75bed36e6420dda162a41f9bb60a454f5c6629d6a1be9b15240ce3d0e7b80e09c660a87765e826909614b037a506ad775b71041f SHA512 61f4f09e7e8442049634c5a5659f887cf82b16bc8b768c0aa79774e18feac6e91fbc258e5a6c8c3cac0577fadbdd26206261cf6c99b3980f763a1b584fb46001
31 DIST dd_rescue-1.99.8.tar.bz2 174594 BLAKE2B 51e62989bf6318cb5926f30bc1db746bddd41fb49aab15dc2b1c67e0af079469161d390ba4e1e109d195249b3aace3aa830a3aec14ba534eb47f38c0136f910c SHA512 a230e1df4532671ea631036012dd1e38614e45bed58b00757f0017b0ea60f14ac3bdac07777d175aa4929def593b3c8485e463b1fc25b5067adf4cf3f3ac040d
32
33 diff --git a/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild b/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild
34 new file mode 100644
35 index 000000000000..71b861626147
36 --- /dev/null
37 +++ b/sys-fs/dd-rescue/dd-rescue-1.99.12.ebuild
38 @@ -0,0 +1,101 @@
39 +# Copyright 1999-2022 Gentoo Authors
40 +# Distributed under the terms of the GNU General Public License v2
41 +
42 +EAPI=7
43 +
44 +inherit autotools flag-o-matic toolchain-funcs
45 +
46 +MY_PN="${PN/-/_}"
47 +MY_P="${MY_PN}-${PV}"
48 +
49 +DESCRIPTION="Similar to dd but can copy from source with errors"
50 +HOMEPAGE="http://www.garloff.de/kurt/linux/ddrescue/"
51 +SRC_URI="http://www.garloff.de/kurt/linux/ddrescue/${MY_P}.tar.bz2"
52 +
53 +LICENSE="GPL-2"
54 +SLOT="0"
55 +KEYWORDS="~amd64 ~arm ~mips ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos"
56 +IUSE="cpu_flags_x86_avx2 lzo cpu_flags_x86_sse4_2 static xattr"
57 +
58 +RDEPEND="lzo? ( dev-libs/lzo )
59 + xattr? ( sys-apps/attr )"
60 +DEPEND="${RDEPEND}"
61 +
62 +S="${WORKDIR}/${MY_P}"
63 +
64 +src_prepare() {
65 + default
66 +
67 + if ! use cpu_flags_x86_sse4_2; then
68 + sed -i \
69 + -e 's:^CC_FLAGS_CHECK(-msse4.2,SSE42):#&:' \
70 + configure.ac || die
71 + fi
72 +
73 + if ! use cpu_flags_x86_avx2; then
74 + sed -i \
75 + -e 's:^CC_FLAGS_CHECK(-mavx2,AVX2):#&:' \
76 + configure.ac || die
77 + fi
78 +
79 + eautoreconf
80 +
81 + sed -i \
82 + -e 's:\(-ldl\):$(LDFLAGS) \1:' \
83 + -e 's:\(-shared\):$(CFLAGS) $(LDFLAGS) \1:' \
84 + Makefile || die
85 +}
86 +
87 +src_configure() {
88 + use static && append-ldflags -static
89 + # OpenSSL is only used by a random helper tool we don't install.
90 + ac_cv_header_attr_xattr_h=$(usex xattr) \
91 + ac_cv_header_openssl_evp_h=no \
92 + ac_cv_lib_crypto_EVP_aes_192_ctr=no \
93 + ac_cv_lib_lzo2_lzo1x_1_compress=$(usex lzo) \
94 + ac_cv_header_lzo_lzo1x_h=$(usex lzo) \
95 + econf
96 +}
97 +
98 +_emake() {
99 + local arch
100 + case ${ARCH} in
101 + x86) arch=i386;;
102 + amd64) arch=x86_64;;
103 + arm) arch=arm;;
104 + arm64) arch=aarch64;;
105 + esac
106 +
107 + local os=$(usex kernel_linux Linux IDK)
108 +
109 + # The Makefile is a mess. Override a few vars rather than patch it.
110 + emake \
111 + MACH="${arch}" \
112 + OS="${os}" \
113 + HAVE_SSE42=$(usex cpu_flags_x86_sse4_2 1 0) \
114 + HAVE_AVX2=$(usex cpu_flags_x86_avx2 1 0) \
115 + RPM_OPT_FLAGS="${CFLAGS} ${CPPFLAGS}" \
116 + CFLAGS_OPT='$(CFLAGS)' \
117 + LDFLAGS="${LDFLAGS} -Wl,-rpath,${EPREFIX}/usr/$(get_libdir)/${PN}" \
118 + CC="$(tc-getCC)" \
119 + "$@"
120 +}
121 +
122 +src_compile() {
123 + _emake
124 +}
125 +
126 +src_test() {
127 + append-cflags -fcommon # bug 707796
128 + _emake check
129 +}
130 +
131 +src_install() {
132 + # easier to install by hand than trying to make sense of the Makefile.
133 + dobin dd_rescue
134 + dodir /usr/$(get_libdir)/${PN}
135 + cp -pPR libddr_*.so "${ED}"/usr/$(get_libdir)/${PN}/ || die
136 + dodoc README.dd_rescue
137 + doman dd_rescue.1
138 + use lzo && doman ddr_lzo.1
139 +}