krb5 commit: Install pkg-config data files
Greg Hudson
ghudson at MIT.EDU
Fri Jan 4 01:38:15 EST 2013
https://github.com/krb5/krb5/commit/c5e826e6071bc1ba5208f4ea6997d1952114e27a
commit c5e826e6071bc1ba5208f4ea6997d1952114e27a
Author: Greg Hudson <ghudson at mit.edu>
Date: Thu Jan 3 13:47:01 2013 -0500
Install pkg-config data files
Add seven data files for pkg-config, corresponding to the five modules
supported by krb5-config. For krb5 and krb5-gssapi, we also provide
mit- versions for callers desiring to distinguish between our
implementation and Heimdal's.
Based on a patch from Stef Walter <stefw at gnome.org>.
ticket: 7529 (new)
.gitignore | 1 +
src/Makefile.in | 3 ++-
src/build-tools/Makefile.in | 32 ++++++++++++++++++++++++++++++--
src/build-tools/kadm-client.pc.in | 12 ++++++++++++
src/build-tools/kadm-server.pc.in | 11 +++++++++++
src/build-tools/kdb.pc.in | 14 ++++++++++++++
src/build-tools/krb5-gssapi.pc.in | 10 ++++++++++
src/build-tools/krb5.pc.in | 14 ++++++++++++++
src/build-tools/mit-krb5-gssapi.pc.in | 11 +++++++++++
src/build-tools/mit-krb5.pc.in | 15 +++++++++++++++
src/config/pre.in | 1 +
src/configure.in | 10 +++++++++-
12 files changed, 130 insertions(+), 4 deletions(-)
diff --git a/.gitignore b/.gitignore
index f8c7c9d..bbc8440 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,7 @@
*.a
*.dylib
*.o
+*.pc
*.pyc
*.so
binutils.versions
diff --git a/src/Makefile.in b/src/Makefile.in
index da2cfe5..0d07b71 100644
--- a/src/Makefile.in
+++ b/src/Makefile.in
@@ -60,7 +60,8 @@ INSTALLMKDIRS = $(KRB5ROOT) $(KRB5MANROOT) $(KRB5OTHERMKDIRS) \
$(KRB5_AD_MODULE_DIR) \
$(KRB5_LIBKRB5_MODULE_DIR) \
@localstatedir@ @localstatedir@/krb5kdc \
- $(KRB5_INCSUBDIRS) $(datadir) $(EXAMPLEDIR)
+ $(KRB5_INCSUBDIRS) $(datadir) $(EXAMPLEDIR) \
+ $(PKGCONFIG_DIR)
install-strip:
$(MAKE) install INSTALL_STRIP=-s
diff --git a/src/build-tools/Makefile.in b/src/build-tools/Makefile.in
index fa56900..885c992 100644
--- a/src/build-tools/Makefile.in
+++ b/src/build-tools/Makefile.in
@@ -1,13 +1,41 @@
mydir=build-tools
BUILDTOP=$(REL)..
-all-unix:: krb5-config
+PKGCONFIG_FILES = \
+ kadm-client.pc \
+ kadm-server.pc \
+ kdb.pc \
+ mit-krb5.pc \
+ krb5.pc \
+ mit-krb5-gssapi.pc \
+ krb5-gssapi.pc
-krb5-config: $(srcdir)/krb5-config.in $(BUILDTOP)/config.status
+all-unix:: krb5-config $(PKGCONFIG_FILES)
+
+krb5-config $(PKGCONFIG_FILES): $(BUILDTOP)/config.status
cd $(BUILDTOP) && $(SHELL) config.status $(mydir)/$@
+krb5-config: $(srcdir)/krb5-config.in
+kadm-client.pc: $(srcdir)/kadm-client.pc.in
+kadm-server.pc: $(srcdir)/kadm-server.pc.in
+kdb.pc: $(srcdir)/kdb.pc.in
+mit-krb5.pc: $(srcdir)/mit-krb5.pc.in
+krb5.pc: $(srcdir)/krb5.pc.in
+mit-krb5-gssapi.pc: $(srcdir)/mit-krb5-gssapi.pc.in
+krb5-gssapi.pc: $(srcdir)/krb5-gssapi.pc.in
install-unix::
$(INSTALL_SCRIPT) krb5-config $(DESTDIR)$(CLIENT_BINDIR)/krb5-config
+ $(INSTALL_DATA) kadm-client.pc \
+ $(DESTDIR)$(PKGCONFIG_DIR)/kadm-client.pc
+ $(INSTALL_DATA) kadm-server.pc \
+ $(DESTDIR)$(PKGCONFIG_DIR)/kadm-server.pc
+ $(INSTALL_DATA) kdb.pc $(DESTDIR)$(PKGCONFIG_DIR)/kdb.pc
+ $(INSTALL_DATA) mit-krb5.pc $(DESTDIR)$(PKGCONFIG_DIR)/mit-krb5.pc
+ $(INSTALL_DATA) krb5.pc $(DESTDIR)$(PKGCONFIG_DIR)/krb5.pc
+ $(INSTALL_DATA) mit-krb5-gssapi.pc \
+ $(DESTDIR)$(PKGCONFIG_DIR)/mit-krb5-gssapi.pc
+ $(INSTALL_DATA) krb5-gssapi.pc \
+ $(DESTDIR)$(PKGCONFIG_DIR)/krb5-gssapi.pc
# Test to ensure that krb5-config does not spit out things like
# $(PURE) or $(LDFLAGS) in case someone changes config/shlib.conf
diff --git a/src/build-tools/kadm-client.pc.in b/src/build-tools/kadm-client.pc.in
new file mode 100644
index 0000000..4562b8f
--- /dev/null
+++ b/src/build-tools/kadm-client.pc.in
@@ -0,0 +1,12 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: kadm-client
+Description: Kerberos administration client library
+Version: @KRB5_VERSION@
+Requires.private: mit-krb5-gssapi
+Cflags: -I${includedir}
+Libs: -L${libdir} -lkadm5clnt_mit
+Libs.private: -lgssrpc
diff --git a/src/build-tools/kadm-server.pc.in b/src/build-tools/kadm-server.pc.in
new file mode 100644
index 0000000..cd2f86c
--- /dev/null
+++ b/src/build-tools/kadm-server.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: kadm-server
+Description: Kerberos administration server library
+Version: @KRB5_VERSION@
+Requires.private: kdb mit-krb5-gssapi
+Cflags: -I${includedir}
+Libs: -L${libdir} -lkadm5srv_mit
diff --git a/src/build-tools/kdb.pc.in b/src/build-tools/kdb.pc.in
new file mode 100644
index 0000000..29506b8
--- /dev/null
+++ b/src/build-tools/kdb.pc.in
@@ -0,0 +1,14 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+KDB5_DB_LIB=@KDB5_DB_LIB@
+
+Name: kdb
+Description: Kerberos database access libraries
+Version: @KRB5_VERSION@
+Requires.private: mit-krb5-gssapi mit-krb5
+Cflags: -I${includedir}
+Libs: -L${libdir} -lkdb5
+Libs.private: -lgssrpc ${KDB5_DB_LIB}
diff --git a/src/build-tools/krb5-gssapi.pc.in b/src/build-tools/krb5-gssapi.pc.in
new file mode 100644
index 0000000..4e2d832
--- /dev/null
+++ b/src/build-tools/krb5-gssapi.pc.in
@@ -0,0 +1,10 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+vendor=MIT
+
+Name: krb5-gssapi
+Description: Kerberos implementation of the GSSAPI
+Version: @KRB5_VERSION@
+Requires: mit-krb5-gssapi
diff --git a/src/build-tools/krb5.pc.in b/src/build-tools/krb5.pc.in
new file mode 100644
index 0000000..5f81049
--- /dev/null
+++ b/src/build-tools/krb5.pc.in
@@ -0,0 +1,14 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+vendor=MIT
+
+defccname=@DEFCCNAME@
+defktname=@DEFKTNAME@
+defcktname=@DEFCKTNAME@
+
+Name: krb5
+Description: An implementation of Kerberos network authentication
+Version: @KRB5_VERSION@
+Requires: mit-krb5
diff --git a/src/build-tools/mit-krb5-gssapi.pc.in b/src/build-tools/mit-krb5-gssapi.pc.in
new file mode 100644
index 0000000..7b91b19
--- /dev/null
+++ b/src/build-tools/mit-krb5-gssapi.pc.in
@@ -0,0 +1,11 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+Name: mit-krb5-gssapi
+Description: Kerberos implementation of the GSSAPI
+Version: @KRB5_VERSION@
+Requires.private: mit-krb5
+Cflags: -I${includedir}
+Libs: -L${libdir} -lgssapi_krb5
diff --git a/src/build-tools/mit-krb5.pc.in b/src/build-tools/mit-krb5.pc.in
new file mode 100644
index 0000000..0308815
--- /dev/null
+++ b/src/build-tools/mit-krb5.pc.in
@@ -0,0 +1,15 @@
+prefix=@prefix@
+exec_prefix=@exec_prefix@
+libdir=@libdir@
+includedir=@includedir@
+
+defccname=@DEFCCNAME@
+defktname=@DEFKTNAME@
+defcktname=@DEFCKTNAME@
+
+Name: mit-krb5
+Description: An implementation of Kerberos network authentication
+Version: @KRB5_VERSION@
+Cflags: -I${includedir}
+Libs: -L${libdir} -lkrb5 -lk5crypto -lcom_err
+Libs.private: -lkrb5support
diff --git a/src/config/pre.in b/src/config/pre.in
index 1ba26d8..e57019f 100644
--- a/src/config/pre.in
+++ b/src/config/pre.in
@@ -202,6 +202,7 @@ KRB5MANROOT = @mandir@
ADMIN_BINDIR = @sbindir@
SERVER_BINDIR = @sbindir@
CLIENT_BINDIR =@bindir@
+PKGCONFIG_DIR = @libdir@/pkgconfig
ADMIN_MANDIR = $(KRB5MANROOT)/man8
SERVER_MANDIR = $(KRB5MANROOT)/man8
CLIENT_MANDIR = $(KRB5MANROOT)/man1
diff --git a/src/configure.in b/src/configure.in
index 69863d2..c5c599b 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1290,7 +1290,15 @@ AC_DEFINE_UNQUOTED(DEFKTNAME, ["$DEFKTNAME"], [Define to default keytab name])
AC_DEFINE_UNQUOTED(DEFCKTNAME, ["$DEFCKTNAME"],
[Define to default client keytab name])
-AC_CONFIG_FILES(build-tools/krb5-config, [chmod +x build-tools/krb5-config])
+AC_CONFIG_FILES([build-tools/krb5-config], [chmod +x build-tools/krb5-config])
+AC_CONFIG_FILES([build-tools/kadm-server.pc
+ build-tools/kadm-client.pc
+ build-tools/kdb.pc
+ build-tools/krb5.pc
+ build-tools/krb5-gssapi.pc
+ build-tools/mit-krb5.pc
+ build-tools/mit-krb5-gssapi.pc
+])
V5_AC_OUTPUT_MAKEFILE(.
util util/support util/profile util/profile/testmod util/send-pr
More information about the cvs-krb5
mailing list