lkml.org 
[lkml]   [2011]   [Jan]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    Date
    From
    SubjectRe: [PATCH 7/7] perf tools: Initial python binding
    Em Sat, Jan 29, 2011 at 08:19:19PM -0200, Arnaldo Carvalho de Melo escreveu:
    > From: Arnaldo Carvalho de Melo <acme@redhat.com>
    >
    > First clarifying that this kind of binding is not a replacement or an
    > equivalent to the 'perf script' way of using python with perf.
    >
    > The 'perf script' way is to process events and look at a given script
    > for some python function that matches the events to pass each event for
    > processing.

    Ooops, forgot to add this to this cset, fixed it up and force pushed it
    there.

    - Arnaldo

    diff --git a/tools/perf/Makefile b/tools/perf/Makefile
    index eedcf95..36ff73c 100644
    --- a/tools/perf/Makefile
    +++ b/tools/perf/Makefile
    @@ -315,6 +315,7 @@ COMPAT_CFLAGS =
    COMPAT_OBJS =
    LIB_H =
    LIB_OBJS =
    +PYRF_OBJS =
    SCRIPT_PERL =
    SCRIPT_SH =
    TEST_PROGRAMS =
    @@ -324,6 +325,9 @@ SCRIPT_SH += perf-archive.sh
    grep-libs = $(filter -l%,$(1))
    strip-libs = $(filter-out -l%,$(1))

    +pyrf: $(PYRF_OBJS)
    + python util/setup.py build --build-base='$(OUTPUT)'
    +
    #
    # No Perl scripts right now:
    #
    @@ -349,7 +353,7 @@ PROGRAMS += $(OUTPUT)perf
    #

    # what 'all' will build and 'install' will install, in perfexecdir
    -ALL_PROGRAMS = $(PROGRAMS) $(SCRIPTS)
    +ALL_PROGRAMS = $(PROGRAMS) $(SCRIPTS) pyrf

    # what 'all' will build but not install in perfexecdir
    OTHER_PROGRAMS = $(OUTPUT)perf$X
    @@ -520,6 +524,20 @@ BUILTIN_OBJS += $(OUTPUT)builtin-inject.o

    PERFLIBS = $(LIB_FILE)

    +# Files needed for the python binding, perf.so
    +# pyrf is just an internal name needed for all those wrappers.
    +# This has to be in sync with what is in the 'sources' variable in
    +# tools/perf/util/setup.py
    +
    +PYRF_OBJS += $(OUTPUT)util/cpumap.o
    +PYRF_OBJS += $(OUTPUT)util/ctype.o
    +PYRF_OBJS += $(OUTPUT)util/evlist.o
    +PYRF_OBJS += $(OUTPUT)util/evsel.o
    +PYRF_OBJS += $(OUTPUT)util/python.o
    +PYRF_OBJS += $(OUTPUT)util/thread_map.o
    +PYRF_OBJS += $(OUTPUT)util/util.o
    +PYRF_OBJS += $(OUTPUT)util/xyarray.o
    +
    #
    # Platform specific tweaks
    #

    \
     
     \ /
      Last update: 2011-01-30 14:47    [W:0.023 / U:96.200 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site