1Perf-Trace-Util version 0.01 2============================ 3 4This module contains utility functions for use with perf script. 5 6Core.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 34INSTALLATION 35 36Building perf with perf script Perl scripting should install this 37module in the right place. 38 39You should make sure libperl and ExtUtils/Embed.pm are installed first 40e.g. apt-get install libperl-dev or yum install perl-ExtUtils-Embed. 41 42DEPENDENCIES 43 44This module requires these other modules and libraries: 45 46 None 47 48COPYRIGHT AND LICENCE 49 50Copyright (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 60