diff options
Diffstat (limited to 'dev-ada/gnatmem')
-rw-r--r-- | dev-ada/gnatmem/Manifest | 6 | ||||
-rw-r--r-- | dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch | 89 | ||||
-rw-r--r-- | dev-ada/gnatmem/gnatmem-2017.ebuild | 42 | ||||
-rw-r--r-- | dev-ada/gnatmem/gnatmem-2018.ebuild | 42 | ||||
-rw-r--r-- | dev-ada/gnatmem/metadata.xml | 28 |
5 files changed, 207 insertions, 0 deletions
diff --git a/dev-ada/gnatmem/Manifest b/dev-ada/gnatmem/Manifest new file mode 100644 index 000000000000..6be337014ce5 --- /dev/null +++ b/dev-ada/gnatmem/Manifest @@ -0,0 +1,6 @@ +AUX gnatmem-2016-gentoo.patch 3139 BLAKE2B 240fdce83be5d6776d79138dad494ed3f8deafda92c4107a4554ac5a97afdf26102b8bcdd7c31ac09edde7e0b6b53b4d1bc8c2e89eeab591da93af94ee357d25 SHA512 6be363642a5b5244050b275c436eed25948a2b8eea936b0b41ecd9c312441281d325ae9b41b84affd30eae1172cb31ed719935e96b9adc21707b20b88dabc84e +DIST gnatmem-gpl-2017-src.tar.gz 80106 BLAKE2B 81f5b2fe4cacf383a39230bf3ebbbbfce0cd0a774b0289a78774dacedbfa0f2ca385b5538e1d12a075383158ff3c657d3a645f8f08be62fe6a437c9f7cd4b971 SHA512 52ba2cfb24314f481ec07e351ff6d8883753dcfe5d0489a78536bf0b841d931055be02271a5d93b2ec15c52fd775d4b177a17de52f9472cc8f352bf044b28897 +DIST gnatmem-gpl-2018-src.tar.gz 80101 BLAKE2B c117552c2f8369f588127933ca1ba3075aeea6d7c3867861817b080f633fe26a7692c101b500d7441b49e79e75ce5a771a80287d0fb28bd0f569a358a8976d7d SHA512 539703bcb97cab996a4b4381685b021a419df781be3997538120580944fdcbb021fd28f574f66b8d52adbf5c6f1d7e29495c2115515d761f3cfce5bcc7bd8f56 +EBUILD gnatmem-2017.ebuild 852 BLAKE2B 9c08a8678c1af06e6e1388d17a3d0a740fbd06301bfb9313c832989d71198b6cce7d54051de0c8c92b0bca779a8b96ba030b5eed6bfddf8990230ea91de13eb5 SHA512 fe4ef12c20bcc2e1a17d9b8d5b507a16ec818d636c2de732b1467828f32de133132430422e7519892f95027397c65dd3f2ed959fafa0ff5fe6d661b9851f47f2 +EBUILD gnatmem-2018.ebuild 888 BLAKE2B e8c11628ce8561866468d8971b96fea8bc1bf5dc698d1c8c69348c037fbe9122a4d7a88ce92eb5ade450fad1501842791befddc95b6d0355c37edfd102ee4fa5 SHA512 166e40d3eddd59f6629b9e87f0126a10f93dd1e205f5ba80550f97244331faf0ed84b2a50145deae1861038814a795ee2b41ecb16a14df718e916487bf6e5b2a +MISC metadata.xml 1206 BLAKE2B 141fe49e4b3fa46b43658dc0e3852624f5e82d6c796eea4b5e228b65b727170f45a0d0675dd0b864a331df0cd14acb11ff8a251c83d9b1f8aff19588b8e7d677 SHA512 9a8ab793dcd6d6903b1fbe59170261b5454560bef9fd70982d261137b7f4d32c5b12755b4073e4d38050f79815796f752fd61dd9b0fee9c449ce3334ed584baa diff --git a/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch b/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch new file mode 100644 index 000000000000..69530dd24b23 --- /dev/null +++ b/dev-ada/gnatmem/files/gnatmem-2016-gentoo.patch @@ -0,0 +1,89 @@ +--- 1/configure.in.old 2016-12-08 20:57:53.942004080 +0100 ++++ 1/configure.in 2016-12-08 21:00:10.393677257 +0100 +@@ -2,23 +2,14 @@ + AC_INIT(gnatmem.gpr.in) + AC_CANONICAL_SYSTEM + AC_PROG_CC(gcc) +-AC_CHECK_TOOL(GNATBIND,gnatbind,"no") +-if test ${GNATBIND} = "no"; then +- AC_MSG_ERROR(Ada compiler needed,1) +-fi ++AC_CONFIG_HEADERS(config.h:config.in) ++AC_DEFINE_UNQUOTED(TARGET, "${target}", [Configured target name.]) + AC_ARG_WITH(binutils-buildtree, + [AC_HELP_STRING( + [--with-binutils-buildtree=<dir>], + [Specifify location of binutils build tree])], + BINUTILS_OBJDIR=$withval, + BINUTILS_OBJDIR=no) +-AC_MSG_CHECKING([for binutils build tree validity]) +-if test -f "$BINUTILS_OBJDIR/bfd/libbfd.a"; then +- AC_MSG_RESULT(yes) +-else +- AC_MSG_RESULT(no) +- AC_MSG_FAILURE([need valid binutils build tree directory (got $BINUTILS_OBJDIR)]) +-fi + + AC_ARG_WITH(binutils-sources, + [AC_HELP_STRING( +@@ -26,21 +21,6 @@ + [Specifify location of binutils sources])], + BINUTILS_SRCDIR=$withval, + BINUTILS_SRCDIR=auto) +-if test "$BINUTILS_SRCDIR" = "auto"; then +- BINUTILS_SRCDIR=`cat "$BINUTILS_OBJDIR/Makefile" | sed -n -e "/^ *srcdir *=/ s/^ *srcdir *= *// p"` +- case "$BINUTILS_SRC_DIR" in +- /*) ;; +- *) # assume we have relative path +- BINUTILS_SRCDIR="$BINUTILS_OBJDIR/$BINUTILS_SRCDIR";; +- esac +-fi +-AC_MSG_CHECKING([for binutils source dir validity]) +-if test -f "$BINUTILS_SRCDIR/bfd/Makefile.in"; then +- AC_MSG_RESULT(yes) +-else +- AC_MSG_RESULT(no) +- AC_MSG_FAILURE([need valid binutils sources directory]) +-fi + + AC_SUBST(BINUTILS_OBJDIR) + AC_SUBST(BINUTILS_SRCDIR) +--- gnatmem-gpl-2016-src/gnatmem.gpr.in.old 2017-02-02 22:15:30.247906007 +0100 ++++ gnatmem-gpl-2016-src/gnatmem.gpr.in 2017-02-02 22:17:22.604974363 +0100 +@@ -10,8 +10,10 @@ + for Languages use ("ada", "c"); + + package Compiler is ++ for Driver ("C") use External ("CC", "gcc"); + for Default_Switches ("ada") use ("-O2", "-W", "-Wall", "-gnatpg"); + for Default_Switches ("c") use ("-O2", ++ "-I..", + "-I" & BINUTILS_OBJDIR & "/binutils", + "-I" & BINUTILS_OBJDIR & "/bfd", + "-I" & BINUTILS_SRCDIR & "/include"); +@@ -19,8 +21,8 @@ + + package Linker is + for Default_Switches ("ada") use +- (BINUTILS_OBJDIR & "/bfd/libbfd.a", +- BINUTILS_OBJDIR & "/libiberty/libiberty.a", ++ ("-lbfd", ++ "-liberty", + "@LIBDL@", + "@LIBZ@"); + end Linker; +--- gnatmem-gpl-2015-src/src/libaddr2line.c.old 2017-01-04 21:03:36.185233702 +0100 ++++ gnatmem-gpl-2015-src/src/libaddr2line.c 2017-01-04 21:04:17.680455390 +0100 +@@ -23,9 +23,9 @@ + #include <string.h> + #include <stdlib.h> + +-#include "bfd.h" +-#include "libiberty.h" +-#include "demangle.h" ++#include <bfd.h> ++#include <libiberty/libiberty.h> ++#include <libiberty/demangle.h> + + static asymbol **cur_syms; /* Symbol table. */ + static bfd *cur_bfd; diff --git a/dev-ada/gnatmem/gnatmem-2017.ebuild b/dev-ada/gnatmem/gnatmem-2017.ebuild new file mode 100644 index 000000000000..e7d409d86e59 --- /dev/null +++ b/dev-ada/gnatmem/gnatmem-2017.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multiprocessing autotools + +MYP=${PN}-gpl-${PV}-src + +DESCRIPTION="Monitors dynamic allocation and deallocation activity in a program" +HOMEPAGE="http://libre.adacore.com/" +SRC_URI="http://mirrors.cdn.adacore.com/art/591c45e2c7a447af2deed033 -> + ${MYP}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="gnat_2016 +gnat_2017" + +RDEPEND="" +DEPEND="dev-ada/gprbuild[gnat_2016=,gnat_2017=]" + +REQUIRED_USE="^^ ( gnat_2016 gnat_2017 )" + +S="${WORKDIR}"/${MYP} + +PATCHES=( "${FILESDIR}"/${PN}-2016-gentoo.patch ) + +src_prepare() { + default + mv configure.in configure.ac + eautoreconf +} + +src_compile() { + gprbuild -Pgnatmem.gpr -j$(makeopts_jobs) \ + -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} +} + +src_install() { + dobin obj/gnatmem +} diff --git a/dev-ada/gnatmem/gnatmem-2018.ebuild b/dev-ada/gnatmem/gnatmem-2018.ebuild new file mode 100644 index 000000000000..74e1cea6ebff --- /dev/null +++ b/dev-ada/gnatmem/gnatmem-2018.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit multiprocessing autotools + +MYP=${PN}-gpl-${PV}-src + +DESCRIPTION="Monitors dynamic allocation and deallocation activity in a program" +HOMEPAGE="http://libre.adacore.com/" +SRC_URI="http://mirrors.cdn.adacore.com/art/5b0819dfc7a447df26c27a72 -> + ${MYP}.tar.gz" + +LICENSE="GPL-3" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="gnat_2016 gnat_2017 +gnat_2018" + +RDEPEND="" +DEPEND="dev-ada/gprbuild[gnat_2016=,gnat_2017=,gnat_2018=]" + +REQUIRED_USE="^^ ( gnat_2016 gnat_2017 gnat_2018 )" + +S="${WORKDIR}"/${MYP} + +PATCHES=( "${FILESDIR}"/${PN}-2016-gentoo.patch ) + +src_prepare() { + default + mv configure.in configure.ac + eautoreconf +} + +src_compile() { + gprbuild -v -Pgnatmem.gpr -j$(makeopts_jobs) \ + -cargs:C ${CFLAGS} -cargs:Ada ${ADAFLAGS} +} + +src_install() { + dobin obj/gnatmem +} diff --git a/dev-ada/gnatmem/metadata.xml b/dev-ada/gnatmem/metadata.xml new file mode 100644 index 000000000000..7fac49bbd330 --- /dev/null +++ b/dev-ada/gnatmem/metadata.xml @@ -0,0 +1,28 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>tupone@gentoo.org</email> + <name>Tupone Alfredo</name> + </maintainer> + <use> + <flag name="gnat_2016">Compile with dev-lang/gnat-gpl-2016</flag> + <flag name="gnat_2017">Compile with dev-lang/gnat-gpl-2017</flag> + <flag name="gnat_2018">Compile with dev-lang/gnat-gpl-2018</flag> + </use> + <longdescription lang="en"> + The gnatmem utility monitors dynamic allocation and deallocation + activity in a program, and displays information about incorrect + deallocations and possible sources of memory leaks. It provides three + type of information: + + General information concerning memory management, such as the total + number of allocations and deallocations, the amount of allocated memory + and the high water mark, i.e. the largest amount of allocated memory in + the course of program execution. + Backtraces for all incorrect deallocations, that is to say + deallocations which do not correspond to a valid allocation. + Information on each allocation that is potentially the origin of a + memory leak. + </longdescription> +</pkgmetadata> |