📄 aclocal.m4
字号:
AC_CACHE_CHECK(for overloaded C++ operators in gmp.h, sfs_cv_gmp_cxx_ops, if test -f "${srcdir}/${GMP_DIR}"/gmp-h.in; then # More recent versions of GMP all have this sfs_cv_gmp_cxx_ops=yes else AC_EGREP_CPP(operator<<,[#define __cplusplus 1#include <gmp.h>], sfs_cv_gmp_cxx_ops=yes, sfs_cv_gmp_cxx_ops=no) fi)test "$sfs_cv_gmp_cxx_ops" = "yes" && AC_DEFINE([HAVE_GMP_CXX_OPS], 1, [Define if gmp.h overloads C++ operators])AC_CACHE_CHECK(for mpz_xor, sfs_cv_have_mpz_xor,unset sfs_cv_have_mpz_xorif test "$GMP_DIR"; then sfs_cv_have_mpz_xor=yeselse AC_EGREP_HEADER(mpz_xor, [gmp.h], sfs_cv_have_mpz_xor=yes)fi)test "$sfs_cv_have_mpz_xor" && AC_DEFINE([HAVE_MPZ_XOR], 1, [Define if you have mpz_xor in your GMP library.])AC_CACHE_CHECK(size of GMP mp_limb_t, sfs_cv_mp_limb_t_size,sfs_cv_mp_limb_t_size=nofor size in 2 4 8; do AC_TRY_COMPILE([#include <gmp.h>], [switch (0) case 0: case (sizeof (mp_limb_t) == $size):;], sfs_cv_mp_limb_t_size=$size; break)done)CFLAGS="$ac_save_CFLAGS"test "$sfs_cv_mp_limb_t_size" = no \ && AC_MSG_ERROR(Could not determine size of mp_limb_t.)AC_DEFINE_UNQUOTED(GMP_LIMB_SIZE, $sfs_cv_mp_limb_t_size, Define to be the size of GMP's mp_limb_t type.)])dnl dnldnl dnl Find BekeleyDB 3dnl dnldnl ac_defun(SFS_DB3,dnl [AC_ARG_WITH(db3,dnl --with-db3[[=/usr/local]] specify path for BerkeleyDB-3)dnl AC_SUBST(DB3_DIR)dnl AC_CONFIG_SUBDIRS($DB3_DIR)dnl AC_SUBST(DB3_LIB)dnl unset DB3_LIBdnl dnl DB3_DIR=`cd $srcdir && echo db-3.*/dist/`dnl if test -d "$srcdir/$DB3_DIR"; thendnl DB3_DIR=`echo $DB3_DIR | sed -e 's!/$!!'`dnl elsednl unset DB3_DIRdnl fidnl dnl if test ! "${with_db3+set}"; thendnl if test "$DB3_DIR"; thendnl with_db3=yesdnl elsednl with_db3=nodnl fidnl fidnl dnl if test "$with_db3" != no; thendnl AC_MSG_CHECKING([for DB3 library])dnl if test "$DB3_DIR" -a "$with_db3" = yes; thendnl CPPFLAGS="$CPPFLAGS "'-I$(top_builddir)/'"$DB3_DIR"dnl DB3_LIB='-L$(top_builddir)/'"$DB3_DIR -ldb"dnl AC_MSG_RESULT([using distribution in $DB3_DIR subdirectory])dnl elsednl libdbrx='^libdb-?([[3.-]].*)?.(la|so|a)$'dnl libdbrxla='^libdb-?([[3.-]].*)?.la$'dnl libdbrxso='^libdb-?([[3.-]].*)?.so$'dnl libdbrxa='^libdb-?([[3.-]].*)?.a$'dnl if test "$with_db3" = yes; thendnl for dir in "$prefix/BerkeleyDB.3.1" /usr/local/BerkeleyDB.3.1 \dnl "$prefix/BerkeleyDB.3.0" /usr/local/BerkeleyDB.3.0 \dnl /usr "$prefix" /usr/local; dodnl test -f $dir/include/db.h -o -f $dir/include/db3.h \dnl -o -f $dir/include/db3/db.h || continuednl if test -f $dir/lib/libdb.a \dnl || ls $dir/lib | egrep "$libdbrx" >/dev/null 2>&1; thendnl with_db3="$dir"dnl breakdnl fidnl donednl fidnl dnl if test -f $with_db3/include/db3.h; thendnl AC_DEFINE(HAVE_DB3_H, 1, [Define if BerkeleyDB header is db3.h.])dnl if test "$with_db3" != /usr; thendnl CPPFLAGS="$CPPFLAGS -I${with_db3}/include"dnl fidnl elif test -f $with_db3/include/db3/db.h; thendnl if test "$with_db3" != /usr; thendnl CPPFLAGS="$CPPFLAGS -I${with_db3}/include/db3"dnl fidnl elif test -f $with_db3/include/db.h; thendnl if test "$with_db3" != /usr; thendnl CPPFLAGS="$CPPFLAGS -I${with_db3}/include"dnl fidnl elsednl AC_MSG_ERROR([Could not find BerkeleyDB library version 3])dnl fidnl dnl DB3_LIB=`ls $with_db3/lib | egrep "$libdbrxla" | tail -1`dnl test ! -f "$with_db3/lib/$DB3_LIB" \dnl && DB3_LIB=`ls $with_db3/lib | egrep "$libdbrxso" | tail -1`dnl test ! -f "$with_db3/lib/$DB3_LIB" \dnl && DB3_LIB=`ls $with_db3/lib | egrep "$libdbrxa" | tail -1`dnl if test -f "$with_db3/lib/$DB3_LIB"; thendnl DB3_LIB="$with_db3/lib/$DB3_LIB"dnl elif test "$with_db3" = /usr; thendnl with_db3=yesdnl DB3_LIB="-ldb"dnl elsednl DB3_LIB="-L${with_db3}/lib -ldb"dnl fidnl AC_MSG_RESULT([$with_db3])dnl fidnl fidnl dnl AM_CONDITIONAL(USE_DB3, test "${with_db3}" != no)dnl ])dnl pushdef([arglist], [ifelse($#, 0, , $#, 1, [[$1]],dnl [[$1] arglist(shift($@))])])dnldnldnl SFS_TRY_SLEEPYCAT_VERSION(vers, dir)dnlAC_DEFUN(SFS_TRY_SLEEPYCAT_VERSION,[vers=$1dir=$2majvers=`echo $vers | sed -e 's/\..*//'`minvers=`echo $vers | sed -e 's/[^.]*\.//' -e 's/\..*//'`escvers=`echo $vers | sed -e 's/\./\\./g'`catvers=`echo $vers | sed -e 's/\.//g'`: sfs_try_sleepycat_version $vers $dir $majvers $minvers $escvers $catversunset db_headerunset db_libraryfor header in \ $dir/include/db$vers/db.h $dir/include/db$catvers/db.h \ $dir/include/db$majvers/db.h \ $dir/include/db$catvers.h $dir/include/db$majvers.h \ $dir/include/db.hdo test -f $header || continue AC_EGREP_CPP(^db_version_is $majvers *\. *$minvers *\$,[#include "$header"db_version_is DB_VERSION_MAJOR.DB_VERSION_MINOR], db_header=$header; break)doneif test "$db_header"; then for vdir in "$dir/lib/db$catvers" "$dir/lib/db$majvers" \ "$dir/lib/db" "$dir/lib" do for library in $vdir/libdb-$vers.la $vdir/libdb$catvers.la \ $vdir/libdb.la $vdir/libdb-$vers.a $vdir/libdb$catvers.a do if test -f $library; then db_library=$library break 2; fi done done if test -z "$db_library"; then case $db_header in */db.h) test -f $dir/lib/libdb.a && db_library=$dir/lib/libdb.a ;; esac fi if test "$db_library"; then case $db_header in */db.h) CPPFLAGS="$CPPFLAGS -I"`dirname $db_header` ;; *) ln -s $db_header db.h ;; esac case $db_library in *.la) DB_LIB=$db_library ;; *.a) minusl=`echo $db_library | sed -e 's/^.*\/lib\(.*\)\.a$/-l\1/'` DB_LIB=-L`dirname $db_library`" $minusl" ;; */lib*.so.*) minusl=`echo $db_library | sed -e 's/^.*\/lib\(.*\)\.so\..*/-l\1/'` DB_LIB=-L`dirname $db_library`" $minusl" ;; esac fifi])dnldnl SFS_SLEEPYCAT(v1 v2 v3 ..., required)dnldnl Find BekeleyDB version v1, v2, or v3...dnl required can be "no" if DB is not requireddnlAC_DEFUN(SFS_SLEEPYCAT,[AC_ARG_WITH(db,--with-db[[[=/usr/local]]] specify path for BerkeleyDB (from sleepycat.com))AC_SUBST(DB_DIR)AC_CONFIG_SUBDIRS($DB_DIR)AC_SUBST(DB_LIB)unset DB_LIBrm -f db.hfor vers in $1; do DB_DIR=`cd $srcdir && echo db-$vers.*/dist/` if test -d "$srcdir/$DB_DIR"; then DB_DIR=`echo $DB_DIR | sed -e 's!/$!!'` break else unset DB_DIR fidonetest -z "${with_db+set}" && with_db=yesAC_MSG_CHECKING(for BerkeleyDB library)if test "$DB_DIR" -a "$with_db" = yes; then CPPFLAGS="$CPPFLAGS "'-I$(top_builddir)/'"$DB_DIR/dist" DB_LIB='$(top_builddir)/'"$DB_DIR/dist/.libs/libdb-*.a" AC_MSG_RESULT([using distribution in $DB_DIR subdirectory])else if test "$with_db" = yes; then for vers in $1; do for dir in "$prefix/BerkeleyDB.$vers" \ "/usr/BerkeleyDB.$vers" \ "/usr/local/BerkeleyDB.$vers" \ $prefix /usr /usr/local; do SFS_TRY_SLEEPYCAT_VERSION($vers, $dir) test -z "$DB_LIB" || break 2 done done else for vers in $1; do SFS_TRY_SLEEPYCAT_VERSION($vers, $with_db) test -z "$DB_LIB" || break done test -z "$DB_LIB" && AC_MSG_ERROR(Cannot find BerkeleyDB in $with_db) fifiif test x"$DB_LIB" != x; then AC_MSG_RESULT($DB_LIB) USE_DB=yeselse AC_MSG_RESULT(no) USE_DB=no if test "$2" != "no"; then AC_MSG_ERROR(Cannot find BerkeleyDB) fifiAM_CONDITIONAL(USE_DB, test "$USE_DB" = yes)])dnldnl Find OpenSSLdnlAC_DEFUN(SFS_OPENSSL,[AC_SUBST(OPENSSL_DIR)AC_ARG_WITH(openssl,--with-openssl[[=/usr/local/openssl]] Find OpenSSL libraries (DANGER--FOR BENCHMARKING ONLY))AC_MSG_CHECKING([for OpenSSL])test "$with_openssl" = "yes" && unset with_opensslunset OPENSSL_DIRif test -z "$with_openssl"; then with_openssl=no for dir in /usr/local/openssl/ /usr/local/ssl/ \ `ls -1d /usr/local/openssl-*/ 2>/dev/null | tail -1`; do if test -f $dir/lib/libssl.a -a -f $dir/include/openssl/ssl.h; then with_openssl=`echo $dir | sed -e 's/\/$//'` break fi donefiOPENSSL_DIR="$with_openssl"AC_MSG_RESULT([$with_openssl])if test "$with_openssl" = no; thendnl if test -z "$with_openssl"; thendnl AC_MSG_ERROR([Could not find OpenSSL libraries])dnl fi unset OPENSSL_DIRfi])dnldnl Use dmalloc if requesteddnlAC_DEFUN(SFS_DMALLOC,[dnl AC_ARG_WITH(small-limits,dnl --with-small-limits Try to trigger memory allocation bugs,dnl CPPFLAGS="$CPPFLAGS -DSMALL_LIMITS"dnl test "${with_dmalloc+set}" = set || with_dmalloc=yesdnl )AC_CHECK_HEADERS(memory.h)AC_ARG_WITH(dmalloc,--with-dmalloc use debugging malloc from www.dmalloc.com (set MAX_FILE_LEN to 1024 when installing),pref=$prefixtest "$pref" = NONE && pref=$ac_default_prefixtest "$withval" = yes && withval="${pref}"test "$withval" || withval="${pref}"using_dmalloc=noif test "$withval" != no; then AC_DEFINE(DMALLOC, 1, Define if compiling with dmalloc. )dnl CPPFLAGS="$CPPFLAGS -DDMALLOC" CPPFLAGS="$CPPFLAGS -I${withval}/include" LIBS="$LIBS -L${withval}/lib -ldmalloc" using_dmalloc=yesfi)AM_CONDITIONAL(DMALLOC, test "$using_dmalloc" = yes)])dnldnl Find perldnlAC_DEFUN(SFS_PERLINFO,[AC_ARG_WITH(perl,--with-perl=PATH Specify perl executable to use,[case "$withval" in yes|no|"") ;; *) PERL="$withval" ;;esac])if test -z "$PERL" || test ! -x "$PERL"; then AC_PATH_PROGS(PERL, perl5 perl)fiif test -x "$PERL" && $PERL -e 'require 5.004'; then :; else AC_MSG_ERROR("Can\'t find perl 5.004 or later")fiAC_CACHE_CHECK(for perl includes, sfs_cv_perl_ccopts, sfs_cv_perl_ccopts=`$PERL -MExtUtils::Embed -e ccopts` sfs_cv_perl_ccopts=`echo $sfs_cv_perl_ccopts`)AC_CACHE_CHECK(for perl libraries, sfs_cv_perl_ldopts, sfs_cv_perl_ldopts=`$PERL -MExtUtils::Embed -e ldopts -- -std` sfs_cv_perl_ldopts=`echo $sfs_cv_perl_ldopts`)AC_CACHE_CHECK(for perl xsubpp, sfs_cv_perl_xsubpp, sfs_cv_perl_xsubpp="$PERL "`$PERL -MConfig -e 'print qq(\ -I$Config{"installarchlib"} -I$Config{"installprivlib"}\ $Config{"installprivlib"}/ExtUtils/xsubpp\ -typemap $Config{"installprivlib"}/ExtUtils/typemap)'` sfs_cv_perl_xsubpp=`echo $sfs_cv_perl_xsubpp`)XSUBPP="$sfs_cv_perl_xsubpp"PERL_INC="$sfs_cv_perl_ccopts"PERL_LIB="$sfs_cv_perl_ldopts"PERL_XSI="$PERL -MExtUtils::Embed -e xsinit -- -std"AC_SUBST(PERL)AC_SUBST(PERL_INC)AC_SUBST(PERL_LIB)AC_SUBST(PERL_XSI)AC_SUBST(XSUBPP)])dnldnl Check for perl and for Pod::Man for generating man pagesdnlAC_DEFUN(SFS_PERL_POD,[if test -z "$PERL" || text ! -x "$PERL"; then AC_PATH_PROGS(PERL, perl5 perl)fiAC_PATH_PROGS(POD2MAN, pod2man)if test "$PERL"; then AC_CACHE_CHECK(for Pod::Man, sfs_cv_perl_pod_man, $PERL -e '{ require Pod::Man }' >/dev/null 2>&1 if test $? = 0; then sfs_cv_perl_pod_man="yes" else sfs_cv_perl_pod_man="no" fi ) PERL_POD_MAN="$sfs_cv_perl_pod_man"fiAC_SUBST(PERL_POD_MAN)])dnl'dnl Various warning flags for gcc. This must go at the very top,dnl right after AC_PROG_CC and AC_PROG_CXX.dnlAC_DEFUN(SFS_WFLAGS,[AC_SUBST(NW)AC_SUBST(WFLAGS)AC_SUBST(CXXWFLAGS)AC_SUBST(DEBUG)AC_SUBST(CXXDEBUG)AC_SUBST(ECFLAGS)AC_SUBST(ECXXFLAGS)AC_SUBST(CXXNOERR)test -z "${CXXWFLAGS+set}" -a "${WFLAGS+set}" && CXXWFLAGS="$WFLAGS"test -z "${CXXDEBUG+set}" -a "${DEBUG+set}" && CXXDEBUG="$DEBUG"test "${DEBUG+set}" || DEBUG="$CFLAGS"export DEBUGtest "${CXXDEBUG+set}" || CXXDEBUG="$CXXFLAGS"export CXXDEBUG
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -