linux-yocto/tools/perf/scripts/perl/Perf-Trace-Util
Thomas Gleixner 1a59d1b8e0 treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156
Based on 1 normalized pattern(s):

  this program is free software you can redistribute it and or modify
  it under the terms of the gnu general public license as published by
  the free software foundation either version 2 of the license or at
  your option any later version this program is distributed in the
  hope that it will be useful but without any warranty without even
  the implied warranty of merchantability or fitness for a particular
  purpose see the gnu general public license for more details you
  should have received a copy of the gnu general public license along
  with this program if not write to the free software foundation inc
  59 temple place suite 330 boston ma 02111 1307 usa

extracted by the scancode license scanner the SPDX license identifier

  GPL-2.0-or-later

has been chosen to replace the boilerplate/reference in 1334 file(s).

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Reviewed-by: Allison Randal <allison@lohutok.net>
Reviewed-by: Richard Fontana <rfontana@redhat.com>
Cc: linux-spdx@vger.kernel.org
Link: https://lkml.kernel.org/r/20190527070033.113240726@linutronix.de
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2019-05-30 11:26:35 -07:00
..
lib/Perf/Trace perf script: Finish the rename from trace to script 2010-12-25 11:29:02 -02:00
Build perf tools: Rename build libperf to perf 2019-02-14 15:18:08 -03:00
Context.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 156 2019-05-30 11:26:35 -07:00
Context.xs perf script: Fix broken include in Context.xs 2013-07-10 13:47:00 -03:00
Makefile.PL License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
README perf script: Finish the rename from trace to script 2010-12-25 11:29:02 -02:00
typemap

Perf-Trace-Util version 0.01

This module contains utility functions for use with perf script.

Core.pm and Util.pm are pure Perl modules; Core.pm contains routines that the core perf support for Perl calls on and should always be 'used', while Util.pm contains useful but optional utility functions that scripts may want to use. Context.pm contains the Perl->C interface that allows scripts to access data in the embedding perf executable; scripts wishing to do that should 'use Context.pm'.

The Perl->C perf interface is completely driven by Context.xs. If you want to add new Perl functions that end up accessing C data in the perf executable, you add desciptions of the new functions here. scripting_context is a pointer to the perf data in the perf executable that you want to access - it's passed as the second parameter, $context, to all handler functions.

After you do that:

perl Makefile.PL # to create a Makefile for the next step make # to create Context.c

edit Context.c to add const to the char* file = FILE line in XS(boot_Perf__Trace__Context) to silence a warning/error.

You can delete the Makefile, object files and anything else that was generated e.g. blib and shared library, etc, except for of course Context.c

You should then be able to run the normal perf make as usual.

INSTALLATION

Building perf with perf script Perl scripting should install this module in the right place.

You should make sure libperl and ExtUtils/Embed.pm are installed first e.g. apt-get install libperl-dev or yum install perl-ExtUtils-Embed.

DEPENDENCIES

This module requires these other modules and libraries:

None

COPYRIGHT AND LICENCE

Copyright (C) 2009 by Tom Zanussi tzanussi@gmail.com

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.10.0 or, at your option, any later version of Perl 5 you may have available.

Alternatively, this software may be distributed under the terms of the GNU General Public License ("GPL") version 2 as published by the Free Software Foundation.