summaryrefslogtreecommitdiff
path: root/dev-util/leaktracer
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
committerV3n3RiX <venerix@redcorelinux.org>2018-07-14 21:03:06 +0100
commit8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 (patch)
tree7681bbd4e8b05407772df40a4bf04cbbc8afc3fa /dev-util/leaktracer
parent30a9caf154332f12ca60756e1b75d2f0e3e1822d (diff)
gentoo resync : 14.07.2018
Diffstat (limited to 'dev-util/leaktracer')
-rw-r--r--dev-util/leaktracer/Manifest3
-rw-r--r--dev-util/leaktracer/leaktracer-2.4-r3.ebuild55
-rw-r--r--dev-util/leaktracer/metadata.xml8
3 files changed, 66 insertions, 0 deletions
diff --git a/dev-util/leaktracer/Manifest b/dev-util/leaktracer/Manifest
new file mode 100644
index 000000000000..a6206b5fdbce
--- /dev/null
+++ b/dev-util/leaktracer/Manifest
@@ -0,0 +1,3 @@
+DIST leaktracer-2.4-gentoo_p2.tbz2 11957 BLAKE2B 0af20e7a43c88a16027e859779924ef3fc86af5fb8324a96721f190db4ef59d78681ea4b91ef9843ed467541c9ca3a9b1618339174fdc1901a13b5221acc5479 SHA512 12f348564933c8cf372208f846bb21b175f041e7687811e9c6ce8062e7f285b9d2395e7853a20df11d9b0d5b8fff89efc76ccbac9f8b7c0bc4fd4ea25d476718
+EBUILD leaktracer-2.4-r3.ebuild 1386 BLAKE2B fee3816896db6341384016dd300e66d4c3a09368d89ce4b1e1480ca62311176223a18824b164034ff65d8efe1fa57b6d22e5628ddbd0f56f48b3d0ae51318785 SHA512 63bd2edad6fbdd6c710c0bac526b386a787c72aec151f6470ea11081f807c771d4bd797c3ecfcf71493380e35893a9bb279f6d13473a9a02fc1d6a54889df992
+MISC metadata.xml 245 BLAKE2B 61823ae735b381c891f5cae47974d3b1ea6136d6f5f5d449a26dfcdf26472282d760b4ee8a605b8a7b75b9c97443cbc0db309ada118ce186030f276ed7c88963 SHA512 b098db4fb4d9ea116f6246bc6caf0f49e80e236d2fad78d287b638dbd5add7bfaf7feb1ca081ca557b23dde9227ce42fa808f3f6fd8eaba6a7e9cae93342f9c6
diff --git a/dev-util/leaktracer/leaktracer-2.4-r3.ebuild b/dev-util/leaktracer/leaktracer-2.4-r3.ebuild
new file mode 100644
index 000000000000..9312217fb988
--- /dev/null
+++ b/dev-util/leaktracer/leaktracer-2.4-r3.ebuild
@@ -0,0 +1,55 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+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="http://www.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
+ sys-devel/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-util/leaktracer/metadata.xml b/dev-util/leaktracer/metadata.xml
new file mode 100644
index 000000000000..41cd682e0ecf
--- /dev/null
+++ b/dev-util/leaktracer/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+<maintainer type="project">
+ <email>cpp@gentoo.org</email>
+ <name>Gentoo C++ Project</name>
+</maintainer>
+</pkgmetadata>