summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSimo Sorce <simo@redhat.com>2014-08-10 14:17:00 -0400
committerSimo Sorce <simo@redhat.com>2014-08-10 14:29:38 -0400
commit7779752b510f74fa6836a71195a39baa4b02faa1 (patch)
tree36c46d545ec65e81c21ec0125c4b0c82dab4bbfc
parent20b7ce48d8249e39eae58859bacd4d715b4623dd (diff)
downloadgss-ntlmssp-7779752b510f74fa6836a71195a39baa4b02faa1.tar.gz
gss-ntlmssp-7779752b510f74fa6836a71195a39baa4b02faa1.tar.xz
gss-ntlmssp-7779752b510f74fa6836a71195a39baa4b02faa1.zip
Add --with-wbclient configure flag
-rw-r--r--Makefile.am5
-rw-r--r--conf_macros.m417
-rw-r--r--configure.ac12
-rw-r--r--contrib/gssntlmssp.spec.in2
-rw-r--r--external/wbclient.m411
-rw-r--r--src/winbind.c2
6 files changed, 39 insertions, 10 deletions
diff --git a/Makefile.am b/Makefile.am
index 5df5d89..7327f34 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -82,9 +82,12 @@ GN_MECHGLUE_OBJ = \
src/gss_serialize.c \
src/external.c \
src/gss_auth.c \
- src/winbind.c \
src/gss_ntlmssp.c
+if BUILD_WBCLIENT
+ GN_MECHGLUE_OBJ += src/winbind.c
+endif
+
dist_noinst_HEADERS = \
src/crypto.h \
src/ntlm_common.h \
diff --git a/conf_macros.m4 b/conf_macros.m4
index a979f56..0f1c641 100644
--- a/conf_macros.m4
+++ b/conf_macros.m4
@@ -56,3 +56,20 @@ AC_ARG_ENABLE([all-experimental-features],
[build all experimental features])],
[build_all_experimental_features=$enableval],
[build_all_experimental_features=no])
+
+AC_DEFUN([WITH_WBCLIENT],
+ [AC_ARG_WITH([wbclient],
+ [AC_HELP_STRING([--with-wbclient],
+ [Build with WBClient support [yes]])
+ ],
+ [],
+ with_wbclient=yes)
+
+ if test x"$with_wbclient" = xyes; then
+ HAVE_WBCLIENT=1
+ AC_SUBST(HAVE_WBCLIENT)
+ AC_DEFINE_UNQUOTED(HAVE_WBCLIENT, 1, [Build with WBClient support])
+ fi
+
+ AM_CONDITIONAL([BUILD_WBCLIENT], [test x"$with_wbclient" = xyes])
+ ])
diff --git a/configure.ac b/configure.ac
index faf5caa..bdc562c 100644
--- a/configure.ac
+++ b/configure.ac
@@ -56,6 +56,7 @@ WITH_DISTRO_VERSION
WITH_TEST_DIR
WITH_MANPAGES
WITH_XML_CATALOG
+WITH_WBCLIENT
m4_include([external/pkg.m4])
m4_include([external/docbook.m4])
@@ -63,6 +64,7 @@ m4_include([external/sizes.m4])
m4_include([external/ax_pthread.m4])
m4_include([external/m4_ax_check_openssl.m4])
m4_include([external/ax_check_zlib.m4])
+m4_include([external/wbclient.m4])
AX_PTHREAD(,[AC_MSG_ERROR([Could not find Pthreads support])])
@@ -102,13 +104,9 @@ AC_SUBST([CRYPTO_LIBS])
AX_CHECK_ZLIB(,[AC_MSG_ERROR([Could not find Zlib support])])
-PKG_CHECK_MODULES(WBC, wbclient,
- [AC_DEFINE([HAVE_WBCLIENT], [1],
- [Wbclient support is available])],
- AC_MSG_WARN("Samba's wbclient headers are not available"))
-AC_SUBST(WBC_CFLAGS)
-AC_SUBST(WBC_LIBS)
-
+if test x$HAVE_WBCLIENT != x; then
+ AM_CHECK_WBCLIENT
+fi
if test x$HAVE_MANPAGES != x; then
CHECK_XML_TOOLS
diff --git a/contrib/gssntlmssp.spec.in b/contrib/gssntlmssp.spec.in
index ff9ff84..d3911e5 100644
--- a/contrib/gssntlmssp.spec.in
+++ b/contrib/gssntlmssp.spec.in
@@ -23,6 +23,7 @@ BuildRequires: pkgconfig
BuildRequires: krb5-devel >= 1.11.5
BuildRequires: libunistring-devel
BuildRequires: openssl-devel
+BuildRequires: libwbclient-devel
%description
A GSSAPI Mechanism that implements NTLMSSP
@@ -42,6 +43,7 @@ Adds a header file with definition for custom GSSAPI extensions for NTLMSSP
%build
autoreconf -fiv
%configure \
+ --with-wbclient \
--disable-static \
--disable-rpath
diff --git a/external/wbclient.m4 b/external/wbclient.m4
new file mode 100644
index 0000000..ddbcf79
--- /dev/null
+++ b/external/wbclient.m4
@@ -0,0 +1,11 @@
+dnl A macro to check the availability of Winbind client libraries
+AC_DEFUN([AM_CHECK_WBCLIENT],
+ [
+ PKG_CHECK_MODULES(WBC, wbclient,
+ [AC_DEFINE([HAVE_WBCLIENT], [1],
+ [Wbclient support is available])
+ ],
+ AC_MSG_ERROR("wbclient headers not found"))
+ AC_SUBST(WBC_CFLAGS)
+ AC_SUBST(WBC_LIBS)
+ ])
diff --git a/src/winbind.c b/src/winbind.c
index ffdaf44..723427e 100644
--- a/src/winbind.c
+++ b/src/winbind.c
@@ -2,7 +2,6 @@
#include "config.h"
-#if HAVE_WBCLIENT
#include <errno.h>
#include <string.h>
#include "gss_ntlmssp.h"
@@ -249,4 +248,3 @@ uint32_t winbind_srv_auth(char *user, char *domain,
wbcFreeMemory(wbc_info);
return 0;
}
-#endif