Re: [PATCH] tools/lib/traceevent: Remove hardcoded install paths from pkg-config file

Arnaldo Carvalho de Melo
2019-04-24T13:37:07Z

Em Wed, Apr 24, 2019 at 08:47:22AM -0400, Steven Rostedt escreveu:
>
> Hi Arnaldo,
>
> Just making sure this doesn't get lost in the noise ;-)
>
> Can you pull this in?

Its already in my local repo, that I just pushed out, thanks!

- Arnaldo

> -- Steve
>
>
> On Thu, 18 Apr 2019 21:15:56 -0400
> Steven Rostedt <rostedt@goodmis.org> wrote:
>
> > From: Tzvetomir Stoyanov <tstoyanov@vmware.com>
> >
> > Install directories of header and library files are hardcoded in pkg-config
> > templete file. They must be configurable, the Makefile should set them on the
> > compilation / install stage.
> >
> > Link: http://lkml.kernel.org/r/20190329144546.5819-1-tstoyanov@vmware.com
> >
> > Signed-off-by: Tzvetomir Stoyanov <tstoyanov@vmware.com>
> > Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
> > ---
> > tools/lib/traceevent/Makefile | 13 +++++++++----
> > tools/lib/traceevent/libtraceevent.pc.template | 4 ++--
> > 2 files changed, 11 insertions(+), 6 deletions(-)
> >
> > diff --git a/tools/lib/traceevent/Makefile b/tools/lib/traceevent/Makefile
> > index 941761d9923d..34cf33a4f001 100644
> > --- a/tools/lib/traceevent/Makefile
> > +++ b/tools/lib/traceevent/Makefile
> > @@ -50,6 +50,9 @@ man_dir = $(prefix)/share/man
> > man_dir_SQ = '$(subst ','\'',$(man_dir))'
> > pkgconfig_dir ?= $(word 1,$(shell $(PKG_CONFIG) \
> > --variable pc_path pkg-config | tr ":" " "))
> > +includedir_relative = traceevent
> > +includedir = $(prefix)/include/$(includedir_relative)
> > +includedir_SQ = '$(subst ','\'',$(includedir))'
> >
> > export man_dir man_dir_SQ INSTALL
> > export DESTDIR DESTDIR_SQ
> > @@ -279,6 +282,8 @@ define do_install_pkgconfig_file
> > cp -f ${PKG_CONFIG_FILE}.template ${PKG_CONFIG_FILE}; \
> > sed -i "s|INSTALL_PREFIX|${1}|g" ${PKG_CONFIG_FILE}; \
> > sed -i "s|LIB_VERSION|${EVENT_PARSE_VERSION}|g" ${PKG_CONFIG_FILE}; \
> > + sed -i "s|LIB_DIR|${libdir}|g" ${PKG_CONFIG_FILE}; \
> > + sed -i "s|HEADER_DIR|$(includedir)|g" ${PKG_CONFIG_FILE}; \
> > $(call do_install,$(PKG_CONFIG_FILE),$(pkgconfig_dir),644); \
> > else \
> > (echo Failed to locate pkg-config directory) 1>&2; \
> > @@ -300,10 +305,10 @@ install_pkgconfig:
> >
> > install_headers:
> > $(call QUIET_INSTALL, headers) \
> > - $(call do_install,event-parse.h,$(prefix)/include/traceevent,644); \
> > - $(call do_install,event-utils.h,$(prefix)/include/traceevent,644); \
> > - $(call do_install,trace-seq.h,$(prefix)/include/traceevent,644); \
> > - $(call do_install,kbuffer.h,$(prefix)/include/traceevent,644)
> > + $(call do_install,event-parse.h,$(DESTDIR)$(includedir_SQ),644); \
> > + $(call do_install,event-utils.h,$(DESTDIR)$(includedir_SQ),644); \
> > + $(call do_install,trace-seq.h,$(DESTDIR)$(includedir_SQ),644); \
> > + $(call do_install,kbuffer.h,$(DESTDIR)$(includedir_SQ),644)
> >
> > install: install_lib
> >
> > diff --git a/tools/lib/traceevent/libtraceevent.pc.template b/tools/lib/traceevent/libtraceevent.pc.template
> > index 42e4d6cb6b9e..86384fcd57f1 100644
> > --- a/tools/lib/traceevent/libtraceevent.pc.template
> > +++ b/tools/lib/traceevent/libtraceevent.pc.template
> > @@ -1,6 +1,6 @@
> > prefix=INSTALL_PREFIX
> > -libdir=${prefix}/lib64
> > -includedir=${prefix}/include/traceevent
> > +libdir=LIB_DIR
> > +includedir=HEADER_DIR
> >
> > Name: libtraceevent
> > URL: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git