commit: a11c91e5522b7865d53df06d1206acd362fdeaaa Author: Jeroen Roovers <jer <AT> gentoo <DOT> org> AuthorDate: Sun Aug 9 14:48:15 2020 +0000 Commit: Jeroen Roovers <jer <AT> gentoo <DOT> org> CommitDate: Sun Aug 9 17:19:27 2020 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a11c91e5
dev-libs/dmalloc: Add live ebuild Package-Manager: Portage-3.0.1, Repoman-2.3.23 Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org> dev-libs/dmalloc/dmalloc-999999.ebuild | 83 ++++++++++++++++++++++ .../dmalloc/files/dmalloc-999999-texi2html.patch | 11 +++ 2 files changed, 94 insertions(+) diff --git a/dev-libs/dmalloc/dmalloc-999999.ebuild b/dev-libs/dmalloc/dmalloc-999999.ebuild new file mode 100644 index 00000000000..d0ea9940859 --- /dev/null +++ b/dev-libs/dmalloc/dmalloc-999999.ebuild @@ -0,0 +1,83 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +inherit autotools git-r3 multilib toolchain-funcs + +DESCRIPTION="A Debug Malloc Library" +HOMEPAGE="https://dmalloc.com" +EGIT_REPO_URI="https://github.com/j256/dmalloc" + +LICENSE="CC-BY-SA-3.0" +SLOT="0" +KEYWORDS="" +IUSE="static-libs threads" + +BDEPEND=" + app-text/texi2html + sys-apps/texinfo +" +DOCS=( + ChangeLog.txt README.md TODO dmalloc.html +) +PATCHES=( + # - Build objects twice, once -fPIC for shared. + # - Use DESTDIR. + # - Fix SONAME and NEEDED. + "${FILESDIR}"/${PN}-5.5.2-Makefile.in.patch + # - Broken test, always returns false. + "${FILESDIR}"/${PN}-5.5.2-cxx.patch + "${FILESDIR}"/${PN}-5.5.2-ar.patch + "${FILESDIR}"/${PN}-999999-texi2html.patch +) + +src_prepare() { + default + + # - Add threads support. + use threads && eapply "${FILESDIR}"/${PN}-5.5.2-threads.patch + + # Respect CFLAGS/LDFLAGS. #337429 + sed -i \ + -e '/libdmalloc/ s:$(CC):& $(CFLAGS) $(LDFLAGS):g' \ + -e 's|ar cr|$(AR) cr|g' \ + Makefile.in || die + + # Run autoconf for -cxx.patch. + eautoconf +} + +src_configure() { + tc-export AR + econf --enable-cxx --enable-shlib $(use_enable threads) +} + +src_compile() { + default + +# makeinfo dmalloc.texi || die +} + +src_test() { + emake heavy +} + +src_install() { + default + + doinfo dmalloc.info + + # add missing symlinks, lazy + dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so + dosym lib${PN}.so.5.5.2 /usr/$(get_libdir)/lib${PN}.so.5 + + for lib in cxx th thcxx; do + dosym lib${PN}${lib}.so.5.5.2 /usr/$(get_libdir)/lib${PN}${lib}.so + dosym lib${PN}${lib}.so.5.5.2 \ + /usr/$(get_libdir)/lib${PN}${lib}.so.5 + done + + if ! use static-libs; then + rm "${ED}"/usr/$(get_libdir)/lib${PN}*.a || die + fi +} diff --git a/dev-libs/dmalloc/files/dmalloc-999999-texi2html.patch b/dev-libs/dmalloc/files/dmalloc-999999-texi2html.patch new file mode 100644 index 00000000000..1e7e4ccd1eb --- /dev/null +++ b/dev-libs/dmalloc/files/dmalloc-999999-texi2html.patch @@ -0,0 +1,11 @@ +--- a/Makefile.in ++++ b/Makefile.in +@@ -285,7 +285,7 @@ + + dmalloc.html : $(srcdir)/dmalloc.texi + rm -f $@ $@.t +- texi2html --output=$@.t -number -monolithic $(srcdir)/dmalloc.texi ++ texi2html --output=$@.t --number-footnotes --number-sections -monolithic $(srcdir)/dmalloc.texi + mv $@.t $@ + + settings.h : $(srcdir)/settings.dist $(srcdir)/configure