1# SPDX-License-Identifier: BSD-2-Clause 2# Copyright (c) 2015 - 2020 Intel Corporation 3# Copyright (c) 2018 - 2020 Fraunhofer SIT sponsored by Infineon Technologies AG 4# All rights reserved. 5 6AC_INIT([tpm2-tss], 7 [2.4.0], 8 [https://github.com/tpm2-software/tpm2-tss/issues], 9 [], 10 [https://github.com/tpm2-software/tpm2-tss]) 11AC_CONFIG_MACRO_DIR([m4]) 12AM_INIT_AUTOMAKE([foreign 13 subdir-objects]) 14m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) #Backward compatible setting of "silent-rules" 15 16AC_CONFIG_HEADERS([config.h]) 17 18AC_CONFIG_FILES([Makefile Doxyfile lib/tss2-sys.pc lib/tss2-esys.pc lib/tss2-mu.pc lib/tss2-tcti-device.pc lib/tss2-tcti-mssim.pc lib/tss2-rc.pc lib/tss2-tctildr.pc lib/tss2-fapi.pc]) 19 20# propagate configure arguments to distcheck 21AC_SUBST([DISTCHECK_CONFIGURE_FLAGS],[$ac_configure_args]) 22 23AC_CANONICAL_HOST 24 25AX_IS_RELEASE(dash-version) 26AX_CHECK_ENABLE_DEBUG([info]) 27 28AC_PROG_CC 29AC_PROG_CXX 30AC_PROG_LN_S 31AC_USE_SYSTEM_EXTENSIONS 32LT_INIT() 33LT_LIB_DLLOAD 34PKG_INSTALLDIR() 35 36# Check OS and set library and compile flags accordingly 37case "${host_os}" in 38 *nto-qnx*) 39 HOSTOS='QNX' 40 ADD_COMPILER_FLAG([-D_QNX_SOURCE]) 41 LIBSOCKET_LDFLAGS="-lsocket" 42 ;; 43 *bsd* | *BSD*) 44 HOSTOS='BSD' 45 LIBSOCKET_LDFLAGS="" 46 ;; 47 *) 48 #Assume linux 49 HOSTOS='Linux' 50 LIBSOCKET_LDFLAGS="" 51 ;; 52esac 53AC_SUBST([LIBSOCKET_LDFLAGS]) 54AC_SUBST([HOSTOS]) 55 56# runstatedir is only defined in the yet unreleased Autoconf 2.70 57AC_ARG_WITH([runstatedir], 58 AS_HELP_STRING([--with-runstatedir=<dir>], 59 [replacement for --runstatedir in Autoconf <2.70]), 60 [runstatedir="$withval"]) 61AS_IF([test -z "$runstatedir"], [runstatedir="${localstatedir}/run"]) 62AC_SUBST([runstatedir]) 63 64AX_RECURSIVE_EVAL([$sysconfdir], [SYSCONFDIR]) 65AC_DEFINE_UNQUOTED([SYSCONFDIR], ["$SYSCONFDIR"], [System config dir]) 66 67AC_ARG_WITH([userstatedir], 68 [AS_HELP_STRING([--with-userstatedir=<dir>], 69 [sets the relative path in the user's home (default is ".local/share")])],, 70 [with_userstatedir=.local/share]) 71AC_SUBST(userstatedir, $with_userstatedir) 72 73AC_ARG_WITH([sysusersdir], 74 [AS_HELP_STRING([--with-sysusersdir=<dir>], 75 [sets the sysusers.d directory (default is "${sysconfdir}/sysusers.d")])],, 76 [with_sysusersdir="${sysconfdir}/sysusers.d"]) 77AC_SUBST(sysusersdir, $with_sysusersdir) 78 79AC_ARG_WITH([tmpfilesdir], 80 [AS_HELP_STRING([--with-tmpfilesdir=<dir>], 81 [sets the tmpfiles.d directory (default is "${sysconfdir}/tmpfiles.d")])],, 82 [with_tmpfilesdir="${sysconfdir}/tmpfiles.d"]) 83AC_SUBST(tmpfilesdir, $with_tmpfilesdir) 84 85AC_ARG_ENABLE([unit], 86 [AS_HELP_STRING([--enable-unit], 87 [build cmocka unit tests])],, 88 [enable_unit=no]) 89m4_define([cmocka_min_version], [1.0]) 90m4_define([cmocka_err], [Unit test enabled, but cmocka missing or version requirements not met. cmocka version must be >= cmocka_min_version]) 91AS_IF([test "x$enable_unit" != xno], 92 [PKG_CHECK_MODULES([CMOCKA], 93 [cmocka >= cmocka_min_version],, 94 [AC_MSG_ERROR([cmocka_err])])]) 95AM_CONDITIONAL([UNIT], [test "x$enable_unit" != xno]) 96 97AC_ARG_ENABLE([esapi], 98 [AS_HELP_STRING([--disable-esapi], 99 [don't build the esapi layer])],, 100 [enable_esapi=yes]) 101 102AM_CONDITIONAL(ESAPI, test "x$enable_esapi" = "xyes") 103 104AC_CHECK_FUNC([strndup],[],[AC_MSG_ERROR([strndup function not found])]) 105AC_CHECK_FUNCS([reallocarray]) 106AC_ARG_ENABLE([fapi], 107 [AS_HELP_STRING([--enable-fapi], 108 [build the fapi layer (default is yes)])], 109 [enable_fapi=$enableval], 110 [enable_fapi=yes]) 111 112AM_CONDITIONAL(FAPI, test "x$enable_fapi" = "xyes") 113 114AC_ARG_ENABLE([fapi-async-tests], 115 AS_HELP_STRING([--enable-fapi-async-tests], 116 [Force fapi to spin asynchronously. (NOT FOR PRODUCTION!)]),, 117 [enable_fapi_async_tests=no]) 118AS_IF([test "x$enable_fapi_async_tests" = "xyes"], 119 AC_DEFINE([TEST_FAPI_ASYNC], [1], [FAPI forced async spinning])) 120AS_IF([test "x$enable_fapi_async_tests" = "xyes"], 121 AC_MSG_WARN("FAPI compiled with asynchronous spinning testing. NOT FOR PRODUCTION!")) 122 123AC_ARG_ENABLE([tcti-device-async], 124 AS_HELP_STRING([--enable-tcti-device-async], 125 [Enable asynchronus operation on TCTI device 126 (note: This needs to be supported by the kernel driver).]),, 127 [enable_tcti_device_async=no]) 128AS_IF([test "x$enable_tcti_device_async" = "xyes"], 129 AC_DEFINE([TCTI_ASYNC],[1], [TCTI ASYNC MODE])) 130 131AC_ARG_ENABLE([tcti-partial-reads], 132 AS_HELP_STRING([--enable-tcti-partial-reads], 133 [Enable partial reads for TCTI device 134 (note: This needs to be supported by the kernel driver).]),, 135 [enable_tcti_partial_reads=no]) 136AS_IF([test "x$enable_tcti_partial_reads" = "xyes"], 137 AC_DEFINE([TCTI_PARTIAL_READ],[1], [TCTI PARTIAL READ MODE])) 138 139AC_ARG_WITH([crypto], 140 [AS_HELP_STRING([--with-crypto={gcrypt,ossl}], 141 [sets the ESAPI crypto backend (default is OpenSSL)])],, 142 [with_crypto=ossl]) 143 144AM_CONDITIONAL(ESYS_OSSL, test "x$with_crypto" = "xossl") 145AM_CONDITIONAL(ESYS_GCRYPT, test "x$with_crypto" = "xgcrypt") 146 147AS_IF([test "x$enable_esapi" = xyes], 148 [AS_IF([test "x$with_crypto" = xgcrypt], [ 149 AM_PATH_LIBGCRYPT([1.6.0], [], [AC_MSG_ERROR([Missing required gcrypt library])]) 150 TSS2_ESYS_CFLAGS_CRYPTO="$LIBGCRYPT_CFLAGS" 151 TSS2_ESYS_LDFLAGS_CRYPTO="$LIBGCRYPT_LIBS" 152 ], [test "x$with_crypto" = xossl], [ 153 PKG_CHECK_MODULES([LIBCRYPTO], [libcrypto]) 154 AC_DEFINE([OSSL], [1], [OpenSSL cryptographic backend]) 155 TSS2_ESYS_CFLAGS_CRYPTO="$LIBCRYPTO_CFLAGS" 156 TSS2_ESYS_LDFLAGS_CRYPTO="$LIBCRYPTO_LIBS" 157 ], AC_MSG_ERROR([Bad value for --with-crypto $with_crypto]))]) 158AC_SUBST([TSS2_ESYS_CFLAGS_CRYPTO]) 159AC_SUBST([TSS2_ESYS_LDFLAGS_CRYPTO]) 160 161AS_IF([test "x$enable_fapi" != xno -a "x$enable_esapi" = "xno"], 162 AC_MSG_ERROR([ESAPI has to be enabled to compile FAPI.])) 163 164AS_IF([test "x$enable_fapi" != xno -a "x$with_crypto" != "xossl"], 165 AC_MSG_ERROR([FAPI has to be compiled with OpenSSL])) 166 167AS_IF([test "x$enable_fapi" = xyes ], 168 PKG_CHECK_MODULES([JSON_C], [json-c])) 169 170AS_IF([test "x$enable_fapi" = xyes ], 171 PKG_CHECK_MODULES([CURL], [libcurl])) 172 173AC_ARG_WITH([tctidefaultmodule], 174 [AS_HELP_STRING([--with-tctidefaultmodule], 175[The default TCTI module for ESAPI. (Default: libtss2-tcti-default.so)])], 176 [AC_DEFINE_UNQUOTED([ESYS_TCTI_DEFAULT_MODULE], 177 ["$with_tctidefaultmodule"], 178 ["The default TCTI library file"])], 179 [with_tctidefaultmodule=libtss2-tcti-default.so]) 180 181AC_ARG_WITH([tctidefaultconfig], 182 [AS_HELP_STRING([--with-tctidefaultconfig], 183 [The default tcti module's configuration.])], 184 [AC_DEFINE_UNQUOTED([ESYS_TCTI_DEFAULT_CONFIG], 185 ["$with_tctidefaultconfig"], 186 ["The default TCTIs configuration string"])]) 187 188AC_ARG_ENABLE([tcti-device], 189 [AS_HELP_STRING([--disable-tcti-device], 190 [don't build the tcti-device module])],, 191 [enable_tcti_device=yes]) 192AM_CONDITIONAL([ENABLE_TCTI_DEVICE], [test "x$enable_tcti_device" != xno]) 193AS_IF([test "x$enable_tcti_device" = "xyes"], 194 AC_DEFINE([TCTI_DEVICE],[1], [TCTI FOR DEV TPM])) 195 196AC_ARG_ENABLE([tcti-mssim], 197 [AS_HELP_STRING([--disable-tcti-mssim], 198 [don't build the tcti-mssim module])],, 199 [enable_tcti_mssim=yes]) 200AM_CONDITIONAL([ENABLE_TCTI_MSSIM], [test "x$enable_tcti_mssim" != xno]) 201AS_IF([test "x$enable_tcti_mssim" = "xyes"], 202 AC_DEFINE([TCTI_MSSIM],[1], [TCTI FOR MS SIMULATOR])) 203 204AC_ARG_ENABLE([tcti-fuzzing], 205 [AS_HELP_STRING([--enable-tcti-fuzzing], 206 [build the tcti-fuzzing module])],, 207 [enable_tcti_fuzzing=no]) 208AM_CONDITIONAL([ENABLE_TCTI_FUZZING], [test "x$enable_tcti_fuzzing" != xno]) 209AS_IF([test "x$enable_tcti_fuzzing" = "xyes"], 210 AC_DEFINE([TCTI_FUZZING],[1], [TCTI FOR FUZZING])) 211 212AC_ARG_ENABLE([nodl], 213 [AS_HELP_STRING([--enable-nodl], 214 [link against TCTIs directly, do not use dlopen])], 215 [], 216 [enable_nodl=no]) 217AM_CONDITIONAL([NO_DL], [test "x$enable_nodl" = "xyes"]) 218AS_IF([test "x$enable_nodl" = "xyes"], 219 [AC_DEFINE([NO_DL],[1], [disable use of dlopen])]) 220 221# 222# udev 223# 224AC_ARG_WITH([udevrulesdir], 225 [AS_HELP_STRING([--with-udevrulesdir=DIR],[udev rules directory])],, 226 [with_udevrulesdir=${libdir}/udev/rules.d]) 227AX_NORMALIZE_PATH([with_udevrulesdir]) 228AC_SUBST([udevrulesdir], [$with_udevrulesdir]) 229AC_ARG_WITH([udevrulesprefix], 230 [AS_HELP_STRING([--with-udevrulesprefix=XY],[prefix for udev rules file])], 231 [AC_SUBST([udevrulesprefix],[$with_udevrulesprefix])]) 232AM_CONDITIONAL(WITH_UDEVRULESPREFIX, [test -n "$with_udevrulesprefix"]) 233# 234# enable integration tests and check for simulator binary 235# 236AC_ARG_ENABLE([integration], 237 [AS_HELP_STRING([--enable-integration], 238 [build and execute integration tests])],, 239 [enable_integration=no]) 240AS_IF([test "x$enable_integration" = "xyes" -a "$HOSTOS" = "Linux"], 241 [ERROR_IF_NO_PROG([tpm_server]) 242 ERROR_IF_NO_PROG([ss]) 243 ERROR_IF_NO_PROG([ps]) 244 ERROR_IF_NO_PROG([echo]) 245 ERROR_IF_NO_PROG([kill]) 246 ERROR_IF_NO_PROG([stdbuf]) 247 ERROR_IF_NO_PROG([sleep]) 248 ERROR_IF_NO_PROG([cat]) 249 ERROR_IF_NO_PROG([realpath]) 250 ERROR_IF_NO_PROG([dirname]) 251 ERROR_IF_NO_PROG([basename]) 252 ERROR_IF_NO_PROG([mktemp]) 253 ERROR_IF_NO_PROG([od]) 254 ERROR_IF_NO_PROG([awk]) 255 ERROR_IF_NO_PROG([expr]) 256 ERROR_IF_NO_PROG([grep]) 257 ERROR_IF_NO_PROG([env]) 258 ERROR_IF_NO_PROG([rm]) 259 AS_IF([test "x$with_crypto" != xossl -o "x$enable_esapi" != xyes], 260 PKG_CHECK_MODULES([LIBCRYPTO],[libcrypto])) 261 AC_CHECK_HEADER(uthash.h, [], [AC_MSG_ERROR([Can not find uthash.h. Please install uthash-dev])]) 262 AS_IF([test "x$enable_tcti_mssim" = xno], 263 AC_MSG_ERROR([Integration tests can not be enabled without the TCTI_MSSIM module])) 264 AC_SUBST([ENABLE_INTEGRATION], [$enable_integration])]) 265AM_CONDITIONAL([ENABLE_INTEGRATION],[test "x$enable_integration" = "xyes"]) 266# 267# sanitizer compiler flags 268# 269AC_ARG_WITH([sanitizer], 270 [AS_HELP_STRING([--with-sanitizer={none,address,undefined}], 271 [build with the given sanitizer])],, 272 [with_sanitizer=none]) 273AS_CASE(["x$with_sanitizer"], 274 ["xnone"], 275 [], 276 ["xaddress"], 277 [ 278 SANITIZER_CFLAGS="-fsanitize=address -fno-omit-frame-pointer" 279 SANITIZER_LDFLAGS="-lasan" 280 ], 281 ["xundefined"], 282 [ 283 SANITIZER_CFLAGS="-fsanitize=undefined" 284 SANITIZER_LDFLAGS="-lubsan" 285 ], 286 [AC_MSG_ERROR([Bad value for --with-sanitizer])]) 287AC_SUBST([SANITIZER_CFLAGS]) 288AC_SUBST([SANITIZER_LDFLAGS]) 289# 290# fuzz testing 291# 292AC_ARG_WITH([fuzzing], 293 [AS_HELP_STRING([--with-fuzzing={none,libfuzzer,ossfuzz}], 294 [fuzzing to build with (default is none)])],, 295 [with_fuzzing=none]) 296AS_CASE(["x$with_fuzzing"], 297 ["xnone"], 298 [], 299 ["xlibfuzzer"], 300 [ADD_FUZZING_FLAG([-fsanitize=fuzzer])], 301 ["xossfuzz"], 302 [AS_IF([test "x$LIB_FUZZING_ENGINE" = "x"], 303 AC_MSG_ERROR([OSS Fuzz testing requires LIB_FUZZING_ENGINE environment variable be set])) 304 ADD_FUZZING_FLAG([-lFuzzingEngine])], 305 [AC_MSG_ERROR([Bad value for --with-fuzzing])]) 306AM_CONDITIONAL([ENABLE_FUZZING],[test "x$with_fuzzing" != "xnone"]) 307AS_IF([test "x$with_fuzzing" != "xnone"], 308 [AS_IF([test "x$enable_tcti_fuzzing" = xno], 309 AC_MSG_ERROR([Fuzz tests can not be enabled without the TCTI_FUZZING module])) 310 AS_IF([test "x$GEN_FUZZ" != "x1"], 311 AC_MSG_ERROR([Fuzz tests can not be enabled without "GEN_FUZZ=1" variable]))]) 312 313AX_VALGRIND_CHECK 314 315gl_LD_VERSION_SCRIPT 316 317AC_ARG_WITH([maxloglevel], 318 [AS_HELP_STRING([--with-maxloglevel={none,error,warning,info,debug,trace}], 319 [sets the maximum log level (default is trace)])],, 320 [with_maxloglevel=trace]) 321AS_CASE(["x$with_maxloglevel"], 322 ["xnone"], 323 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [0], ["Logging disabled"])], 324 ["xerror"], 325 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [2], ["Error log level"])], 326 ["xwarning"], 327 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [3], ["Warning log level"])], 328 ["xinfo"], 329 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [4], ["Info log level"])], 330 ["xdebug"], 331 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [5], ["Debug log level"])], 332 ["xtrace"], 333 [AC_DEFINE_UNQUOTED([MAXLOGLEVEL], [6], ["Trace log level"])], 334 [AC_MSG_ERROR([Bad value for --with-maxloglevel])]) 335 336AC_ARG_ENABLE([defaultflags], 337 [AS_HELP_STRING([--disable-defaultflags], 338 [Disable default preprocessor, compiler, and linker flags.])],, 339 [enable_defaultflags=yes]) 340AS_IF([test "x$enable_defaultflags" = "xyes"], 341 [ 342 AS_IF([test "x$enable_debug" = "xno"], 343 [ADD_COMPILER_FLAG([-O2]) 344 AX_ADD_FORTIFY_SOURCE]) 345 ADD_COMPILER_FLAG([-std=c99]) 346 ADD_COMPILER_FLAG([-Wall]) 347 ADD_COMPILER_FLAG([-Wextra]) 348 ADD_COMPILER_FLAG([-Wformat-security]) 349 AS_IF([test "x$ax_is_release" = "xno"], 350 [ADD_COMPILER_FLAG([-Werror])]) 351 ADD_COMPILER_FLAG([-fstack-protector-all]) 352 ADD_COMPILER_FLAG([-fpic]) 353 ADD_COMPILER_FLAG([-fPIC]) 354 # work around GCC bug #53119 355 # https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53119 356 ADD_COMPILER_FLAG([-Wno-missing-braces]) 357 ADD_COMPILER_FLAG([-Wstrict-overflow=5]) 358 ADD_LINK_FLAG([-Wl,--no-undefined]) 359 ADD_LINK_FLAG([-Wl,-z,noexecstack]) 360 ADD_LINK_FLAG([-Wl,-z,now]) 361 ADD_LINK_FLAG([-Wl,-z,relro]) 362 ]) 363 364AC_ARG_ENABLE([weakcrypto], 365 [AS_HELP_STRING([--disable-weakcrypto], 366 [Disable crypto algorithms considered weak])],, 367 [enable_weakcrypto=no]) 368AS_IF([test "x$enable_weakcrypto" = "xyes"], 369 AC_DEFINE([DISABLE_WEAK_CRYPTO],[1],[DISABLE WEAK CRYPTO ALGORITHMS])) 370 371AC_SUBST([PATH]) 372 373dnl --------- Physical TPM device ----------------------- 374 375AC_ARG_WITH([ptpm], 376 [AS_HELP_STRING([--with-ptpm=<device>],[TPM device])], 377 [AS_IF([test \( -w "$with_ptpm" \) -a \( -r "$with_ptpm" \)], 378 [AC_MSG_RESULT([success]) 379 AC_SUBST([PTPM],[$with_ptpm]) 380 AX_NORMALIZE_PATH([with_ptpm]) 381 with_ptpm_set=yes], 382 [AC_MSG_ERROR([TPM device provided does not exist or is not writable])])], 383 [with_ptpm_set=no]) 384AM_CONDITIONAL([PTPM],[test "x$with_ptpm_set" = "xyes"]) 385 386AC_ARG_WITH([ptpmtests], 387 [AS_HELP_STRING([--with-ptpmtests=<case>],[Comma-separated values of possible tests: destructive,mandatory,optional] default is mandatory)], 388 [AS_IF([test "x" = x$(echo $with_ptpmtests | sed 's/destructive//g' | sed 's/mandatory//g' | sed 's/optional//g' | sed 's/,//g') ], 389 [AC_MSG_RESULT([success]) 390 with_ptpmtests_set=yes], 391 [AC_MSG_ERROR([Illegal test type for pTPM tests.])])], 392 [with_ptpmtests="mandatory"]) 393 394if echo $with_ptpmtests | grep destructive > /dev/null; then 395 enable_ptpm_destructive="yes" 396fi 397AM_CONDITIONAL([PTPMDESTRUCTIVE],[test "x$enable_ptpm_destructive" = "xyes"]) 398 399if echo $with_ptpmtests | grep optional > /dev/null; then 400 enable_ptpm_optional="yes" 401fi 402AM_CONDITIONAL([PTPMOPTIONAL],[test "x$enable_ptpm_optional" = "xyes"]) 403 404if echo $with_ptpmtests | grep mandatory > /dev/null; then 405 enable_ptpm_mandatory="yes" 406fi 407AM_CONDITIONAL([PTPMMANDATORY],[test "x$enable_ptpm_mandatory" = "xyes"]) 408 409AM_CONDITIONAL([TESTPTPM],[test "x$with_ptpm_set" = xyes]) 410 411dnl --------- Doxy Gen ----------------------- 412DX_DOXYGEN_FEATURE(ON) 413DX_DOT_FEATURE(OFF) 414DX_HTML_FEATURE(ON) 415DX_CHM_FEATURE(OFF) 416DX_CHI_FEATURE(OFF) 417DX_MAN_FEATURE(ON) 418DX_RTF_FEATURE(ON) 419DX_XML_FEATURE(OFF) 420DX_PDF_FEATURE(OFF) 421DX_PS_FEATURE(OFF) 422DX_INIT_DOXYGEN($PACKAGE_NAME, [Doxyfile], [doxygen-doc]) 423AM_CONDITIONAL(DOXYMAN, [test $DX_FLAG_man -eq 1]) 424 425AS_IF([test "x$enable_doxygen_doc" != xno], 426 [ERROR_IF_NO_PROG([doxygen])]) 427 428AX_CODE_COVERAGE 429m4_ifdef([_AX_CODE_COVERAGE_RULES], 430 [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [true])], 431 [AM_CONDITIONAL(AUTOCONF_CODE_COVERAGE_2019_01_06, [false])]) 432AX_ADD_AM_MACRO_STATIC([]) 433 434AM_COND_IF([ENABLE_TCTI_DEVICE], [], 435 [AM_COND_IF([ENABLE_TCTI_MSSIM], [], 436 [AM_COND_IF([ENABLE_TCTI_FUZZING], [], 437 [AC_MSG_WARN("No build-in TCTI module enabled")])])]) 438 439AM_COND_IF([ENABLE_TCTI_FUZZING], [ 440 AM_COND_IF([ENABLE_TCTI_DEVICE], 441 AC_MSG_ERROR([Fuzzing TCTI is meant to be built as the only TCTI: use --disable-tcti-device --disable-tcti-mssim])) 442 AM_COND_IF([ENABLE_TCTI_MSSIM], 443 AC_MSG_ERROR([Fuzzing TCTI is meant to be built as the only TCTI: use --disable-tcti-device --disable-tcti-mssim])) 444 AS_IF([test "x$CC" != "xclang"], 445 AC_MSG_ERROR("Fuzzing TCTI can only be used with clang"), []) 446 ], []) 447 448AC_OUTPUT 449 450AC_MSG_RESULT([ 451 $PACKAGE_NAME $VERSION 452 esapi: $enable_esapi 453 fapi: $enable_fapi 454 tctidefaultmodule: $with_tctidefaultmodule 455 tctidefaultconfig: $with_tctidefaultconfig 456 unit: $enable_unit 457 fuzzing: $with_fuzzing 458 debug: $enable_debug 459 maxloglevel: $with_maxloglevel 460 doxygen: $DX_FLAG_doc $enable_doxygen_doc 461 tcti-device-async: $enable_tcti_device_async 462 tcti-partial-read: $enable_tcti_partial_reads 463 crypto backend: $with_crypto 464 sysconfdir: $sysconfdir 465 localstatedir: $localstatedir 466 runstatedir: $runstatedir 467 sysusersdir: $sysusersdir 468 tmpfilesdir: $tmpfilesdir 469 userstatedir: [\$HOME/]$with_userstatedir 470]) 471