3 |
3 |
|
4 |
4 |
EAPI=7
|
5 |
5 |
|
6 |
|
inherit autotools toolchain-funcs
|
|
6 |
inherit autotools git-r3 toolchain-funcs
|
7 |
7 |
|
8 |
8 |
DESCRIPTION="A Debug Malloc Library"
|
9 |
9 |
HOMEPAGE="https://dmalloc.com"
|
10 |
|
SRC_URI="https://dmalloc.com/releases/${P}.tgz"
|
|
10 |
EGIT_REPO_URI="https://github.com/j256/dmalloc"
|
11 |
11 |
|
12 |
|
LICENSE="CC-BY-SA-3.0"
|
|
12 |
LICENSE="ISC"
|
13 |
13 |
SLOT="0"
|
14 |
|
KEYWORDS="~alpha amd64 arm arm64 ~hppa ~ia64 ~mips ppc ppc64 ~riscv ~s390 sparc x86"
|
15 |
14 |
IUSE="threads"
|
16 |
15 |
|
17 |
|
BDEPEND="sys-apps/texinfo"
|
|
16 |
BDEPEND="
|
|
17 |
app-text/texi2html
|
|
18 |
sys-apps/texinfo
|
|
19 |
"
|
18 |
20 |
|
19 |
|
DOCS=( NEWS README docs/NOTES docs/TODO )
|
|
21 |
DOCS=(
|
|
22 |
ChangeLog.txt README.md TODO dmalloc.html
|
|
23 |
)
|
20 |
24 |
|
21 |
25 |
PATCHES=(
|
22 |
26 |
# - Build objects twice, once -fPIC for shared.
|
23 |
27 |
# - Use DESTDIR.
|
24 |
28 |
# - Fix SONAME and NEEDED.
|
25 |
|
"${FILESDIR}"/${P}-Makefile.in.patch
|
|
29 |
"${FILESDIR}"/${PN}-5.5.2-Makefile.in.patch
|
26 |
30 |
# - Broken test, always returns false.
|
27 |
|
"${FILESDIR}"/${P}-cxx.patch
|
28 |
|
"${FILESDIR}"/${P}-ar.patch
|
29 |
|
# strdup() strndup() macros
|
30 |
|
"${FILESDIR}"/${P}-string-macros.patch
|
|
31 |
"${FILESDIR}"/${PN}-5.5.2-cxx.patch
|
|
32 |
"${FILESDIR}"/${PN}-5.5.2-ar.patch
|
|
33 |
"${FILESDIR}"/${PN}-999999-texi2html.patch
|
31 |
34 |
)
|
32 |
35 |
|
33 |
36 |
src_prepare() {
|
34 |
37 |
default
|
35 |
38 |
|
36 |
39 |
# - Add threads support.
|
37 |
|
use threads && eapply "${FILESDIR}"/${P}-threads.patch
|
|
40 |
use threads && eapply "${FILESDIR}"/${PN}-5.5.2-threads.patch
|
38 |
41 |
|
39 |
42 |
# Respect CFLAGS/LDFLAGS. #337429
|
40 |
43 |
sed -i \
|
... | ... | |
48 |
51 |
|
49 |
52 |
src_configure() {
|
50 |
53 |
tc-export AR
|
51 |
|
|
52 |
54 |
econf \
|
53 |
55 |
--enable-cxx \
|
54 |
56 |
--enable-shlib \
|
... | ... | |
58 |
60 |
src_compile() {
|
59 |
61 |
default
|
60 |
62 |
|
61 |
|
cd docs
|
62 |
|
makeinfo dmalloc.texi || die
|
|
63 |
#makeinfo dmalloc.texi || die
|
63 |
64 |
}
|
64 |
65 |
|
65 |
66 |
src_test() {
|
... | ... | |
69 |
70 |
src_install() {
|
70 |
71 |
default
|
71 |
72 |
|
72 |
|
newdoc ChangeLog.1 ChangeLog
|
73 |
|
dodoc docs/dmalloc.pdf
|
74 |
|
dodoc RELEASE.html docs/dmalloc.html
|
75 |
|
doinfo docs/dmalloc.info
|
|
73 |
doinfo dmalloc.info
|
76 |
74 |
|
77 |
75 |
# add missing symlinks, lazy
|
78 |
|
dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so
|
79 |
|
dosym lib${PN}.so.${PV} /usr/$(get_libdir)/lib${PN}.so.${PV%%.*}
|
|
76 |
dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so
|
|
77 |
dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so.5
|
80 |
78 |
|
81 |
79 |
for lib in cxx th thcxx; do
|
82 |
|
dosym lib${PN}${lib}.so.${PV} /usr/$(get_libdir)/lib${PN}${lib}.so
|
83 |
|
dosym lib${PN}${lib}.so.${PV} \
|
84 |
|
/usr/$(get_libdir)/lib${PN}${lib}.so.${PV%%.*}
|
|
80 |
dosym lib${PN}${lib}.so.5.5.2 /usr/$(get_libdir)/lib${PN}${lib}.so
|
|
81 |
dosym lib${PN}${lib}.so.5.5.2 \
|
|
82 |
/usr/$(get_libdir)/lib${PN}${lib}.so.5
|
85 |
83 |
done
|
86 |
84 |
|
87 |
85 |
rm "${ED}"/usr/$(get_libdir)/lib${PN}*.a || die
|