123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824 |
- dnl -*- Autoconf -*-
- dnl Process this file with autoconf to produce a configure script.
- dnl
- dnl Indentation rules:
- dnl - closing braces not at the beginning of a line must match opening
- dnl braces earlier on that line
- dnl - closing braces at the beginning of a line:
- dnl - must not be followed by anything else apart from "," or comments
- dnl - must match opening braces from another line and indented the
- dnl same as that other line
- dnl - if one argument was put on a new line, all following arguments
- dnl must be on their own line too
- dnl - if an argument uses more than one line and is not a single
- dnl function call, the argument should be on different lines than the
- dnl wrapping braces
- AC_PREREQ()
- AC_INIT(,,,,)
- AC_CONFIG_SRCDIR()
- AC_CONFIG_HEADERS()
- AC_CONFIG_MACRO_DIR()
- AC_CANONICAL_HOST
- AM_INIT_AUTOMAKE()
- dnl @synopsis TRY_CFLAGS
- dnl @summary check whether compiler supports given flags and adds them to CFLAGS
- AC_DEFUN(,
- )
- dnl @synopsis TRY_LDFLAGS
- dnl @summary check whether linker supports given flags and adds them to LDFLAGS
- AC_DEFUN(,
- )
- dnl Checks for programs.
- AC_PROG_CC
- AC_PROG_CC_C99
- AX_PROG_CC_FOR_BUILD
- LT_PATH_LD
- AC_PROG_INSTALL
- AC_PROG_CPP
- AC_PROG_MAKE_SET
- AC_USE_SYSTEM_EXTENSIONS
- AM_PROG_AR
- AC_C_INLINE
- AC_C_RESTRICT
- dnl AC_CANONICAL_HOST
- case "$host_os" in
- *darwin*|*cygwin*|*aix*|*mingw*|*midipix* ) NO_RDYNAMIC=yes ;;
- * ) NO_RDYNAMIC=no ;;
- esac
- AM_CONDITIONAL(, )
- AM_CONDITIONAL(, )
- AC_EXEEXT
- dnl libtool
- LT_INIT()
- dnl for solaris
- CPPFLAGS="${CPPFLAGS} -D_REENTRANT"
- dnl Checks for header files.
- dnl checks for sys/wait.h => HAVE_SYS_WAIT_H
- AC_HEADER_SYS_WAIT
- AC_CHECK_HEADERS(
- )
- dnl Checks for typedefs, structures, and compiler characteristics.
- AC_C_CONST
- AC_C_INLINE
- AC_TYPE_OFF_T
- AC_TYPE_PID_T
- AC_TYPE_SIZE_T
- AC_CHECK_MEMBER(,
- ,
- ,
-
- )
- AC_CHECK_TYPES(,
- , dnl defines HAVE_SOCKLEN_T
- ,
-
- )
- dnl solaris needs -lsocket -lnsl
- dnl Haiku needs -lnetwork
- AC_SEARCH_LIBS(, )
- AC_SEARCH_LIBS(, )
- dnl clock_gettime() needs -lrt with glibc < 2.17, and possibly other platforms
- AC_SEARCH_LIBS(, )
- dnl FreeBSD elftc_copyfile()
- save_LIBS=$LIBS
- LIBS=
- AC_SEARCH_LIBS(, ,
- )
- LIBS=$save_LIBS
- AC_SUBST()
- dnl need dlopen/-ldl to load plugins (when not on windows)
- save_LIBS=$LIBS
- LIBS=
- AC_SEARCH_LIBS(, ,
- )
- LIBS=$save_LIBS
- AC_SUBST()
- dnl prepare pkg-config usage below
- PKG_PROG_PKG_CONFIG
- dnl checking for libev
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- LIBEV_CFLAGS=
- LIBEV_LIBS=
- if test "$WITH_LIBEV" != no; then
- PKG_CHECK_MODULES(, , ,
- )
- AC_DEFINE(, , )
- fi
- AC_SUBST()
- AC_SUBST()
- dnl Checks for mysql
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- MYSQL_CFLAGS=
- MYSQL_LIBS=
- if test "$WITH_MYSQL" != no; then
- if test "$WITH_MYSQL" = yes; then
- PKG_CHECK_MODULES(,,
- ,
- )
- else
- MYSQL_CONFIG=$WITH_MYSQL
- fi
- if test "$MYSQL_CONFIG" != "$PKG_CONFIG"; then
- if test -z "$MYSQL_CONFIG"; then
- AC_MSG_ERROR()
- fi
- if test ! -x "$MYSQL_CONFIG"; then
- AC_MSG_ERROR()
- fi
- if "$MYSQL_CONFIG" | grep -- '--include' > /dev/null ; then
- MYSQL_CFLAGS=`"$MYSQL_CONFIG" --include | sed s/\'//g`
- else
- MYSQL_CFLAGS=`"$MYSQL_CONFIG" --cflags | sed s/\'//g`
- fi
- MYSQL_LIBS=`"$MYSQL_CONFIG" --libs | sed s/\'//g`
- fi
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- AC_DEFINE(, , )
- fi
- AM_CONDITIONAL(, )
- AC_SUBST()
- AC_SUBST()
- dnl Checks for pgsql
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- PGSQL_CFLAGS=
- PGSQL_LIBS=
- if test "$WITH_PGSQL" != no; then
- if test "$WITH_PGSQL" = yes; then
- PKG_CHECK_MODULES(,,
- ,
- )
- else
- PGSQL_CONFIG=$WITH_PGSQL
- fi
- if test "$PGSQL_CONFIG" != "$PKG_CONFIG"; then
- if test -z "$PGSQL_CONFIG"; then
- AC_MSG_ERROR()
- fi
- if test ! -x "$PGSQL_CONFIG"; then
- AC_MSG_ERROR()
- fi
- PGSQL_CFLAGS="-I`"$PGSQL_CONFIG" --includedir`"
- PGSQL_LIBS="-L`"$PGSQL_CONFIG" --libdir` -lpq"
- fi
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- AC_DEFINE(, , )
- fi
- AM_CONDITIONAL(, )
- AC_SUBST()
- AC_SUBST()
- dnl Checks for libdbi library
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- DBI_INCLUDE=
- DBI_LIBS=
- if test "$WITH_DBI" != no; then
- if test "$WITH_DBI" != yes; then
- DBI_CFLAGS="-I$WITH_DBI/include"
- DBI_LIBS="-L$WITH_DBI/lib -ldbi"
- else
- AC_CHECK_HEADERS(,
-
- ,
-
- )
- fi
- AC_DEFINE(, , )
- fi
- AM_CONDITIONAL(, )
- AC_SUBST()
- AC_SUBST()
- dnl Checks for libsasl2 library
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- SASL_INCLUDE=
- SASL_LIBS=
- if test "$WITH_SASL" != no; then
- if test "$WITH_SASL" != yes; then
- SASL_CFLAGS="-I$WITH_SASL/include"
- SASL_LIBS="-L$WITH_SASL/lib -lsasl2"
- else
- AC_CHECK_HEADERS(,
-
- ,
-
- )
- fi
- AC_DEFINE(, , )
- fi
- AM_CONDITIONAL(, )
- AC_SUBST()
- AC_SUBST()
- dnl Check for LDAP
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_LDAP" != no; then
- AC_CHECK_LIB(, ,
-
- ,
-
- )
- AC_SUBST()
- AC_CHECK_LIB(, ,
-
- ,
-
- )
- AC_SUBST()
- fi
- AM_CONDITIONAL(, )
- dnl Check for PAM
- AC_MSG_NOTICE()
- AC_MSG_CHECKING(for PAM support)
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_PAM" != "no"; then
- AC_CHECK_LIB(, ,
-
- ,
-
- )
- AC_SUBST(PAM_LIB)
- fi
- AM_CONDITIONAL(, )
- dnl Check for xattr
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_ATTR" != no; then
- have_xattr=no
- # Linux getxattr
- AC_CHECK_FUNC(,
- )
- # (Free)BSD extattr
- AC_CHECK_FUNC(,
- )
- # libattr (linux only?)
- if test "$have_xattr" = no; then
- AC_CHECK_LIB(, ,
- )
- fi
- AC_SUBST()
- if test "$have_xattr" = no; then
- AC_MSG_ERROR()
- fi
- fi
- dnl Check for valgrind
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_VALGRIND" != no; then
- AC_CHECK_HEADERS(, ,
- )
- fi
- dnl Checking for libunwind
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_LIBUNWIND" != no; then
- PKG_CHECK_MODULES(, , ,
- )
- AC_DEFINE(, , )
- fi
- dnl Checking for kerberos5
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_KRB5" != no; then
- if test "$WITH_KRB5" != yes; then
- krb5_append_CPPFLAGS=" -I$WITH_KRB5/include"
- krb5_append_LDFLAGS=" -L$WITH_KRB5/lib"
- fi
- fi
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
-
- ,
-
- )
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
-
- ,
-
- )
- if test "$WITH_KRB5" != no; then
- CPPFLAGS="${CPPFLAGS}${krb5_append_CPPFLAGS}"
- LDFLAGS="${LDFLAGS}${krb5_append_LDFLAGS}"
- AC_CHECK_LIB(, ,
-
- ,
-
- )
- case "$host_os" in
- *darwin*|*cygwin* ) KRB5_LIB="$KRB5_LIB -lcom_err" ;;
- * ) ;;
- esac
- fi
- AM_CONDITIONAL(, )
- AC_SUBST()
- dnl Check for openssl
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- AM_CONDITIONAL(, test ! "$WITH_OPENSSL" = no)
- if test "$WITH_OPENSSL" != no; then
- if test "$WITH_OPENSSL" != yes; then
- openssl_append_CPPFLAGS=" -I$WITH_OPENSSL/include"
- openssl_append_LDFLAGS=" -L$WITH_OPENSSL/lib"
- fi
- fi
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
-
- ,
-
- )
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
-
- ,
-
- )
- if test "$WITH_OPENSSL" != no; then
- if test "$WITH_KRB5" != no; then
- AC_DEFINE(, , )
- fi
- CPPFLAGS="${CPPFLAGS}${openssl_append_CPPFLAGS}"
- LDFLAGS="${LDFLAGS}${openssl_append_LDFLAGS}"
- AC_CHECK_HEADERS(, ,
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- AC_CHECK_LIB(, ,
- ,
- ,
-
- )
- AC_DEFINE(, , )
- OPENSSL_CFLAGS="${openssl_append_CPPFLAGS}"
- AC_SUBST()
- AC_SUBST()
- AC_SUBST()
- fi
- dnl Check for wolfSSL
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- AM_CONDITIONAL(, test ! "$WITH_WOLFSSL" = no)
- if test "$WITH_WOLFSSL" != no; then
- CPPFLAGS_SAVE="${CPPFLAGS}"
- LDFLAGS_SAVE="${LDFLAGS}"
- if test "$WITH_WOLFSSL" != yes; then
- WOLFSSL_CFLAGS="-I$WITH_WOLFSSL/include -I$WITH_WOLFSSL/include/wolfssl"
- WOLFSSL_LIBS="-L$WITH_WOLFSSL/lib -lwolfssl"
- LDFLAGS="${LDFLAGS} -L$WITH_WOLFSSL/lib"
- else
- PKG_CHECK_MODULES(, , ,
- )
- if test "$WOLFSSL_LIBS" != "-lwolfssl"; then
- LDFLAGS="${LDFLAGS} ${WOLFSSL_LIBS% -lwolfssl}"
- fi
- fi
- CPPFLAGS="${CPPFLAGS} $WOLFSSL_CFLAGS"
- AC_CHECK_HEADERS(, ,
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- AC_COMPILE_IFELSE(
- , , )
- AC_SUBST()
- AC_SUBST()
- if test "$WITH_OPENSSL" = no; then
- CRYPTO_LIB="$WOLFSSL_CRYPTO_LIB"
- AC_SUBST()
- else
- CPPFLAGS="${CPPFLAGS_SAVE}"
- LDFLAGS="${LDFLAGS_SAVE}"
- fi
- fi
- dnl Check for mbedTLS
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- AS_HELP_STRING(,),
- ,
-
- )
- if test "$WITH_MBEDTLS" != "no"; then
- use_mbedtls=yes
- if test "$WITH_MBEDTLS" != "yes"; then
- CPPFLAGS="$CPPFLAGS -I$WITH_MBEDTLS/include"
- LDFLAGS="$LDFLAGS -L$WITH_MBEDTLS/lib"
- fi
- else
- use_mbedtls=no
- fi
- AC_MSG_RESULT()
- AM_CONDITIONAL(BUILD_WITH_MBEDTLS, test ! $WITH_MBEDTLS = no)
- if test "x$use_mbedtls" = "xyes"; then
- AC_CHECK_HEADERS()
- OLDLIBS="$LIBS"
- AC_CHECK_LIB(mbedcrypto, mbedtls_base64_encode,
-
- ,,)
- LIBS="$OLDLIBS"
- AC_SUBST(MTLS_LIBS)
- AC_SUBST(CRYPTO_LIB)
- fi
- dnl Check for Nettle (and overwrite CRYPTO_LIB if set by OpenSSL or wolfSSL)
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_NETTLE" != no; then
- if test "$WITH_NETTLE" != yes; then
- CPPFLAGS="${CPPFLAGS} -I$WITH_NETTLE/include"
- LDFLAGS="${LDFLAGS} -L$WITH_NETTLE/lib"
- fi
- AC_CHECK_HEADERS(, ,
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- AC_SUBST()
- fi
- dnl Check for GnuTLS
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- AS_HELP_STRING(,),
- ,
-
- )
- if test "$WITH_GNUTLS" != "no"; then
- use_gnutls=yes
- else
- use_gnutls=no
- fi
- AC_MSG_RESULT()
- AM_CONDITIONAL(BUILD_WITH_GNUTLS, test ! $WITH_GNUTLS = no)
- GNUTLS_CFLAGS=
- GNUTLS_LIBS=
- if test "x$use_gnutls" = "xyes"; then
- if test "$WITH_GNUTLS" != "yes"; then
- GNUTLS_CFLAGS="-I$WITH_GNUTLS/include"
- GNUTLS_LIBS="-L$WITH_GNUTLS/lib -lgnutls"
- else
- dnl oldest GnuTLS supported release is 3.3.x at time this is being written
- PKG_CHECK_MODULES(, )
- fi
- AC_SUBST()
- AC_SUBST()
- AC_DEFINE(, , )
- if test "$WITH_OPENSSL" = no && test "$WITH_WOLFSSL" = no && \
- test "$WITH_MBEDTLS" = no && test "$WITH_NETTLE" = no; then
- AC_SUBST(,)
- fi
- fi
- dnl Check for NSS
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- AS_HELP_STRING(,),
- ,
-
- )
- if test "$WITH_NSS" != "no"; then
- use_nss=yes
- else
- use_nss=no
- fi
- AC_MSG_RESULT()
- AM_CONDITIONAL(BUILD_WITH_NSS, test ! $WITH_NSS = no)
- NSS_CFLAGS=
- NSS_LIBS=
- if test "x$use_nss" = "xyes"; then
- if test "$WITH_NSS" != "yes"; then
- NSS_CFLAGS="-I$WITH_NSS/include"
- NSS_LIBS="-L$WITH_NSS/lib -lnss3"
- else
- PKG_CHECK_MODULES(,)
- if test "x$CRYPTO_LIB" = "x"; then
- PKG_CHECK_MODULES(,)
- CPPFLAGS="$CPPFLAGS $NSPR_CFLAGS"
- fi
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- if test "x$CRYPTO_LIB" = "x"; then
- CRYPTO_LIB="-lnss3"
- AC_SUBST()
- fi
- fi
- dnl pcre support
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- dnl pcre2 support
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_PCRE2" != no && test "$WITH_PCRE" = "no"; then
- if test "$WITH_PCRE2" != yes; then
- PCRE_LIB="-L$WITH_PCRE2/lib -lpcre2-8"
- CPPFLAGS="$CPPFLAGS -I$WITH_PCRE/include"
- else
- PKG_CHECK_MODULES(,,
- ,
- )
- fi
- if test -z "$PCRE_LIB"; then
- AC_MSG_ERROR()
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- fi
- if test "$WITH_PCRE" != no; then
- if test "$WITH_PCRE" != yes; then
- PCRE_LIB="-L$WITH_PCRE/lib -lpcre"
- CPPFLAGS="$CPPFLAGS -I$WITH_PCRE/include"
- else
- AC_PATH_PROG(, )
- if test -n "$PCRECONFIG"; then
- PCRE_LIB=`"$PCRECONFIG" --libs`
- CPPFLAGS="$CPPFLAGS `"$PCRECONFIG" --cflags`"
- fi
- fi
- if test -z "$PCRE_LIB"; then
- AC_MSG_ERROR()
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- fi
- dnl zlib
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_ZLIB" != no; then
- if test "$WITH_ZLIB" != yes; then
- Z_LIB="-L$WITH_ZLIB -lz"
- CPPFLAGS="$CPPFLAGS -I$WITH_ZLIB"
- else
- AC_CHECK_HEADERS(, ,
-
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, )
- AC_SUBST()
- fi
- dnl zstd
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_ZSTD" != no; then
- if test "$WITH_ZSTD" != yes; then
- ZSTD_LIB="-L$WITH_ZSTD -lzstd"
- CPPFLAGS="$CPPFLAGS -I$WITH_ZSTD"
- else
- AC_CHECK_HEADERS(, ,
-
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, )
- AC_SUBST()
- fi
- dnl bzip2
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_BZIP2" != no; then
- if test "$WITH_BZIP2" != yes; then
- BZ_LIB="-L$WITH_BZIP2 -lbz2"
- CPPFLAGS="$CPPFLAGS -I$WITH_BZIP2"
- else
- AC_CHECK_HEADERS(, ,
- )
- AC_CHECK_LIB(, ,
- ,
-
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, )
- AC_SUBST()
- fi
- dnl brotli
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_BROTLI" != no; then
- if test "$WITH_BROTLI" != yes; then
- BROTLI_LIBS="-L$WITH_BROTLI -lbrotlienc"
- CPPFLAGS="$CPPFLAGS -I$WITH_BROTLI"
- else
- PKG_CHECK_MODULES(, , ,
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- fi
- dnl Check for fam/gamin
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- dnl "$ac_cv_func_kqueue" is set further below
- case "$host_os" in
- *bsd*|*darwin* ) WITH_FAM=no ;;
- * ) ;;
- esac
- if test "$ac_cv_header_sys_inotify_h" != no; then
- WITH_FAM=no
- fi
- if test "$WITH_FAM" != no; then
- if test "$WITH_FAM" != yes; then
- FAM_LIBS="-L$WITH_FAM -lfam"
- CPPFLAGS="$CPPFLAGS -I$WITH_FAM"
- else
- AC_CHECK_LIB(, ,
- )
- dnl fam has no pkg-config so far, so just search for gamin as fallback
- if test -z "$FAM_LIBS"; then
- PKG_CHECK_MODULES(, )
- fi
- fi
- if test -z "$FAM_LIBS"; then
- AC_MSG_ERROR()
- fi
- OLD_LIBS=$LIBS
- LIBS=$FAM_LIBS
- AC_CHECK_FUNCS()
- LIBS=$OLD_LIBS
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- fi
- dnl webdav props (xml2 and sqlite3)
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_WEBDAV_PROPS" != no; then
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_LIBXML" = no; then
- AC_MSG_ERROR()
- fi
- if test "$WITH_LIBXML" != yes; then
- XML_LIBS="-L$WITH_LIBXML/.libs -lxml2"
- XML_CFLAGS="-I$WITH_LIBXML/include"
- else
- PKG_CHECK_MODULES(, , ,
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_SQLITE" = no; then
- AC_MSG_ERROR()
- fi
- if test "$WITH_SQLITE" != yes; then
- SQLITE_LIBS="-L$WITH_SQLITE/.libs -lsqlite3"
- SQLITE_CFLAGS="-I$WITH_SQLITE"
- else
- PKG_CHECK_MODULES(, , ,
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- fi
- dnl webdav locks (uuid)
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_WEBDAV_LOCKS" != no; then
- if test "$WITH_WEBDAV_PROPS" = no; then
- AC_MSG_ERROR()
- fi
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_UUID" = no; then
- AC_MSG_ERROR()
- fi
- if test "$WITH_UUID" != yes; then
- UUID_LIBS="-L$WITH_UUID -luuid"
- CPPFLAGS="$CPPFLAGS -I$WITH_UUID"
- else
- AC_CHECK_LIB(, ,
- ,
-
- )
- AC_CHECK_HEADERS(, ,
-
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- fi
- dnl xxhash
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
-
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_XXHASH" != no; then
- if test "$WITH_XXHASH" != yes; then
- XXHASH_LIBS="-L$WITH_XXHASH -lxxhash"
- CPPFLAGS="$CPPFLAGS -I$WITH_XXHASH"
- else
- PKG_CHECK_MODULES(, , ,
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- fi
- dnl Check for maxminddb
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_MAXMINDDB" != no; then
- if test "$WITH_MAXMINDDB" != yes; then
- MAXMINDDB_LIB="-L$WITH_MAXMINDDB -lmaxminddb"
- CPPFLAGS="$CPPFLAGS -I$WITH_MAXMINDDB"
- else
- AC_CHECK_LIB(, ,
- ,
-
- )
- AC_CHECK_HEADERS(, ,
-
- )
- fi
- AC_DEFINE(, , )
- AC_DEFINE(, )
- AC_SUBST()
- fi
- AM_CONDITIONAL(, )
- dnl Check for lua
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_WITH(,
- ,
- ,
-
- )
- AC_MSG_RESULT()
- if test "$WITH_LUA" != no; then
- found_lua=0
- if test "$WITH_LUA" != yes; then
- PKG_CHECK_MODULES(, ,
- ,
-
- )
- if test "$found_lua" = "0"; then
- LUA_LIBS="-L$WITH_LUA -llua"
- LUA_CFLAGS="-I$WITH_LUA"
- fi
- else
- for luaname in lua5.4 lua-5.4 lua5.3 lua-5.3 lua5.2 lua-5.2 lua5.1 lua-5.1 lua; do
- if test "$found_lua" = "0"; then
- PKG_CHECK_MODULES(, ,
- ,
-
- )
- fi
- done
- if test "$found_lua" = "0"; then
- AC_MSG_ERROR()
- fi
- fi
- AC_DEFINE(, , )
- AC_SUBST()
- AC_SUBST()
- fi
- AM_CONDITIONAL(, )
- dnl "--with-FEATURE" blocks end
- AC_MSG_NOTICE()
- dnl search for crypt_r and (fallback) for crypt
- save_LIBS=$LIBS
- LIBS=
- found_crypt=no
- AC_SEARCH_LIBS(, ,
-
- ,
-
- )
- LIBS=$save_LIBS
- AC_SUBST()
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- dnl check whether sendfilev needs -lsendfile
- case "$host_os" in
- *sunos*|*solaris* )
- AC_MSG_NOTICE()
- save_LIBS=$LIBS
- LIBS=
- have_sendfilev=no
- AC_SEARCH_LIBS(, ,
- )
- LIBS=$save_LIBS
- AC_SUBST()
- AC_MSG_CHECKING()
- AC_MSG_RESULT()
- ;;
- * ) ;;
- esac
- AC_MSG_NOTICE()
- case "$host_os" in
- *mingw* ) LIBS="$LIBS -lwsock32" ;;
- * ) ;;
- esac
- AC_CHECK_FUNCS(
- )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- if test "$ac_cv_func_poll" = no; then
- AC_CHECK_HEADERS()
- AC_CHECK_FUNCS()
- fi
- case "$host_os" in
- *sunos*|*solaris* )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(, )
- AC_CHECK_HEADERS(
- )
- ;;
- * ) ;;
- esac
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_LINK_IFELSE(
-
- ,
-
- ,
-
- )
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_ENABLE(,
-
- ,
-
- ,
-
- )
- AC_MSG_RESULT()
- if test "$ENABLE_LFS" = yes; then
- CPPFLAGS="${CPPFLAGS} -D_TIME_BITS=64 -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGE_FILES"
- AC_SYS_LARGEFILE
- fi
- dnl check if sendfile works
- if test "$ac_cv_func_sendfile" = yes; then
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- if test "$cross_compiling" = no; then
- AC_RUN_IFELSE(
- ,
- ,
-
- ,
- )
- fi
- fi
- dnl Check for IPv6 support
- AC_MSG_NOTICE()
- AC_ARG_ENABLE(,
- ,
-
- ,
-
- )
- if test "$ipv6" = true; then
- AC_CACHE_CHECK(, ,
- )
- if test "$ac_cv_ipv6_support" = yes; then
- AC_DEFINE(, , )
- else
- AC_MSG_ERROR()
- fi
- fi
- # disable mmap by default
- # lighttpd may always use mmap with files it owns (created tmp files)
- AC_MSG_NOTICE()
- AC_MSG_CHECKING()
- AC_ARG_ENABLE(,
-
- ,
-
- ,
-
- )
- AC_MSG_RESULT()
- if test "$mmap" = true; then
- AC_DEFINE(, , )
- fi
- AC_MSG_NOTICE()
- dnl check for extra compiler options (warning options)
- if test "${GCC}" = yes; then
- TRY_CFLAGS()
- fi
- AC_ARG_ENABLE(,
-
- ,
-
- ,
-
- )
- if test "$extrawarnings" = true || test "$extrawarnings" = error; then
- TRY_CFLAGS()
- TRY_CFLAGS()
- case "$host_os" in
- *darwin* ) ;;
- * ) TRY_LDFLAGS() ;;
- esac
- if test "$extrawarnings" = error; then
- AS_VAR_APPEND(, )
- case "$host_os" in
- *darwin* ) ;;
- * ) AS_VAR_APPEND(, ) ;;
- esac
- fi
- fi
- dnl build version-id
- LIGHTTPD_VERSION_ID=m4_format(, m4_unquote(m4_split(AC_PACKAGE_VERSION, )))
- AC_DEFINE_UNQUOTED(, , )
- AC_CONFIG_FILES(
- )
- AC_OUTPUT
- do_build="\
- mod_access \
- mod_accesslog \
- mod_ajp13 \
- mod_alias \
- mod_auth \
- mod_authn_file \
- mod_cgi \
- mod_deflate \
- mod_dirlisting \
- mod_evhost \
- mod_expire \
- mod_extforward \
- mod_fastcgi \
- mod_indexfile \
- mod_proxy \
- mod_redirect \
- mod_rewrite \
- mod_rrdtool \
- mod_scgi \
- mod_secdownload \
- mod_setenv \
- mod_simple_vhost \
- mod_sockproxy \
- mod_ssi \
- mod_staticfile \
- mod_status \
- mod_userdir \
- mod_usertrack \
- mod_vhostdb \
- mod_webdav \
- mod_wstunnel \
- "
- lighty_track_feature() {
- if eval "$3"; then
- enable_feature="$enable_feature $1"
- do_build="$do_build $2"
- else
- disable_feature="$disable_feature $1"
- no_build="$no_build $2"
- fi
- }
- lighty_track_feature "regex-conditionals" "" \
- 'test "$WITH_PCRE" != no || test "$WITH_PCRE2" != no'
- lighty_track_feature "mysql" "mod_vhostdb_mysql" \
- 'test "$WITH_MYSQL" != no'
- lighty_track_feature "postgresql" "mod_vhostdb_pgsql" \
- 'test "$WITH_PGSQL" != no'
- lighty_track_feature "dbi" "mod_authn_dbi mod_vhostdb_dbi" \
- 'test "$WITH_DBI" != no'
- lighty_track_feature "lua" "mod_magnet" \
- 'test "$WITH_LUA" != no'
- lighty_track_feature "maxminddb" "mod_maxminddb" \
- 'test "$WITH_MAXMINDDB" != no'
- lighty_track_feature "compress-gzip compress-deflate" "" \
- 'test "$WITH_ZLIB" != no'
- lighty_track_feature "compress-bzip2" "" \
- 'test "$WITH_BZIP2" != no'
- lighty_track_feature "compress-brotli" "" \
- 'test "$WITH_BROTLI" != no'
- lighty_track_feature "kerberos" "mod_authn_gssapi" \
- 'test "$WITH_KRB5" != no'
- lighty_track_feature "ldap" "mod_authn_ldap mod_vhostdb_ldap" \
- 'test "$WITH_LDAP" != no'
- lighty_track_feature "pam" "mod_authn_pam" \
- 'test "$WITH_PAM" != no'
- lighty_track_feature "network-openssl" "mod_openssl" \
- 'test "$WITH_OPENSSL" != no'
- lighty_track_feature "network-mbedtls" "mod_mbedtls" \
- 'test "$WITH_MBEDTLS" != no'
- lighty_track_feature "network-gnutls" "mod_gnutls" \
- 'test "$WITH_GNUTLS" != no'
- lighty_track_feature "network-nss" "mod_nss" \
- 'test "$WITH_NSS" != no'
- lighty_track_feature "network-wolfssl" "mod_wolfssl" \
- 'test "$WITH_WOLFSSL" != no'
- lighty_track_feature "auth-crypt" "" \
- 'test "$found_crypt" != no'
- lighty_track_feature "network-ipv6" "" \
- 'test "$ac_cv_ipv6_support" != no'
- lighty_track_feature "large-files" "" \
- 'test "$ENABLE_LFS" = yes'
- case "$host_os" in
- *linux* )
- lighty_track_feature "stat-cache-inotify" "" \
- 'test "$ac_cv_header_sys_inotify_h" != no'
- ;;
- * ) ;;
- esac
- case "$host_os" in
- *bsd*|*darwin* )
- lighty_track_feature "stat-cache-kqueue" "" \
- 'test "$ac_cv_func_kqueue" != no'
- ;;
- * ) ;;
- esac
- case "$host_os" in
- *bsd*|*darwin*|*linux* )
- ;;
- * )
- lighty_track_feature "stat-cache-fam" "" \
- 'test "$WITH_FAM" != no'
- ;;
- esac
- lighty_track_feature "webdav-properties" "" \
- 'test "$WITH_WEBDAV_PROPS" != no'
- lighty_track_feature "webdav-locks" "" \
- 'test "$WITH_WEBDAV_LOCKS" != no'
- dnl output
- $ECHO
- $ECHO "Plugins:"
- $ECHO
- $ECHO "enabled: "
- for p in $do_build; do
- $ECHO " $p"
- done | sort
- $ECHO "disabled: "
- for p in $no_build; do
- $ECHO " $p"
- done | sort
- $ECHO
- $ECHO "Features:"
- $ECHO
- $ECHO "enabled: "
- for p in $enable_feature; do
- $ECHO " $p"
- done | sort
- $ECHO "disabled: "
- for p in $disable_feature; do
- $ECHO " $p"
- done | sort
- $ECHO
|