ports/69845: new port: devel/calltree: a cache simulation and call tracing plugin for valgrind

Simon Barner barner at in.tum.de
Sat Jul 31 15:00:39 UTC 2004


>Number:         69845
>Category:       ports
>Synopsis:       new port: devel/calltree: a cache simulation and call tracing plugin for valgrind
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Sat Jul 31 15:00:24 GMT 2004
>Closed-Date:
>Last-Modified:
>Originator:     Simon Barner
>Release:        FreeBSD 5.2.1-RELEASE-p5 i386
>Organization:
>Environment:
System: FreeBSD zi025.glhnet.mhn.de 5.2.1-RELEASE-p5 FreeBSD 5.2.1-RELEASE-p5 #0: Sat Apr 17 12:06:11 CEST 2004 toor at zi025.glhnet.mhn.de:/usr/src/sys/i386/compile/KISTE i386

>Description:

Calltree uses runtime instrumentation via the Valgrind framework for
its cache simulation and call tracing. This way, even shared libraries
and dynamically opened plugins can be profiled. The data files
generated by Calltree can be loaded into KCachegrind for browsing the
performance results. But there is also a command line tool in the
Calltree package to get ASCII reports from Calltree data files without
the need to use KCachegrind.

For more information see: http://kcachegrind.sf.net/

Note: There is another PR for kcachegrind which is a visualiation tool
      for the data collected by calltree.

>How-To-Repeat:

N/A

>Fix:

--- calltree.shar begins here ---
# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
#	calltree
#	calltree/pkg-plist
#	calltree/distinfo
#	calltree/pkg-descr
#	calltree/Makefile
#	calltree/files
#	calltree/files/patch-src::Makefile.in
#	calltree/files/patch-src::ct_main.c
#
echo c - calltree
mkdir -p calltree > /dev/null 2>&1
echo x - calltree/pkg-plist
sed 's/^X//' >calltree/pkg-plist << 'END-of-calltree/pkg-plist'
Xbin/calltree
Xbin/ct_annotate
Xbin/ct_control
Xinclude/valgrind/calltree.h
Xlib/valgrind/vgskin_calltree.so
Xshare/doc/valgrind/ct_main.html
Xshare/doc/valgrind/ct_techdocs.html
END-of-calltree/pkg-plist
echo x - calltree/distinfo
sed 's/^X//' >calltree/distinfo << 'END-of-calltree/distinfo'
XMD5 (calltree-0.9.7.tar.gz) = f1bb4e6446f26219cf5772849630b380
XSIZE (calltree-0.9.7.tar.gz) = 156812
END-of-calltree/distinfo
echo x - calltree/pkg-descr
sed 's/^X//' >calltree/pkg-descr << 'END-of-calltree/pkg-descr'
XCalltree uses runtime instrumentation via the Valgrind framework for its
Xcache simulation and call tracing. This way, even shared libraries and
Xdynamically opened plugins can be profiled. The data files generated by
XCalltree can be loaded into KCachegrind for browsing the performance results.
X
XBut there is also a command line tool in the Calltree package to get ASCII
Xreports from Calltree data files without the need to use KCachegrind.
X
XWWW: http://kcachegrind.sourceforge.net
END-of-calltree/pkg-descr
echo x - calltree/Makefile
sed 's/^X//' >calltree/Makefile << 'END-of-calltree/Makefile'
X# New ports collection makefile for:	calltree
X# Date created:				Jun 3 2004
X# Whom:					Simon Barner <barner at gmx.de>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	calltree
XPORTVERSION=	0.9.7
XCATEGORIES=	devel
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	kcachegrind
X
XMAINTAINER=	barner at gmx.de
XCOMMENT=	Valgrind skin for cache simulation and call tracing
X
XRUN_DEPENDS=	valgrind:${PORTSDIR}/devel/valgrind
XBUILD_DEPENDS=	valgrind:${PORTSDIR}/devel/valgrind
X
XGNU_CONFIGURE=	yes
XUSE_GMAKE=	yes
X
X.include <bsd.port.mk>
END-of-calltree/Makefile
echo c - calltree/files
mkdir -p calltree/files > /dev/null 2>&1
echo x - calltree/files/patch-src::Makefile.in
sed 's/^X//' >calltree/files/patch-src::Makefile.in << 'END-of-calltree/files/patch-src::Makefile.in'
X--- src/Makefile.in.orig	Thu Jun  3 05:08:28 2004
X+++ src/Makefile.in	Thu Jun  3 05:08:54 2004
X@@ -116,7 +116,7 @@
X SUBDIRS = .
X 
X AM_CFLAGS = $(WERROR) -DVG_LIBDIR="\"$(libdir)"\" \
X- -Winline -Wall -Wshadow -O -fomit-frame-pointer @PREFERRED_STACK_BOUNDARY@ -g
X+ -fomit-frame-pointer @PREFERRED_STACK_BOUNDARY@
X 
X 
X valdir = $(libdir)/valgrind
END-of-calltree/files/patch-src::Makefile.in
echo x - calltree/files/patch-src::ct_main.c
sed 's/^X//' >calltree/files/patch-src::ct_main.c << 'END-of-calltree/files/patch-src::ct_main.c'
X--- src/ct_main.c.orig	Thu Jun  3 05:04:08 2004
X+++ src/ct_main.c	Thu Jun  3 05:05:51 2004
X@@ -5758,7 +5758,7 @@
X    /* Install own SIGILL handler */
X    sigill_new.ksa_handler  = cpuid_SIGILL_handler;
X    sigill_new.ksa_flags    = 0;
X-   sigill_new.ksa_restorer = NULL;
X+   //   sigill_new.ksa_restorer = NULL;
X    res = VG_(ksigemptyset)( &sigill_new.ksa_mask );
X    CT_ASSERT(res == 0);
X 
END-of-calltree/files/patch-src::ct_main.c
exit
--- calltree.shar ends here ---

>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list