1dnl Process this file with autoconf to produce a configure script. 2 3dnl ######################################################################### 4dnl 5dnl This file is part of libESMTP, a library for submission of RFC 2822 6dnl formatted electronic mail messages using the SMTP protocol described 7dnl in RFC 2821. 8dnl 9dnl Copyright (C) 2001 Brian Stafford <brian@stafford.uklinux.net> 10dnl 11dnl This library is free software; you can redistribute it and/or 12dnl modify it under the terms of the GNU Lesser General Public 13dnl License as published by the Free Software Foundation; either 14dnl version 2.1 of the License, or (at your option) any later version. 15dnl 16dnl This library is distributed in the hope that it will be useful, 17dnl but WITHOUT ANY WARRANTY; without even the implied warranty of 18dnl MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 19dnl Lesser General Public License for more details. 20dnl 21dnl You should have received a copy of the GNU Lesser General Public 22dnl License along with this library; if not, write to the Free Software 23dnl Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 24dnl 25dnl ######################################################################### 26 27AC_INIT(smtp-api.c) 28AM_CONFIG_HEADER(config.h) 29AM_INIT_AUTOMAKE([libesmtp],[1.0.6]) 30AC_CANONICAL_HOST 31AC_CONFIG_MACRO_DIR([m4]) 32 33dnl ######################################################################### 34dnl Library versioning 35dnl ######################################################################### 36 37LIB_CURRENT=7 38LIB_REVISION=6 39LIB_AGE=1 40AC_SUBST(LIB_CURRENT) 41AC_SUBST(LIB_REVISION) 42AC_SUBST(LIB_AGE) 43 44LIBESMTP_VERSION="$LIB_CURRENT:$LIB_REVISION:$LIB_AGE" 45AC_SUBST(LIBESMTP_VERSION) 46subdirs= 47 48dnl ######################################################################### 49dnl Checks for programs. 50dnl ######################################################################### 51AC_PROG_CC 52AC_PROG_INSTALL 53AC_PROG_MAKE_SET 54AM_PROG_LIBTOOL 55 56dnl ######################################################################### 57dnl Miscellaneous stuff 58dnl ######################################################################### 59 60EXTRA_CFLAGS="" 61case $host_vendor-$host_os in 62sun*) 63 AC_DEFINE(__EXTENSIONS__,1,[Sun's netdb.h needs this for getaddrinfo]) 64 ;; 65osf*) 66 AC_DEFINE(_OSF_SOURCE,1,[OSF needs this for getaddrinfo]) 67 ;; 68*gnu*) 69 AC_DEFINE(_GNU_SOURCE,1,[GNU needs this for strcasecmp etc]) 70 ;; 71esac 72 73dnl ######################################################################### 74dnl turn warnings into errors to enforce clean code 75dnl ######################################################################### 76 77AC_ARG_ENABLE([more-warnings], 78 ACX_HELP_STRING([--enable-more-warnings=no/yes/picky],[additional compiler warnings (default=yes)]), 79 , 80 enable_more_warnings=yes) 81 82if test "$GCC" = "yes" -a "$enable_more_warnings" != "no"; then 83 EXTRA_CFLAGS="$EXTRA_CFLAGS \ 84 -Wall -Wchar-subscripts -Wmissing-declarations -Wmissing-prototypes \ 85 -Wstrict-prototypes -Wnested-externs -Wpointer-arith \ 86 -Wbad-function-cast -Wcast-align" 87fi 88if test "$GCC" = "yes" -a "$enable_more_warnings" = "picky"; then 89 EXTRA_CFLAGS="$EXTRA_CFLAGS -fno-builtin -W -Werror -Wwrite-strings \ 90 -Wcast-qual" 91fi 92 93AC_ARG_ENABLE([isoc], 94 ACX_HELP_STRING([--disable-isoc],[check ISO C compliance (default=c99)]), 95 , 96 enable_isoc=c99) 97if test "$enable_isoc" != "no"; then 98 if test "$GCC" = "yes"; then 99 CFLAGS="-std=$enable_isoc -pedantic $CFLAGS" 100 fi 101 AC_DEFINE(_ISOC9X_SOURCE,1,[ISO compliant code]) 102 AC_DEFINE(_ISOC99_SOURCE,1,[ISO compliant code]) 103 AC_DEFINE(_POSIX_C_SOURCE,199506L,[POSIX compliant code]) 104 AC_DEFINE(_XOPEN_SOURCE,500,[Single Unix conformance]) 105fi 106 107dnl ######################################################################### 108dnl Checks for libraries and options. 109dnl ######################################################################### 110 111AC_ARG_ENABLE([all],ACX_HELP_STRING([--enable-all], [convenience: enable all experimental features]), 112 , 113 enable_all=no) 114 115dnl ######################################################################### 116dnl Check whether to use SUS functions or libltdl for loading plugins. 117dnl ######################################################################### 118 119have_dl=no 120AC_SEARCH_LIBS(dlsym, dl svdl, [ 121 AC_DEFINE([HAVE_DLSYM],1,[the dlsym() function is available]) 122 have_dl=yes 123]) 124if test x$have_dl = xno ; then 125dnl # WARNING: I don't know what libraries ltdl depends on. I just assume 126dnl # that if the punter asks for it, then it must be properly 127dnl # installed and the dynamic linker will sort the dependencies 128dnl # at link time. 129 130 AC_SEARCH_LIBS(lt_dlsym, ltdl, 131 have_dl=yes, 132 AC_MSG_ERROR([libltdl not found (available from http://www.gnu.org/software/libtool/)]) 133 ) 134fi 135 136dnl ######################################################################### 137dnl Check if using Posix Threads 138dnl ######################################################################### 139 140AC_ARG_ENABLE([pthreads], 141 ACX_HELP_STRING([--enable-pthreads], [build with support for Posix threads (default=auto)]), 142 , 143 enable_pthreads=auto) 144 145if test x"$enable_pthreads" != xno ; then 146 ACX_PTHREAD(enable_pthreads=yes, 147 if test x"$enable_pthreads" = xyes ; then 148 AC_MSG_ERROR([Cannot find the pthread library.]) 149 else 150 enable_pthreads=no 151 fi 152 ) 153fi 154 155AC_MSG_CHECKING(whether to use Posix Threads) 156if test x"$enable_pthreads" != xno ; then 157 CFLAGS="$PTHREAD_CFLAGS $CFLAGS" 158 LDFLAGS="$PTHREAD_LDFLAGS $LDFLAGS" 159 LIBS="$PTHREAD_LIBS $LIBS" 160 CC="$PTHREAD_CC" 161 AC_DEFINE([USE_PTHREADS],1,[Build with support for Posix threading]) 162 AC_MSG_RESULT([yes]) 163else 164 AC_MSG_RESULT([no]) 165fi 166 167dnl ######################################################################### 168dnl Check if Posix getaddrinfo() is available. It is also possible to use 169dnl the version from the lwres library distributed with BIND. 170dnl ######################################################################### 171AC_ARG_ENABLE([emulate-getaddrinfo], 172 ACX_HELP_STRING([--enable-emulate-getaddrinfo], 173 [enable getaddrinfo emulation (default=no)]), 174 , 175 enable_emulate_getaddrinfo=no) 176AC_ARG_WITH(lwres, 177 ACX_HELP_STRING([--with-lwres=DIR], 178 [use lwres library for getaddrinfo (default=no)]), 179 , 180 with_lwres=no) 181 182dnl ## enable force to test getaddrinfo.c 183if test x$enable_emulate_getaddrinfo = xforce ; then 184 enable_emulate_getaddrinfo=yes 185 have_getaddrinfo=no 186else 187 188have_getaddrinfo=no 189if test x$with_lwres != xno ; then 190 if test "$with_lwres" != yes ; then 191 CPPFLAGS="-I${with_lwres}/include $CPPFLAGS" 192 LDFLAGS="-L${with_lwres}/lib $LDFLAGS" 193 fi 194 AC_CHECK_HEADERS(lwres/netdb.h, , 195 [AC_MSG_ERROR([cannot find <lwres/netdb.h>])]) 196 AC_CHECK_LIB(lwres, lwres_getaddrinfo, , 197 [AC_MSG_ERROR([cannot find the lwres library])], 198 -lnsl -lpthread) 199 have_getaddrinfo=yes 200fi 201 202if test x$have_getaddrinfo != xyes ; then 203 AC_SEARCH_LIBS(getaddrinfo, socket resolv bind nsl c_r cr, have_getaddrinfo=yes) 204fi 205 206dnl # Special nonsense for systems that actually have getaddrinfo but 207dnl # redefine the name to something else, e.g. OSF 208if test x$have_getaddrinfo != xyes ; then 209 AC_MSG_CHECKING(if getaddrinfo is redefined in netdb.h) 210 AC_TRY_LINK([ 211# include <netdb.h> 212 ], [ 213 struct addrinfo hints, *res; 214 int err; 215 216 err = getaddrinfo ("host", "service", &hints, &res); 217 ], [ 218 have_getaddrinfo=yes 219 AC_MSG_RESULT(yes) 220 ], [AC_MSG_RESULT(no)]) 221fi 222 223fi 224 225if test x$have_getaddrinfo != xno ; then 226 if test x$enable_emulate_getaddrinfo != xno ; then 227 AC_MSG_ERROR([getaddrinfo found but emulate-getaddrinfo was enabled]) 228 fi 229 AC_DEFINE(HAVE_GETADDRINFO, 1, 230 [Does system provide RFC 2553/Posix getaddrinfo?]) 231else 232 if test x$enable_emulate_getaddrinfo != xyes ; then 233 AC_MSG_ERROR([getaddrinfo not found: try --with-lwres or --enable-emulate-getaddrinfo]) 234 fi 235 AC_LIBOBJ(getaddrinfo) 236fi 237 238if test x"$enable_emulate_getaddrinfo" != xno ; then 239 have_resolver=no 240 241 dnl Try for getipnodebyname 242 AC_SEARCH_LIBS(getipnodebyname, resolv bind nsl c_r cr, have_resolver=yes) 243 if test x"$have_resolver" != xno ; then 244 AC_DEFINE(HAVE_GETIPNODEBYNAME, 1, 245 [Set when getipnodebyname is available]) 246 fi 247 248 dnl Try for gethostbyname_r 249 if test x"$have_resolver" = xno ; then 250 AC_SEARCH_LIBS(gethostbyname_r, resolv bind nsl c_r cr, 251 [have_resolver=yes 252 ACX_WHICH_GETHOSTBYNAME_R]) 253 fi 254 255 dnl Try for gethostbyname 256 if test x"$have_resolver" = xno ; then 257 if test x"$enable_pthreads" != xno ; then 258 AC_MSG_WARN([using threads but cannot find gethostbyname_r or getipnodebyname]) 259 fi 260 AC_SEARCH_LIBS(gethostbyname, resolv bind nsl, , 261 [AC_MSG_ERROR([cannot find gethostbyname])]) 262 fi 263 AC_LIBOBJ(gethostbyname) 264 265 AC_CACHE_CHECK([for IPv6 support], acx_cv_sys_use_ipv6, [ 266 AC_TRY_COMPILE([ 267# include <netinet/in.h> 268 ], [ 269 struct sockaddr_in6 sin6; 270 void *p; 271 272 sin6.sin6_family = AF_INET6; 273 sin6.sin6_port = 587; 274 p = &sin6.sin6_addr; 275 ], [acx_cv_sys_use_ipv6=yes], [acx_cv_sys_use_ipv6=no]) 276 ]) 277 if test x"$acx_cv_sys_use_ipv6" != xno ; then 278 AC_DEFINE(USE_IPV6,1,[Enable IPv6 support]) 279 fi 280fi 281 282dnl ######################################################################### 283dnl Check if using OpenSSL 284dnl ######################################################################### 285AC_ARG_WITH(openssl, 286 ACX_HELP_STRING([--with-openssl=DIR], 287 [build features depending on OpenSSL (default=auto)]), 288 , 289 with_openssl=auto) 290if test x$with_openssl != xno ; then 291 if test "$with_openssl" != yes -a "$with_openssl" != auto ; then 292 CPPFLAGS="-I${with_openssl}/include $CPPFLAGS" 293 LDFLAGS="-L${with_openssl}/lib $LDFLAGS" 294 with_openssl=yes 295 fi 296 dnl *** with_openssl is either "yes" or "auto" 297 AC_CHECK_HEADER(openssl/ssl.h,, 298 if test x"$with_openssl" = xyes ; then 299 AC_MSG_ERROR([cannot find the ssl headers]) 300 else 301 with_openssl=no 302 fi 303 ) 304fi 305if test x$with_openssl != xno ; then 306 AC_CHECK_LIB(ssl, SSL_new, [ 307 with_openssl=yes 308 LIBS="-lssl -lcrypto $LIBS" 309 ], [ 310 if test x"$with_openssl" = xyes ; then 311 AC_MSG_ERROR([cannot find the ssl library]) 312 else 313 with_openssl=no 314 fi], 315 -lcrypto 316 ) 317fi 318 319dnl ######################################################################### 320dnl Set OpenSSL dependencies for RPM - this sucks, there must be a better way. 321dnl ######################################################################### 322 323RPM_REQUIRES="" 324RPM_BUILDREQUIRES="" 325RPM_OPENSSL="" 326RPM_OPENSSLDEVEL="" 327if test x$with_openssl != xno ; then 328 RPM_REQUIRES="Requires:" 329 RPM_BUILDREQUIRES="BuildRequires:" 330 RPM_OPENSSL="openssl >= %{openssl}" 331 RPM_OPENSSLDEVEL="openssl-devel >= %{openssl}" 332fi 333AC_SUBST(RPM_REQUIRES) 334AC_SUBST(RPM_BUILDREQUIRES) 335AC_SUBST(RPM_OPENSSL) 336AC_SUBST(RPM_OPENSSLDEVEL) 337 338dnl ######################################################################### 339dnl Check if using SMTP AUTH using SASL 340dnl ######################################################################### 341 342dnl Force use of SMTP AUTH for now. Eventually it is hoped that 343dnl the SASL API will move into a library of its own. 344 345AC_DEFINE(USE_SASL,1,[Build with support for SMTP AUTH using SASL]) 346SASL_PLUGINS="login plain crammd5" 347DIST_PLUGINS="login plain crammd5" 348 349dnl Set up the authentication plugin directory 350 351AC_ARG_WITH(auth-plugin-dir, 352 ACX_HELP_STRING([--with-auth-plugin-dir=DIR], 353 [directory for SASL plugins (default=LIBDIR/esmtp-plugins)]), 354 plugindir=$withval) 355if test x$plugindir = x ; then 356 plugindir=$libdir/esmtp-plugins 357fi 358AC_SUBST(plugindir) 359ACX_DEFINE_DIR([AUTHPLUGINDIR], $plugindir, [location of authentication plugins.]) 360 361have_libcrypto=no 362 363dnl Check for md5 functions in OpenSSL. If these are present, use them 364dnl in preference to the supplied md5.[ch] when building the CRAM-MD5 365dnl SASL plugin. The assumption is that the OpenSSL functions are optimised 366dnl and actively maintained. 367 368use_local_md5_c=yes 369CRAMMD5_LIBOBJS="" 370if test x$with_openssl != xno ; then 371 AC_CHECK_HEADER(openssl/md5.h, [ 372 AC_CHECK_LIB(crypto, MD5_Init, [ 373 have_libcrypto=yes 374 use_local_md5_c=no 375 CRAMMD5_LIBS="-lcrypto" 376 AC_SUBST(CRAMMD5_LIBS) 377 ]) 378 ]) 379fi 380if test x$use_local_md5_c != xno ; then 381 CRAMMD5_LIBOBJS="$CRAMMD5_LIBOBJS md5.o" 382fi 383CRAMMD5_LTLIBOBJS=`echo "$CRAMMD5_LIBOBJS" | sed ['s/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/']` 384AC_SUBST(CRAMMD5_LTLIBOBJS) 385 386dnl Check if enabling experimental NTLM authentication. This requires that 387dnl OpenSSL is available and that it is explicitly requested. 388 389AC_ARG_ENABLE([ntlm], 390 ACX_HELP_STRING([--enable-ntlm],[experimental support for NTLM authentication (default=no)]), 391 , 392 enable_ntlm=$enable_all) 393DIST_PLUGINS="$DIST_PLUGINS ntlm" 394 395AC_MSG_CHECKING(whether to enable NTLM authentication) 396if test x$with_openssl != xno -a x"$enable_ntlm" = xyes ; then 397 AC_MSG_RESULT([yes]) 398 AC_CHECK_HEADER(openssl/md4.h, [ 399 AC_CHECK_LIB(crypto, MD4_Init, [ 400 have_libcrypto=yes 401 SASL_PLUGINS="$SASL_PLUGINS ntlm" 402 NTLM_LIBS="-lcrypto" 403 AC_SUBST(NTLM_LIBS) 404 ]) 405 ]) 406else 407 AC_MSG_RESULT([no]) 408fi 409 410if test x$have_libcrypto != xno ; then 411 AC_DEFINE(HAVE_LIBCRYPTO,1,[Set when -lcrypto from OpenSSL is available]) 412fi 413 414dnl ######################################################################### 415dnl Check if enabling STARTTLS 416dnl ######################################################################### 417 418AC_MSG_CHECKING(whether to enable STARTTLS) 419if test x"$with_openssl" != xno ; then 420 AC_MSG_RESULT([yes]) 421 AC_DEFINE(USE_TLS,1,[Build with support for SMTP STARTTLS extension]) 422else 423 AC_MSG_RESULT([no]) 424fi 425 426dnl ######################################################################### 427dnl Enable CHUNKING 428dnl ######################################################################### 429 430AC_ARG_ENABLE([chunking], 431 ACX_HELP_STRING([--disable-chunking],[support for CHUNKING (default=yes)]), 432 , 433 enable_chunking=yes) 434 435AC_MSG_CHECKING(whether to enable CHUNKING) 436if test x"$enable_chunking" = xyes ; then 437 AC_MSG_RESULT([yes]) 438 AC_DEFINE(USE_CHUNKING,1,[Enable experimental support for SMTP CHUNKING extension]) 439else 440 AC_MSG_RESULT([no]) 441fi 442 443dnl ######################################################################### 444dnl Enable ETRN (experimental) 445dnl ######################################################################### 446 447AC_ARG_ENABLE([etrn], 448 ACX_HELP_STRING([--enable-etrn],[experimental support for ETRN (default=no)]), 449 , 450 enable_etrn=$enable_all) 451 452AC_MSG_CHECKING(whether to enable ETRN) 453if test x"$enable_etrn" = xyes ; then 454 AC_MSG_RESULT([yes]) 455 AC_DEFINE(USE_ETRN,1,[Enable experimental support for SMTP ETRN extension]) 456else 457 AC_MSG_RESULT([no]) 458fi 459 460dnl ######################################################################### 461dnl Enable XUSR 462dnl ######################################################################### 463 464AC_ARG_ENABLE([xusr], 465 ACX_HELP_STRING([--disable-xusr], 466 [support for sendmail XUSR extension (default=yes)]), 467 , 468 enable_xusr=yes) 469 470AC_MSG_CHECKING(whether to enable sendmail XUSR) 471if test x"$enable_xusr" = xyes ; then 472 AC_MSG_RESULT([yes]) 473 AC_DEFINE(USE_XUSR,1,[Enable support for sendmail XUSR extension]) 474else 475 AC_MSG_RESULT([no]) 476fi 477 478dnl ######################################################################### 479dnl Enable non-standard AUTH= syntax in EHLO response 480dnl ######################################################################### 481 482AC_ARG_ENABLE([nsauth], 483 ACX_HELP_STRING([--disable-nsauth], 484 [support non-standard EHLO AUTH= response (default=yes)]), 485 , 486 enable_nsauth=yes) 487 488AC_MSG_CHECKING([whether to enable non-standard EHLO AUTH= response]) 489if test x"$enable_nsauth" = xyes ; then 490 AC_MSG_RESULT([yes]) 491 AC_DEFINE(AUTH_ID_HACK,1,[support non-standard EHLO AUTH= response]) 492else 493 AC_MSG_RESULT([no]) 494fi 495 496dnl ######################################################################### 497dnl Enable debugging code, e.g. assert() 498dnl ######################################################################### 499 500AC_ARG_ENABLE([debug], 501 ACX_HELP_STRING([--enable-debug], 502 [enable use of debugging code (default=no)]), 503 , 504 enable_debug=no) 505 506if test x"$enable_debug" != xno ; then 507 AC_DEFINE(DEBUG,1, [Enable additional debugging code]) 508else 509 AC_DEFINE(NDEBUG,1, [Disable assertions]) 510fi 511 512dnl ######################################################################### 513dnl Checks for header files. 514dnl ######################################################################### 515 516AC_HEADER_STDC 517AC_CHECK_HEADERS(sys/ioctl.h unistd.h) 518 519dnl ######################################################################### 520dnl Checks for typedefs, structures, and compiler characteristics. 521dnl ######################################################################### 522 523AC_C_CONST 524AC_C_INLINE 525AC_C_BIGENDIAN 526AC_STRUCT_TM 527AC_HEADER_TIME 528AC_STRUCT_TIMEZONE 529 530dnl ######################################################################### 531dnl Check for types 532dnl ######################################################################### 533AC_CHECK_SIZEOF(unsigned short) 534AC_CHECK_SIZEOF(unsigned int) 535AC_CHECK_SIZEOF(unsigned long) 536 537dnl ######################################################################### 538dnl Checks for library functions. 539dnl ######################################################################### 540 541AC_REPLACE_FUNCS(strdup strcasecmp strncasecmp memrchr) 542AC_CHECK_FUNCS(strtol uname gethostname gettimeofday) 543AC_SEARCH_LIBS(socket, socket) 544 545dnl Conditional check for functions needed in threaded code 546 547if test x"$enable_pthreads" != xno ; then 548 AC_SEARCH_LIBS(localtime_r, c_r cr, 549 AC_DEFINE(HAVE_LOCALTIME_R,1,[Set when localtime_r is available]), 550 AC_MSG_ERROR([Cannot find localtime_r.])) 551 AC_CHECK_FUNCS(strerror_r,[ 552 AC_CACHE_CHECK([for working strerror_r], 553 acx_cv_sys_working_strerror_r, [ 554 AC_TRY_COMPILE([ 555# define _SVID_SOURCE 1 556# include <string.h> 557 ], [ 558 char *s; 559 560 s = strerror_r (0, (char *) 0, 0); 561 ], 562 [acx_cv_sys_working_strerror_r=yes], 563 [acx_cv_working_strerror_r=no]) 564 ]) 565 if test x$acx_cv_sys_working_strerror_r = xyes ; then 566 AC_DEFINE(HAVE_WORKING_STRERROR_R,1,[strerror_r works!]) 567 fi 568 ]) 569else 570 AC_CHECK_FUNCS(localtime strerror) 571fi 572 573dnl ######################################################################### 574dnl Check that snprintf works correctly. 575dnl ######################################################################### 576ACX_SNPRINTF(,[AC_LIBOBJ(snprintf)]) 577 578dnl ######################################################################### 579dnl Make substitutions 580dnl ######################################################################### 581 582AC_SUBST(SASL_PLUGINS) 583AC_SUBST(DIST_PLUGINS) 584AC_SUBST(LIBTOOL_DEPS) 585AC_SUBST(LIBS) 586AC_SUBST(CFLAGS) 587AC_SUBST(EXTRA_CFLAGS) 588AC_SUBST(CC) 589AC_SUBST(RANLIB) 590AC_SUBST(subdirs) 591 592dnl ## LTLIBOBJS=`echo "$LIBOBJS" | sed ['s/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/']` 593AC_SUBST(LTLIBOBJS) 594LTALLOCA=`echo "$ALLOCA" | sed ['s/\.[^.]* /.lo /g;s/\.[^.]*$/.lo/']` 595AC_SUBST(LTALLOCA) 596 597AC_OUTPUT([libesmtp-config libesmtp.spec 598 Makefile login/Makefile plain/Makefile crammd5/Makefile ntlm/Makefile]) 599 600dnl ######################################################################### 601dnl Feature synopsis 602dnl ######################################################################### 603 604echo 605echo '*************************' 606echo '*** libESMTP features ***' 607echo '*************************' 608d=`eval echo $plugindir` 609ACX_FEATURE([with],[auth-plugin-dir],[`eval echo $d`]) 610ACX_FEATURE([with],[lwres]) 611ACX_FEATURE([with],[openssl]) 612ACX_FEATURE([enable],[pthreads]) 613ACX_FEATURE([enable],[etrn]) 614ACX_FEATURE([enable],[ntlm]) 615ACX_FEATURE([enable],[chunking]) 616ACX_FEATURE([enable],[xusr]) 617ACX_FEATURE([enable],[nsauth]) 618ACX_FEATURE([enable],[debug]) 619 620