Re: [PATCH] perf tools: Add support to install perf python extension

Jiri Olsa
2011-07-21T18:47:30Z

On Thu, Jul 21, 2011 at 02:11:48PM -0300, Arnaldo Carvalho de Melo wrote:
> Em Thu, Jul 21, 2011 at 06:45:26PM +0200, Jiri Olsa escreveu:
> > Changing the distutils to use their own default 'build'
> > directory.
> >
> > Such setup makes the install command simple, because using
> > --build-lib and --build-temp does not seem to comply with
> > the way the distutils' install commands expect it.
> >
> > Also keeping the python/perf.so file, so it could be used
> > for testing as of until now.
>
> Yeah, I gave up when I couldn't get:
>
> $ make O=/tmp/build-dir-for-perf/ -C tools/perf/ install
>
> to work, does it now? Checking...

nope, I added install-python_ext since it installs to the
python system lib area, and it could break standard install

I think there's a way to install python modules under $HOME,
maybe we could do that if no DESTDIR is specified..
I can add it later ;)

thanks,
jirka

>
> - Arnaldo
>
> > Signed-off-by: Jiri Olsa <jolsa@redhat.com>
> > ---
> > tools/perf/Makefile | 12 ++++++------
> > 1 files changed, 6 insertions(+), 6 deletions(-)
> >
> > diff --git a/tools/perf/Makefile b/tools/perf/Makefile
> > index 940257b..9c82a56 100644
> > --- a/tools/perf/Makefile
> > +++ b/tools/perf/Makefile
> > @@ -178,9 +178,8 @@ strip-libs = $(filter-out -l%,$(1))
> >
> > $(OUTPUT)python/perf.so: $(PYRF_OBJS)
> > $(QUIET_GEN)CFLAGS='$(BASIC_CFLAGS)' $(PYTHON_WORD) util/setup.py \
> > - --quiet build_ext \
> > - --build-lib='$(OUTPUT)python' \
> > - --build-temp='$(OUTPUT)python/temp'
> > + --quiet build_ext; \
> > + cp $$(find build -name 'perf.so') python
> > #
> > # No Perl scripts right now:
> > #
> > @@ -504,9 +503,7 @@ else
> >
> > PYTHON_WORD := $(call shell-wordify,$(PYTHON))
> >
> > - python-clean := $(PYTHON_WORD) util/setup.py clean \
> > - --build-lib='$(OUTPUT)python' \
> > - --build-temp='$(OUTPUT)python/temp'
> > + python-clean := $(PYTHON_WORD) util/setup.py --quiet clean -a; $(RM) -f python/perf.so
> >
> > ifdef NO_LIBPYTHON
> > $(call disable-python)
> > @@ -863,6 +860,9 @@ install: all
> > $(INSTALL) scripts/python/*.py -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python'
> > $(INSTALL) scripts/python/bin/* -t '$(DESTDIR_SQ)$(perfexec_instdir_SQ)/scripts/python/bin'
> >
> > +install-python_ext:
> > + $(PYTHON_WORD) util/setup.py --quiet install --root='/$(DESTDIR_SQ)'
> > +
> > install-doc:
> > $(MAKE) -C Documentation install
> >
> > --
> > 1.7.1