[29754] in CVS-changelog-for-Kerberos-V5

home help back first fref pref prev next nref lref last post

krb5 commit: Fix "make depend" when cmocka.h not present

daemon@ATHENA.MIT.EDU (Greg Hudson)
Tue Oct 25 11:12:41 2016

Date: Tue, 25 Oct 2016 11:12:37 -0400
From: Greg Hudson <ghudson@mit.edu>
Message-Id: <201610251512.u9PFCb18018229@drugstore.mit.edu>
To: cvs-krb5@mit.edu
Reply-To: krbdev@mit.edu
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: 7bit
Errors-To: cvs-krb5-bounces@mit.edu

https://github.com/krb5/krb5/commit/3c756f3cc15ec052ac64651d703fdb8d1096a69d
commit 3c756f3cc15ec052ac64651d703fdb8d1096a69d
Author: Greg Hudson <ghudson@mit.edu>
Date:   Wed Oct 5 10:51:52 2016 -0400

    Fix "make depend" when cmocka.h not present
    
    Add an intermediary header file k5-cmocka.h, which only includes
    cmocka.h if we detected an appropriate version of cmocka at configure
    time.  This allows "make depend" to successfully run over cmocka test
    programs when cmocka.h isn't present on the build platform.
    
    For convenience, k5-cmocka.h also includes stdarg.h, stddef.h, and
    setjmp.h, which are required to include cmocka.h.

 src/configure.in                       |    1 +
 src/include/k5-cmocka.h                |   16 ++++++++++++++++
 src/kdc/t_replay.c                     |    5 +----
 src/lib/kdb/t_sort_key_data.c          |    5 +----
 src/lib/krb5/krb/t_parse_host_string.c |    5 +----
 5 files changed, 20 insertions(+), 12 deletions(-)

diff --git a/src/configure.in b/src/configure.in
index fde09a1..63c7469 100644
--- a/src/configure.in
+++ b/src/configure.in
@@ -1131,6 +1131,7 @@ AC_CHECK_LIB(cmocka, _cmocka_run_group_tests, [HAVE_CMOCKA_LIB=yes])
 if test "$HAVE_CMOCKA_LIB" = yes && test "$HAVE_CMOCKA_H" = yes; then
     HAVE_CMOCKA=yes
     CMOCKA_LIBS='-lcmocka'
+    AC_DEFINE([HAVE_CMOCKA],1,[Define if cmocka library is available.])
 fi
 AC_SUBST(HAVE_CMOCKA)
 AC_SUBST(CMOCKA_LIBS)
diff --git a/src/include/k5-cmocka.h b/src/include/k5-cmocka.h
new file mode 100644
index 0000000..c35b10b
--- /dev/null
+++ b/src/include/k5-cmocka.h
@@ -0,0 +1,16 @@
+/* -*- mode: c; c-basic-offset: 4; indent-tabs-mode: nil -*- */
+/* include/k5-cmocka.h - indirect header file for cmocka test programs */
+
+/*
+ * This header conditionally includes cmocka.h, so that "make depend" can work
+ * on cmocka test programs when cmocka isn't available.  It also includes the
+ * three system headers required for cmocka.h.
+ */
+
+#include "autoconf.h"
+#include <stdarg.h>
+#include <stddef.h>
+#include <setjmp.h>
+#ifdef HAVE_CMOCKA
+#include <cmocka.h>
+#endif
diff --git a/src/kdc/t_replay.c b/src/kdc/t_replay.c
index 1442e0e..87dbbc6 100644
--- a/src/kdc/t_replay.c
+++ b/src/kdc/t_replay.c
@@ -36,10 +36,7 @@
 
 #ifndef NOCACHE
 
-#include <stdarg.h>
-#include <stddef.h>
-#include <setjmp.h>
-#include <cmocka.h>
+#include "k5-cmocka.h"
 
 /* For wrapping functions */
 #include "k5-int.h"
diff --git a/src/lib/kdb/t_sort_key_data.c b/src/lib/kdb/t_sort_key_data.c
index d03d507..ffd1a15 100644
--- a/src/lib/kdb/t_sort_key_data.c
+++ b/src/lib/kdb/t_sort_key_data.c
@@ -30,10 +30,7 @@
  * OF THE POSSIBILITY OF SUCH DAMAGE.
  */
 
-#include <stdarg.h>
-#include <stddef.h>
-#include <setjmp.h>
-#include <cmocka.h>
+#include "k5-cmocka.h"
 #include "kdb.h"
 
 #define KEY(kvno) {                                             \
diff --git a/src/lib/krb5/krb/t_parse_host_string.c b/src/lib/krb5/krb/t_parse_host_string.c
index 76dd20f..001b773 100644
--- a/src/lib/krb5/krb/t_parse_host_string.c
+++ b/src/lib/krb5/krb/t_parse_host_string.c
@@ -31,10 +31,7 @@
  */
 
 #include "k5-int.h"
-#include <stdarg.h>
-#include <stddef.h>
-#include <setjmp.h>
-#include <cmocka.h>
+#include "k5-cmocka.h"
 #include <malloc.h>
 
 /* Call k5_parse_host_string() and check the result against the expected code,
_______________________________________________
cvs-krb5 mailing list
cvs-krb5@mit.edu
https://mailman.mit.edu/mailman/listinfo/cvs-krb5

home help back first fref pref prev next nref lref last post