ports/69847: new port: devel/kcachegrind: a visualisation tool for calltree data

Simon Barner barner at in.tum.de
Sat Jul 31 15:20:26 UTC 2004


>Number:         69847
>Category:       ports
>Synopsis:       new port: devel/kcachegrind: a visualisation tool for calltree data
>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:20:23 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:

Prerequisites: ports/69845

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.

http://kcachegrind.sf.net/

KCachegrind already exists in the devel/kdesdk3 port, but I thought
adding it in a separate port is a good idea for the following reasons
(like for example umbrello):
 - non-KDE users might not want to install the whole SDK
 - tracking of more up-to-date versions (i.e. the version bundled with
   the KDE SDK is often not the very lastest one available)

You can find a patch for the devel/kdesdk3 port that adds appropriate
CONFICTS entries and a dependency to devel/calltree at the end of this
PR.

>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:
#
#	kcachegrind
#	kcachegrind/Makefile
#	kcachegrind/distinfo
#	kcachegrind/pkg-descr
#	kcachegrind/pkg-plist
#	kcachegrind/files
#	kcachegrind/files/patch-aclocal.m4
#
echo c - kcachegrind
mkdir -p kcachegrind > /dev/null 2>&1
echo x - kcachegrind/Makefile
sed 's/^X//' >kcachegrind/Makefile << 'END-of-kcachegrind/Makefile'
X# New ports collection makefile for:	KCachegrind
X# Date created:				Jun 3 2004
X# Whom:					Simon Barner <barner at gmx.de>
X#
X# $FreeBSD$
X#
X
XPORTNAME=	kcachegrind
XPORTVERSION=	0.4.5
XCATEGORIES=	devel kde
XMASTER_SITES=	${MASTER_SITE_SOURCEFORGE}
XMASTER_SITE_SUBDIR=	kcachegrind
X
XMAINTAINER=	barner at gmx.de
XCOMMENT=	Profiling Visualization Tool
X
XBUILD_DEPENDS=	mcopidl:${PORTSDIR}/audio/arts
XRUN_DEPENDS=	calltree:${PORTSDIR}/devel/calltree
X
XCONFLICTS=	kdesdk3-*
X
XUSE_AUTOCONF_VER=259
XGNU_CONFIGURE=	yes
XCONFIGURE_ARGS+=	"--with-extra-includes=/usr/include \
X			--with-extra-includes=${LOCALBASE}/include \
X			--with-extra-libs=${LOCALBASE}/lib \
X			--with-extra-libs=/usr/lib"
XCONFIGURE_ENV=	CFLAGS="${CFLAGS} ${PTHREAD_CFLAGS}" \
X		LDFLAGS="${LDFLAGS} ${PTHREAD_LIBS}"
XUSE_GMAKE=	yes
XUSE_KDELIBS_VER=3
X
X.include <bsd.port.pre.mk>
X.include "${PORTSDIR}/x11/kde3/Makefile.kde"
X.include <bsd.port.post.mk>
END-of-kcachegrind/Makefile
echo x - kcachegrind/distinfo
sed 's/^X//' >kcachegrind/distinfo << 'END-of-kcachegrind/distinfo'
XMD5 (kcachegrind-0.4.5.tar.gz) = d195aa468fd643811ffe09f6e6491e9c
XSIZE (kcachegrind-0.4.5.tar.gz) = 960382
END-of-kcachegrind/distinfo
echo x - kcachegrind/pkg-descr
sed 's/^X//' >kcachegrind/pkg-descr << 'END-of-kcachegrind/pkg-descr'
XKCachegrind is a visualization tool for the profiling data generated by
XCachegrind (which is part of valgrind) and Calltree.
X
XWWW: http://kcachegrind.sourceforge.net
END-of-kcachegrind/pkg-descr
echo x - kcachegrind/pkg-plist
sed 's/^X//' >kcachegrind/pkg-plist << 'END-of-kcachegrind/pkg-plist'
Xbin/dprof2calltree
Xbin/hotshot2calltree
Xbin/kcachegrind
Xbin/op2calltree
Xbin/pprof2calltree
Xshare/applnk/Development/kcachegrind.desktop
Xshare/apps/kcachegrind/icons/hicolor/16x16/actions/fromrec.png
Xshare/apps/kcachegrind/icons/hicolor/16x16/actions/percent.png
Xshare/apps/kcachegrind/icons/hicolor/16x16/actions/recrec.png
Xshare/apps/kcachegrind/icons/hicolor/16x16/actions/torec.png
Xshare/apps/kcachegrind/icons/hicolor/22x22/actions/percent.png
Xshare/apps/kcachegrind/icons/hicolor/32x32/actions/percent.png
Xshare/apps/kcachegrind/kcachegrindui.rc
Xshare/apps/kcachegrind/tips
Xshare/doc/HTML/en/kcachegrind/index.docbook
Xshare/doc/HTML/en/kcachegrind/index.cache.bz2
Xshare/icons/hicolor/32x32/apps/kcachegrind.png
Xshare/icons/hicolor/48x48/apps/kcachegrind.png
Xshare/icons/locolor/16x16/apps/kcachegrind.png
Xshare/icons/locolor/32x32/apps/kcachegrind.png
Xshare/locale/de/LC_MESSAGES/kcachegrind.mo
Xshare/locale/fr/LC_MESSAGES/kcachegrind.mo
Xshare/locale/it/LC_MESSAGES/kcachegrind.mo
Xshare/mimelnk/application/x-kcachegrind.desktop
X at dirrm share/apps/kcachegrind/icons/hicolor/32x32/actions
X at dirrm share/apps/kcachegrind/icons/hicolor/32x32
X at dirrm share/apps/kcachegrind/icons/hicolor/22x22/actions
X at dirrm share/apps/kcachegrind/icons/hicolor/22x22
X at dirrm share/apps/kcachegrind/icons/hicolor/16x16/actions
X at dirrm share/apps/kcachegrind/icons/hicolor/16x16
X at dirrm share/apps/kcachegrind/icons/hicolor
X at dirrm share/apps/kcachegrind/icons
X at dirrm share/apps/kcachegrind
X at dirrm share/doc/HTML/en/kcachegrind
END-of-kcachegrind/pkg-plist
echo c - kcachegrind/files
mkdir -p kcachegrind/files > /dev/null 2>&1
echo x - kcachegrind/files/patch-aclocal.m4
sed 's/^X//' >kcachegrind/files/patch-aclocal.m4 << 'END-of-kcachegrind/files/patch-aclocal.m4'
X--- aclocal.m4.orig	Wed Apr 28 21:47:24 2004
X+++ aclocal.m4	Sat Jul 31 16:24:17 2004
X@@ -2773,7 +2773,7 @@
X         CFLAGS="-g -O2 $CFLAGS"
X       fi
X     else
X-      CFLAGS="-O2 $CFLAGS"
X+      CFLAGS="$CFLAGS"
X     fi
X   fi
X 
X@@ -2815,7 +2815,7 @@
X       if test "$CXX" = "KCC"; then
X         CXXFLAGS="+K3 $CXXFLAGS"
X       else
X-        CXXFLAGS="-O2 $CXXFLAGS"
X+        CXXFLAGS="$CXXFLAGS"
X       fi  
X     fi
X   fi
END-of-kcachegrind/files/patch-aclocal.m4
exit


--- calltree.shar ends here ---

--- kdesdk.diff begins here ---
--- Makefile.orig	Sat Jul 31 15:22:19 2004
+++ Makefile	Sat Jul 31 15:24:15 2004
@@ -16,8 +16,10 @@
 COMMENT=	KDE Software Development Kit
 
 LIB_DEPENDS=	db4:${PORTSDIR}/databases/db4
+RUN_DEPENDS=	calltree:${PORTSDIR}/devel/calltree
 
-CONFLICTS=	umbrello-*
+CONFLICTS=	umbrello-* \
+		kcachegrind-*
 
 USE_KDEBASE_VER=3
 PREFIX=		${KDE_PREFIX}
--- kdesdk.diff ends here ---

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



More information about the freebsd-ports-bugs mailing list