⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ha_berkeley.m4

📁 这是linux下运行的mysql软件包,可用于linux 下安装 php + mysql + apach 的网络配置
💻 M4
字号:
dnl ---------------------------------------------------------------------------dnl Macro: MYSQL_CHECK_BDBdnl Sets HAVE_BERKELEY_DB if inst library is founddnl Makes sure db version is correct.dnl Looks in $srcdir for Berkeley distribution if not told otherwisednl ---------------------------------------------------------------------------AC_DEFUN([MYSQL_CHECK_BDB], [  AC_ARG_WITH([berkeley-db],              [  --with-berkeley-db[=DIR]                          Use BerkeleyDB located in DIR],              [bdb="$withval"],              [bdb=no])  AC_ARG_WITH([berkeley-db-includes],              [  --with-berkeley-db-includes=DIR                          Find Berkeley DB headers in DIR],              [bdb_includes="$withval"],              [bdb_includes=default])  AC_ARG_WITH([berkeley-db-libs],              [  --with-berkeley-db-libs=DIR                          Find Berkeley DB libraries in DIR],              [bdb_libs="$withval"],              [bdb_libs=default])  AC_MSG_CHECKING([for BerkeleyDB])dnl     SORT OUT THE SUPPLIED ARGUMENTS TO DETERMINE WHAT TO DOdnl echo "DBG1: bdb='$bdb'; incl='$bdb_includes'; lib='$bdb_libs'"  have_berkeley_db=no  case "$bdb" in    no )      mode=no      AC_MSG_RESULT([no])      ;;    yes | default )      case "$bdb_includes---$bdb_libs" in        default---default )          mode=search-$bdb          AC_MSG_RESULT([searching...])          ;;        default---* | *---default | yes---* | *---yes )          AC_MSG_ERROR([if either 'includes' or 'libs' is specified, both must be specified])          ;;        * )          mode=supplied-two          AC_MSG_RESULT([supplied])          ;;      esac      ;;    * )      mode=supplied-one      AC_MSG_RESULT([supplied])      ;;  esacdnl echo "DBG2: [$mode] bdb='$bdb'; incl='$bdb_includes'; lib='$bdb_libs'"  case $mode in    no )      bdb_includes=      bdb_libs=      bdb_libs_with_path=      ;;    supplied-two )      MYSQL_CHECK_INSTALLED_BDB([$bdb_includes], [$bdb_libs])      case $bdb_dir_ok in        installed ) mode=yes ;;        * ) AC_MSG_ERROR([didn't find valid BerkeleyDB: $bdb_dir_ok]) ;;      esac      ;;    supplied-one )      MYSQL_CHECK_BDB_DIR([$bdb])      case $bdb_dir_ok in        source ) mode=compile ;;        installed ) mode=yes ;;        * ) AC_MSG_ERROR([didn't find valid BerkeleyDB: $bdb_dir_ok]) ;;      esac      ;;    search-* )      MYSQL_SEARCH_FOR_BDB      case $bdb_dir_ok in        source ) mode=compile ;;        installed ) mode=yes ;;        * )          # not found          case $mode in            *-yes ) AC_MSG_ERROR([no suitable BerkeleyDB found]) ;;            * ) mode=no ;;          esac         bdb_includes=         bdb_libs=	 bdb_libs_with_path=          ;;      esac      ;;    *)      AC_MSG_ERROR([impossible case condition '$mode': please report this to bugs@lists.mysql.com])      ;;  esacdnl echo "DBG3: [$mode] bdb='$bdb'; incl='$bdb_includes'; lib='$bdb_libs'"  case $mode in    no )      AC_MSG_RESULT([Not using Berkeley DB])      ;;    yes )      have_berkeley_db="yes"      AC_MSG_RESULT([Using Berkeley DB in '$bdb_includes'])      ;;    compile )      have_berkeley_db="$bdb"      AC_MSG_RESULT([Compiling Berekeley DB in '$have_berkeley_db'])      ;;    * )      AC_MSG_ERROR([impossible case condition '$mode': please report this to bugs@lists.mysql.com])      ;;  esac  AC_SUBST(bdb_includes)  AC_SUBST(bdb_libs)  AC_SUBST(bdb_libs_with_path)])AC_DEFUN([MYSQL_CHECK_INSTALLED_BDB], [dnl echo ["MYSQL_CHECK_INSTALLED_BDB ($1) ($2)"]  inc="$1"  lib="$2"  if test -f "$inc/db.h"  then    MYSQL_CHECK_BDB_VERSION([$inc/db.h],      [.*#define[ 	]*], [[ 	][ 	]*])    if test X"$bdb_version_ok" = Xyes; then      save_LDFLAGS="$LDFLAGS"      LDFLAGS="-L$lib $LDFLAGS"      AC_CHECK_LIB(db,db_env_create, [        bdb_dir_ok=installed        MYSQL_TOP_BUILDDIR([inc])        MYSQL_TOP_BUILDDIR([lib])        bdb_includes="-I$inc"        bdb_libs="-L$lib -ldb"        bdb_libs_with_path="$lib/libdb.a"      ])      LDFLAGS="$save_LDFLAGS"    else      bdb_dir_ok="$bdb_version_ok"    fi  else    bdb_dir_ok="no db.h file in '$inc'"  fi])AC_DEFUN([MYSQL_CHECK_BDB_DIR], [dnl ([$bdb])dnl echo ["MYSQL_CHECK_BDB_DIR ($1)"]  dir="$1"  MYSQL_CHECK_INSTALLED_BDB([$dir/include], [$dir/lib])  if test X"$bdb_dir_ok" != Xinstalled; then    # test to see if it's a source dir    rel="$dir/dist/RELEASE"    if test -f "$rel"; then      MYSQL_CHECK_BDB_VERSION([$rel], [], [=])      if test X"$bdb_version_ok" = Xyes; then        bdb_dir_ok=source        bdb="$dir"        MYSQL_TOP_BUILDDIR([dir])        bdb_includes="-I$dir/build_unix"        bdb_libs="-L$dir/build_unix -ldb"	bdb_libs_with_path="$dir/build_unix/libdb.a"      else        bdb_dir_ok="$bdb_version_ok"      fi    else      bdb_dir_ok="'$dir' doesn't look like a BDB directory ($bdb_dir_ok)"    fi  fi])AC_DEFUN([MYSQL_SEARCH_FOR_BDB], [dnl echo ["MYSQL_SEARCH_FOR_BDB"]  bdb_dir_ok="no BerkeleyDB found"  for test_dir in $srcdir/bdb $srcdir/db-*.*.* /usr/local/BerkeleyDB*; dodnl    echo "-----------> Looking at ($test_dir; `cd $test_dir && pwd`)"    MYSQL_CHECK_BDB_DIR([$test_dir])    if test X"$bdb_dir_ok" = Xsource || test X"$bdb_dir_ok" = Xinstalled; thendnl	echo "-----------> Found it ($bdb), ($srcdir)"dnl     This is needed so that 'make distcheck' works properly (VPATH build).dnl     VPATH build won't work if bdb is not under the source tree; but indnl     that case, hopefully people will just make and install inside thednl     tree, or install BDB first, and then use the installed version.	case "$bdb" in	"$srcdir/"* ) bdb=`echo "$bdb" | sed -e "s,^$srcdir/,,"` ;;	esac        break    fi  done])dnl MYSQL_CHECK_BDB_VERSION takes 3 arguments:dnl     1)  the file to look indnl     2)  the search pattern before DB_VERSION_XXXdnl     3)  the search pattern between DB_VERSION_XXX and the numberdnl It assumes that the number is the last thing on the lineAC_DEFUN([MYSQL_CHECK_BDB_VERSION], [  db_major=`sed -e '/^[$2]DB_VERSION_MAJOR[$3]/ !d' -e 's///' [$1]`  db_minor=`sed -e '/^[$2]DB_VERSION_MINOR[$3]/ !d' -e 's///' [$1]`  db_patch=`sed -e '/^[$2]DB_VERSION_PATCH[$3]/ !d' -e 's///' [$1]`  test -z "$db_major" && db_major=0  test -z "$db_minor" && db_minor=0  test -z "$db_patch" && db_patch=0  # This is ugly, but about as good as it can get#  mysql_bdb=#  if test $db_major -eq 3 && test $db_minor -eq 2 && test $db_patch -eq 3#  then#    mysql_bdb=h#  elif test $db_major -eq 3 && test $db_minor -eq 2 && test $db_patch -eq 9#  then#    want_bdb_version="3.2.9a"	# hopefully this will stay up-to-date#    mysql_bdb=a#  fidnl RAM:want_bdb_version="4.1.24"bdb_version_ok=yes#  if test -n "$mysql_bdb" && \#	grep "DB_VERSION_STRING.*:.*$mysql_bdb: " [$1] > /dev/null#  then#    bdb_version_ok=yes#  else#    bdb_version_ok="invalid version $db_major.$db_minor.$db_patch"#    bdb_version_ok="$bdb_version_ok (must be version 3.2.3h or $want_bdb_version)"#  fi])AC_DEFUN([MYSQL_TOP_BUILDDIR], [  case "$[$1]" in    /* ) ;;		# don't do anything with an absolute path    "$srcdir"/* )      # If BDB is under the source directory, we need to look under the      # build directory for bdb/build_unix.      # NOTE: I'm being lazy, and assuming the user did not specify      # something like --with-berkeley-db=bdb (it would be missing "./").      [$1]="\$(top_builddir)/"`echo "$[$1]" | sed -e "s,^$srcdir/,,"`      ;;    * )      AC_MSG_ERROR([The BDB directory must be directly under the MySQL source directory, or be specified using the full path. ('$srcdir'; '$[$1]')])      ;;  esac  if test X"$[$1]" != "/"  then    [$1]=`echo $[$1] | sed -e 's,/$,,'`  fi])dnl ---------------------------------------------------------------------------dnl END OF MYSQL_CHECK_BDB SECTIONdnl ---------------------------------------------------------------------------

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -