blob: 2f0c7f3043ee5d992727b50f11c404d33cfb009e [file] [log] [blame]
Tom Zanussibcefe122009-11-25 01:15:49 -06001Perf-Trace-Util version 0.01
2============================
3
Arnaldo Carvalho de Melo765532c2010-12-23 13:10:22 -02004This module contains utility functions for use with perf script.
Tom Zanussibcefe122009-11-25 01:15:49 -06005
Tom Zanussid1b93772009-11-25 01:15:50 -06006Core.pm and Util.pm are pure Perl modules; Core.pm contains routines
7that the core perf support for Perl calls on and should always be
8'used', while Util.pm contains useful but optional utility functions
9that scripts may want to use. Context.pm contains the Perl->C
10interface that allows scripts to access data in the embedding perf
11executable; scripts wishing to do that should 'use Context.pm'.
12
13The Perl->C perf interface is completely driven by Context.xs. If you
14want to add new Perl functions that end up accessing C data in the
15perf executable, you add desciptions of the new functions here.
16scripting_context is a pointer to the perf data in the perf executable
17that you want to access - it's passed as the second parameter,
18$context, to all handler functions.
19
20After you do that:
21
22 perl Makefile.PL # to create a Makefile for the next step
23 make # to create Context.c
24
25 edit Context.c to add const to the char* file = __FILE__ line in
26 XS(boot_Perf__Trace__Context) to silence a warning/error.
27
28 You can delete the Makefile, object files and anything else that was
29 generated e.g. blib and shared library, etc, except for of course
30 Context.c
31
32 You should then be able to run the normal perf make as usual.
33
Tom Zanussibcefe122009-11-25 01:15:49 -060034INSTALLATION
35
Arnaldo Carvalho de Melo765532c2010-12-23 13:10:22 -020036Building perf with perf script Perl scripting should install this
Tom Zanussibcefe122009-11-25 01:15:49 -060037module in the right place.
38
Tom Zanussi8ea339a2009-11-30 01:18:49 -060039You should make sure libperl and ExtUtils/Embed.pm are installed first
40e.g. apt-get install libperl-dev or yum install perl-ExtUtils-Embed.
Tom Zanussibcefe122009-11-25 01:15:49 -060041
42DEPENDENCIES
43
44This module requires these other modules and libraries:
45
Tom Zanussid1b93772009-11-25 01:15:50 -060046 None
Tom Zanussibcefe122009-11-25 01:15:49 -060047
48COPYRIGHT AND LICENCE
49
Tom Zanussibcefe122009-11-25 01:15:49 -060050Copyright (C) 2009 by Tom Zanussi <tzanussi@gmail.com>
51
52This library is free software; you can redistribute it and/or modify
53it under the same terms as Perl itself, either Perl version 5.10.0 or,
54at your option, any later version of Perl 5 you may have available.
55
56Alternatively, this software may be distributed under the terms of the
57GNU General Public License ("GPL") version 2 as published by the Free
58Software Foundation.
59