1#*************************************************************************** 2# _ _ ____ _ 3# Project ___| | | | _ \| | 4# / __| | | | |_) | | 5# | (__| |_| | _ <| |___ 6# \___|\___/|_| \_\_____| 7# 8# Copyright (C) 1998 - 2013, Daniel Stenberg, <daniel@haxx.se>, et al. 9# 10# This software is licensed as described in the file COPYING, which 11# you should have received as part of this distribution. The terms 12# are also available at https://curl.haxx.se/docs/copyright.html. 13# 14# You may opt to use, copy, modify, merge, publish, distribute and/or sell 15# copies of the Software, and permit persons to whom the Software is 16# furnished to do so, under the terms of the COPYING file. 17# 18# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY 19# KIND, either express or implied. 20# 21#*************************************************************************** 22 23# File version for 'aclocal' use. Keep it a single number. 24# serial 19 25 26dnl CURL_CHECK_OPTION_THREADED_RESOLVER 27dnl ------------------------------------------------- 28dnl Verify if configure has been invoked with option 29dnl --enable-threaded-resolver or --disable-threaded-resolver, and 30dnl set shell variable want_thres as appropriate. 31 32AC_DEFUN([CURL_CHECK_OPTION_THREADED_RESOLVER], [ 33 AC_MSG_CHECKING([whether to enable the threaded resolver]) 34 OPT_THRES="default" 35 AC_ARG_ENABLE(threaded_resolver, 36AC_HELP_STRING([--enable-threaded-resolver],[Enable threaded resolver]) 37AC_HELP_STRING([--disable-threaded-resolver],[Disable threaded resolver]), 38 OPT_THRES=$enableval) 39 case "$OPT_THRES" in 40 yes) 41 dnl --enable-threaded-resolver option used 42 want_thres="yes" 43 ;; 44 *) 45 dnl configure option not specified 46 want_thres="no" 47 ;; 48 esac 49 AC_MSG_RESULT([$want_thres]) 50]) 51 52dnl CURL_CHECK_OPTION_ARES 53dnl ------------------------------------------------- 54dnl Verify if configure has been invoked with option 55dnl --enable-ares or --disable-ares, and 56dnl set shell variable want_ares as appropriate. 57 58AC_DEFUN([CURL_CHECK_OPTION_ARES], [ 59dnl AC_BEFORE([$0],[CURL_CHECK_OPTION_THREADS])dnl 60 AC_BEFORE([$0],[CURL_CHECK_LIB_ARES])dnl 61 AC_MSG_CHECKING([whether to enable c-ares for DNS lookups]) 62 OPT_ARES="default" 63 AC_ARG_ENABLE(ares, 64AC_HELP_STRING([--enable-ares@<:@=PATH@:>@],[Enable c-ares for DNS lookups]) 65AC_HELP_STRING([--disable-ares],[Disable c-ares for DNS lookups]), 66 OPT_ARES=$enableval) 67 case "$OPT_ARES" in 68 no) 69 dnl --disable-ares option used 70 want_ares="no" 71 ;; 72 default) 73 dnl configure option not specified 74 want_ares="no" 75 ;; 76 *) 77 dnl --enable-ares option used 78 want_ares="yes" 79 if test -n "$enableval" && test "$enableval" != "yes"; then 80 want_ares_path="$enableval" 81 fi 82 ;; 83 esac 84 AC_MSG_RESULT([$want_ares]) 85]) 86 87 88dnl CURL_CHECK_OPTION_CURLDEBUG 89dnl ------------------------------------------------- 90dnl Verify if configure has been invoked with option 91dnl --enable-curldebug or --disable-curldebug, and set 92dnl shell variable want_curldebug value as appropriate. 93 94AC_DEFUN([CURL_CHECK_OPTION_CURLDEBUG], [ 95 AC_BEFORE([$0],[CURL_CHECK_CURLDEBUG])dnl 96 AC_MSG_CHECKING([whether to enable curl debug memory tracking]) 97 OPT_CURLDEBUG_BUILD="default" 98 AC_ARG_ENABLE(curldebug, 99AC_HELP_STRING([--enable-curldebug],[Enable curl debug memory tracking]) 100AC_HELP_STRING([--disable-curldebug],[Disable curl debug memory tracking]), 101 OPT_CURLDEBUG_BUILD=$enableval) 102 case "$OPT_CURLDEBUG_BUILD" in 103 no) 104 dnl --disable-curldebug option used 105 want_curldebug="no" 106 AC_MSG_RESULT([no]) 107 ;; 108 default) 109 dnl configure's curldebug option not specified. Initially we will 110 dnl handle this as a a request to use the same setting as option 111 dnl --enable-debug. IOW, initially, for debug-enabled builds 112 dnl this will be handled as a request to enable curldebug if 113 dnl possible, and for debug-disabled builds this will be handled 114 dnl as a request to disable curldebug. 115 if test "$want_debug" = "yes"; then 116 AC_MSG_RESULT([(assumed) yes]) 117 else 118 AC_MSG_RESULT([no]) 119 fi 120 want_curldebug_assumed="yes" 121 want_curldebug="$want_debug" 122 ;; 123 *) 124 dnl --enable-curldebug option used. 125 dnl The use of this option value is a request to enable curl's 126 dnl debug memory tracking for the libcurl library. This can only 127 dnl be done when some requisites are simultaneously satisfied. 128 dnl Later on, these requisites are verified and if they are not 129 dnl fully satisfied the option will be ignored and act as if 130 dnl --disable-curldebug had been given setting shell variable 131 dnl want_curldebug to 'no'. 132 want_curldebug="yes" 133 AC_MSG_RESULT([yes]) 134 ;; 135 esac 136]) 137 138 139dnl CURL_CHECK_OPTION_DEBUG 140dnl ------------------------------------------------- 141dnl Verify if configure has been invoked with option 142dnl --enable-debug or --disable-debug, and set shell 143dnl variable want_debug value as appropriate. 144 145AC_DEFUN([CURL_CHECK_OPTION_DEBUG], [ 146 AC_BEFORE([$0],[CURL_CHECK_OPTION_WARNINGS])dnl 147 AC_BEFORE([$0],[CURL_CHECK_OPTION_CURLDEBUG])dnl 148 AC_BEFORE([$0],[XC_CHECK_PROG_CC])dnl 149 AC_MSG_CHECKING([whether to enable debug build options]) 150 OPT_DEBUG_BUILD="default" 151 AC_ARG_ENABLE(debug, 152AC_HELP_STRING([--enable-debug],[Enable debug build options]) 153AC_HELP_STRING([--disable-debug],[Disable debug build options]), 154 OPT_DEBUG_BUILD=$enableval) 155 case "$OPT_DEBUG_BUILD" in 156 no) 157 dnl --disable-debug option used 158 want_debug="no" 159 ;; 160 default) 161 dnl configure option not specified 162 want_debug="no" 163 ;; 164 *) 165 dnl --enable-debug option used 166 want_debug="yes" 167 ;; 168 esac 169 AC_MSG_RESULT([$want_debug]) 170]) 171 172dnl CURL_CHECK_OPTION_OPTIMIZE 173dnl ------------------------------------------------- 174dnl Verify if configure has been invoked with option 175dnl --enable-optimize or --disable-optimize, and set 176dnl shell variable want_optimize value as appropriate. 177 178AC_DEFUN([CURL_CHECK_OPTION_OPTIMIZE], [ 179 AC_REQUIRE([CURL_CHECK_OPTION_DEBUG])dnl 180 AC_BEFORE([$0],[XC_CHECK_PROG_CC])dnl 181 AC_MSG_CHECKING([whether to enable compiler optimizer]) 182 OPT_COMPILER_OPTIMIZE="default" 183 AC_ARG_ENABLE(optimize, 184AC_HELP_STRING([--enable-optimize],[Enable compiler optimizations]) 185AC_HELP_STRING([--disable-optimize],[Disable compiler optimizations]), 186 OPT_COMPILER_OPTIMIZE=$enableval) 187 case "$OPT_COMPILER_OPTIMIZE" in 188 no) 189 dnl --disable-optimize option used. We will handle this as 190 dnl a request to disable compiler optimizations if possible. 191 dnl If the compiler is known CFLAGS and CPPFLAGS will be 192 dnl overridden, otherwise this can not be honored. 193 want_optimize="no" 194 AC_MSG_RESULT([no]) 195 ;; 196 default) 197 dnl configure's optimize option not specified. Initially we will 198 dnl handle this as a a request contrary to configure's setting 199 dnl for --enable-debug. IOW, initially, for debug-enabled builds 200 dnl this will be handled as a request to disable optimizations if 201 dnl possible, and for debug-disabled builds this will be handled 202 dnl initially as a request to enable optimizations if possible. 203 dnl Finally, if the compiler is known and CFLAGS and CPPFLAGS do 204 dnl not have any optimizer flag the request will be honored, in 205 dnl any other case the request can not be honored. 206 dnl IOW, existing optimizer flags defined in CFLAGS or CPPFLAGS 207 dnl will always take precedence over any initial assumption. 208 if test "$want_debug" = "yes"; then 209 want_optimize="assume_no" 210 AC_MSG_RESULT([(assumed) no]) 211 else 212 want_optimize="assume_yes" 213 AC_MSG_RESULT([(assumed) yes]) 214 fi 215 ;; 216 *) 217 dnl --enable-optimize option used. We will handle this as 218 dnl a request to enable compiler optimizations if possible. 219 dnl If the compiler is known CFLAGS and CPPFLAGS will be 220 dnl overridden, otherwise this can not be honored. 221 want_optimize="yes" 222 AC_MSG_RESULT([yes]) 223 ;; 224 esac 225]) 226 227 228dnl CURL_CHECK_OPTION_SYMBOL_HIDING 229dnl ------------------------------------------------- 230dnl Verify if configure has been invoked with option 231dnl --enable-symbol-hiding or --disable-symbol-hiding, 232dnl setting shell variable want_symbol_hiding value. 233 234AC_DEFUN([CURL_CHECK_OPTION_SYMBOL_HIDING], [ 235 AC_BEFORE([$0],[CURL_CHECK_COMPILER_SYMBOL_HIDING])dnl 236 AC_MSG_CHECKING([whether to enable hiding of library internal symbols]) 237 OPT_SYMBOL_HIDING="default" 238 AC_ARG_ENABLE(symbol-hiding, 239AC_HELP_STRING([--enable-symbol-hiding],[Enable hiding of library internal symbols]) 240AC_HELP_STRING([--disable-symbol-hiding],[Disable hiding of library internal symbols]), 241 OPT_SYMBOL_HIDING=$enableval) 242 AC_ARG_ENABLE(hidden-symbols, 243AC_HELP_STRING([--enable-hidden-symbols],[To be deprecated, use --enable-symbol-hiding]) 244AC_HELP_STRING([--disable-hidden-symbols],[To be deprecated, use --disable-symbol-hiding]), 245 OPT_SYMBOL_HIDING=$enableval) 246 case "$OPT_SYMBOL_HIDING" in 247 no) 248 dnl --disable-symbol-hiding option used. 249 dnl This is an indication to not attempt hiding of library internal 250 dnl symbols. Default symbol visibility will be used, which normally 251 dnl exposes all library internal symbols. 252 want_symbol_hiding="no" 253 AC_MSG_RESULT([no]) 254 ;; 255 default) 256 dnl configure's symbol-hiding option not specified. 257 dnl Handle this as if --enable-symbol-hiding option was given. 258 want_symbol_hiding="yes" 259 AC_MSG_RESULT([yes]) 260 ;; 261 *) 262 dnl --enable-symbol-hiding option used. 263 dnl This is an indication to attempt hiding of library internal 264 dnl symbols. This is only supported on some compilers/linkers. 265 want_symbol_hiding="yes" 266 AC_MSG_RESULT([yes]) 267 ;; 268 esac 269]) 270 271 272dnl CURL_CHECK_OPTION_THREADS 273dnl ------------------------------------------------- 274dnl Verify if configure has been invoked with option 275dnl --enable-threads or --disable-threads, and 276dnl set shell variable want_threads as appropriate. 277 278dnl AC_DEFUN([CURL_CHECK_OPTION_THREADS], [ 279dnl AC_BEFORE([$0],[CURL_CHECK_LIB_THREADS])dnl 280dnl AC_MSG_CHECKING([whether to enable threads for DNS lookups]) 281dnl OPT_THREADS="default" 282dnl AC_ARG_ENABLE(threads, 283dnl AC_HELP_STRING([--enable-threads@<:@=PATH@:>@],[Enable threads for DNS lookups]) 284dnl AC_HELP_STRING([--disable-threads],[Disable threads for DNS lookups]), 285dnl OPT_THREADS=$enableval) 286dnl case "$OPT_THREADS" in 287dnl no) 288dnl dnl --disable-threads option used 289dnl want_threads="no" 290dnl AC_MSG_RESULT([no]) 291dnl ;; 292dnl default) 293dnl dnl configure option not specified 294dnl want_threads="no" 295dnl AC_MSG_RESULT([(assumed) no]) 296dnl ;; 297dnl *) 298dnl dnl --enable-threads option used 299dnl want_threads="yes" 300dnl want_threads_path="$enableval" 301dnl AC_MSG_RESULT([yes]) 302dnl ;; 303dnl esac 304dnl # 305dnl if test "$want_ares" = "assume_yes"; then 306dnl if test "$want_threads" = "yes"; then 307dnl AC_MSG_CHECKING([whether to ignore c-ares enabling assumed setting]) 308dnl AC_MSG_RESULT([yes]) 309dnl want_ares="no" 310dnl else 311dnl want_ares="yes" 312dnl fi 313dnl fi 314dnl if test "$want_threads" = "yes" && test "$want_ares" = "yes"; then 315dnl AC_MSG_ERROR([options --enable-ares and --enable-threads are mutually exclusive, at most one may be enabled.]) 316dnl fi 317dnl ]) 318 319dnl CURL_CHECK_OPTION_RT 320dnl ------------------------------------------------- 321dnl Verify if configure has been involed with option 322dnl --disable-rt and set shell variable dontwant_rt 323dnl as appropriate. 324 325AC_DEFUN([CURL_CHECK_OPTION_RT], [ 326 AC_BEFORE([$0], [CURL_CHECK_LIB_THREADS])dnl 327 AC_MSG_CHECKING([whether to disable dependency on -lrt]) 328 OPT_RT="default" 329 AC_ARG_ENABLE(rt, 330 AC_HELP_STRING([--disable-rt],[disable dependency on -lrt]), 331 OPT_RT=$enableval) 332 case "$OPT_RT" in 333 no) 334 dnl --disable-rt used (reverse logic) 335 dontwant_rt="yes" 336 AC_MSG_RESULT([yes]) 337 ;; 338 default) 339 dnl configure option not specified (so not disabled) 340 dontwant_rt="no" 341 AC_MSG_RESULT([(assumed no)]) 342 ;; 343 *) 344 dnl --enable-rt option used (reverse logic) 345 dontwant_rt="no" 346 AC_MSG_RESULT([no]) 347 ;; 348 esac 349 dnl TODO: may require mutual exclusion 350 if test "$dontwant_rt" = "yes" && test "$want_thres" = "yes" ; then 351 AC_MSG_ERROR([options --disable-rt and --enable-thread-resolver are mutually exclusive, at most one can be selected.]) 352 fi 353]) 354 355 356dnl CURL_CHECK_OPTION_WARNINGS 357dnl ------------------------------------------------- 358dnl Verify if configure has been invoked with option 359dnl --enable-warnings or --disable-warnings, and set 360dnl shell variable want_warnings as appropriate. 361 362AC_DEFUN([CURL_CHECK_OPTION_WARNINGS], [ 363 AC_REQUIRE([CURL_CHECK_OPTION_DEBUG])dnl 364 AC_BEFORE([$0],[CURL_CHECK_OPTION_WERROR])dnl 365 AC_BEFORE([$0],[XC_CHECK_PROG_CC])dnl 366 AC_MSG_CHECKING([whether to enable strict compiler warnings]) 367 OPT_COMPILER_WARNINGS="default" 368 AC_ARG_ENABLE(warnings, 369AC_HELP_STRING([--enable-warnings],[Enable strict compiler warnings]) 370AC_HELP_STRING([--disable-warnings],[Disable strict compiler warnings]), 371 OPT_COMPILER_WARNINGS=$enableval) 372 case "$OPT_COMPILER_WARNINGS" in 373 no) 374 dnl --disable-warnings option used 375 want_warnings="no" 376 ;; 377 default) 378 dnl configure option not specified, so 379 dnl use same setting as --enable-debug 380 want_warnings="$want_debug" 381 ;; 382 *) 383 dnl --enable-warnings option used 384 want_warnings="yes" 385 ;; 386 esac 387 AC_MSG_RESULT([$want_warnings]) 388]) 389 390dnl CURL_CHECK_OPTION_WERROR 391dnl ------------------------------------------------- 392dnl Verify if configure has been invoked with option 393dnl --enable-werror or --disable-werror, and set 394dnl shell variable want_werror as appropriate. 395 396AC_DEFUN([CURL_CHECK_OPTION_WERROR], [ 397 AC_BEFORE([$0],[CURL_CHECK_COMPILER])dnl 398 AC_MSG_CHECKING([whether to enable compiler warnings as errors]) 399 OPT_COMPILER_WERROR="default" 400 AC_ARG_ENABLE(werror, 401AC_HELP_STRING([--enable-werror],[Enable compiler warnings as errors]) 402AC_HELP_STRING([--disable-werror],[Disable compiler warnings as errors]), 403 OPT_COMPILER_WERROR=$enableval) 404 case "$OPT_COMPILER_WERROR" in 405 no) 406 dnl --disable-werror option used 407 want_werror="no" 408 ;; 409 default) 410 dnl configure option not specified 411 want_werror="no" 412 ;; 413 *) 414 dnl --enable-werror option used 415 want_werror="yes" 416 ;; 417 esac 418 AC_MSG_RESULT([$want_werror]) 419]) 420 421 422dnl CURL_CHECK_NONBLOCKING_SOCKET 423dnl ------------------------------------------------- 424dnl Check for how to set a socket into non-blocking state. 425 426AC_DEFUN([CURL_CHECK_NONBLOCKING_SOCKET], [ 427 AC_REQUIRE([CURL_CHECK_FUNC_FCNTL])dnl 428 AC_REQUIRE([CURL_CHECK_FUNC_IOCTL])dnl 429 AC_REQUIRE([CURL_CHECK_FUNC_IOCTLSOCKET])dnl 430 AC_REQUIRE([CURL_CHECK_FUNC_IOCTLSOCKET_CAMEL])dnl 431 AC_REQUIRE([CURL_CHECK_FUNC_SETSOCKOPT])dnl 432 # 433 tst_method="unknown" 434 435 AC_MSG_CHECKING([how to set a socket into non-blocking mode]) 436 if test "x$curl_cv_func_fcntl_o_nonblock" = "xyes"; then 437 tst_method="fcntl O_NONBLOCK" 438 elif test "x$curl_cv_func_ioctl_fionbio" = "xyes"; then 439 tst_method="ioctl FIONBIO" 440 elif test "x$curl_cv_func_ioctlsocket_fionbio" = "xyes"; then 441 tst_method="ioctlsocket FIONBIO" 442 elif test "x$curl_cv_func_ioctlsocket_camel_fionbio" = "xyes"; then 443 tst_method="IoctlSocket FIONBIO" 444 elif test "x$curl_cv_func_setsockopt_so_nonblock" = "xyes"; then 445 tst_method="setsockopt SO_NONBLOCK" 446 fi 447 AC_MSG_RESULT([$tst_method]) 448 if test "$tst_method" = "unknown"; then 449 AC_MSG_WARN([cannot determine non-blocking socket method.]) 450 fi 451]) 452 453 454dnl CURL_CONFIGURE_SYMBOL_HIDING 455dnl ------------------------------------------------- 456dnl Depending on --enable-symbol-hiding or --disable-symbol-hiding 457dnl configure option, and compiler capability to actually honor such 458dnl option, this will modify compiler flags as appropriate and also 459dnl provide needed definitions for configuration and Makefile.am files. 460dnl This macro should not be used until all compilation tests have 461dnl been done to prevent interferences on other tests. 462 463AC_DEFUN([CURL_CONFIGURE_SYMBOL_HIDING], [ 464 AC_MSG_CHECKING([whether hiding of library internal symbols will actually happen]) 465 CFLAG_CURL_SYMBOL_HIDING="" 466 doing_symbol_hiding="no" 467 if test x"$curl_cv_native_windows" != "xyes" && 468 test "$want_symbol_hiding" = "yes" && 469 test "$supports_symbol_hiding" = "yes"; then 470 doing_symbol_hiding="yes" 471 CFLAG_CURL_SYMBOL_HIDING="$symbol_hiding_CFLAGS" 472 AC_DEFINE_UNQUOTED(CURL_EXTERN_SYMBOL, $symbol_hiding_EXTERN, 473 [Definition to make a library symbol externally visible.]) 474 AC_MSG_RESULT([yes]) 475 else 476 AC_MSG_RESULT([no]) 477 fi 478 AM_CONDITIONAL(DOING_CURL_SYMBOL_HIDING, test x$doing_symbol_hiding = xyes) 479 AC_SUBST(CFLAG_CURL_SYMBOL_HIDING) 480]) 481 482 483dnl CURL_CHECK_LIB_ARES 484dnl ------------------------------------------------- 485dnl When c-ares library support has been requested, 486dnl performs necessary checks and adjustsments needed 487dnl to enable support of this library. 488 489AC_DEFUN([CURL_CHECK_LIB_ARES], [ 490 # 491 if test "$want_ares" = "yes"; then 492 dnl c-ares library support has been requested 493 clean_CPPFLAGS="$CPPFLAGS" 494 clean_LDFLAGS="$LDFLAGS" 495 clean_LIBS="$LIBS" 496 embedded_ares="unknown" 497 configure_runpath=`pwd` 498 embedded_ares_builddir="$configure_runpath/ares" 499 if test -n "$want_ares_path"; then 500 dnl c-ares library path has been specified 501 ares_CPPFLAGS="-I$want_ares_path/include" 502 ares_LDFLAGS="-L$want_ares_path/lib" 503 ares_LIBS="-lcares" 504 else 505 dnl c-ares library path has not been given 506 if test -d "$srcdir/ares"; then 507 dnl c-ares sources embedded in curl tree 508 embedded_ares="yes" 509 AC_CONFIG_SUBDIRS(ares) 510 dnl c-ares has installable configured header files, path 511 dnl inclusion fully done in makefiles for in-tree builds. 512 ares_CPPFLAGS="" 513 ares_LDFLAGS="-L$embedded_ares_builddir" 514 ares_LIBS="-lcares" 515 else 516 dnl c-ares path not specified, use defaults 517 ares_CPPFLAGS="" 518 ares_LDFLAGS="" 519 ares_LIBS="-lcares" 520 fi 521 fi 522 # 523 CPPFLAGS="$ares_CPPFLAGS $clean_CPPFLAGS" 524 LDFLAGS="$ares_LDFLAGS $clean_LDFLAGS" 525 LIBS="$ares_LIBS $clean_LIBS" 526 # 527 if test "$embedded_ares" != "yes"; then 528 dnl check if c-ares new enough when not using an embedded 529 dnl source tree one which normally has not been built yet. 530 AC_MSG_CHECKING([that c-ares is good and recent enough]) 531 AC_LINK_IFELSE([ 532 AC_LANG_PROGRAM([[ 533#include <ares.h> 534 /* set of dummy functions in case c-ares was built with debug */ 535 void curl_dofree() { } 536 void curl_sclose() { } 537 void curl_domalloc() { } 538 void curl_docalloc() { } 539 void curl_socket() { } 540 ]],[[ 541 ares_channel channel; 542 ares_cancel(channel); /* added in 1.2.0 */ 543 ares_process_fd(channel, 0, 0); /* added in 1.4.0 */ 544 ares_dup(&channel, channel); /* added in 1.6.0 */ 545 ]]) 546 ],[ 547 AC_MSG_RESULT([yes]) 548 ],[ 549 AC_MSG_RESULT([no]) 550 AC_MSG_ERROR([c-ares library defective or too old]) 551 dnl restore initial settings 552 CPPFLAGS="$clean_CPPFLAGS" 553 LDFLAGS="$clean_LDFLAGS" 554 LIBS="$clean_LIBS" 555 # prevent usage 556 want_ares="no" 557 ]) 558 fi 559 if test "$want_ares" = "yes"; then 560 dnl finally c-ares will be used 561 AC_DEFINE(USE_ARES, 1, [Define to enable c-ares support]) 562 AC_SUBST([USE_ARES], [1]) 563 curl_res_msg="c-ares" 564 fi 565 fi 566]) 567 568 569dnl CURL_CHECK_OPTION_NTLM_WB 570dnl ------------------------------------------------- 571dnl Verify if configure has been invoked with option 572dnl --enable-ntlm-wb or --disable-ntlm-wb, and set 573dnl shell variable want_ntlm_wb and want_ntlm_wb_file 574dnl as appropriate. 575 576AC_DEFUN([CURL_CHECK_OPTION_NTLM_WB], [ 577 AC_BEFORE([$0],[CURL_CHECK_NTLM_WB])dnl 578 OPT_NTLM_WB="default" 579 AC_ARG_ENABLE(ntlm-wb, 580AC_HELP_STRING([--enable-ntlm-wb@<:@=FILE@:>@],[Enable NTLM delegation to winbind's ntlm_auth helper, where FILE is ntlm_auth's absolute filename (default: /usr/bin/ntlm_auth)]) 581AC_HELP_STRING([--disable-ntlm-wb],[Disable NTLM delegation to winbind's ntlm_auth helper]), 582 OPT_NTLM_WB=$enableval) 583 want_ntlm_wb_file="/usr/bin/ntlm_auth" 584 case "$OPT_NTLM_WB" in 585 no) 586 dnl --disable-ntlm-wb option used 587 want_ntlm_wb="no" 588 ;; 589 default) 590 dnl configure option not specified 591 want_ntlm_wb="yes" 592 ;; 593 *) 594 dnl --enable-ntlm-wb option used 595 want_ntlm_wb="yes" 596 if test -n "$enableval" && test "$enableval" != "yes"; then 597 want_ntlm_wb_file="$enableval" 598 fi 599 ;; 600 esac 601]) 602 603 604dnl CURL_CHECK_NTLM_WB 605dnl ------------------------------------------------- 606dnl Check if support for NTLM delegation to winbind's 607dnl ntlm_auth helper will finally be enabled depending 608dnl on given configure options and target platform. 609 610AC_DEFUN([CURL_CHECK_NTLM_WB], [ 611 AC_REQUIRE([CURL_CHECK_OPTION_NTLM_WB])dnl 612 AC_REQUIRE([CURL_CHECK_NATIVE_WINDOWS])dnl 613 AC_MSG_CHECKING([whether to enable NTLM delegation to winbind's helper]) 614 if test "$curl_cv_native_windows" = "yes" || 615 test "x$SSL_ENABLED" = "x"; then 616 want_ntlm_wb_file="" 617 want_ntlm_wb="no" 618 fi 619 AC_MSG_RESULT([$want_ntlm_wb]) 620 if test "$want_ntlm_wb" = "yes"; then 621 AC_DEFINE(NTLM_WB_ENABLED, 1, 622 [Define to enable NTLM delegation to winbind's ntlm_auth helper.]) 623 AC_DEFINE_UNQUOTED(NTLM_WB_FILE, "$want_ntlm_wb_file", 624 [Define absolute filename for winbind's ntlm_auth helper.]) 625 NTLM_WB_ENABLED=1 626 fi 627]) 628 629