AM_CONDITIONAL(HAVE_GCC_GNU89_INLINE_OPTION, test "$gnu89_inline" = "yes"])
AM_CONDITIONAL(HAVE_GCC, test "$GCC" = "yes")
+AC_ARG_ENABLE(self-checks,
+ AS_HELP_STRING([--enable-self-checks], [enable self checking functionality]),
+ enable_self_checks=$enableval, enable_self_checks=no)
+AM_CONDITIONAL(ENABLE_SELF_CHECKS, test "$enable_self_checks" = "yes")
+if [ test "$enable_self_checks" = "yes" ];then
+ AC_DEFINE([ENABLE_SELF_CHECKS], 1, [Self checks are included in the library])
+fi
+
dnl Try the hooks.m4
LIBGNUTLS_HOOKS
LIBGNUTLS_EXTRA_HOOKS
Heartbeat support: $ac_enable_heartbeat
RSA-EXPORT compat: $ac_enable_rsa_export
Unicode support: $ac_have_unicode
+ Self checks: $enable_self_checks
])
AC_MSG_NOTICE([Optional applications:
gnutls_rsa_export.c gnutls_helper.c gnutls_supplemental.c \
random.c crypto-api.c gnutls_privkey.c gnutls_pcert.c \
gnutls_pubkey.c locks.c gnutls_dtls.c system_override.c \
- crypto-backend.c verify-tofu.c pin.c tpm.c \
- crypto-selftests.c crypto-selftests-pk.c
+ crypto-backend.c verify-tofu.c pin.c tpm.c
+
+if ENABLE_SELF_CHECKS
+COBJECTS += crypto-selftests.c crypto-selftests-pk.c
+endif
if ENABLE_PKCS11
COBJECTS += pkcs11.c pkcs11_privkey.c pkcs11_write.c pkcs11_secret.c \
AM_LDFLAGS = -no-install
LDADD = ../libutils.la \
- ../../lib/libgnutls.la $(LTLIBGCRYPT) $(LIBSOCKET)
+ $(top_builddir)/lib/libgnutls.la $(LTLIBGCRYPT) $(LIBSOCKET)
+
+if !ENABLE_SELF_CHECKS
+cipher_test_CPPFLAGS = $(AM_CPPFLAGS) -I$(top_builddir)/lib/ -I$(top_builddir)/gl/
+else
+cipher_test_CPPFLAGS = $(AM_CPPFLAGS)
+endif
ctests = gendh keygen cipher-test
+#include <config.h>
#include <stdint.h>
#include <stdio.h>
#include <string.h>
fprintf(stderr, "<%d>| %s", level, str);
}
+#ifndef ENABLE_SELF_CHECKS
+# include "../../lib/crypto-selftests.c"
+# include "../../lib/crypto-selftests-pk.c"
+#endif
int main(int argc, char **argv)
{