summaryrefslogtreecommitdiff
path: root/dev-util/duma
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
committerV3n3RiX <venerix@redcorelinux.org>2017-10-09 18:53:29 +0100
commit4f2d7949f03e1c198bc888f2d05f421d35c57e21 (patch)
treeba5f07bf3f9d22d82e54a462313f5d244036c768 /dev-util/duma
reinit the tree, so we can have metadata
Diffstat (limited to 'dev-util/duma')
-rw-r--r--dev-util/duma/Manifest9
-rw-r--r--dev-util/duma/duma-2.5.13.ebuild84
-rw-r--r--dev-util/duma/duma-2.5.15-r2.ebuild93
-rw-r--r--dev-util/duma/files/duma-2.5.15-gcc6.patch22
-rw-r--r--dev-util/duma/metadata.xml16
5 files changed, 224 insertions, 0 deletions
diff --git a/dev-util/duma/Manifest b/dev-util/duma/Manifest
new file mode 100644
index 000000000000..23bf0d593315
--- /dev/null
+++ b/dev-util/duma/Manifest
@@ -0,0 +1,9 @@
+AUX duma-2.5.15-gcc6.patch 599 SHA256 70dfa3df310122bd3387a6495c240edce4286dcd866576d0a9ac05635260f90d SHA512 9577e34e97b6f63654a8fa5b6ad26f54733cdd758a2a96b99c2771f9593436501b09ade40e8b20ff61da033e64c635a29b4884a6e4ea3b62fa9a4c12587cf947 WHIRLPOOL a0412cf7a2cb3da0a97816c84f6c70f60666bf8ebccc1ad526ee1784bad5a4d88ea99bb26e7133ad5ed14f3de3e143cb9ad8184d707715a0728cca018ff9bc80
+DIST duma-2.5.15-GNUmakefile.patch.bz2 4618 SHA256 71c79fedc436402301abc152ff0bca0db505c8641f57c2232a8d2d6e9f3a59b7 SHA512 6d83294897a60c6d0ebac388c8f791adc6a199b2c9838497bcfff39502262014c8437a331e08e3526568d3ef755a7dfdc2557771bdae89c58cd5f714eae70df2 WHIRLPOOL d295b278a35ce1cba7fd4f657c457dbad5a40b8f132632e5a3b1ff618e666a2de75b8347b053aacfaab77550918bcfedb92e8b3f0c6629069b242473c9e5b54f
+DIST duma_2_5_13.tar.gz 233157 SHA256 338757d68f580b38d0680f21151c55e705abf5c933d959410be90fe5c5248777 SHA512 da0f46a697f95cbb17d0dbb3135df779ac347fd9e63c1578d2d732300d5288958d02b5a271e84292a8279c1ebc3dc153f896cbeca916cf18aba8e54788671288 WHIRLPOOL 7262fecfb8a2176c352d0730f2fa2667d985740b2a75f42e7980d9a13f72d494eb9bd1dd4116cec37d03cc5441eb128d405de46e8a718b0a918179c7ae41368b
+DIST duma_2_5_15.tar.gz 240479 SHA256 baaf794854e3093ad1bddadbfb8ad4b220a7117d70359ee216bd59e353734e17 SHA512 0e2abdb08cfbaf9fd0a6be348c831a83ac4ee86d2297dcd1c4d625ddb4b2c1c73eef05e2b895e291d5b8076b1baea559c89d475f30e409210df4ab69b71b6345 WHIRLPOOL b7775cfefa49e942a8243520741920f506b09251e7c0966c2014863589f74a915de4ba8eee77716512ee3ad4071f748beb8ff4c03c95b7242f80aa397c4c51ad
+EBUILD duma-2.5.13.ebuild 2148 SHA256 02e3b9834e8f0229a1d8ed65c6d89c691e280798b19ac53fd4d4b8f45b757c15 SHA512 ae4197f4ebfe774adcaa85f8e9dac52bb66e4bac05f25b2ed91eaed2ad0a6c20433adcea07d0a9a7b3aa41183f597051f6af9266483af04f44c0a1ac0b2f43d0 WHIRLPOOL 76f70c6a3719c0f1132f2eb285d5652340b7835a427f7cc9e3560f0dcd63549e025e82ae9aefc3a782c22a5ed15a98c9d766dc423fbb8690bd26fbf53e86e560
+EBUILD duma-2.5.15-r2.ebuild 2245 SHA256 461391e49f41fda5c52b9c1bbb7806b053ce40914a96f7fa2cff7e65b70bf7b2 SHA512 f0464d408f0666181e79015a7232774f7fbe894474039bad0fcc4dae052e037c4797b9f549c6b050fcb6fd36e5de43456e33181008a818e3adb77b9184a5514b WHIRLPOOL 25bd1534a6fe101e62c040ae62a8b5b52a302daa7c86169f9ba11fefaa6e1af8df82c54f9ec78c140a95fc1201f0e82e488ca1ac600c0870a4ca2b7a454eba3a
+MISC ChangeLog 3358 SHA256 9ebc2e7437490916cddc03a82d926fb222fedf4cac374f3b4cb6928affaa3d84 SHA512 6a870f345a7a5d957f47586502bf04c3e8ad2a6d33f5dce3051d7807ebe8dcf104bba3054b5b969df096d0579e569812c1b60844efe1c0430f2368536d3b1d6d WHIRLPOOL 310a41285877b4546b69f9746781e5df4a60c25e2b67e0e0fc55ea53cbbbdb45d082a5deed4ca06a5953f12dda9c4dc2c773ea946c812ea050e984bf7e89877e
+MISC ChangeLog-2015 3401 SHA256 9e92b284e75226907b00510bd5336a8fd52c9bb799ee017bc7a0acd3e87967ee SHA512 a54a9e819d640150e9ff781c4c876d963a2f245a30a5bc31e86533f6f1ee2f241bf263d47a77483adcbb2496c6953fe5ffc4d90f54207ee1f2f2e1b8a71bd233 WHIRLPOOL 42c4928bddd38020a6840d1fc0c7e632377fe673a6c94caa3fb5d9d82c73e15263f7cbfbd889da27906f85ccc14e3800da61749aa52c9e4dc1328561ca40a312
+MISC metadata.xml 600 SHA256 965c4175aff48a5102cf4305b0a61dadbd2d230ec1048e174f800524f53d09d4 SHA512 f849e5c61d27430f2c7de1f86ac9f12b8424571703e08661bccb0415743bf2e88aea981e72a5b1c287c949c6634e975c5e3f9882b9a29171389bed998c352f08 WHIRLPOOL 2ebc211272275b05b9a8e7c3489f3b10f414a7fdadf2050339d12cd0554c678f5e0fb976f61eac9a668d0d1a548c3719c44c56445a1fe7ff5a9a778438b95539
diff --git a/dev-util/duma/duma-2.5.13.ebuild b/dev-util/duma/duma-2.5.13.ebuild
new file mode 100644
index 000000000000..5098d942b1e8
--- /dev/null
+++ b/dev-util/duma/duma-2.5.13.ebuild
@@ -0,0 +1,84 @@
+# Copyright 1999-2014 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+inherit eutils flag-o-matic multilib toolchain-funcs versionator
+
+MY_P="${PN}_$(replace_all_version_separators '_')"
+
+DESCRIPTION="DUMA (Detect Unintended Memory Access) is a memory debugging library"
+HOMEPAGE="http://duma.sourceforge.net/"
+
+SRC_URI="mirror://sourceforge/duma/${MY_P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="amd64 ppc x86"
+IUSE="examples"
+
+DEPEND=""
+RDEPEND="${DEPEND}
+ app-shells/bash"
+
+S="${WORKDIR}/${MY_P}"
+
+pkg_setup() {
+ #DUMA_OPTIONS="-DDUMA_LIB_NO_LEAKDETECTION"
+ DUMA_OPTIONS="-DDUMA_USE_FRAMENO"
+ if [ -n "${DUMA_OPTIONS}" ]; then
+ ewarn ""
+ elog "Custom build options are ${DUMA_OPTIONS}."
+ else
+ ewarn ""
+ elog "Custom build options are not set!"
+ fi
+ elog "See the package Makefile for for more options (also installed"
+ elog "with package docs as Makefile.duma)."
+ ewarn ""
+}
+
+src_unpack(){
+ unpack ${A}
+ cd "${S}"
+ sed -i -e "s:(prefix)/lib:(prefix)/$(get_libdir):g" Makefile
+ sed -i -e "s:share/doc/duma:share/doc/${P}:g" Makefile
+}
+
+src_compile(){
+ replace-flags O? O0
+ append-flags -Wall -Wextra -U_FORTIFY_SOURCE
+ tc-export AR CC CXX LD RANLIB
+
+ use amd64 && export DUMA_ALIGNMENT=16
+
+ make CPPFLAGS="${DUMA_OPTIONS}" reconfig || die "make reconfig failed"
+ emake CFLAGS="${CFLAGS}" CC=$(tc-getCC) || die "make failed"
+}
+
+src_test() {
+ ewarn "Control-C now if you want to disable tests..."
+ epause 5
+
+ cd "${S}"
+ use amd64 && export DUMA_ALIGNMENT=16
+ make CFLAGS="${DUMA_OPTIONS} ${CFLAGS}" \
+ CC=$(tc-getCC) test || die "make test failed"
+
+ elog ""
+ ewarn "Check output above to verify all tests have passed. Both"
+ ewarn "static and dynamic confidence tests should say PASSED."
+ elog ""
+}
+
+src_install(){
+ # make install fails nicely here on the first file...
+ make DESTDIR="${D}" install || die "make install failed"
+ dodoc CHANGELOG TODO
+ # All the good comments on duma build options are in the Makefile
+ newdoc Makefile Makefile.duma
+
+ if use examples; then
+ insinto /usr/share/doc/${P}/examples
+ doins example[1-6].cpp
+ doins example_makes/ex6/Makefile
+ fi
+}
diff --git a/dev-util/duma/duma-2.5.15-r2.ebuild b/dev-util/duma/duma-2.5.15-r2.ebuild
new file mode 100644
index 000000000000..f44643877e1e
--- /dev/null
+++ b/dev-util/duma/duma-2.5.15-r2.ebuild
@@ -0,0 +1,93 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+inherit toolchain-funcs versionator
+
+MY_P=${PN}_$(replace_all_version_separators '_')
+
+DESCRIPTION="DUMA (Detect Unintended Memory Access) is a memory debugging library"
+HOMEPAGE="http://duma.sourceforge.net"
+SRC_URI="mirror://sourceforge/duma/${MY_P}.tar.gz
+ mirror://gentoo/${P}-GNUmakefile.patch.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="examples"
+
+S=${WORKDIR}/${MY_P}
+
+PATCHES=(
+ "${WORKDIR}"/${P}-GNUmakefile.patch
+ "${FILESDIR}"/${P}-gcc6.patch
+)
+
+src_configure() {
+ # other flags will break duma
+ export CFLAGS="-O0 -Wall -Wextra -U_FORTIFY_SOURCE"
+ tc-export AR CC CXX LD RANLIB
+
+ case "${CHOST}" in
+ *-linux-gnu)
+ OS=linux;;
+ *-solaris*)
+ OS=solaris;;
+ *-darwin*)
+ OS=osx;;
+ *-freebsd*)
+ OS=freebsd;;
+ *-netbsd*)
+ OS=netbsd;;
+ *-cygwin*)
+ OS=cygwin;;
+ **-irix**)
+ OS=irix;;
+ esac
+ export OS="${OS}"
+ elog "Detected OS is: ${OS}"
+
+ if use amd64 && ! [ -n "${DUMA_ALIGNMENT}" ]; then
+ export DUMA_ALIGNMENT=16
+ elog "Exported DUMA_ALIGNMENT=${DUMA_ALIGNMENT} for x86_64,"
+ fi
+
+}
+
+src_compile() {
+ # The below must be run first if distcc is enabled, otherwise
+ # the real build breaks on parallel makes.
+ emake reconfig
+ emake
+}
+
+src_test() {
+ emake test
+
+ elog "Please, see the output above to verify all tests have passed."
+ elog "Both static and dynamic confidence tests should say PASSED."
+}
+
+src_install(){
+ emake prefix="${D}/usr" libdir="${D}/usr/$(get_libdir)" \
+ docdir="${D}/usr/share/doc/${PF}" install
+
+ sed -i "s|LD_PRELOAD=./libduma|LD_PRELOAD=libduma|" "${D}"/usr/bin/duma \
+ || die "sed failed"
+
+ dodoc CHANGELOG TODO GNUmakefile
+
+ if use examples; then
+ insinto /usr/share/doc/${PF}/examples
+ doins example[1-6].cpp example_makes/ex6/Makefile
+ fi
+}
+
+pkg_postinst() {
+ elog "See the GNUmakefile which will be also installed at"
+ elog "/usr/share/doc/${PF} for more options. You can now export"
+ elog "varibles to the build system easily, e.g.:"
+ elog "# export CPPFLAGS=\"-DFLAG\" (or by using append-cppflags)"
+ elog "# export DUMA_ALIGNMENT=${DUMA_ALIGNMENT} (Default is 16 for x86_64)"
+ elog "See more information about DUMA_ALIGNMENT from Readme.txt"
+}
diff --git a/dev-util/duma/files/duma-2.5.15-gcc6.patch b/dev-util/duma/files/duma-2.5.15-gcc6.patch
new file mode 100644
index 000000000000..7cffef2b4e2c
--- /dev/null
+++ b/dev-util/duma/files/duma-2.5.15-gcc6.patch
@@ -0,0 +1,22 @@
+--- duma_2_5_15/dumapp.cpp.old 2016-09-21 19:28:01.286332961 -0400
++++ duma_2_5_15/dumapp.cpp 2016-09-21 19:28:06.722907238 -0400
+@@ -190,7 +190,9 @@
+ * (11) = (a) ; ASW
+ */
+ void * DUMA_CDECL operator new( DUMA_SIZE_T size )
++#if __cplusplus < 201103L
+ throw(std::bad_alloc)
++#endif
+ {
+ return duma_new_operator(size, EFA_NEW_ELEM, true DUMA_PARAMS_UK);
+ }
+@@ -254,7 +256,9 @@
+ * (21) = (a) ; AAW
+ */
+ void * DUMA_CDECL operator new[]( DUMA_SIZE_T size )
++#if __cplusplus < 201103L
+ throw(std::bad_alloc)
++#endif
+ {
+ return duma_new_operator(size, EFA_NEW_ARRAY, true DUMA_PARAMS_UK);
+ }
diff --git a/dev-util/duma/metadata.xml b/dev-util/duma/metadata.xml
new file mode 100644
index 000000000000..8e3b12d940a2
--- /dev/null
+++ b/dev-util/duma/metadata.xml
@@ -0,0 +1,16 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>bircoph@gentoo.org</email>
+ <name>Andrew Savchenko</name>
+ </maintainer>
+ <longdescription>
+DUMA is an open-source library (under GNU General Public License) to
+detect buffer overruns and under-runs in C and C++ programs. This
+library is a fork of Buce Perens Electric Fence library and adds
+some new features to it.</longdescription>
+ <upstream>
+ <remote-id type="sourceforge">duma</remote-id>
+ </upstream>
+</pkgmetadata>