All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v2] keyutils: Add pkg-config file for keyutils library
@ 2018-11-05 21:52 Dave Jiang
  2018-11-12 12:49 ` David Howells
  2018-11-12 17:05 ` Dave Jiang
  0 siblings, 2 replies; 3+ messages in thread
From: Dave Jiang @ 2018-11-05 21:52 UTC (permalink / raw)
  To: keyrings

This is needed so that other projects can add a dependency on libkeyutils
via PKG_CHECK_MODULES([KEYUTILS], [keyutils]).  This enabling makes 'make
install' do the right thing, and of course individual distros will need to
add enabling to their associated packages (rpm, deb, etc.) so the package
manager installs do the right thing.

Signed-off-by: Dave Jiang <dave.jiang@intel.com>
---

v2: rebased against latest master branch. make rpm checked out ok with the
    correct content in lib rpm.

 Makefile       |   22 ++++++++++++++++++++++
 keyutils.pc.in |   10 ++++++++++
 keyutils.spec  |    1 +
 3 files changed, 33 insertions(+)
 create mode 100644 keyutils.pc.in

diff --git a/Makefile b/Makefile
index 96b5df7..858ad22 100644
--- a/Makefile
+++ b/Makefile
@@ -19,6 +19,7 @@ MAN8		:= $(MANDIR)/man8
 INCLUDEDIR	:= /usr/include
 LN		:= ln
 LNS		:= $(LN) -sf
+PREFIX 		:= /usr
 
 ###############################################################################
 #
@@ -78,6 +79,9 @@ endif
 endif
 endif
 
+PKGCONFIG 	:= keyutils.pc
+PKGCONFIG_DIR 	:= pkgconfig
+
 ###############################################################################
 #
 # This is necessary if glibc doesn't know about the key management error codes
@@ -163,6 +167,15 @@ dns.afsdb.o: dns.afsdb.c key.dns.h
 # Install everything
 #
 ###############################################################################
+pkgconfig:
+	sed \
+	-e 's,@VERSION\@,$(VERSION),g' \
+	-e 's,@prefix\@,$(PREFIX),g' \
+	-e 's,@exec_prefix\@,$(PREFIX),g' \
+	-e 's,@libdir\@,$(USRLIBDIR),g' \
+	-e 's,@includedir\@,$(INCLUDEDIR),g' \
+	< $(PKGCONFIG).in > $(PKGCONFIG) || rm $(PKGCONFIG)
+
 install: all
 ifeq ($(NO_ARLIB),0)
 	$(INSTALL) -D -m 0644 $(ARLIB) $(DESTDIR)$(USRLIBDIR)/$(ARLIB)
@@ -172,6 +185,15 @@ ifeq ($(NO_SOLIB),0)
 	$(LNS) $(LIBNAME) $(DESTDIR)$(LIBDIR)/$(SONAME)
 	mkdir -p $(DESTDIR)$(USRLIBDIR)
 	$(LNS) $(LIBDIR)/$(SONAME) $(DESTDIR)$(USRLIBDIR)/$(DEVELLIB)
+	sed \
+	-e 's,@VERSION\@,$(VERSION),g' \
+	-e 's,@prefix\@,$(PREFIX),g' \
+	-e 's,@exec_prefix\@,$(PREFIX),g' \
+	-e 's,@libdir\@,$(USRLIBDIR),g' \
+	-e 's,@includedir\@,$(INCLUDEDIR),g' \
+	< $(PKGCONFIG).in > $(PKGCONFIG) || rm $(PKGCONFIG)
+	$(INSTALL) -D $(PKGCONFIG) $(DESTDIR)$(LIBDIR)/$(PKGCONFIG_DIR)/$(PKGCONFIG)
+	rm $(PKGCONFIG)
 endif
 	$(INSTALL) -D keyctl $(DESTDIR)$(BINDIR)/keyctl
 	$(INSTALL) -D request-key $(DESTDIR)$(SBINDIR)/request-key
diff --git a/keyutils.pc.in b/keyutils.pc.in
new file mode 100644
index 0000000..44fd6e1
--- /dev/null
+++ b/keyutils.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: keyutils
+Description: keyutils library
+Version: @VERSION@
+Cflags: -I${includedir}
+Libs: -L${libdir} -lkeyutils
diff --git a/keyutils.spec b/keyutils.spec
index 544fe7c..cccc6fd 100644
--- a/keyutils.spec
+++ b/keyutils.spec
@@ -91,6 +91,7 @@ make \
 %{_mandir}/man7/*
 %{_libdir}/libkeyutils.so.%{libapiversion}
 %{_libdir}/libkeyutils.so.%{libapivermajor}
+%{_libdir}/pkgconfig/keyutils.pc
 
 %files libs-devel
 %{_libdir}/libkeyutils.so

^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-11-12 17:05 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-05 21:52 [PATCH v2] keyutils: Add pkg-config file for keyutils library Dave Jiang
2018-11-12 12:49 ` David Howells
2018-11-12 17:05 ` Dave Jiang

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.