1 |
|
# Copyright 1999-2023 Gentoo Authors
|
|
1 |
# Copyright 1999-2018 Gentoo Foundation
|
2 |
2 |
# Distributed under the terms of the GNU General Public License v2
|
3 |
3 |
|
4 |
|
EAPI=7
|
|
4 |
EAPI=6
|
5 |
5 |
|
6 |
|
inherit flag-o-matic qmake-utils xdg-utils
|
|
6 |
COMMIT=6837474129968d7de13d91e5454bd824c9136e73
|
|
7 |
inherit autotools flag-o-matic gnome2-utils
|
7 |
8 |
|
8 |
9 |
DESCRIPTION="Checks and undeletes partitions + PhotoRec, signature based recovery tool"
|
9 |
10 |
HOMEPAGE="https://www.cgsecurity.org/wiki/TestDisk"
|
10 |
|
SRC_URI="https://www.cgsecurity.org/${P}.tar.bz2"
|
|
11 |
SRC_URI="https://git.cgsecurity.org/cgit/${PN}/snapshot/${PN}-${COMMIT}.tar.gz -> ${P}.tar.gz"
|
11 |
12 |
|
12 |
|
LICENSE="GPL-2+"
|
|
13 |
LICENSE="GPL-2"
|
13 |
14 |
SLOT="0"
|
14 |
|
KEYWORDS="amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv x86"
|
15 |
|
IUSE="ewf jpeg ntfs gui reiserfs static zlib"
|
|
15 |
KEYWORDS="amd64 ~arm ~hppa ~ppc x86"
|
|
16 |
IUSE="ewf jpeg ntfs qt5 reiserfs static zlib"
|
16 |
17 |
|
17 |
|
REQUIRED_USE="static? ( !gui )"
|
|
18 |
REQUIRED_USE="static? ( !qt5 )"
|
18 |
19 |
|
19 |
20 |
# WARNING: reiserfs support does NOT work with reiserfsprogs
|
20 |
21 |
# you MUST use progsreiserfs-0.3.1_rc8 (the last version ever released).
|
21 |
|
DEPEND="
|
|
22 |
COMMON_DEPEND="
|
22 |
23 |
static? (
|
23 |
24 |
sys-apps/util-linux[static-libs]
|
24 |
25 |
sys-fs/e2fsprogs[static-libs]
|
25 |
26 |
sys-libs/ncurses:0[static-libs]
|
26 |
|
jpeg? ( media-libs/libjpeg-turbo:=[static-libs] )
|
27 |
|
ntfs? ( sys-fs/ntfs3g[static-libs] )
|
|
27 |
jpeg? ( virtual/jpeg:0[static-libs] )
|
|
28 |
ntfs? ( sys-fs/ntfs3g:=[static-libs] )
|
28 |
29 |
reiserfs? ( >=sys-fs/progsreiserfs-0.3.1_rc8[static-libs] )
|
29 |
30 |
zlib? ( sys-libs/zlib[static-libs] )
|
30 |
|
!arm? ( ewf? ( app-forensics/libewf[static-libs] ) )
|
|
31 |
!arm? ( ewf? ( app-forensics/libewf:=[static-libs] ) )
|
31 |
32 |
)
|
32 |
33 |
!static? (
|
33 |
34 |
sys-apps/util-linux
|
34 |
35 |
sys-fs/e2fsprogs
|
35 |
36 |
sys-libs/ncurses:0=
|
36 |
|
jpeg? ( media-libs/libjpeg-turbo:= )
|
37 |
|
ntfs? ( sys-fs/ntfs3g:= )
|
38 |
|
gui? (
|
|
37 |
jpeg? ( virtual/jpeg:0 )
|
|
38 |
ntfs? ( sys-fs/ntfs3g )
|
|
39 |
qt5? (
|
39 |
40 |
dev-qt/qtcore:5
|
40 |
41 |
dev-qt/qtgui:5
|
41 |
42 |
dev-qt/qtwidgets:5
|
... | ... | |
45 |
46 |
!arm? ( ewf? ( app-forensics/libewf:= ) )
|
46 |
47 |
)
|
47 |
48 |
"
|
48 |
|
RDEPEND="!static? ( ${DEPEND} )"
|
49 |
|
BDEPEND="gui? ( dev-qt/linguist-tools:5 )"
|
|
49 |
DEPEND="${COMMON_DEPEND}
|
|
50 |
qt5? ( dev-qt/linguist-tools:5 )
|
|
51 |
"
|
|
52 |
RDEPEND="!static? ( ${COMMON_DEPEND} )"
|
50 |
53 |
|
51 |
|
DOCS=()
|
|
54 |
DOCS=( )
|
52 |
55 |
|
53 |
|
PATCHES=(
|
54 |
|
"${FILESDIR}"/${P}-backport-ntfs-3g-ioctl-prototype.patch
|
55 |
|
)
|
|
56 |
S="${WORKDIR}/${PN}-${COMMIT}"
|
56 |
57 |
|
57 |
|
src_configure() {
|
58 |
|
export MOC="$(qt5_get_bindir)/moc"
|
59 |
|
export PATH="$(qt5_get_bindir):${PATH}"
|
|
58 |
src_prepare() {
|
|
59 |
default
|
|
60 |
eautoreconf
|
|
61 |
}
|
60 |
62 |
|
61 |
|
local myconf=(
|
|
63 |
src_configure() {
|
|
64 |
local myeconfargs=(
|
62 |
65 |
--enable-sudo
|
63 |
66 |
--without-ntfs
|
64 |
67 |
$(use_with ewf)
|
65 |
68 |
$(use_with jpeg)
|
66 |
69 |
$(use_with ntfs ntfs3g)
|
67 |
|
$(use_enable gui qt)
|
|
70 |
$(use_enable qt5 qt)
|
68 |
71 |
$(use_with reiserfs)
|
69 |
72 |
$(use_with zlib)
|
70 |
73 |
)
|
... | ... | |
73 |
76 |
# target, but better, as it doesn't break.
|
74 |
77 |
use static && append-ldflags -static
|
75 |
78 |
|
76 |
|
econf "${myconf[@]}"
|
|
79 |
econf "${myeconfargs[@]}"
|
77 |
80 |
|
78 |
81 |
# perform safety checks for NTFS, REISERFS and JPEG
|
79 |
|
if use ntfs && ! grep -E -q '^#define HAVE_LIBNTFS(3G)? 1$' "${S}"/config.h ; then
|
|
82 |
if use ntfs && ! egrep -q '^#define HAVE_LIBNTFS(3G)? 1$' "${S}"/config.h ; then
|
80 |
83 |
die "Failed to find either NTFS or NTFS-3G library."
|
81 |
84 |
fi
|
82 |
|
if use reiserfs && grep -E -q 'undef HAVE_LIBREISERFS\>' "${S}"/config.h ; then
|
|
85 |
if use reiserfs && egrep -q 'undef HAVE_LIBREISERFS\>' "${S}"/config.h ; then
|
83 |
86 |
die "Failed to find reiserfs library."
|
84 |
87 |
fi
|
85 |
|
if use jpeg && grep -E -q 'undef HAVE_LIBJPEG\>' "${S}"/config.h ; then
|
|
88 |
if use jpeg && egrep -q 'undef HAVE_LIBJPEG\>' "${S}"/config.h ; then
|
86 |
89 |
die "Failed to find jpeg library."
|
87 |
90 |
fi
|
88 |
91 |
}
|
89 |
92 |
|
90 |
93 |
pkg_postinst() {
|
91 |
|
xdg_icon_cache_update
|
|
94 |
gnome2_icon_cache_update
|
92 |
95 |
}
|
93 |
96 |
|
94 |
97 |
pkg_postrm() {
|
95 |
|
xdg_icon_cache_update
|
|
98 |
gnome2_icon_cache_update
|
96 |
99 |
}
|