📄 configure.ac
字号:
AC_PREREQ(2.52)AC_INIT(memcached, 1.2.2, brad@danga.com)AC_CANONICAL_SYSTEMAC_CONFIG_SRCDIR(memcached.c)AM_INIT_AUTOMAKE(AC_PACKAGE_NAME, AC_PACKAGE_VERSION)AM_CONFIG_HEADER(config.h)AC_PROG_CCAC_PROG_INSTALLtrylibeventdir=""AC_ARG_WITH(libevent, [ --with-libevent=PATH Specify path to libevent installation ], [ if test "x$withval" != "xno" ; then trylibeventdir=$withval fi ])dnl ------------------------------------------------------dnl libevent detection. swiped from Tor. modified a bit.LIBEVENT_URL=http://www.monkey.org/~provos/libevent/AC_CACHE_CHECK([for libevent directory], ac_cv_libevent_dir, [ saved_LIBS="$LIBS" saved_LDFLAGS="$LDFLAGS" saved_CPPFLAGS="$CPPFLAGS" le_found=no for ledir in $trylibeventdir "" $prefix /usr/local ; do LDFLAGS="$saved_LDFLAGS" LIBS="$saved_LIBS -levent" # Skip the directory if it isn't there. if test ! -z "$ledir" -a ! -d "$ledir" ; then continue; fi if test ! -z "$ledir" ; then if test -d "$ledir/lib" ; then LDFLAGS="-L$ledir/lib $LDFLAGS" else LDFLAGS="-L$ledir $LDFLAGS" fi if test -d "$ledir/include" ; then CPPFLAGS="-I$ledir/include $CPPFLAGS" else CPPFLAGS="-I$ledir $CPPFLAGS" fi fi # Can I compile and link it? AC_TRY_LINK([#include <sys/time.h>#include <sys/types.h>#include <event.h>], [ event_init(); ], [ libevent_linked=yes ], [ libevent_linked=no ]) if test $libevent_linked = yes; then if test ! -z "$ledir" ; then ac_cv_libevent_dir=$ledir else ac_cv_libevent_dir="(system)" fi le_found=yes break fi done LIBS="$saved_LIBS" LDFLAGS="$saved_LDFLAGS" CPPFLAGS="$saved_CPPFLAGS" if test $le_found = no ; then AC_MSG_ERROR([libevent is required. You can get it from $LIBEVENT_URL If it's already installed, specify its path using --with-libevent=/dir/]) fi])LIBS="$LIBS -levent"if test $ac_cv_libevent_dir != "(system)"; then if test -d "$ac_cv_libevent_dir/lib" ; then LDFLAGS="-L$ac_cv_libevent_dir/lib $LDFLAGS" le_libdir="$ac_cv_libevent_dir/lib" else LDFLAGS="-L$ac_cv_libevent_dir $LDFLAGS" le_libdir="$ac_cv_libevent_dir" fi if test -d "$ac_cv_libevent_dir/include" ; then CPPFLAGS="-I$ac_cv_libevent_dir/include $CPPFLAGS" else CPPFLAGS="-I$ac_cv_libevent_dir $CPPFLAGS" fifidnl ----------------------------------------------------------------------------AC_SEARCH_LIBS(socket, socket)AC_SEARCH_LIBS(gethostbyname, nsl)AC_SEARCH_LIBS(mallinfo, malloc)AC_SEARCH_LIBS(pthread_create, pthread)AC_CHECK_FUNC(daemon,AC_DEFINE([HAVE_DAEMON],,[Define this if you have daemon()]),[AC_LIBOBJ(daemon)])AC_HEADER_STDBOOLAC_C_CONSTAC_CHECK_HEADER(malloc.h, AC_DEFINE(HAVE_MALLOC_H,,[do we have malloc.h?]))AC_CHECK_MEMBER([struct mallinfo.arena], [ AC_DEFINE(HAVE_STRUCT_MALLINFO,,[do we have stuct mallinfo?]) ], ,[# include <malloc.h> ])dnl From licq: Copyright (c) 2000 Dirk Muellerdnl Check if the type socklen_t is defined anywhereAC_DEFUN(AC_C_SOCKLEN_T,[AC_CACHE_CHECK(for socklen_t, ac_cv_c_socklen_t,[ AC_TRY_COMPILE([ #include <sys/types.h> #include <sys/socket.h> ],[ socklen_t foo; ],[ ac_cv_c_socklen_t=yes ],[ ac_cv_c_socklen_t=no ])])if test $ac_cv_c_socklen_t = no; then AC_DEFINE(socklen_t, int, [define to int if socklen_t not available])fi])AC_C_SOCKLEN_Tdnl Check if we're a little-endian or a big-endian system, needed by hash codeAC_DEFUN(AC_C_ENDIAN,[AC_CACHE_CHECK(for endianness, ac_cv_c_endian,[ AC_RUN_IFELSE( [AC_LANG_PROGRAM([], [dnl long val = 1; char *c = (char *) &val; exit(*c == 1); ]) ],[ ac_cv_c_endian=big ],[ ac_cv_c_endian=little ])])if test $ac_cv_c_endian = big; then AC_DEFINE(ENDIAN_BIG, 1, [machine is bigendian])fiif test $ac_cv_c_endian = little; then AC_DEFINE(ENDIAN_LITTLE, 1, [machine is littleendian])fi])AC_C_ENDIANdnl Check whether the user wants threads or notAC_ARG_ENABLE(threads, [AS_HELP_STRING([--enable-threads],[support multithreaded execution])], [if test "$ac_cv_search_pthread_create" != "no"; then AC_DEFINE([USE_THREADS],,[Define this if you want to use pthreads]) else AC_MSG_ERROR([Can't enable threads without the POSIX thread library.]) fi])AC_CHECK_FUNCS(mlockall)AC_CONFIG_FILES(Makefile doc/Makefile)AC_OUTPUT
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -