I'd like to be able to build and link against libtracecmd, so add a make target
to build libtracecmd and install it into lib as well as the supporting header
files.  This allows me to be able to make stand alone apps that build and link
against trace-cmd for custom trace tools that don't have a place in the generic
trace-cmd tool.  Thanks,

Signed-off-by: Josef Bacik <[email protected]>
---
 Makefile | 17 ++++++++++++++---
 1 file changed, 14 insertions(+), 3 deletions(-)

diff --git a/Makefile b/Makefile
index cbe0eb9..df5ec72 100644
--- a/Makefile
+++ b/Makefile
@@ -47,7 +47,10 @@ html_install = $(prefix)/share/kernelshark/html
 html_install_SQ = '$(subst ','\'',$(html_install))'
 img_install = $(prefix)/share/kernelshark/html/images
 img_install_SQ = '$(subst ','\'',$(img_install))'
-libdir ?= lib
+libdir ?= $(prefix)/lib
+libdir_SQ = '$(subst ','\'',$(libdir))'
+includedir = $(prefix)/include/trace-cmd
+includedir_SQ = '$(subst ','\'',$(includedir))'
 
 export man_dir man_dir_SQ html_install html_install_SQ INSTALL
 export img_install img_install_SQ
@@ -57,8 +60,8 @@ ifeq ($(prefix),$(HOME))
 plugin_dir = $(HOME)/.trace-cmd/plugins
 python_dir = $(HOME)/.trace-cmd/python
 else
-plugin_dir = $(prefix)/$(libdir)/trace-cmd/plugins
-python_dir = $(prefix)/$(libdir)/trace-cmd/python
+plugin_dir = $(libdir)/trace-cmd/plugins
+python_dir = $(libdir)/trace-cmd/python
 PLUGIN_DIR = -DPLUGIN_DIR="$(plugin_dir)"
 PYTHON_DIR = -DPYTHON_DIR="$(python_dir)"
 PLUGIN_DIR_SQ = '$(subst ','\'',$(PLUGIN_DIR))'
@@ -399,6 +402,8 @@ libtracecmd.so: $(TCMD_LIB_OBJS)
 libtracecmd.a: $(TCMD_LIB_OBJS)
        $(Q)$(do_build_static_lib)
 
+libs: libtracecmd.so libparsevent.so
+
 trace-util.o: trace_plugin_dir
 
 $(PLUGIN_OBJS): %.o : $(src)/%.c
@@ -558,6 +563,12 @@ install_gui: install_cmd gui
        $(Q)$(call do_install,trace-graph,$(bindir_SQ))
        $(Q)$(call do_install,kernelshark,$(bindir_SQ))
 
+install_libs: libs
+       $(Q)$(call do_install,libtracecmd.so,$(libdir_SQ))
+       $(Q)$(call do_install,libparsevent.so,$(libdir_SQ))
+       $(Q)$(call do_install,event-parse.h,$(includedir_SQ))
+       $(Q)$(call do_install,trace-cmd.h,$(includedir_SQ))
+
 doc:
        $(MAKE) -C $(src)/Documentation all
 
-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to