[cpp-sp] 06/17: Use pkg-config for xmltooling

Scott Cantor cantor.2 at osu.edu
Wed Jun 27 20:35:47 EDT 2018


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch master
in repository cpp-sp.

View the commit online:
http://git.shibboleth.net/view/?p=cpp-sp.git;a=commit;h=2cd8a005a94281586bd9d40ba5144184f1d491a4

commit 2cd8a005a94281586bd9d40ba5144184f1d491a4
Author: Ferenc Wágner <wferi at niif.hu>
AuthorDate: Thu Jul 14 13:41:18 2016 +0200

    Use pkg-config for xmltooling
---
 adfs/Makefile.am           | 13 ++++++-----
 apache/Makefile.am         | 36 +++++++++++++++++++----------
 configure.ac               | 56 ++++++----------------------------------------
 fastcgi/Makefile.am        | 10 +++++----
 memcache-store/Makefile.am |  5 ++++-
 nsapi_shib/Makefile.am     |  8 ++++---
 odbc-store/Makefile.am     |  5 ++++-
 plugins/Makefile.am        | 13 +++++++----
 shibd/Makefile.am          |  9 +++++---
 shibsp/Makefile.am         |  9 +++++---
 util/Makefile.am           |  8 +++++--
 11 files changed, 85 insertions(+), 87 deletions(-)

diff --git a/adfs/Makefile.am b/adfs/Makefile.am
index 44714eb..c8f3410 100644
--- a/adfs/Makefile.am
+++ b/adfs/Makefile.am
@@ -3,20 +3,23 @@ AUTOMAKE_OPTIONS = foreign
 plugindir = $(libdir)/@PACKAGE_NAME@
 plugin_LTLIBRARIES = adfs.la adfs-lite.la
 
+adfs_la_CXXFLAGS = \
+	$(xmltooling_CFLAGS)
 adfs_la_LIBADD = $(XMLSEC_LIBS) \
-	$(top_builddir)/shibsp/libshibsp.la
+	$(top_builddir)/shibsp/libshibsp.la \
+	$(xmltooling_LIBS)
 
 adfs_la_SOURCES = \
 	adfs.cpp
 
-adfs_lite_la_LIBADD = $(LITE_LIBS) \
-	$(top_builddir)/shibsp/libshibsp-lite.la
-
 adfs_lite_la_SOURCES = \
 	adfs.cpp
 
 adfs_la_LDFLAGS = -module -avoid-version
 adfs_lite_la_LDFLAGS = -module -avoid-version
-adfs_lite_la_CPPFLAGS = -DSHIBSP_LITE
+adfs_lite_la_CXXFLAGS = -DSHIBSP_LITE \
+	$(xmltooling_lite_CFLAGS)
+adfs_lite_la_LIBADD = $(top_builddir)/shibsp/libshibsp-lite.la \
+	$(xmltooling_lite_LIBS)
 
 EXTRA_DIST = resource.h adfs.rc
diff --git a/apache/Makefile.am b/apache/Makefile.am
index ede1e63..065154c 100644
--- a/apache/Makefile.am
+++ b/apache/Makefile.am
@@ -4,40 +4,52 @@ if BUILD_AP13
 modshib13dir = $(libdir)/@PACKAGE_NAME@
 modshib13_LTLIBRARIES = mod_shib_13.la
 mod_shib_13_la_SOURCES = mod_shib_13.cpp
-mod_shib_13_la_CXXFLAGS = $(APXS_CFLAGS) -I$(APXS_INCLUDE)
 mod_shib_13_la_LDFLAGS = -module -avoid-version
-mod_shib_13_la_LIBADD = $(LITE_LIBS) \
-  $(top_builddir)/shibsp/libshibsp-lite.la
+mod_shib_13_la_CXXFLAGS = \
+  $(APXS_CFLAGS) -I$(APXS_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
+mod_shib_13_la_LIBADD = \
+  $(top_builddir)/shibsp/libshibsp-lite.la \
+  $(xmltooling_lite_LIBS)
 endif
 
 if BUILD_AP20
 modshib20dir = $(libdir)/@PACKAGE_NAME@
 modshib20_LTLIBRARIES = mod_shib_20.la
 mod_shib_20_la_SOURCES = mod_shib_20.cpp
-mod_shib_20_la_CXXFLAGS = $(APXS2_CFLAGS) -I$(APXS2_INCLUDE)
 mod_shib_20_la_LDFLAGS = -module -avoid-version
-mod_shib_20_la_LIBADD = $(LITE_LIBS) \
-  $(top_builddir)/shibsp/libshibsp-lite.la
+mod_shib_20_la_CXXFLAGS = \
+  $(APXS2_CFLAGS) -I$(APXS2_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
+mod_shib_20_la_LIBADD = \
+  $(top_builddir)/shibsp/libshibsp-lite.la \
+  $(xmltooling_lite_LIBS)
 endif
 
 if BUILD_AP22
 modshib22dir = $(libdir)/@PACKAGE_NAME@
 modshib22_LTLIBRARIES = mod_shib_22.la
 mod_shib_22_la_SOURCES = mod_shib_22.cpp
-mod_shib_22_la_CXXFLAGS = $(APXS22_CFLAGS) -I$(APXS22_INCLUDE)
 mod_shib_22_la_LDFLAGS = -module -avoid-version
-mod_shib_22_la_LIBADD = $(LITE_LIBS) \
-  $(top_builddir)/shibsp/libshibsp-lite.la
+mod_shib_22_la_CXXFLAGS = \
+  $(APXS22_CFLAGS) -I$(APXS22_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
+mod_shib_22_la_LIBADD = \
+  $(top_builddir)/shibsp/libshibsp-lite.la \
+  $(xmltooling_lite_LIBS)
 endif
 
 if BUILD_AP24
 modshib24dir = $(libdir)/@PACKAGE_NAME@
 modshib24_LTLIBRARIES = mod_shib_24.la
 mod_shib_24_la_SOURCES = mod_shib_24.cpp
-mod_shib_24_la_CXXFLAGS = $(APXS24_CFLAGS) -I$(APXS24_INCLUDE)
 mod_shib_24_la_LDFLAGS = -module -avoid-version
-mod_shib_24_la_LIBADD = $(LITE_LIBS) \
-  $(top_builddir)/shibsp/libshibsp-lite.la
+mod_shib_24_la_CXXFLAGS = \
+  $(APXS24_CFLAGS) -I$(APXS24_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
+mod_shib_24_la_LIBADD = \
+  $(top_builddir)/shibsp/libshibsp-lite.la \
+  $(xmltooling_lite_LIBS)
 endif
 
 EXTRA_DIST = mod_shib.cpp \
diff --git a/configure.ac b/configure.ac
index 5182316..2e4e2f7 100644
--- a/configure.ac
+++ b/configure.ac
@@ -238,55 +238,14 @@ AC_LINK_IFELSE(
 # restore master libs
 LIBS="$save_LIBS"
 
-#XML-Tooling settings
-AC_ARG_WITH(xmltooling,
-    AS_HELP_STRING([--with-xmltooling=PATH],[where xmltooling is installed]),,
-    [with_xmltooling=/usr])
-if test x_$with_xmltooling != x_/usr; then
-    CPPFLAGS="-I${with_xmltooling}/include $CPPFLAGS"
-    DX_INCLUDE="${with_xmltooling}/include"
-    LITE_LIBS="-L${with_xmltooling}/lib -lxmltooling-lite"
-    XMLSEC_LIBS="-L${with_xmltooling}/lib -lxmltooling $XMLSEC_LIBS"
-else
-    LITE_LIBS="-lxmltooling-lite"
-    XMLSEC_LIBS="-lxmltooling $XMLSEC_LIBS"
-fi
-
-AC_CHECK_HEADER([xmltooling/base.h],,AC_MSG_ERROR([unable to find xmltooling header files]))
-
-# save and append master libs
-save_LIBS="$LIBS"
-LIBS="$XMLSEC_LIBS $LIBS"
+AX_PKG_CHECK_MODULES([xmltooling],,[xmltooling >= 3],,,
+    [SHIBSP_REQUIRES],[SHIBSP_REQUIRES_PRIVATE])
+PKG_CHECK_VAR([xmltooling_includedir],[xmltooling],[includedir])
+PKG_CHECK_VAR([XMLTOOLINGXMLDIR],[xmltooling],[pkgxmldir])
+DX_INCLUDE="$DX_INCLUDE $xmltooling_includedir"
 
-AC_PREPROC_IFELSE(
-    [AC_LANG_PROGRAM([[#include <xmltooling/version.h>]],
-        [[#if _XMLTOOLING_VERSION >= 30000
-int i = 0;
-#else
-#error Need XMLTooling version 3.0 or higher
-#endif]])],
-    ,[AC_MSG_ERROR([XMLTooling version 3.0.0 or greater is required.])])
-
-# restore master libs
-LIBS="$save_LIBS"
-
-# Establish location of xmltooling catalog.
-XMLTOOLINGXMLDIR=""
-if test "x$with_xmltooling" = "x" ; then
-   with_xmltooling="/usr"
-fi
-if test -f $with_xmltooling/share/xml/xmltooling/catalog.xml ; then
-    XMLTOOLINGXMLDIR="$with_xmltooling"
-elif test -f $with_xerces/share/xml/xmltooling/catalog.xml ; then
-    XMLTOOLINGXMLDIR="$with_xerces"
-elif test -f $with_log4shib/share/xml/xmltooling/catalog.xml ; then
-    XMLTOOLINGXMLDIR="$with_log4shib"
-fi
-if test "x$XMLTOOLINGXMLDIR" = "x" ; then
-    AC_MSG_ERROR([xmltooling XML catalog not found, may need to use --with-xmltooling option])
-fi
-XMLTOOLINGXMLDIR="$XMLTOOLINGXMLDIR/share/xml/xmltooling"
-AC_SUBST(XMLTOOLINGXMLDIR)
+AX_PKG_CHECK_MODULES([xmltooling_lite],,[xmltooling-lite],,,
+    [SHIBSP_LITE_REQUIRES],[SHIBSP_LITE_REQUIRES_PRIVATE])
 
 # OpenSAML settings
 AC_ARG_WITH(saml,
@@ -338,7 +297,6 @@ fi
 OPENSAMLXMLDIR="$OPENSAMLXMLDIR/share/xml/opensaml"
 AC_SUBST(OPENSAMLXMLDIR)
 
-AC_SUBST(LITE_LIBS)
 AC_SUBST(XMLSEC_LIBS)
 
 # output the underlying makefiles
diff --git a/fastcgi/Makefile.am b/fastcgi/Makefile.am
index e56b7c2..b842639 100644
--- a/fastcgi/Makefile.am
+++ b/fastcgi/Makefile.am
@@ -7,18 +7,20 @@ fastcgidir = $(libdir)/@PACKAGE_NAME@
 fastcgi_PROGRAMS = shibauthorizer shibresponder
 
 shibauthorizer_SOURCES = shibauthorizer.cpp
-shibauthorizer_CXXFLAGS = $(FASTCGI_INCLUDE)
+shibauthorizer_CXXFLAGS = $(FASTCGI_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
 shibauthorizer_LDFLAGS = $(FASTCGI_LDFLAGS)
 shibauthorizer_LDADD = $(FASTCGI_LIBS) \
   $(top_builddir)/shibsp/libshibsp-lite.la \
-  $(LITE_LIBS)
+  $(xmltooling_lite_LIBS)
 
 shibresponder_SOURCES = shibresponder.cpp
-shibresponder_CXXFLAGS = $(FASTCGI_INCLUDE)
+shibresponder_CXXFLAGS = $(FASTCGI_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
 shibresponder_LDFLAGS = $(FASTCGI_LDFLAGS)
 shibresponder_LDADD = $(FASTCGI_LIBS) \
   $(top_builddir)/shibsp/libshibsp-lite.la \
-  $(LITE_LIBS)
+  $(xmltooling_lite_LIBS)
 
 endif
 
diff --git a/memcache-store/Makefile.am b/memcache-store/Makefile.am
index ed1374e..8e0f77a 100644
--- a/memcache-store/Makefile.am
+++ b/memcache-store/Makefile.am
@@ -7,7 +7,10 @@ AM_CFLAGS = $(MEMCACHED_INCLUDE)
 AM_CXXFLAGS = $(MEMCACHED_INCLUDE)
 
 memcache_store_la_LDFLAGS = $(MEMCACHED_LDFLAGS) -module -avoid-version
-memcache_store_la_LIBADD = $(XMLSEC_LIBS) $(MEMCACHED_LIBS)
+memcache_store_la_CXXFLAGS = \
+	$(xmltooling_CFLAGS)
+memcache_store_la_LIBADD = $(XMLSEC_LIBS) $(MEMCACHED_LIBS) \
+	$(xmltooling_LIBS)
 
 memcache_store_la_SOURCES = \
 	memcache-store.cpp
diff --git a/nsapi_shib/Makefile.am b/nsapi_shib/Makefile.am
index aaeff24..63a7a8e 100644
--- a/nsapi_shib/Makefile.am
+++ b/nsapi_shib/Makefile.am
@@ -4,10 +4,12 @@ if BUILD_NSAPI
 nsapi_shibdir = $(libdir)/@PACKAGE_NAME@
 nsapi_shib_LTLIBRARIES = nsapi_shib.la
 nsapi_shib_la_SOURCES = nsapi_shib.cpp
-nsapi_shib_la_CXXFLAGS = $(NSAPI_INCLUDE)
+nsapi_shib_la_CXXFLAGS = $(NSAPI_INCLUDE) \
+  $(xmltooling_lite_CFLAGS)
 nsapi_shib_la_LDFLAGS = -module -avoid-version
-nsapi_shib_la_LIBADD = $(LITE_LIBS) \
-  $(top_builddir)/shibsp/libshibsp-lite.la
+nsapi_shib_la_LIBADD = \
+  $(top_builddir)/shibsp/libshibsp-lite.la \
+  $(xmltooling_lite_LIBS)
 endif
 
 EXTRA_DIST = resource.h nsapi_shib.rc nsapi_shib.cpp
diff --git a/odbc-store/Makefile.am b/odbc-store/Makefile.am
index 67c71f0..ec6f061 100644
--- a/odbc-store/Makefile.am
+++ b/odbc-store/Makefile.am
@@ -6,7 +6,10 @@ plugin_LTLIBRARIES = odbc-store.la
 AM_CFLAGS = $(ODBC_CFLAGS)
 AM_CXXFLAGS = $(ODBC_CFLAGS)
 
-odbc_store_la_LIBADD = $(XMLSEC_LIBS) $(ODBC_LIBS)
+odbc_store_la_CXXFLAGS = \
+	$(xmltooling_CFLAGS)
+odbc_store_la_LIBADD = $(XMLSEC_LIBS) $(ODBC_LIBS) \
+	$(xmltooling_LIBS)
 
 odbc_store_la_SOURCES = \
 	odbc-store.cpp
diff --git a/plugins/Makefile.am b/plugins/Makefile.am
index 92a416b..e46a617 100644
--- a/plugins/Makefile.am
+++ b/plugins/Makefile.am
@@ -21,14 +21,19 @@ plugins_la_SOURCES = \
 plugins_lite_la_SOURCES = \
 	${common_sources}
 
+plugins_la_CXXFLAGS = \
+	$(xmltooling_CFLAGS)
 plugins_la_LIBADD = $(XMLSEC_LIBS) \
-	$(top_builddir)/shibsp/libshibsp.la
+	$(top_builddir)/shibsp/libshibsp.la \
+	$(xmltooling_LIBS)
 
-plugins_lite_la_LIBADD = $(LITE_LIBS) \
-	$(top_builddir)/shibsp/libshibsp-lite.la
+plugins_lite_la_LIBADD = \
+	$(top_builddir)/shibsp/libshibsp-lite.la \
+	$(xmltooling_lite_LIBS)
 
 plugins_la_LDFLAGS = -module -avoid-version
 plugins_lite_la_LDFLAGS = -module -avoid-version
-plugins_lite_la_CPPFLAGS = -DSHIBSP_LITE
+plugins_lite_la_CXXFLAGS = -DSHIBSP_LITE \
+	$(xmltooling_lite_CFLAGS)
 
 EXTRA_DIST = resource.h plugins.rc
diff --git a/shibd/Makefile.am b/shibd/Makefile.am
index 7a7d5de..e78010f 100644
--- a/shibd/Makefile.am
+++ b/shibd/Makefile.am
@@ -4,9 +4,12 @@ sbin_PROGRAMS = shibd
 
 shibd_SOURCES = shibd.cpp
 
-shibd_CXXFLAGS = $(SYSTEMD_CFLAGS)
-
+shibd_CXXFLAGS = \
+  $(SYSTEMD_CFLAGS) \
+  $(xmltooling_CFLAGS)
 shibd_LDADD = $(XMLSEC_LIBS) \
-  $(top_builddir)/shibsp/libshibsp.la $(SYSTEMD_LIBS)
+  $(top_builddir)/shibsp/libshibsp.la \
+  $(SYSTEMD_LIBS) \
+  $(xmltooling_LIBS)
 
 EXTRA_DIST = shibd_win32.cpp resource.h shibd.rc
diff --git a/shibsp/Makefile.am b/shibsp/Makefile.am
index 9ea30ee..bef296c 100644
--- a/shibsp/Makefile.am
+++ b/shibsp/Makefile.am
@@ -244,16 +244,19 @@ libshibsp_la_SOURCES = \
 # http://sources.redhat.com/autobook/autobook/autobook_91.html
 libshibsp_la_LDFLAGS = -version-info 8:0:0
 libshibsp_la_CXXFLAGS = \
-    $(log4shib_CFLAGS) $(log4cpp_CFLAGS)
+    $(log4shib_CFLAGS) $(log4cpp_CFLAGS) \
+    $(xmltooling_CFLAGS)
 libshibsp_la_LIBADD = \
     $(log4shib_LIBS) $(log4cpp_LIBS) \
+    $(xmltooling_LIBS) \
     $(XMLSEC_LIBS)
 libshibsp_lite_la_LDFLAGS = -version-info 8:0:0
 libshibsp_lite_la_CXXFLAGS = -DSHIBSP_LITE \
-    $(log4shib_CFLAGS) $(log4cpp_CFLAGS)
+    $(log4shib_CFLAGS) $(log4cpp_CFLAGS) \
+    $(xmltooling_lite_CFLAGS)
 libshibsp_lite_la_LIBADD = \
     $(log4shib_LIBS) $(log4cpp_LIBS) \
-    $(LITE_LIBS)
+    $(xmltooling_lite_LIBS)
 
 pkgsysconfdir = $(sysconfdir)/@PACKAGE_NAME@
 pkgxmldir = $(datadir)/xml/@PACKAGE_NAME@
diff --git a/util/Makefile.am b/util/Makefile.am
index b735a4b..eb57958 100644
--- a/util/Makefile.am
+++ b/util/Makefile.am
@@ -5,10 +5,12 @@ bin_PROGRAMS = mdquery resolvertest
 resolvertest_SOURCES = resolvertest.cpp
 
 resolvertest_CXXFLAGS = \
-	$(log4shib_CFLAGS) $(log4cpp_CFLAGS)
+	$(log4shib_CFLAGS) $(log4cpp_CFLAGS) \
+	$(xmltooling_CFLAGS)
 resolvertest_LDADD = \
 	$(top_builddir)/shibsp/libshibsp.la \
 	$(log4shib_LIBS) $(log4cpp_LIBS) \
+	$(xmltooling_LIBS) \
 	$(XMLSEC_LIBS)
 
 mdquery_SOURCES = mdquery.cpp
@@ -19,8 +21,10 @@ EXTRA_DIST = \
 	resolvertest.rc
 
 mdquery_CXXFLAGS = \
-	$(log4shib_CFLAGS) $(log4cpp_CFLAGS)
+	$(log4shib_CFLAGS) $(log4cpp_CFLAGS) \
+	$(xmltooling_CFLAGS)
 mdquery_LDADD = \
 	$(top_builddir)/shibsp/libshibsp.la \
 	$(log4shib_LIBS) $(log4cpp_LIBS) \
+	$(xmltooling_LIBS) \
 	$(XMLSEC_LIBS)

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list