diff mbox

[07/16] tools: provide pkg-config file for libxengnttab

Message ID 20170308144945.8934-8-jgross@suse.com (mailing list archive)
State New, archived
Headers show

Commit Message

Jürgen Groß March 8, 2017, 2:49 p.m. UTC
In order to be able to use pkg-config for obtaining linker- and
compiler-flags provide a xengnttab.pc and a xengntshr.pc file.

Signed-off-by: Juergen Gross <jgross@suse.com>
---
 .gitignore                        |  2 ++
 tools/libs/gnttab/Makefile        | 22 +++++++++++++++++++++-
 tools/libs/gnttab/xengntshr.pc.in |  8 ++++++++
 tools/libs/gnttab/xengnttab.pc.in | 10 ++++++++++
 4 files changed, 41 insertions(+), 1 deletion(-)
 create mode 100644 tools/libs/gnttab/xengntshr.pc.in
 create mode 100644 tools/libs/gnttab/xengnttab.pc.in
diff mbox

Patch

diff --git a/.gitignore b/.gitignore
index f4c58f2..3223f94 100644
--- a/.gitignore
+++ b/.gitignore
@@ -100,6 +100,8 @@  tools/libs/toollog/xentoollog.pc
 tools/libs/evtchn/headers.chk
 tools/libs/evtchn/xenevtchn.pc
 tools/libs/gnttab/headers.chk
+tools/libs/gnttab/xengntshr.pc
+tools/libs/gnttab/xengnttab.pc
 tools/libs/call/headers.chk
 tools/libs/foreignmemory/headers.chk
 tools/libs/devicemodel/headers.chk
diff --git a/tools/libs/gnttab/Makefile b/tools/libs/gnttab/Makefile
index 6a77f21..d4841c2 100644
--- a/tools/libs/gnttab/Makefile
+++ b/tools/libs/gnttab/Makefile
@@ -26,6 +26,23 @@  ifneq ($(nosharedlibs),y)
 LIB += libxengnttab.so
 endif
 
+PKG_CONFIG := xengnttab.pc xengntshr.pc
+PKG_CONFIG_VERSION := $(MAJOR).$(MINOR)
+
+ifneq ($(CONFIG_LIBXC_MINIOS),y)
+PKG_CONFIG_INST := $(PKG_CONFIG)
+$(PKG_CONFIG_INST): PKG_CONFIG_PREFIX = $(prefix)
+$(PKG_CONFIG_INST): PKG_CONFIG_INCDIR = $(includedir)
+$(PKG_CONFIG_INST): PKG_CONFIG_LIBDIR = $(libdir)
+endif
+
+PKG_CONFIG_LOCAL := $(foreach pc,$(PKG_CONFIG),$(PKG_CONFIG_DIR)/$(pc))
+
+$(PKG_CONFIG_LOCAL): PKG_CONFIG_PREFIX = $(XEN_ROOT)
+$(PKG_CONFIG_LOCAL): PKG_CONFIG_INCDIR = $(XEN_LIBXENGNTTAB)/include
+$(PKG_CONFIG_LOCAL): PKG_CONFIG_LIBDIR = $(CURDIR)
+$(PKG_CONFIG_LOCAL): PKG_CONFIG_CFLAGS_LOCAL = $(CFLAGS_xeninclude)
+
 .PHONY: all
 all: build
 
@@ -34,7 +51,7 @@  build:
 	$(MAKE) libs
 
 .PHONY: libs
-libs: headers.chk $(LIB)
+libs: headers.chk $(LIB) $(PKG_CONFIG_INST) $(PKG_CONFIG_LOCAL)
 
 headers.chk: $(wildcard include/*.h)
 
@@ -58,6 +75,8 @@  install: build
 	$(SYMLINK_SHLIB) libxengnttab.so.$(MAJOR).$(MINOR) $(DESTDIR)$(libdir)/libxengnttab.so.$(MAJOR)
 	$(SYMLINK_SHLIB) libxengnttab.so.$(MAJOR) $(DESTDIR)$(libdir)/libxengnttab.so
 	$(INSTALL_DATA) include/xengnttab.h $(DESTDIR)$(includedir)
+	$(INSTALL_DATA) xengnttab.pc $(DESTDIR)$(PKG_INSTALLDIR)
+	$(INSTALL_DATA) xengntshr.pc $(DESTDIR)$(PKG_INSTALLDIR)
 
 .PHONY: TAGS
 TAGS:
@@ -68,6 +87,7 @@  clean:
 	rm -rf *.rpm $(LIB) *~ $(DEPS) $(LIB_OBJS) $(PIC_OBJS)
 	rm -f libxengnttab.so.$(MAJOR).$(MINOR) libxengnttab.so.$(MAJOR)
 	rm -f headers.chk
+	rm -f xengnttab.pc xengntshr.pc
 
 .PHONY: distclean
 distclean: clean
diff --git a/tools/libs/gnttab/xengntshr.pc.in b/tools/libs/gnttab/xengntshr.pc.in
new file mode 100644
index 0000000..1eb58c2
--- /dev/null
+++ b/tools/libs/gnttab/xengntshr.pc.in
@@ -0,0 +1,8 @@ 
+prefix=@@prefix@@
+includedir=@@incdir@@
+libdir=@@libdir@@
+
+Name: Xengntshr
+Description: The Xengntshr library for Xen hypervisor
+Version: @@version@@
+Requires: xengnttab
diff --git a/tools/libs/gnttab/xengnttab.pc.in b/tools/libs/gnttab/xengnttab.pc.in
new file mode 100644
index 0000000..51aad22
--- /dev/null
+++ b/tools/libs/gnttab/xengnttab.pc.in
@@ -0,0 +1,10 @@ 
+prefix=@@prefix@@
+includedir=@@incdir@@
+libdir=@@libdir@@
+
+Name: Xengnttab
+Description: The Xengnttab library for Xen hypervisor
+Version: @@version@@
+Cflags: -I${includedir} @@cflagslocal@@
+Libs: @@libsflag@@${libdir} -lxengnttab
+Requires.private: xentoollog