diff options
Diffstat (limited to 'dev-debug/leaktracer')
-rw-r--r-- | dev-debug/leaktracer/Manifest | 3 | ||||
-rw-r--r-- | dev-debug/leaktracer/leaktracer-2.4-r3.ebuild | 56 | ||||
-rw-r--r-- | dev-debug/leaktracer/metadata.xml | 5 |
3 files changed, 64 insertions, 0 deletions
diff --git a/dev-debug/leaktracer/Manifest b/dev-debug/leaktracer/Manifest new file mode 100644 index 000000000000..78c521601efd --- /dev/null +++ b/dev-debug/leaktracer/Manifest @@ -0,0 +1,3 @@ +DIST leaktracer-2.4-gentoo_p2.tbz2 11957 BLAKE2B 0af20e7a43c88a16027e859779924ef3fc86af5fb8324a96721f190db4ef59d78681ea4b91ef9843ed467541c9ca3a9b1618339174fdc1901a13b5221acc5479 SHA512 12f348564933c8cf372208f846bb21b175f041e7687811e9c6ce8062e7f285b9d2395e7853a20df11d9b0d5b8fff89efc76ccbac9f8b7c0bc4fd4ea25d476718 +EBUILD leaktracer-2.4-r3.ebuild 1383 BLAKE2B da5c32dbe9d14c1c5a91f6b6cf12f5ab0fddc21d2a3f832d5e52ca2a5eda088ee2ffcdda3a615785b104f586f5077f57ebef87bdb31b389e13da38eb096320b0 SHA512 1ed1b8e1e59d5015e190871bf16e719a173a8f97a00250b67222742bee770ebaaa9abed0b379f003ed782bb857e8bad3bd8fcdfdcd329eaefee2e94553114749 +MISC metadata.xml 167 BLAKE2B 868e3b584722eaacf68273db062bb773d8c7e5d7ab2b81ca7e8397643bf7cc106c3a1033594401c99c54f667bb45d6b73f9048fc335580bbd44b4589ad26a832 SHA512 30caadd1496c3b9969136038239a1d8e01f236726b4022c2d7e19ca7575f25f735e556835e581afbf44fbd3e4104c40f2b5ef5fa70118d75c881fdf871962d0a diff --git a/dev-debug/leaktracer/leaktracer-2.4-r3.ebuild b/dev-debug/leaktracer/leaktracer-2.4-r3.ebuild new file mode 100644 index 000000000000..e0ba6140a682 --- /dev/null +++ b/dev-debug/leaktracer/leaktracer-2.4-r3.ebuild @@ -0,0 +1,56 @@ +# Copyright 1999-2024 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +inherit toolchain-funcs + +# Upstream-package has no version in it's name. +# We therefore repackage it directly, together with the patches. +PATCH_LEVEL="2" + +DESCRIPTION="Trace and analyze memory leaks in C++ programs" +HOMEPAGE="https://andreasen.org/LeakTracer/" +SRC_URI="mirror://gentoo/${P}-gentoo_p${PATCH_LEVEL}.tbz2" + +LICENSE="public-domain" +SLOT="0" +KEYWORDS="~amd64 ~ppc ~x86" + +DEPEND="dev-lang/perl + dev-debug/gdb" +RDEPEND="${DEPEND}" + +# leaktracer is being realized using LD_PRELOAD and segfaults +# when being run in the sandbox and the library is _not_ in +# /usr/$(get_libdir) which is not possible before installation +RESTRICT="test" + +src_prepare() { + eapply -p1 "${WORKDIR}/patches/01_all_gcc-cflags.patch" + eapply -p0 "${WORKDIR}/patches/05_all_libdir.patch" + eapply -p1 "${WORKDIR}/patches/15_all_printf.patch" + + sed -i \ + -e "s|%LIBDIR%|$(get_libdir)|" \ + LeakCheck || die "sed for setting lib path failed" + + eapply_user +} + +src_compile() { + emake CXX="$(tc-getCXX)" +} + +src_install() { + dobin LeakCheck leak-analyze + dolib.so LeakTracer.so + dodoc README test.cc + docinto html + dodoc README.html +} + +pkg_postinst() { + elog "To use LeakTracer, run LeakCheck my_prog and then leak-analyze my_prog leak.out" + elog "Please refer to README file for more info." +} diff --git a/dev-debug/leaktracer/metadata.xml b/dev-debug/leaktracer/metadata.xml new file mode 100644 index 000000000000..85e4ed814fa2 --- /dev/null +++ b/dev-debug/leaktracer/metadata.xml @@ -0,0 +1,5 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<!-- maintainer-needed --> +</pkgmetadata> |