summaryrefslogtreecommitdiff
path: root/devel
diff options
context:
space:
mode:
authorwiz <wiz@pkgsrc.org>2014-04-16 14:56:07 +0000
committerwiz <wiz@pkgsrc.org>2014-04-16 14:56:07 +0000
commit825c8782e5bcf743ec673e5e9e20906ce5dd52b0 (patch)
treef952e0a58535afb6b267756b0cb846944abd01d0 /devel
parentf57b1ca8965060974610dd6d4551d700c44427c2 (diff)
downloadpkgsrc-825c8782e5bcf743ec673e5e9e20906ce5dd52b0.tar.gz
Import gperftools-2.1 as devel/gperftools.
These tools are for use by developers so that they can create more robust applications. Especially of use to those developing multi-threaded applications in C++ with templates. Includes TCMalloc, heap-checker, heap-profiler, and CPU-profiler.
Diffstat (limited to 'devel')
-rw-r--r--devel/gperftools/DESCR4
-rw-r--r--devel/gperftools/Makefile32
-rw-r--r--devel/gperftools/PLIST83
-rw-r--r--devel/gperftools/distinfo6
-rw-r--r--devel/gperftools/patches/patch-Makefile.in42
5 files changed, 167 insertions, 0 deletions
diff --git a/devel/gperftools/DESCR b/devel/gperftools/DESCR
new file mode 100644
index 00000000000..41ed00ff5a3
--- /dev/null
+++ b/devel/gperftools/DESCR
@@ -0,0 +1,4 @@
+These tools are for use by developers so that they can create more
+robust applications. Especially of use to those developing
+multi-threaded applications in C++ with templates. Includes TCMalloc,
+heap-checker, heap-profiler, and CPU-profiler.
diff --git a/devel/gperftools/Makefile b/devel/gperftools/Makefile
new file mode 100644
index 00000000000..6459838037d
--- /dev/null
+++ b/devel/gperftools/Makefile
@@ -0,0 +1,32 @@
+# $NetBSD: Makefile,v 1.1 2014/04/16 14:56:07 wiz Exp $
+
+DISTNAME= gperftools-2.1
+CATEGORIES= devel
+MASTER_SITES= https://gperftools.googlecode.com/files/
+
+MAINTAINER= cheusov@NetBSD.org
+HOMEPAGE= https://code.google.com/p/gperftools/
+COMMENT= Fast, multi-threaded malloc() and nifty performance analysis tools
+LICENSE= modified-bsd
+
+USE_TOOLS+= perl:run
+REPLACE_PERL= src/pprof
+
+GNU_CONFIGURE= yes
+USE_LIBTOOL= yes
+USE_LANGUAGES= c c++
+
+CONFIGURE_ARGS+= --enable-frame-pointers # per README
+
+# http://code.google.com/p/gperftools/issues/detail?id=609
+
+PKGCONFIG_OVERRIDE= libprofiler.pc
+PKGCONFIG_OVERRIDE+= libtcmalloc.pc
+PKGCONFIG_OVERRIDE+= libtcmalloc_debug.pc
+PKGCONFIG_OVERRIDE+= libtcmalloc_minimal.pc
+PKGCONFIG_OVERRIDE+= libtcmalloc_minimal_debug.pc
+PKGCONFIG_OVERRIDE_STAGE= post-build
+
+TEST_TARGET= check
+
+.include "../../mk/bsd.pkg.mk"
diff --git a/devel/gperftools/PLIST b/devel/gperftools/PLIST
new file mode 100644
index 00000000000..74afdfd78b4
--- /dev/null
+++ b/devel/gperftools/PLIST
@@ -0,0 +1,83 @@
+@comment $NetBSD: PLIST,v 1.1 2014/04/16 14:56:07 wiz Exp $
+bin/pprof
+include/google/heap-checker.h
+include/google/heap-profiler.h
+include/google/malloc_extension.h
+include/google/malloc_extension_c.h
+include/google/malloc_hook.h
+include/google/malloc_hook_c.h
+include/google/profiler.h
+include/google/stacktrace.h
+include/google/tcmalloc.h
+include/gperftools/heap-checker.h
+include/gperftools/heap-profiler.h
+include/gperftools/malloc_extension.h
+include/gperftools/malloc_extension_c.h
+include/gperftools/malloc_hook.h
+include/gperftools/malloc_hook_c.h
+include/gperftools/profiler.h
+include/gperftools/stacktrace.h
+include/gperftools/tcmalloc.h
+lib/libprofiler.la
+lib/libtcmalloc.la
+lib/libtcmalloc_and_profiler.la
+lib/libtcmalloc_debug.la
+lib/libtcmalloc_minimal.la
+lib/libtcmalloc_minimal_debug.la
+lib/pkgconfig/libprofiler.pc
+lib/pkgconfig/libtcmalloc.pc
+lib/pkgconfig/libtcmalloc_debug.pc
+lib/pkgconfig/libtcmalloc_minimal.pc
+lib/pkgconfig/libtcmalloc_minimal_debug.pc
+man/man1/pprof.1
+share/doc/${PKGNAME}/AUTHORS
+share/doc/${PKGNAME}/COPYING
+share/doc/${PKGNAME}/ChangeLog
+share/doc/${PKGNAME}/INSTALL
+share/doc/${PKGNAME}/NEWS
+share/doc/${PKGNAME}/README
+share/doc/${PKGNAME}/README_windows.txt
+share/doc/${PKGNAME}/TODO
+share/doc/${PKGNAME}/cpuprofile-fileformat.html
+share/doc/${PKGNAME}/cpuprofile.html
+share/doc/${PKGNAME}/designstyle.css
+share/doc/${PKGNAME}/heap-example1.png
+share/doc/${PKGNAME}/heap_checker.html
+share/doc/${PKGNAME}/heapprofile.html
+share/doc/${PKGNAME}/index.html
+share/doc/${PKGNAME}/overview.dot
+share/doc/${PKGNAME}/overview.gif
+share/doc/${PKGNAME}/pageheap.dot
+share/doc/${PKGNAME}/pageheap.gif
+share/doc/${PKGNAME}/pprof-test-big.gif
+share/doc/${PKGNAME}/pprof-test.gif
+share/doc/${PKGNAME}/pprof-vsnprintf-big.gif
+share/doc/${PKGNAME}/pprof-vsnprintf.gif
+share/doc/${PKGNAME}/pprof_remote_servers.html
+share/doc/${PKGNAME}/spanmap.dot
+share/doc/${PKGNAME}/spanmap.gif
+share/doc/${PKGNAME}/t-test1.times.txt
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.1024.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.128.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.131072.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.16384.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.2048.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.256.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.32768.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.4096.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.512.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.64.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.65536.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspercpusec.vs.threads.8192.bytes.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.1.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.12.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.16.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.2.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.20.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.3.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.4.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.5.threads.png
+share/doc/${PKGNAME}/tcmalloc-opspersec.vs.size.8.threads.png
+share/doc/${PKGNAME}/tcmalloc.html
+share/doc/${PKGNAME}/threadheap.dot
+share/doc/${PKGNAME}/threadheap.gif
diff --git a/devel/gperftools/distinfo b/devel/gperftools/distinfo
new file mode 100644
index 00000000000..fcead2859d8
--- /dev/null
+++ b/devel/gperftools/distinfo
@@ -0,0 +1,6 @@
+$NetBSD: distinfo,v 1.1 2014/04/16 14:56:07 wiz Exp $
+
+SHA1 (gperftools-2.1.tar.gz) = b799b99d9f021988bbc931db1c21b2f94826d4f0
+RMD160 (gperftools-2.1.tar.gz) = 0cf9af2502e661d3771976e943ef2afb8b749983
+Size (gperftools-2.1.tar.gz) = 1319896 bytes
+SHA1 (patch-Makefile.in) = 61dcee2b8aa4cddc9e31b4728e28aea7fd958e41
diff --git a/devel/gperftools/patches/patch-Makefile.in b/devel/gperftools/patches/patch-Makefile.in
new file mode 100644
index 00000000000..5e839ac78f1
--- /dev/null
+++ b/devel/gperftools/patches/patch-Makefile.in
@@ -0,0 +1,42 @@
+$NetBSD: patch-Makefile.in,v 1.1 2014/04/16 14:56:07 wiz Exp $
+
+Add missing -lexecinfo for NetBSD.
+
+--- Makefile.in.orig 2013-07-30 09:12:29.000000000 +0000
++++ Makefile.in
+@@ -1032,7 +1032,7 @@ heap_checker_debug_unittest_OBJECTS = \
+ heap_checker_debug_unittest_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CXX \
+ $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CXXLD) \
+ $(heap_checker_debug_unittest_CXXFLAGS) $(CXXFLAGS) \
+- $(heap_checker_debug_unittest_LDFLAGS) $(LDFLAGS) -o $@
++ $(heap_checker_debug_unittest_LDFLAGS) $(LDFLAGS) -o $@ -lexecinfo
+ am__heap_checker_debug_unittest_sh_SOURCES_DIST = \
+ src/tests/heap-checker_unittest.sh
+ am_heap_checker_debug_unittest_sh_OBJECTS =
+@@ -2529,7 +2529,7 @@ atomicops_unittest_LDADD = $(LIBSPINLOCK
+ @WITH_STACK_TRACE_TRUE@stacktrace_unittest_SOURCES = src/tests/stacktrace_unittest.cc \
+ @WITH_STACK_TRACE_TRUE@ $(STACKTRACE_UNITTEST_INCLUDES)
+
+-@WITH_STACK_TRACE_TRUE@stacktrace_unittest_LDADD = libstacktrace.la liblogging.la
++@WITH_STACK_TRACE_TRUE@stacktrace_unittest_LDADD = libstacktrace.la liblogging.la -lexecinfo
+
+ ### ------- pprof
+
+@@ -2962,7 +2962,8 @@ thread_dealloc_unittest_LDADD = $(LIBTCM
+ # We also put pthreads after tcmalloc, because some pthread
+ # implementations define their own malloc, and we need to go on the
+ # first linkline to make sure our malloc 'wins'.
+-@WITH_HEAP_CHECKER_TRUE@heap_checker_unittest_LDADD = $(LIBTCMALLOC) liblogging.la $(PTHREAD_LIBS)
++@WITH_HEAP_CHECKER_TRUE@heap_checker_unittest_LDADD = $(LIBTCMALLOC) liblogging.la $(PTHREAD_LIBS) -lexecinfo
++@WITH_HEAP_CHECKER_TRUE@heap-checker_debug_unittest_LDADD = -lexecinfo
+ @WITH_DEBUGALLOC_TRUE@@WITH_HEAP_PROFILER_OR_CHECKER_TRUE@libtcmalloc_debug_la_SOURCES = src/debugallocation.cc $(HEAP_CHECKER_SOURCES) \
+ @WITH_DEBUGALLOC_TRUE@@WITH_HEAP_PROFILER_OR_CHECKER_TRUE@ $(TCMALLOC_INCLUDES)
+
+@@ -2997,6 +2998,7 @@ thread_dealloc_unittest_LDADD = $(LIBTCM
+ @WITH_DEBUGALLOC_TRUE@@WITH_HEAP_CHECKER_TRUE@heap_checker_debug_unittest_SOURCES = $(heap_checker_unittest_SOURCES)
+ @WITH_DEBUGALLOC_TRUE@@WITH_HEAP_CHECKER_TRUE@heap_checker_debug_unittest_CXXFLAGS = $(heap_checker_unittest_CXXFLAGS)
+ @WITH_DEBUGALLOC_TRUE@@WITH_HEAP_CHECKER_TRUE@heap_checker_debug_unittest_LDFLAGS = $(heap_checker_unittest_LDFLAGS)
++@WITH_DEBUGALLOC_TRUE@@WITH_HEAP_CHECKER_TRUE@heap_checker_debug_unittest_LDADD = -lexecinfo
+ # We want libtcmalloc last on the link line, but due to a bug in
+ # libtool involving convenience libs, they need to come last on the
+ # link line in order to get dependency ordering right. This is ok: