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

* Re: [PATCH v2] keyutils: Add pkg-config file for keyutils library
  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
  1 sibling, 0 replies; 3+ messages in thread
From: David Howells @ 2018-11-12 12:49 UTC (permalink / raw)
  To: keyrings

Dave Jiang <dave.jiang@intel.com> wrote:

> 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.

Shouldn't the keyutils.pc file be in keyutils-libs-devel, not keyutils-libs?

David

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

* Re: [PATCH v2] keyutils: Add pkg-config file for keyutils library
  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
  1 sibling, 0 replies; 3+ messages in thread
From: Dave Jiang @ 2018-11-12 17:05 UTC (permalink / raw)
  To: keyrings


On 11/12/2018 5:49 AM, David Howells wrote:
> Dave Jiang <dave.jiang@intel.com> wrote:
>
>> 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.
> Shouldn't the keyutils.pc file be in keyutils-libs-devel, not keyutils-libs?

I'll fix and resend.

>
> David

^ permalink raw reply	[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.