Annotation of embedaddon/lighttpd/configure.ac, revision 1.1.1.2.2.1

1.1       misho       1: dnl                                               -*- Autoconf -*-
                      2: dnl Process this file with autoconf to produce a configure script.
                      3: AC_PREREQ(2.57)
1.1.1.2   misho       4: AC_INIT([lighttpd], [1.4.35], [contact@lighttpd.net])
1.1       misho       5: AC_CONFIG_SRCDIR([src/server.c])
                      6: AC_CONFIG_HEADER([config.h])
                      7: AC_CONFIG_MACRO_DIR([m4])
                      8: 
                      9: AC_CANONICAL_TARGET
                     10: 
                     11: dnl HOW FUCKING BROKEN IS AUTOMAKE...
                     12: dnl serial-tests is not recognized before 1.12, and required for serial tests with 1.13, sane version checks "impossible"
                     13: dnl if you don't use the default (symlinked) automake on your box, set AUTOMAKE to the path you're using
                     14: m4_define([serial_tests], [
                     15:     m4_esyscmd([case `${AUTOMAKE:-automake} --version | head -n 1` in
                     16:       *1.11.*|*1.10.*|*1.9.*);;
                     17:       *) echo serial-tests;;
                     18:       esac])
                     19: ])
                     20: 
                     21: AM_INIT_AUTOMAKE([-Wall -Wno-portability -Wno-override foreign dist-bzip2 tar-ustar] serial_tests)
                     22: 
                     23: dnl enable with --enable-silent-rules or make V=0 (needs automake >= 1.11)
                     24: m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES])
                     25: 
                     26: dnl Checks for programs.
                     27: AC_PROG_CC
                     28: AM_PROG_CC_C_O
1.1.1.2.2.1! misho      29: AM_PROG_AR
1.1       misho      30: AC_PROG_LD
                     31: AC_PROG_INSTALL
                     32: AC_PROG_AWK
                     33: AC_PROG_CPP
                     34: dnl AC_PROG_CXX
                     35: AC_PROG_LN_S
                     36: AC_PROG_MAKE_SET
                     37: 
                     38: dnl AM_PROG_AR is needed for some linker stuff
                     39: dnl AC_USE_SYSTEM_EXTENSIONS requires autoconf 2.60
                     40: m4_ifdef([AC_USE_SYSTEM_EXTENSIONS], [AC_USE_SYSTEM_EXTENSIONS])
                     41: dnl AM_PROG_AR requires automake 1.11 (and uses AC_COMPILE_IFELSE which wants AC_USE_SYSTEM_EXTENSIONS)
                     42: m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
                     43: 
                     44: dnl AC_CANONICAL_HOST
                     45: case $host_os in
                     46:        *darwin*|*cygwin*|*aix*|*mingw* ) NO_RDYNAMIC=yes;;
                     47:        * ) NO_RDYNAMIC=no;;
                     48: esac
                     49: AM_CONDITIONAL(NO_RDYNAMIC, test x$NO_RDYNAMIC = xyes)
                     50: 
                     51: AC_EXEEXT
                     52: 
                     53: dnl libtool
                     54: AC_DISABLE_STATIC
                     55: AC_ENABLE_SHARED
                     56: 
                     57: AC_LIBTOOL_DLOPEN
                     58: AC_PROG_LIBTOOL
                     59: 
                     60: dnl for solaris
                     61: CPPFLAGS="${CPPFLAGS} -D_REENTRANT -D__EXTENSIONS__"
                     62: 
                     63: dnl Checks for header files.
                     64: AC_HEADER_STDC
                     65: AC_HEADER_SYS_WAIT
                     66: AC_CHECK_HEADERS([arpa/inet.h fcntl.h netinet/in.h stdlib.h string.h \
                     67: sys/socket.h sys/time.h unistd.h sys/sendfile.h sys/uio.h \
                     68: getopt.h sys/epoll.h sys/select.h poll.h sys/poll.h sys/devpoll.h sys/filio.h \
                     69: sys/mman.h sys/event.h port.h pwd.h sys/syslimits.h \
                     70: sys/resource.h sys/un.h syslog.h sys/prctl.h uuid/uuid.h])
                     71: 
                     72: dnl Checks for typedefs, structures, and compiler characteristics.
                     73: AC_C_CONST
                     74: AC_C_INLINE
                     75: AC_C_CHAR_UNSIGNED
                     76: AC_TYPE_OFF_T
                     77: AC_TYPE_PID_T
                     78: AC_TYPE_SIZE_T
                     79: 
                     80: AC_CHECK_MEMBER(struct tm.tm_gmtoff,[AC_DEFINE([HAVE_STRUCT_TM_GMTOFF],[1],[gmtoff in struct tm])],,[#include <time.h>])
                     81: AC_CHECK_TYPES(struct sockaddr_storage,,,[#include <sys/socket.h>])
                     82: AC_CHECK_TYPES(socklen_t,,,[#include <sys/types.h>
                     83: #include <sys/socket.h>])
                     84: 
                     85: dnl Checks for library functions.
                     86: AC_FUNC_FORK
                     87: dnl AC_FUNC_MALLOC
                     88: dnl AC_FUNC_MMAP
                     89: dnl AC_FUNC_REALLOC
                     90: AC_TYPE_SIGNAL
                     91: AC_FUNC_STAT
                     92: AC_FUNC_STRFTIME
                     93: AC_CHECK_FUNCS([issetugid inet_pton])
                     94: 
                     95: if test -z "$PKG_CONFIG"; then
                     96:   AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
                     97: fi
                     98: 
                     99: dnl checking for libev
                    100: AC_MSG_CHECKING(for libev support)
                    101: AC_ARG_WITH(libev,
                    102:     AC_HELP_STRING([--with-libev@<:@=PATH@:>@],[Include libev support for fdevent handlers in PATH/include and PATH/lib]),
                    103:     [WITH_LIBEV=$withval],[WITH_LIBEV=no])
                    104: 
                    105: LIBEV_CFLAGS=""
                    106: LIBEV_LIBS=""
                    107: 
                    108: if test "$WITH_LIBEV" != "no"; then
                    109:        PKG_CHECK_MODULES(LIBEV, libev, [], [
                    110:                dnl no pkg-config for libev, searching manually:
                    111: 
                    112:                if test "$WITH_LIBEV" != "yes"; then
                    113:                        LIBEV_CFLAGS="-I$WITH_LIBEV/include"
                    114:                        LIBEV_LIBS="-L$WITH_LIBEV/lib -lev"
                    115:                else
                    116:                        AC_CHECK_HEADERS([ev.h],[
                    117:                                AC_CHECK_LIB([ev], [ev_time], [
                    118:                                                LIBEV_CFLAGS=""
                    119:                                                LIBEV_LIBS="-lev"
                    120:                                        ],[
                    121:                                        AC_MSG_ERROR([libev not found])
                    122:                                        ]
                    123:                                )],[
                    124:                                        AC_MSG_ERROR([libev not found])
                    125:                                ]
                    126:                        )
                    127:                fi
                    128:        ])
                    129: 
                    130:        AC_DEFINE([HAVE_LIBEV], [1], [libev support])
                    131: fi
                    132: 
                    133: AC_SUBST(LIBEV_CFLAGS)
                    134: AC_SUBST(LIBEV_LIBS)
                    135: 
                    136: dnl Checks for database.
                    137: MYSQL_INCLUDE=""
                    138: MYSQL_LIBS=""
                    139: 
                    140: AC_MSG_CHECKING(for MySQL support)
                    141: AC_ARG_WITH(mysql,
                    142:     AC_HELP_STRING([--with-mysql@<:@=PATH@:>@],[Include MySQL support. PATH is the path to 'mysql_config']),
                    143:     [WITH_MYSQL=$withval],[WITH_MYSQL=no])
                    144: 
                    145: if test "$WITH_MYSQL" != "no"; then
                    146:   AC_MSG_RESULT(yes)
                    147:   if test "$WITH_MYSQL" = "yes"; then
                    148:     AC_PATH_PROG(MYSQL_CONFIG, mysql_config)
                    149:   else
                    150:     MYSQL_CONFIG=$WITH_MYSQL
                    151:   fi
                    152: 
                    153:   if test "$MYSQL_CONFIG" = ""; then
                    154:     AC_MSG_ERROR(mysql_config is not found)
                    155:   fi
                    156:   if test \! -x $MYSQL_CONFIG; then
                    157:     AC_MSG_ERROR(mysql_config not exists or not executable, use --with-mysql=path-to-mysql_config)
                    158:   fi
                    159: 
                    160:   if $MYSQL_CONFIG | grep -- '--include' > /dev/null ; then
                    161:     MYSQL_INCLUDE="`$MYSQL_CONFIG --include | sed s/\'//g`"
                    162:   else
                    163:     MYSQL_INCLUDE="`$MYSQL_CONFIG --cflags | sed s/\'//g`"
                    164:   fi
                    165:   MYSQL_LIBS="`$MYSQL_CONFIG --libs | sed s/\'//g`"
                    166: 
                    167:   AC_MSG_CHECKING(for MySQL includes at)
                    168:   AC_MSG_RESULT($MYSQL_INCLUDE)
                    169: 
                    170:   AC_MSG_CHECKING(for MySQL libraries at)
                    171:   AC_MSG_RESULT($MYSQL_LIBS)
                    172: dnl check for errmsg.h, which isn't installed by some versions of 3.21
                    173:   old_CPPFLAGS="$CPPFLAGS"
                    174:   CPPFLAGS="$CPPFLAGS $MYSQL_INCLUDE"
                    175:   AC_CHECK_HEADERS(errmsg.h mysql.h)
                    176:   CPPFLAGS="$old_CPPFLAGS"
                    177: 
                    178:   AC_DEFINE([HAVE_MYSQL], [1], [mysql support])
                    179: else
                    180:   AC_MSG_RESULT(no)
                    181: fi
                    182: 
                    183: AC_SUBST(MYSQL_LIBS)
                    184: AC_SUBST(MYSQL_INCLUDE)
                    185: 
                    186: dnl Check for LDAP
                    187: AC_MSG_CHECKING(for LDAP support)
                    188: AC_ARG_WITH(ldap, AC_HELP_STRING([--with-ldap],[enable LDAP support]),
                    189: [WITH_LDAP=$withval], [WITH_LDAP=no])
                    190: AC_MSG_RESULT([$withval])
                    191: if test "$WITH_LDAP" != "no"; then
                    192:  AC_CHECK_LIB(ldap, ldap_bind, [
                    193:   AC_CHECK_HEADERS([ldap.h],[
                    194:     LDAP_LIB=-lldap
                    195:     AC_DEFINE([HAVE_LIBLDAP], [1], [libldap])
                    196:     AC_DEFINE([HAVE_LDAP_H], [1])
                    197:     AC_DEFINE([LDAP_DEPRECATED], [1], [Using deprecated ldap api])
                    198:   ])
                    199:  ])
                    200:  AC_SUBST(LDAP_LIB)
                    201:  AC_CHECK_LIB(lber, ber_printf, [
                    202:   AC_CHECK_HEADERS([lber.h],[
                    203:     LBER_LIB=-llber
                    204:     AC_DEFINE([HAVE_LIBLBER], [1], [liblber])
                    205:     AC_DEFINE([HAVE_LBER_H], [1])
                    206:   ])
                    207:  ])
                    208:  AC_SUBST(LBER_LIB)
                    209: fi
                    210: 
                    211: dnl Check for xattr
                    212: AC_MSG_CHECKING(for extended attributes support)
                    213: AC_ARG_WITH(attr, AC_HELP_STRING([--with-attr],[enable extended attribute support]),
                    214: [WITH_ATTR=$withval],[WITH_ATTR=no])
                    215: AC_MSG_RESULT($withval)
                    216: if test "$WITH_ATTR" != "no"; then
                    217:  AC_CHECK_LIB(attr, attr_get, [
                    218:        AC_CHECK_HEADERS([attr/attributes.h],[
                    219:                ATTR_LIB=-lattr
                    220:                AC_DEFINE([HAVE_XATTR], [1], [libattr])
                    221:                AC_DEFINE([HAVE_ATTR_ATTRIBUTES_H], [1])
                    222:        ])
                    223:  ])
                    224:  AC_SUBST(ATTR_LIB)
                    225: fi
                    226: 
                    227: dnl openssl on solaris needs -lsocket -lnsl
                    228: AC_SEARCH_LIBS(socket,socket)
                    229: AC_SEARCH_LIBS(gethostbyname,nsl socket)
                    230: AC_SEARCH_LIBS(hstrerror,resolv)
                    231: 
                    232: save_LIBS=$LIBS
                    233: AC_SEARCH_LIBS(dlopen,dl,[
                    234:   AC_CHECK_HEADERS([dlfcn.h],[
                    235:     if test "$ac_cv_search_dlopen" != no; then
                    236:       test "$ac_cv_search_dlopen" = "none required" || DL_LIB="$ac_cv_search_dlopen"
                    237:     fi
                    238: 
                    239:     AC_DEFINE([HAVE_LIBDL], [1], [libdl])
                    240:     AC_DEFINE([HAVE_DLFCN_H], [1])
                    241:   ])
                    242: ])
                    243: LIBS=$save_LIBS
                    244: AC_SUBST(DL_LIB)
                    245: 
                    246: dnl Check for valgrind
                    247: AC_MSG_CHECKING(for valgrind)
                    248: AC_ARG_WITH(valgrind, AC_HELP_STRING([--with-valgrind],[enable internal support for valgrind]),
                    249: [WITH_VALGRIND=$withval],[WITH_VALGRIND=no])
                    250: AC_MSG_RESULT([$WITH_VALGRIND])
                    251: if test "$WITH_VALGRIND" != "no"; then
                    252:  AC_CHECK_HEADERS([valgrind/valgrind.h])
                    253: fi
                    254: 
                    255: dnl Check for openssl
                    256: AC_MSG_CHECKING(for OpenSSL)
                    257: AC_ARG_WITH(openssl,
                    258:     AC_HELP_STRING([--with-openssl@<:@=DIR@:>@],[Include openssl support (default no)]),
                    259:     [WITH_OPENSSL=$withval],[WITH_OPENSSL=no])
                    260: 
                    261: if test "$WITH_OPENSSL" != "no"; then
                    262:     use_openssl=yes
                    263:     if test "$WITH_OPENSSL" != "yes"; then
                    264:        CPPFLAGS="$CPPFLAGS -I$WITH_OPENSSL/include"
                    265:        LDFLAGS="$LDFLAGS -L$WITH_OPENSSL/lib"
                    266:     fi
                    267: else
                    268:     use_openssl=no
                    269: fi
                    270: AC_MSG_RESULT([$use_openssl])
                    271: 
                    272: AC_ARG_WITH(openssl-includes,
                    273:     AC_HELP_STRING([--with-openssl-includes=DIR],[OpenSSL includes]),
                    274:     [ use_openssl=yes CPPFLAGS="$CPPFLAGS -I$withval" ]
                    275: )
                    276: 
                    277: AC_ARG_WITH(openssl-libs,
                    278:     AC_HELP_STRING([--with-openssl-libs=DIR],[OpenSSL libraries]),
                    279:     [ use_openssl=yes LDFLAGS="$LDFLAGS -L$withval" ]
                    280: )
                    281: 
                    282: AC_ARG_WITH(kerberos5,
                    283:     AC_HELP_STRING([--with-kerberos5],[use Kerberos5 support with OpenSSL]),
                    284:     [ use_kerberos=yes ], [use_kerberos=no]
                    285: )
                    286: 
                    287: if test "x$use_openssl" = "xyes"; then
                    288:     if test "x$use_kerberos" != "xyes"; then
                    289:         CPPFLAGS="$CPPFLAGS -DOPENSSL_NO_KRB5"
                    290:     fi
                    291: 
                    292:     AC_CHECK_HEADERS([openssl/ssl.h])
                    293:     OLDLIBS="$LIBS"
                    294:     AC_CHECK_LIB(crypto, BIO_f_base64, [
                    295:       AC_CHECK_LIB(ssl, SSL_new, [ SSL_LIB="-lssl -lcrypto"
                    296:                                 AC_DEFINE(HAVE_LIBSSL, [], [Have libssl]) ], [], [ -lcrypto "$DL_LIB" ])
                    297:     ], [], [])
                    298:     LIBS="$OLDLIBS"
                    299:     AC_SUBST(SSL_LIB)
                    300: fi
                    301: 
                    302: AC_MSG_CHECKING(for perl regular expressions support)
                    303: AC_ARG_WITH(pcre, AC_HELP_STRING([--with-pcre],[Enable pcre support (default yes)]),
                    304:     [WITH_PCRE=$withval],[WITH_PCRE=yes])
                    305: AC_MSG_RESULT([$WITH_PCRE])
                    306: 
                    307: if test "$WITH_PCRE" != "no"; then
                    308:   AC_PATH_PROG(PCRECONFIG, pcre-config)
                    309: 
                    310:   if test x"$PCRECONFIG" != x; then
                    311:     PCRE_LIB=`$PCRECONFIG --libs`
                    312:     CPPFLAGS="$CPPFLAGS `$PCRECONFIG --cflags`"
                    313:     AC_DEFINE([HAVE_LIBPCRE], [1], [libpcre])
                    314:     AC_DEFINE([HAVE_PCRE_H], [1], [pcre.h])
                    315:   else
                    316:      AC_MSG_ERROR([pcre-config not found, install the pcre-devel package or build with --without-pcre])
                    317:   fi
                    318: fi
                    319: 
                    320: AC_SUBST(PCRE_LIB)
                    321: 
                    322: AC_MSG_CHECKING(for zlib support)
                    323: AC_ARG_WITH(zlib, AC_HELP_STRING([--with-zlib],[Enable zlib support for mod_compress]),
                    324:     [WITH_ZLIB=$withval],[WITH_ZLIB=yes])
                    325: AC_MSG_RESULT([$WITH_ZLIB])
                    326: 
                    327: if test "$WITH_ZLIB" != "no"; then
                    328:   AC_CHECK_LIB(z, deflate, [
                    329:     AC_CHECK_HEADERS([zlib.h],[
                    330:       Z_LIB=-lz
                    331:       AC_DEFINE([HAVE_LIBZ], [1], [libz])
                    332:       AC_DEFINE([HAVE_ZLIB_H], [1])
                    333:     ])
                    334:   ])
                    335:   if test x$Z_LIB = x; then
                    336:      AC_MSG_ERROR([zlib-headers and/or libs where not found, install them or build with --without-zlib])
                    337:   fi
                    338: fi
                    339: AC_SUBST(Z_LIB)
                    340: 
                    341: AC_MSG_CHECKING(for bzip2 support)
                    342: AC_ARG_WITH(bzip2, AC_HELP_STRING([--with-bzip2],[Enable bzip2 support for mod_compress]),
                    343:     [WITH_BZIP2=$withval],[WITH_BZIP2=yes])
                    344: AC_MSG_RESULT([$WITH_BZIP2])
                    345: 
                    346: if test "$WITH_BZIP2" != "no"; then
                    347:   AC_CHECK_LIB(bz2, BZ2_bzCompress, [
                    348:     AC_CHECK_HEADERS([bzlib.h],[
                    349:       BZ_LIB=-lbz2
                    350:       AC_DEFINE([HAVE_LIBBZ2], [1], [libbz2])
                    351:       AC_DEFINE([HAVE_BZLIB_H], [1])
                    352:     ])
                    353:   ])
                    354:   if test x$BZ_LIB = x; then
                    355:      AC_MSG_ERROR([bzip2-headers and/or libs where not found, install them or build with --without-bzip2])
                    356:   fi
                    357: fi
                    358: AC_SUBST(BZ_LIB)
                    359: 
                    360: dnl Check for gamin
                    361: AC_MSG_CHECKING(for FAM)
                    362: AC_ARG_WITH(fam, AC_HELP_STRING([--with-fam],[fam/gamin for reducing number of stat() calls]),
                    363: [WITH_FAM=$withval],[WITH_FAM=no])
                    364: AC_MSG_RESULT([$WITH_FAM])
                    365: 
                    366: if test "$WITH_FAM" != "no"; then
                    367:   AC_CHECK_LIB(fam, FAMOpen2, [
                    368:     AC_CHECK_HEADERS([fam.h],[
                    369:       FAM_LIBS=-lfam
                    370:       AC_DEFINE([HAVE_LIBFAM], [1], [libfam])
                    371:       AC_DEFINE([HAVE_FAM_H], [1], [fam.h])
                    372:     ])
                    373:   ])
                    374:   if test "x$FAM_LIBS" = x; then
                    375:     PKG_CHECK_MODULES(FAM, gamin >= 0.1.0, [
                    376:       AC_DEFINE([HAVE_LIBFAM], [1], [libfam])
                    377:       AC_DEFINE([HAVE_FAM_H], [1], [fam.h])
                    378:     ])
                    379:   fi
                    380:   OLD_LIBS=$LIBS
                    381:   LIBS=$FAM_LIBS
                    382:   AC_CHECK_FUNCS([FAMNoExists])
                    383:   LIBS=$OLD_LIBS
                    384:   
                    385:   if test x$FAM_LIBS = x; then
                    386:      AC_MSG_ERROR([fam/gamin-headers and/or libs where not found, install them or build with --without-fam])
                    387:   fi
                    388: fi
                    389: 
                    390: AC_MSG_CHECKING(for properties in mod_webdav)
                    391: AC_ARG_WITH(webdav-props, AC_HELP_STRING([--with-webdav-props],[properties in mod_webdav]),
                    392: [WITH_WEBDAV_PROPS=$withval],[WITH_WEBDAV_PROPS=no])
                    393: AC_MSG_RESULT([$WITH_WEBDAV_PROPS])
                    394: 
                    395: if test "$WITH_WEBDAV_PROPS" != "no"; then
                    396:  PKG_CHECK_MODULES(XML, libxml-2.0, [
                    397:     AC_DEFINE([HAVE_LIBXML2], [1], [libxml2])
                    398:     AC_DEFINE([HAVE_LIBXML_H], [1], [libxml.h])
                    399:  ])
                    400:  PKG_CHECK_MODULES(SQLITE, sqlite3, [
                    401:     AC_DEFINE([HAVE_SQLITE3], [1], [libsqlite3])
                    402:     AC_DEFINE([HAVE_SQLITE3_H], [1], [sqlite3.h])
                    403:  ])
                    404: 
                    405:  AC_MSG_CHECKING(for locks in mod_webdav)
                    406:  AC_ARG_WITH(webdav-locks, AC_HELP_STRING([--with-webdav-locks],[locks in mod_webdav]),
                    407:  [WITH_WEBDAV_LOCKS=$withval],[WITH_WEBDAV_LOCKS=no])
                    408:  AC_MSG_RESULT([$WITH_WEBDAV_LOCKS])
                    409: 
                    410:  if test "$WITH_WEBDAV_LOCKS" != "no"; then
                    411:    AC_CHECK_LIB(uuid, uuid_unparse, [
                    412:          AC_CHECK_HEADERS([uuid/uuid.h],[
                    413:                  UUID_LIBS=-luuid
                    414:                  AC_DEFINE([HAVE_UUID], [1], [libuuid])
                    415:                 AC_DEFINE([HAVE_UUID_H], [1], [uuid/uuid.h is available])
                    416:          ])
                    417:  ])
                    418: 
                    419:  fi
                    420: fi
                    421: AC_SUBST(UUID_LIBS)
                    422: 
                    423: dnl Check for gdbm
                    424: AC_MSG_CHECKING(for gdbm)
                    425: AC_ARG_WITH(gdbm, AC_HELP_STRING([--with-gdbm],[gdbm storage for mod_trigger_b4_dl]),
                    426: [WITH_GDBM=$withval],[WITH_GDBM=no])
                    427: AC_MSG_RESULT([$WITH_GDBM])
                    428: 
                    429: if test "$WITH_GDBM" != "no"; then
                    430:  AC_CHECK_LIB(gdbm, gdbm_open, [
                    431:          AC_CHECK_HEADERS([gdbm.h],[
                    432:                  GDBM_LIB=-lgdbm
                    433:                  AC_DEFINE([HAVE_GDBM], [1], [libgdbm])
                    434:                 AC_DEFINE([HAVE_GDBM_H], [1])
                    435:          ])
                    436:  ])
                    437:  AC_SUBST(GDBM_LIB)
                    438: fi
                    439: 
                    440: dnl Check for memcache
                    441: AC_MSG_CHECKING(for memcache)
                    442: AC_ARG_WITH(memcache, AC_HELP_STRING([--with-memcache],[memcached storage for mod_trigger_b4_dl]),
                    443: [WITH_MEMCACHE=$withval],[WITH_MEMCACHE=no])
                    444: AC_MSG_RESULT([$WITH_MEMCACHE])
                    445: if test "$WITH_MEMCACHE" != "no"; then
                    446:  AC_CHECK_LIB(memcache, mc_new, [
                    447:          AC_CHECK_HEADERS([memcache.h],[
                    448:                  MEMCACHE_LIB=-lmemcache
                    449:                  AC_DEFINE([HAVE_MEMCACHE], [1], [libmemcache])
                    450:                 AC_DEFINE([HAVE_MEMCACHE_H], [1], [memcache.h])
                    451:          ])
                    452:  ])
                    453:  AC_SUBST(MEMCACHE_LIB)
                    454: fi
                    455: 
                    456: dnl Check for lua
                    457: AC_MSG_CHECKING(if lua-support is requested)
                    458: AC_ARG_WITH(lua, AC_HELP_STRING([--with-lua],[lua engine for mod_cml]),
                    459: [WITH_LUA=$withval],[WITH_LUA=no])
                    460: 
                    461: AC_MSG_RESULT($WITH_LUA)
                    462: if test "$WITH_LUA" != "no"; then
                    463:  if test "$WITH_LUA" = "yes"; then
                    464:   WITH_LUA=lua
                    465:  fi
                    466:  dnl first check for lua5.1 (debian and others), then lua-5.1 (freebsd), then $WITH_LUA (defaults to lua)
                    467:  dnl check "lua" last now that lua5.2 is out
                    468:  PKG_CHECK_MODULES(LUA, lua5.1 >= 5.1, [
                    469:   AC_DEFINE([HAVE_LUA], [1], [liblua])
                    470:   AC_DEFINE([HAVE_LUA_H], [1], [lua.h])
                    471:  ],[
                    472:   PKG_CHECK_MODULES(LUA, lua-5.1 >= 5.1, [
                    473:    AC_DEFINE([HAVE_LUA], [1], [liblua])
                    474:    AC_DEFINE([HAVE_LUA_H], [1], [lua.h])
                    475:   ],[
                    476:    PKG_CHECK_MODULES(LUA, $WITH_LUA >= 5.1, [
                    477:     AC_DEFINE([HAVE_LUA], [1], [liblua])
                    478:     AC_DEFINE([HAVE_LUA_H], [1], [lua.h])
                    479:    ])
                    480:   ])
                    481:  ])
                    482: 
                    483:  AC_SUBST(LUA_CFLAGS)
                    484:  AC_SUBST(LUA_LIBS)
                    485: fi
                    486: 
                    487: save_LIBS=$LIBS
                    488: AC_SEARCH_LIBS(crypt,crypt,[
                    489:   AC_CHECK_HEADERS([crypt.h],[
                    490:     AC_DEFINE([HAVE_CRYPT_H], [1])
                    491:   ])
                    492: 
                    493:   AC_DEFINE([HAVE_LIBCRYPT], [1], [libcrypt])
                    494:   if test "$ac_cv_search_crypt" != no; then
                    495:     test "$ac_cv_search_crypt" = "none required" || CRYPT_LIB="$ac_cv_search_crypt"
                    496:   fi
                    497: ])
                    498: LIBS=$save_LIBS
                    499: AC_SUBST(CRYPT_LIB)
                    500: 
                    501: save_LIBS=$LIBS
                    502: AC_SEARCH_LIBS(sendfilev,sendfile,[
                    503:   if test "$ac_cv_search_sendfilev" != no; then
                    504:     test "$ac_cv_search_sendfilev" = "none required" || SENDFILE_LIB="$ac_cv_search_sendfilev"
                    505:     AC_DEFINE([HAVE_SENDFILEV], [1], [solaris sendfilev])
                    506:   fi
                    507: ])
                    508: LIBS=$save_LIBS
                    509: AC_SUBST(SENDFILE_LIB)
                    510: 
                    511: case $host_os in
                    512:        *mingw* ) LIBS="$LIBS -lwsock32";;
                    513:         * ) ;;
                    514: esac
                    515: 
                    516: AC_CHECK_FUNCS([dup2 getcwd inet_ntoa inet_ntop memset mmap munmap strchr \
                    517:                  strdup strerror strstr strtol sendfile  getopt socket lstat \
                    518:                  gethostbyname poll epoll_ctl getrlimit chroot \
                    519:                  getuid select signal pathconf madvise posix_fadvise posix_madvise \
                    520:                  writev sigaction sendfile64 send_file kqueue port_create localtime_r gmtime_r])
                    521: 
                    522: AC_MSG_CHECKING(for Large File System support)
                    523: AC_ARG_ENABLE(lfs,
                    524:  AC_HELP_STRING([--enable-lfs],[Turn on Large File System (default)]),
                    525:  [case "${enableval}" in
                    526:    yes) CPPFLAGS="${CPPFLAGS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES" ;;
                    527:     no) ;;
                    528:      *) AC_MSG_ERROR(bad value ${enableval} for --enable-lfs) ;;
                    529:   esac],[CPPFLAGS="${CPPFLAGS} -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES"
                    530:         enable_lfs=yes])
                    531: AC_MSG_RESULT($enableval)
                    532: 
                    533: AC_CHECK_SIZEOF(long)
                    534: AC_CHECK_SIZEOF(off_t)
                    535: 
                    536: if test "x$ac_cv_func_sendfile" = xyes; then
                    537:        dnl check if sendfile works
                    538:         AC_MSG_CHECKING(if sendfile works)
                    539:        if test "x$cross_compiling" = xno; then
                    540:        AC_TRY_RUN([
                    541:                    #ifdef HAVE_SYS_SENDFILE_H
                    542:                    #include <sys/sendfile.h>
                    543:                    #endif /* HAVE_SYS_SENDFILE_H */
                    544:                    #include <errno.h>
                    545:                    int main() {
                    546:                      int o = 0;
                    547:                      if (-1 == sendfile(-1, 0, &o, 0) && errno == ENOSYS) return -1;
                    548:                      return 0;
                    549:                    } ],
                    550:                    AC_MSG_RESULT(yes),
                    551:                    [ AC_MSG_RESULT(no)
                    552:                    AC_DEFINE([HAVE_SENDFILE_BROKEN], [1], [broken sendfile]) ] )
                    553:        else
                    554:              AC_MSG_RESULT(no, cross-compiling)
                    555:              AC_DEFINE([HAVE_SENDFILE_BROKEN], [1], [broken sendfile])
                    556:        fi
                    557: fi
                    558: 
                    559: dnl Check for IPv6 support
                    560: 
                    561: AC_ARG_ENABLE(ipv6,
                    562:  AC_HELP_STRING([--disable-ipv6],[disable IPv6 support]),
                    563:  [case "${enableval}" in
                    564:    yes) ipv6=true ;;
                    565:     no) ipv6=false ;;
                    566:      *) AC_MSG_ERROR(bad value ${enableval} for --enable-ipv6) ;;
                    567:   esac],[ipv6=true])
                    568: 
                    569: if test x$ipv6 = xtrue; then
                    570:   AC_CACHE_CHECK([for IPv6 support], ac_cv_ipv6_support,
                    571:   [AC_TRY_LINK([ #include <sys/types.h>
                    572: #include <sys/socket.h>
                    573: #include <netinet/in.h>], [struct sockaddr_in6 s; struct in6_addr t=in6addr_any; int i=AF_INET6; s; t.s6_addr[0] = 0; ],
                    574:   [ac_cv_ipv6_support=yes], [ac_cv_ipv6_support=no])])
                    575: 
                    576:   if test "$ac_cv_ipv6_support" = yes; then
                    577:     AC_DEFINE(HAVE_IPV6,1,[Whether to enable IPv6 support])
                    578:   fi
                    579: fi
                    580: 
                    581: # disable mmap by default; if a mmapped file gets truncated, the process gets a SIGBUS signal
                    582: # on reading the truncated area which we can't handle (yet).
                    583: # lighttpd may always use mmap with files it owns (created tmp files)
                    584: AC_ARG_ENABLE(mmap,
                    585:   AC_HELP_STRING([--enable-mmap],[use mmap if available (DANGEROUS, allows local users to trigger SIGBUS crashes)]),
                    586:   [case "${enableval}" in
                    587:    yes) mmap=true ;;
                    588:     no) mmap=false ;;
                    589:      *) AC_MSG_ERROR(bad value ${enableval} for --enable-mmap) ;;
                    590:   esac],[mmap=false])
                    591: 
                    592: if test x$mmap = xtrue; then
                    593:   AC_DEFINE(ENABLE_MMAP, [1], [Use mmap if available])
                    594: fi
                    595: 
                    596: 
                    597: AM_CONDITIONAL(CROSS_COMPILING, test "x$cross_compiling" = xyes)
                    598: 
                    599: dnl check for fastcgi lib, for the tests only
                    600: fastcgi_found=no
                    601: AC_CHECK_LIB(fcgi, FCGI_Accept, [
                    602:  AC_CHECK_HEADERS([fastcgi.h fastcgi/fastcgi.h],[
                    603:    fastcgi_found=yes
                    604:  ])
                    605: ])
                    606: 
                    607: AM_CONDITIONAL(CHECK_WITH_FASTCGI, test "x$fastcgi_found" = xyes)
                    608: 
                    609: 
                    610: dnl check for extra compiler options (warning options)
                    611: if test "${GCC}" = "yes"; then
                    612:     CFLAGS="${CFLAGS} -Wall -W -Wshadow -pedantic -std=gnu99"
                    613: fi
                    614: 
                    615: AC_ARG_ENABLE(extra-warnings,
                    616:  AC_HELP_STRING([--enable-extra-warnings],[enable extra warnings (gcc specific)]),
                    617:  [case "${enableval}" in
                    618:    yes) extrawarnings=true ;;
                    619:     no) extrawarnings=false ;;
                    620:      *) AC_MSG_ERROR(bad value ${enableval} for --enable-extra-warnings) ;;
                    621:   esac],[extrawarnings=false])
                    622: 
                    623: if test x$extrawarnings = xtrue; then
                    624:     CFLAGS="${CFLAGS} -g -O2 -g2 -Wall -Wmissing-declarations -Wdeclaration-after-statement -Wno-pointer-sign -Wcast-align -Winline -Wsign-compare -Wnested-externs -Wpointer-arith -Wl,--as-needed -Wformat-security"
                    625: fi
                    626: 
                    627: dnl build version-id
                    628: LIGHTTPD_VERSION_ID=`echo $PACKAGE_VERSION | $AWK -F '.' '{print "(" $1 " << 16 | " $2 " << 8 | " $3 ")"}'`
                    629: AC_DEFINE_UNQUOTED([LIGHTTPD_VERSION_ID], [$LIGHTTPD_VERSION_ID], [lighttpd-version-id])
                    630: 
                    631: AC_CONFIG_FILES([Makefile src/Makefile
                    632:                 doc/config/conf.d/Makefile \
                    633:                 doc/config/vhosts.d/Makefile \
                    634:                 doc/config/Makefile \
                    635:                 doc/scripts/Makefile \
                    636:                 doc/initscripts/Makefile \
                    637:                 doc/systemd/Makefile \
                    638:                 doc/outdated/Makefile \
                    639:                 doc/Makefile \
                    640:                 tests/Makefile \
                    641:                 tests/docroot/Makefile \
                    642:                 tests/docroot/123/Makefile \
                    643:                 tests/docroot/www/Makefile \
                    644:                 tests/docroot/www/go/Makefile \
                    645:                 tests/docroot/www/indexfile/Makefile \
                    646:                 tests/docroot/www/expire/Makefile \
                    647:                 distribute.sh])
                    648: AC_OUTPUT
                    649: 
                    650: 
                    651: do_build="mod_cgi mod_fastcgi mod_extforward mod_proxy mod_evhost mod_simple_vhost mod_access mod_alias mod_setenv mod_usertrack mod_auth mod_status mod_accesslog"
                    652: do_build="$do_build mod_rrdtool mod_secdownload mod_expire mod_compress mod_dirlisting mod_indexfile mod_userdir mod_webdav mod_staticfile mod_scgi mod_flv_streaming"
                    653: 
                    654: plugins="mod_rewrite mod_redirect mod_ssi mod_trigger_b4_dl"
                    655: features="regex-conditionals"
                    656: if test ! "x$PCRE_LIB" = x; then
                    657:        do_build="$do_build $plugins"
                    658:        enable_feature="$features"
                    659: else
                    660:        no_build="$no_build $plugins"
                    661:        disable_feature="$features"
                    662: fi
                    663: 
                    664: plugins="mod_mysql_vhost"
                    665: if test ! "x$MYSQL_LIBS" = x; then
                    666:        do_build="$do_build $plugins"
                    667: else
                    668:        no_build="$no_build $plugins"
                    669: fi
                    670: 
                    671: plugins="mod_cml mod_magnet"
                    672: if test ! "x$LUA_LIBS" = x; then
                    673:        do_build="$do_build $plugins"
                    674: else
                    675:        no_build="$no_build $plugins"
                    676: fi
                    677: 
                    678: features="storage-gdbm"
                    679: if test ! "x$GDBM_LIB" = x; then
                    680:        enable_feature="$enable_feature $features"
                    681: else
                    682:        disable_feature="$disable_feature $features"
                    683: fi
                    684: 
                    685: features="storage-memcache"
                    686: if test ! "x$MEMCACHE_LIB" = x; then
                    687:        enable_feature="$enable_feature $features"
                    688: else
                    689:        disable_feature="$disable_feature $features"
                    690: fi
                    691: 
                    692: features="compress-gzip compress-deflate"
                    693: if test ! "x$Z_LIB" = x; then
                    694:        enable_feature="$enable_feature $features"
                    695: else
                    696:        disable_feature="$disable_feature $features"
                    697: fi
                    698: 
                    699: features="compress-bzip2"
                    700: if test ! "x$BZ_LIB" = x; then
                    701:        enable_feature="$enable_feature $features"
                    702: else
                    703:        disable_feature="$disable_feature $features"
                    704: fi
                    705: 
                    706: features="auth-ldap"
                    707: if test ! "x$LDAP_LIB" = x; then
                    708:        enable_feature="$enable_feature $features"
                    709: else
                    710:        disable_feature="$disable_feature $features"
                    711: fi
                    712: 
                    713: features="network-openssl"
                    714: if test ! "x$SSL_LIB" = x; then
                    715:        enable_feature="$enable_feature $features"
                    716: else
                    717:        disable_feature="$disable_feature $features"
                    718: fi
                    719: 
                    720: dnl no crypt call
                    721: features="auth-crypt"
                    722: if test "$ac_cv_search_crypt" = no; then
                    723:        disable_feature="$disable_feature $features"
                    724: else
                    725:        enable_feature="$enable_feature $features"
                    726: fi
                    727: 
                    728: features="network-ipv6"
                    729: if test "$ac_cv_ipv6_support" = yes; then
                    730:        enable_feature="$enable_feature $features"
                    731: else
                    732:        disable_feature="$disable_feature $features"
                    733: fi
                    734: 
                    735: features="large-files"
                    736: if test "$enable_lfs" = yes; then
                    737:        enable_feature="$enable_feature $features"
                    738: else
                    739:        disable_feature="$disable_feature $features"
                    740: fi
                    741: 
                    742: features="stat-cache-fam"
                    743: if test ! "x$FAM_LIBS" = x; then
                    744:        enable_feature="$enable_feature $features"
                    745: else
                    746:        disable_feature="$disable_feature $features"
                    747: fi
                    748: 
                    749: features="webdav-properties"
                    750: if test "x$XML_LIBS" \!= x -a "x$SQLITE_LIBS" \!= x; then
                    751:        enable_feature="$enable_feature $features"
                    752: else
                    753:        disable_feature="$disable_feature $features"
                    754: fi
                    755: 
                    756: features="webdav-locks"
                    757: if test "x$UUID_LIBS" \!= x; then
                    758:        enable_feature="$enable_feature $features"
                    759: else
                    760:        disable_feature="$disable_feature $features"
                    761: fi
                    762: 
                    763: 
                    764: dnl output
                    765: 
                    766: $ECHO
                    767: $ECHO "Plugins:"
                    768: $ECHO
                    769: 
                    770: $ECHO "enabled: "
                    771: for p in $do_build; do
                    772:        $ECHO "  $p"
                    773: done | sort
                    774: 
                    775: $ECHO "disabled: "
                    776: for p in $no_build; do
                    777:        $ECHO "  $p"
                    778: done | sort
                    779: 
                    780: $ECHO
                    781: $ECHO "Features:"
                    782: $ECHO
                    783: 
                    784: $ECHO "enabled: "
                    785: for p in $enable_feature; do
                    786:        $ECHO "  $p"
                    787: done | sort
                    788: 
                    789: $ECHO "disabled: "
                    790: for p in $disable_feature; do
                    791:        $ECHO "  $p"
                    792: done | sort
                    793: 
                    794: $ECHO

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>