summaryrefslogtreecommitdiff
path: root/ndb/config/configure.in
diff options
context:
space:
mode:
Diffstat (limited to 'ndb/config/configure.in')
-rw-r--r--ndb/config/configure.in2085
1 files changed, 2085 insertions, 0 deletions
diff --git a/ndb/config/configure.in b/ndb/config/configure.in
new file mode 100644
index 00000000000..4fa5ccdb672
--- /dev/null
+++ b/ndb/config/configure.in
@@ -0,0 +1,2085 @@
+dnl -*- ksh -*-
+dnl Process this file with autoconf to produce a configure script.
+
+AC_INIT(../../sql/mysqld.cc)
+AC_CANONICAL_SYSTEM
+# The Docs Makefile.am parses this line!
+AM_INIT_AUTOMAKE(mysql, 4.1.2-3.4.3-alpha)
+AM_CONFIG_HEADER(config.h)
+
+PROTOCOL_VERSION=10
+DOT_FRM_VERSION=6
+# See the libtool docs for information on how to do shared lib versions.
+SHARED_LIB_VERSION=14:0:0
+
+# Set all version vars based on $VERSION. How do we do this more elegant ?
+# Remember that regexps needs to quote [ and ] since this is run through m4
+MYSQL_NO_DASH_VERSION=`echo $VERSION | sed -e "s|[[a-z]]*-.*$||"`
+MYSQL_BASE_VERSION=`echo $MYSQL_NO_DASH_VERSION | sed -e "s|\.[[^.]]*$||"`
+MYSQL_VERSION_ID=`echo $MYSQL_NO_DASH_VERSION. | sed -e 's/\./ /g; s/ \([[0-9]]\) / 0\\1 /g; s/ //g'`
+
+# The port should be constant for a LONG time
+MYSQL_TCP_PORT_DEFAULT=3306
+MYSQL_UNIX_ADDR_DEFAULT="/tmp/mysql.sock"
+
+#####
+#####
+
+AC_SUBST(MYSQL_NO_DASH_VERSION)
+AC_SUBST(MYSQL_BASE_VERSION)
+AC_SUBST(MYSQL_VERSION_ID)
+AC_SUBST(PROTOCOL_VERSION)
+AC_DEFINE_UNQUOTED(PROTOCOL_VERSION, $PROTOCOL_VERSION)
+AC_SUBST(DOT_FRM_VERSION)
+AC_DEFINE_UNQUOTED(DOT_FRM_VERSION, $DOT_FRM_VERSION)
+AC_SUBST(SHARED_LIB_VERSION)
+
+# Canonicalize the configuration name.
+SYSTEM_TYPE="$host_vendor-$host_os"
+MACHINE_TYPE="$host_cpu"
+AC_SUBST(SYSTEM_TYPE)
+AC_DEFINE_UNQUOTED(SYSTEM_TYPE, "$SYSTEM_TYPE")
+AC_SUBST(MACHINE_TYPE)
+AC_DEFINE_UNQUOTED(MACHINE_TYPE, "$MACHINE_TYPE")
+
+# Detect intel x86 like processor
+BASE_MACHINE_TYPE=$MACHINE_TYPE
+case $MACHINE_TYPE in
+ i?86) BASE_MACHINE_TYPE=i386 ;;
+esac
+
+# Save some variables and the command line options for mysqlbug
+SAVE_ASFLAGS="$ASFLAGS"
+SAVE_CFLAGS="$CFLAGS"
+SAVE_CXXFLAGS="$CXXFLAGS"
+SAVE_LDFLAGS="$LDFLAGS"
+SAVE_CXXLDFLAGS="$CXXLDFLAGS"
+CONF_COMMAND="$0 $ac_configure_args"
+AC_SUBST(CONF_COMMAND)
+AC_SUBST(SAVE_ASFLAGS)
+AC_SUBST(SAVE_CFLAGS)
+AC_SUBST(SAVE_CXXFLAGS)
+AC_SUBST(SAVE_LDFLAGS)
+AC_SUBST(SAVE_CXXLDFLAGS)
+AC_SUBST(CXXLDFLAGS)
+
+AC_PREREQ(2.12)dnl Minimum Autoconf version required.
+
+AM_MAINTAINER_MODE
+#AC_ARG_PROGRAM # Automaticly invoked by AM_INIT_AUTOMAKE
+AM_SANITY_CHECK
+# This is needed is SUBDIRS is set
+AC_PROG_MAKE_SET
+
+# This is need before AC_PROG_CC
+#
+
+if test "x${CFLAGS-}" = x ; then
+ cflags_is_set=no
+else
+ cflags_is_set=yes
+fi
+
+if test "x${CPPFLAGS-}" = x ; then
+ cppflags_is_set=no
+else
+ cppflags_is_set=yes
+fi
+
+if test "x${LDFLAGS-}" = x ; then
+ ldflags_is_set=no
+else
+ ldflags_is_set=yes
+fi
+
+# The following hack should ensure that configure doesn't add optimizing
+# or debugging flags to CFLAGS or CXXFLAGS
+CFLAGS="$CFLAGS "
+CXXFLAGS="$CXXFLAGS "
+
+dnl Checks for programs.
+AC_PROG_AWK
+AC_PROG_CC
+AC_PROG_CXX
+AC_PROG_CPP
+
+# Print version of CC and CXX compiler (if they support --version)
+case $SYSTEM_TYPE in
+ *netware*)
+CC_VERSION=`$CC -version | grep -i version`
+ ;;
+ *)
+CC_VERSION=`$CC --version | sed 1q`
+ ;;
+esac
+if test $? -eq "0"
+then
+ AC_MSG_CHECKING("C Compiler version");
+ AC_MSG_RESULT("$CC $CC_VERSION")
+else
+CC_VERSION=""
+fi
+case $SYSTEM_TYPE in
+ *netware*)
+CXX_VERSION=`$CXX -version | grep -i version`
+ ;;
+ *)
+CXX_VERSION=`$CXX --version | sed 1q`
+ ;;
+esac
+if test $? -eq "0"
+then
+ AC_MSG_CHECKING("C++ compiler version");
+ AC_MSG_RESULT("$CXX $CXX_VERSION")
+else
+CXX_VERSION=""
+fi
+AC_SUBST(CXX_VERSION)
+AC_SUBST(CC_VERSION)
+
+# Fix for sgi gcc / sgiCC which tries to emulate gcc
+if test "$CC" = "sgicc"
+then
+ ac_cv_prog_gcc="no"
+fi
+if test "$CXX" = "sgi++"
+then
+ GXX="no"
+fi
+
+if test "$ac_cv_prog_gcc" = "yes"
+then
+ AS="$CC -c"
+ AC_SUBST(AS)
+else
+ AC_PATH_PROG(AS, as, as)
+fi
+# Still need ranlib for readline; local static use only so no libtool.
+AC_PROG_RANLIB
+# We use libtool
+#AC_LIBTOOL_WIN32_DLL
+AC_PROG_LIBTOOL
+
+# Ensure that we have --preserve-dup-deps defines, otherwise we get link
+# problems of 'mysql' with CXX=g++
+LIBTOOL="$LIBTOOL --preserve-dup-deps"
+AC_SUBST(LIBTOOL)dnl
+
+#AC_LIBTOOL_DLOPEN AC_LIBTOOL_WIN32_DLL AC_DISABLE_FAST_INSTALL AC_DISABLE_SHARED AC_DISABLE_STATIC
+
+# AC_PROG_INSTALL
+AC_PROG_INSTALL
+test -z "$INSTALL_SCRIPT" && INSTALL_SCRIPT='${INSTALL_PROGRAM}'
+
+# Not critical since the generated file is distributed
+AC_PROG_YACC
+AC_CHECK_PROG(PDFMANUAL, pdftex, manual.pdf)
+AC_CHECK_PROG(DVIS, tex, manual.dvi)
+
+AC_MSG_CHECKING("return type of sprintf")
+
+#check the return type of sprintf
+case $SYSTEM_TYPE in
+ *netware*)
+ AC_DEFINE(SPRINTF_RETURNS_INT) AC_MSG_RESULT("int")
+ ;;
+ *)
+AC_TRY_RUN([
+ int main()
+ {
+ char* s = "hello";
+ char buf[6];
+ if((int)sprintf(buf, s) == strlen(s))
+ return 0;
+
+ return -1;
+ }
+ ],
+AC_DEFINE(SPRINTF_RETURNS_INT) AC_MSG_RESULT("int"),
+ AC_TRY_RUN([
+ int main()
+ {
+ char* s = "hello";
+ char buf[6];
+ if((char*)sprintf(buf,s) == buf + strlen(s))
+ return 0;
+ return -1;
+ }
+], AC_DEFINE(SPRINTF_RETURNS_PTR) AC_MSG_RESULT("ptr"),
+ AC_DEFINE(SPRINTF_RETURNS_GARBAGE) AC_MSG_RESULT("garbage")))
+ ;;
+esac
+
+
+# option, cache_name, variable,
+# code to execute if yes, code to exectute if fail
+AC_DEFUN(AC_SYS_COMPILER_FLAG,
+[
+ AC_MSG_CHECKING($1)
+ OLD_CFLAGS="[$]CFLAGS"
+ AC_CACHE_VAL(mysql_cv_option_$2,
+ [
+ CFLAGS="[$]OLD_CFLAGS $1"
+ AC_TRY_RUN([int main(){exit(0);}],mysql_cv_option_$2=yes,mysql_cv_option_$2=no,mysql_cv_option_$2=no)
+ ])
+
+ CFLAGS="[$]OLD_CFLAGS"
+
+ if test x"[$]mysql_cv_option_$2" = "xyes" ; then
+ $3="[$]$3 $1"
+ AC_MSG_RESULT(yes)
+ $5
+ else
+ AC_MSG_RESULT(no)
+ $4
+ fi
+])
+
+# arch, option, cache_name, variable
+AC_DEFUN(AC_SYS_CPU_COMPILER_FLAG,
+[
+ if test "`uname -m 2>/dev/null`" = "$1" ; then
+ AC_SYS_COMPILER_FLAG($2,$3,$4)
+ fi
+])
+
+# os, option, cache_name, variable
+AC_DEFUN(AC_SYS_OS_COMPILER_FLAG,
+[
+ if test "x$mysql_cv_sys_os" = "x$1" ; then
+ AC_SYS_COMPILER_FLAG($2,$3,$4)
+ fi
+])
+
+# We need some special hacks when running slowaris
+AC_PATH_PROG(uname_prog, uname, no)
+
+# We should go through this and put all the explictly system dependent
+# stuff in one place
+AC_MSG_CHECKING(operating system)
+AC_CACHE_VAL(mysql_cv_sys_os,
+[
+if test "$uname_prog" != "no"; then
+ mysql_cv_sys_os="`uname`"
+else
+ mysql_cv_sys_os="Not Solaris"
+fi
+])
+AC_MSG_RESULT($mysql_cv_sys_os)
+
+# This should be rewritten to use $target_os
+case "$target_os" in
+ sco3.2v5*)
+ CFLAGS="$CFLAGS -DSCO"
+ CXXFLAGS="$CXXFLAGS -DSCO"
+ LD='$(CC) $(CFLAGS)'
+ case "$CFLAGS" in
+ *-belf*)
+ AC_SYS_COMPILER_FLAG(-belf,sco_belf_option,CFLAGS,[],[
+ case "$LDFLAGS" in
+ *-belf*) ;;
+ *) echo "Adding -belf option to ldflags."
+ LDFLAGS="$LDFLAGS -belf"
+ ;;
+ esac
+ ])
+ ;;
+ *)
+ AC_SYS_COMPILER_FLAG(-belf,sco_belf_option,CFLAGS,[],[
+ case "$LDFLAGS" in
+ *-belf*) ;;
+ *)
+ echo "Adding -belf option to ldflags."
+ LDFLAGS="$LDFLAGS -belf"
+ ;;
+ esac
+ ])
+ ;;
+ esac
+ ;;
+ sysv5UnixWare*)
+ if test "$GCC" != "yes"; then
+ # We are using built-in inline function
+ CFLAGS="$CFLAGS -Kalloca"
+ fi
+ CXXFLAGS="$CXXFLAGS -DNO_CPLUSPLUS_ALLOCA"
+ ;;
+ sysv5OpenUNIX8*)
+ if test "$GCC" != "yes"; then
+ # We are using built-in inline function
+ CFLAGS="$CFLAGS -Kalloca"
+ fi
+ CXXFLAGS="$CXXFLAGS -DNO_CPLUSPLUS_ALLOCA"
+ ;;
+esac
+AC_SUBST(CC)
+AC_SUBST(CFLAGS)
+AC_SUBST(CXX)
+AC_SUBST(CXXFLAGS)
+AC_SUBST(LD)
+AC_SUBST(INSTALL_SCRIPT)
+
+export CC CXX CFLAGS LD LDFLAGS AR
+
+if test "$GXX" = "yes"
+then
+ # mysqld requires -fno-implicit-templates.
+ # Disable exceptions as they seams to create problems with gcc and threads.
+ # mysqld doesn't use run-time-type-checking, so we disable it.
+ CXXFLAGS="$CXXFLAGS -fno-implicit-templates -fno-exceptions -fno-rtti"
+
+ # If you are using 'gcc' 3.0 (not g++) to compile C++ programs on Linux,
+ # we will gets some problems when linking static programs.
+ # The following code is used to fix this problem.
+
+ if test "$CXX" = "gcc" -o "$CXX" = "ccache gcc"
+ then
+ if $CXX -v 2>&1 | grep 'version 3' > /dev/null 2>&1
+ then
+ CXXFLAGS="$CXXFLAGS -DUSE_MYSYS_NEW -DDEFINE_CXA_PURE_VIRTUAL"
+ fi
+ fi
+fi
+
+# Avoid bug in fcntl on some versions of linux
+AC_MSG_CHECKING("if we should use 'skip-locking' as default for $target_os")
+# Any wariation of Linux
+if expr "$target_os" : "[[Ll]]inux.*" > /dev/null
+then
+ MYSQLD_DEFAULT_SWITCHES="--skip-locking"
+ IS_LINUX="true"
+ AC_MSG_RESULT("yes");
+else
+ MYSQLD_DEFAULT_SWITCHES=""
+ IS_LINUX="false"
+ AC_MSG_RESULT("no");
+fi
+AC_SUBST(MYSQLD_DEFAULT_SWITCHES)
+AC_SUBST(IS_LINUX)
+
+dnl Find paths to some shell programs
+AC_PATH_PROG(LN, ln, ln)
+# This must be able to take a -f flag like normal unix ln.
+AC_PATH_PROG(LN_CP_F, ln, ln)
+if ! ( expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null ); then
+# If ln -f does not exists use -s (AFS systems)
+if test -n "$LN_CP_F"; then
+ LN_CP_F="$LN_CP_F -s"
+fi
+fi
+
+AC_PATH_PROG(MV, mv, mv)
+AC_PATH_PROG(RM, rm, rm)
+AC_PATH_PROG(CP, cp, cp)
+AC_PATH_PROG(SED, sed, sed)
+AC_PATH_PROG(CMP, cmp, cmp)
+AC_PATH_PROG(CHMOD, chmod, chmod)
+AC_PATH_PROG(HOSTNAME, hostname, hostname)
+# Check for a GNU tar named 'gtar', or 'gnutar' (MacOS X) and
+# fall back to 'tar' otherwise and hope that it's a GNU tar as well
+AC_CHECK_PROGS(TAR, gnutar gtar tar)
+
+dnl We use a path for perl so the script startup works
+dnl We make sure to use perl, not perl5, in hopes that the RPMs will
+dnl not depend on the perl5 binary being installed (probably a bug in RPM)
+AC_PATH_PROG(PERL, perl, no)
+if test "$PERL" != "no" && $PERL -e 'require 5' > /dev/null 2>&1
+then
+ PERL5=$PERL
+else
+ AC_PATH_PROG(PERL5, perl5, no)
+ if test "$PERL5" != no
+ then
+ PERL=$PERL5
+ ac_cv_path_PERL=$ac_cv_path_PERL5
+ fi
+fi
+
+AC_SUBST(HOSTNAME)
+AC_SUBST(PERL)
+AC_SUBST(PERL5)
+
+# Lock for PS
+AC_PATH_PROG(PS, ps, ps)
+AC_MSG_CHECKING("how to check if pid exists")
+PS=$ac_cv_path_PS
+# Linux style
+if $PS p $$ 2> /dev/null | grep $0 > /dev/null
+then
+ FIND_PROC="$PS p \$\$PID | grep mysqld > /dev/null"
+# Solaris
+elif $PS -p $$ 2> /dev/null | grep $0 > /dev/null
+then
+ FIND_PROC="$PS -p \$\$PID | grep mysqld > /dev/null"
+# BSD style
+elif $PS -uaxww 2> /dev/null | grep $0 > /dev/null
+then
+ FIND_PROC="$PS -uaxww | grep mysqld | grep \" \$\$PID \" > /dev/null"
+# SysV style
+elif $PS -ef 2> /dev/null | grep $0 > /dev/null
+then
+ FIND_PROC="$PS -ef | grep mysqld | grep \" \$\$PID \" > /dev/null"
+# Do anybody use this?
+elif $PS $$ 2> /dev/null | grep $0 > /dev/null
+then
+ FIND_PROC="$PS \$\$PID | grep mysqld > /dev/null"
+else
+ case $SYSTEM_TYPE in
+ *freebsd*)
+ FIND_PROC="$PS p \$\$PID | grep mysqld > /dev/null"
+ ;;
+ *darwin*)
+ FIND_PROC="$PS -uaxww | grep mysqld | grep \" \$\$PID \" > /dev/null"
+ ;;
+ *cygwin*)
+ FIND_PROC="$PS -e | grep mysqld | grep \" \$\$PID \" > /dev/null"
+ ;;
+ *netware* | *modesto*)
+ FIND_PROC=
+ ;;
+ *)
+ AC_MSG_ERROR([Could not find the right ps switches. Which OS is this ?. See the Installation chapter in the Reference Manual.])
+ esac
+fi
+AC_SUBST(FIND_PROC)
+AC_MSG_RESULT("$FIND_PROC")
+
+# Check if a pid is valid
+AC_PATH_PROG(KILL, kill, kill)
+AC_MSG_CHECKING("for kill switches")
+if $ac_cv_path_KILL -0 $$
+then
+ CHECK_PID="$ac_cv_path_KILL -0 \$\$PID > /dev/null 2> /dev/null"
+elif kill -s 0 $$
+then
+ CHECK_PID="$ac_cv_path_KILL -s 0 \$\$PID > /dev/null 2> /dev/null"
+else
+ AC_MSG_WARN([kill -0 to check for pid seems to fail])
+ CHECK_PID="$ac_cv_path_KILL -s SIGCONT \$\$PID > /dev/null 2> /dev/null"
+fi
+AC_SUBST(CHECK_PID)
+AC_MSG_RESULT("$CHECK_PID")
+
+# We need a ANSI C compiler
+AM_PROG_CC_STDC
+
+# We need an assembler, too
+AM_PROG_AS
+
+if test "$am_cv_prog_cc_stdc" = "no"
+then
+ AC_MSG_ERROR([MySQL requires a ANSI C compiler (and a C++ compiler). Try gcc. See the Installation chapter in the Reference Manual.])
+fi
+
+NOINST_LDFLAGS=
+
+static_nss=""
+STATIC_NSS_FLAGS=""
+OTHER_LIBC_LIB=""
+AC_ARG_WITH(other-libc,
+ [ --with-other-libc=DIR Link against libc and other standard libraries
+ installed in the specified non-standard location
+ overriding default. Originally added to be able to
+ link against glibc 2.2 without making the user
+ upgrade the standard libc installation.],
+ [
+ other_libc_include="$withval/include"
+ other_libc_lib="$withval/lib"
+ with_other_libc="yes"
+ enable_shared="no"
+ all_is_static="yes"
+ CFLAGS="$CFLAGS -I$other_libc_include"
+ # There seems to be a feature in gcc that treats system and libc headers
+ # silently when they violatate ANSI C++ standard, but it is strict otherwise
+ # since gcc cannot now recognize that our headers are libc, we work around
+ # by telling it to be permissive. Note that this option only works with
+ # new versions of gcc (2.95.x and above)
+ CXXFLAGS="$CXXFLAGS -fpermissive -I$other_libc_include"
+ if test -f "$other_libc_lib/libnss_files.a"
+ then
+ # libc has been compiled with --enable-static-nss
+ # we need special flags, but we will have to add those later
+ STATIC_NSS_FLAGS="-lc -lnss_files -lnss_dns -lresolv"
+ STATIC_NSS_FLAGS="$STATIC_NSS_FLAGS $STATIC_NSS_FLAGS"
+ OTHER_LIBC_LIB="-static -L$other_libc_lib"
+ static_nss=1
+ else
+ # this is a dirty hack. We if we detect static nss glibc in the special
+ # location, we do not re-direct the linker to get libraries from there
+ # during check. The reason is that if we did, we would have to find a
+ # way to append the special static nss flags to LIBS every time we do
+ # any check - this is definitely feasible, but not worthwhile the risk
+ # of breaking other things. So for our purposes it would be sufficient
+ # to assume that whoever is using static NSS knows what he is doing and
+ # has sensible libraries in the regular location
+ LDFLAGS="$LDFLAGS -static -L$other_libc_lib "
+ fi
+
+ # When linking against custom libc installed separately, we want to force
+ # all binary builds to be static, including the build done by configure
+ # itself to test for system features.
+ with_mysqld_ldflags="-all-static"
+ with_client_ldflags="-all-static"
+ NOINST_LDFLAGS="-all-static"
+ ],
+ [
+ other_libc_include=
+ other_libc_lib=
+ with_other_libc="no"
+ ]
+)
+AC_SUBST(NOINST_LDFLAGS)
+
+#
+# Check if we are using Linux and a glibc compiled with static nss
+# (this is true on the MySQL build machines to avoid NSS problems)
+#
+
+if test "$IS_LINUX" = "true" -a "$static_nss" = ""
+then
+ tmp=`nm /usr/lib/libc.a | grep _nss_files_getaliasent_r`
+ if test -n "$tmp"
+ then
+ STATIC_NSS_FLAGS="-lc -lnss_files -lnss_dns -lresolv"
+ STATIC_NSS_FLAGS="$STATIC_NSS_FLAGS $STATIC_NSS_FLAGS"
+ static_nss=1
+ fi
+fi
+
+
+AC_ARG_WITH(server-suffix,
+ [ --with-server-suffix Append value to the version string.],
+ [ MYSQL_SERVER_SUFFIX=`echo "$withval" | sed -e 's/^\(...................................\)..*$/\1/'` ],
+ [ MYSQL_SERVER_SUFFIX= ]
+ )
+AC_SUBST(MYSQL_SERVER_SUFFIX)
+
+# Set flags if we wants to have MIT threads.
+AC_ARG_WITH(mit-threads,
+ [ --with-mit-threads Always use included thread lib.],
+ [ with_mit_threads=$withval ],
+ [ with_mit_threads=no ]
+ )
+
+if test "$with_mit_threads" = "yes"
+then
+ enable_largefile="no" # Will not work on Linux.
+fi
+
+# Set flags if we want to force to use pthreads
+AC_ARG_WITH(pthread,
+ [ --with-pthread Force use of pthread library.],
+ [ with_pthread=$withval ],
+ [ with_pthread=no ]
+ )
+
+# Force use of thread libs LIBS
+AC_ARG_WITH(named-thread-libs,
+ [ --with-named-thread-libs=ARG
+ Use specified thread libraries instead of
+ those automatically found by configure.],
+ [ with_named_thread=$withval ],
+ [ with_named_thread=no ]
+ )
+
+# Force use of a curses libs
+AC_ARG_WITH(named-curses-libs,
+ [ --with-named-curses-libs=ARG
+ Use specified curses libraries instead of
+ those automatically found by configure.],
+ [ with_named_curses=$withval ],
+ [ with_named_curses=no ]
+ )
+
+# Force use of a zlib (compress)
+AC_ARG_WITH(named-z-libs,
+ [ --with-named-z-libs=ARG
+ Use specified zlib libraries instead of
+ those automatically found by configure.],
+ [ with_named_zlib=$withval ],
+ [ with_named_zlib=z ]
+ )
+
+# Make thread safe client
+AC_ARG_ENABLE(thread-safe-client,
+ [ --enable-thread-safe-client
+ Compile the client with threads.],
+ [ THREAD_SAFE_CLIENT=$enableval ],
+ [ THREAD_SAFE_CLIENT=no ]
+ )
+
+# compile with strings functions in assembler
+AC_ARG_ENABLE(assembler,
+ [ --enable-assembler Use assembler versions of some string
+ functions if available.],
+ [ ENABLE_ASSEMBLER=$enableval ],
+ [ ENABLE_ASSEMBLER=no ]
+ )
+
+AC_MSG_CHECKING(if we should use assembler functions)
+# For now we only support assembler on i386 and sparc systems
+AM_CONDITIONAL(ASSEMBLER_x86, test "$ENABLE_ASSEMBLER" = "yes" -a "$BASE_MACHINE_TYPE" = "i386")
+AM_CONDITIONAL(ASSEMBLER_sparc32, test "$ENABLE_ASSEMBLER" = "yes" -a "$BASE_MACHINE_TYPE" = "sparc")
+AM_CONDITIONAL(ASSEMBLER_sparc64, test "$ENABLE_ASSEMBLER" = "yes" -a "$BASE_MACHINE_TYPE" = "sparcv9")
+AM_CONDITIONAL(ASSEMBLER, test "$ASSEMBLER_x86_TRUE" = "" -o "$ASSEMBLER_sparc32_TRUE" = "")
+
+if test "$ASSEMBLER_TRUE" = ""
+then
+ AC_MSG_RESULT([yes])
+else
+ AC_MSG_RESULT([no])
+fi
+
+
+AC_MSG_CHECKING(if we should use RAID)
+AC_ARG_WITH(raid,
+ [ --with-raid Enable RAID Support],
+ [ USE_RAID=$withval ],
+ [ USE_RAID=no ]
+ )
+if test "$USE_RAID" = "yes"
+then
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([USE_RAID])
+else
+ AC_MSG_RESULT([no])
+fi
+
+# Use this to set the place used for unix socket used to local communication.
+AC_ARG_WITH(unix-socket-path,
+ [ --with-unix-socket-path=SOCKET
+ Where to put the unix-domain socket. SOCKET must be
+ an absolute file name.],
+ [ MYSQL_UNIX_ADDR=$withval ],
+ [ MYSQL_UNIX_ADDR=$MYSQL_UNIX_ADDR_DEFAULT ]
+ )
+AC_SUBST(MYSQL_UNIX_ADDR)
+
+AC_ARG_WITH(tcp-port,
+ [ --with-tcp-port=port-number
+ Which port to use for MySQL services (default 3306)],
+ [ MYSQL_TCP_PORT=$withval ],
+ [ MYSQL_TCP_PORT=$MYSQL_TCP_PORT_DEFAULT ]
+ )
+AC_SUBST(MYSQL_TCP_PORT)
+# We might want to document the assigned port in the manual.
+AC_SUBST(MYSQL_TCP_PORT_DEFAULT)
+
+# Use this to set the place used for unix socket used to local communication.
+AC_ARG_WITH(mysqld-user,
+ [ --with-mysqld-user=username
+ What user the mysqld daemon shall be run as.],
+ [ MYSQLD_USER=$withval ],
+ [ MYSQLD_USER=mysql ]
+ )
+AC_SUBST(MYSQLD_USER)
+
+# If we should allow LOAD DATA LOCAL
+AC_MSG_CHECKING(If we should should enable LOAD DATA LOCAL by default)
+AC_ARG_ENABLE(local-infile,
+ [ --enable-local-infile Enable LOAD DATA LOCAL INFILE (default: disabled)],
+ [ ENABLED_LOCAL_INFILE=$enableval ],
+ [ ENABLED_LOCAL_INFILE=no ]
+ )
+if test "$ENABLED_LOCAL_INFILE" = "yes"
+then
+ AC_MSG_RESULT([yes])
+ AC_DEFINE([ENABLED_LOCAL_INFILE])
+else
+ AC_MSG_RESULT([no])
+fi
+
+MYSQL_SYS_LARGEFILE
+
+# Types that must be checked AFTER large file support is checked
+AC_TYPE_SIZE_T
+
+#--------------------------------------------------------------------
+# Check for system header files
+#--------------------------------------------------------------------
+
+AC_HEADER_DIRENT
+AC_HEADER_STDC
+AC_HEADER_SYS_WAIT
+AC_CHECK_HEADERS(fcntl.h float.h floatingpoint.h ieeefp.h limits.h \
+ memory.h pwd.h select.h \
+ stdlib.h stddef.h \
+ strings.h string.h synch.h sys/mman.h sys/socket.h netinet/in.h arpa/inet.h \
+ sys/timeb.h sys/types.h sys/un.h sys/vadvise.h sys/wait.h term.h \
+ unistd.h utime.h sys/utime.h termio.h termios.h sched.h crypt.h alloca.h \
+ sys/ioctl.h malloc.h sys/malloc.h linux/config.h)
+
+#--------------------------------------------------------------------
+# Check for system libraries. Adds the library to $LIBS
+# and defines HAVE_LIBM etc
+#--------------------------------------------------------------------
+
+AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity))
+
+AC_CHECK_LIB(nsl_r, gethostbyname_r, [],
+ AC_CHECK_LIB(nsl, gethostbyname_r))
+AC_CHECK_FUNC(gethostbyname_r)
+
+AC_CHECK_FUNC(setsockopt, , AC_CHECK_LIB(socket, setsockopt))
+AC_CHECK_FUNC(yp_get_default_domain, ,
+ AC_CHECK_LIB(nsl, yp_get_default_domain))
+AC_CHECK_FUNC(p2open, , AC_CHECK_LIB(gen, p2open))
+# This may get things to compile even if bind-8 is installed
+AC_CHECK_FUNC(bind, , AC_CHECK_LIB(bind, bind))
+# For crypt() on Linux
+AC_CHECK_LIB(crypt, crypt)
+AC_CHECK_FUNC(crypt, AC_DEFINE(HAVE_CRYPT))
+
+# For sem_xxx functions on Solaris 2.6
+AC_CHECK_FUNC(sem_init, , AC_CHECK_LIB(posix4, sem_init))
+
+# For compress in zlib
+MYSQL_CHECK_ZLIB_WITH_COMPRESS($with_named_zlib)
+
+#--------------------------------------------------------------------
+# Check for TCP wrapper support
+#--------------------------------------------------------------------
+
+AC_ARG_WITH(libwrap,
+[ --with-libwrap[=DIR] Compile in libwrap (tcp_wrappers) support],[
+ case "$with_libwrap" in
+ no) : ;;
+ yes|*)
+ _cppflags=${CPPFLAGS}
+ _ldflags=${LDFLAGS}
+
+ if test "$with_libwrap" != "yes"; then
+ CPPFLAGS="${CPPFLAGS} -I$with_libwrap/include"
+ LDFLAGS="${LDFLAGS} -L$with_libwrap/lib"
+ fi
+
+ _libs=${LIBS}
+ AC_CHECK_HEADER(tcpd.h,
+ LIBS="-lwrap $LIBS"
+ AC_MSG_CHECKING(for TCP wrappers library -lwrap)
+ AC_TRY_LINK([#include <tcpd.h>
+int allow_severity = 0;
+int deny_severity = 0;
+
+struct request_info *req;
+],[hosts_access (req)],
+ AC_MSG_RESULT(yes)
+ AC_DEFINE(LIBWRAP)
+ AC_DEFINE(HAVE_LIBWRAP)
+ if test "$with_libwrap" != "yes"; then
+ WRAPLIBS="-L${with_libwrap}/lib"
+ fi
+ WRAPLIBS="${WRAPLIBS} -lwrap",
+ AC_MSG_RESULT(no)
+ CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags}),
+ CPPFLAGS=${_cppflags} LDFLAGS=${_ldflags})
+ LDFLAGS=${_ldflags} LIBS=${_libs}
+ ;;
+ esac
+])
+AC_SUBST(WRAPLIBS)
+
+if test "$IS_LINUX" = "true"; then
+ AC_MSG_CHECKING([for atomic operations])
+
+ atom_ops=
+ AC_TRY_RUN([
+#include <asm/atomic.h>
+int main()
+{
+ atomic_t v;
+
+ atomic_set(&v, 23);
+ atomic_add(5, &v);
+ return atomic_read(&v) == 28 ? 0 : -1;
+}
+ ], AC_DEFINE(HAVE_ATOMIC_ADD) atom_ops="${atom_ops}atomic_add ",
+ )
+ AC_TRY_RUN([
+#include <asm/atomic.h>
+int main()
+{
+ atomic_t v;
+
+ atomic_set(&v, 23);
+ atomic_sub(5, &v);
+ return atomic_read(&v) == 18 ? 0 : -1;
+}
+ ], AC_DEFINE(HAVE_ATOMIC_SUB) atom_ops="${atom_ops}atomic_sub ",
+ )
+
+ if test -z "$atom_ops"; then atom_ops="no"; fi
+ AC_MSG_RESULT($atom_ops)
+
+ AC_ARG_WITH(pstack,
+ [ --with-pstack Use the pstack backtrace library],
+ [ USE_PSTACK=$withval ],
+ [ USE_PSTACK=no ])
+ pstack_libs=
+ pstack_dirs=
+ if test "$USE_PSTACK" = yes -a "$IS_LINUX" = "true" -a "$BASE_MACHINE_TYPE" = "i386" -a "$with_mit_threads" = "no"
+ then
+ have_libiberty= have_libbfd=
+ my_save_LIBS="$LIBS"
+dnl I have no idea if this is a good test - can not find docs for libiberty
+ AC_CHECK_LIB([iberty], [fdmatch],
+ [have_libiberty=yes
+ AC_CHECK_LIB([bfd], [bfd_openr], [have_libbfd=yes], , [-liberty])])
+ LIBS="$my_save_LIBS"
+
+ if test x"$have_libiberty" = xyes -a x"$have_libbfd" = xyes
+ then
+ pstack_dirs='$(top_srcdir)'/pstack
+ pstack_libs="../pstack/libpstack.a -lbfd -liberty"
+ # We must link staticly when using pstack
+ with_mysqld_ldflags="-all-static"
+ AC_SUBST([pstack_dirs])
+ AC_SUBST([pstack_libs])
+ AC_DEFINE([USE_PSTACK])
+dnl This check isn't needed, but might be nice to give some feedback....
+dnl AC_CHECK_HEADER(libiberty.h,
+dnl have_libiberty_h=yes,
+dnl have_libiberty_h=no)
+ else
+ USE_PSTACK="no"
+ fi
+ else
+ USE_PSTACK="no"
+ fi
+fi
+AM_CONDITIONAL(COMPILE_PSTACK, test "$USE_PSTACK" = "yes")
+AC_MSG_CHECKING([if we should use pstack])
+AC_MSG_RESULT([$USE_PSTACK])
+
+# Check for gtty if termio.h doesn't exists
+if test "$ac_cv_header_termio_h" = "no" -a "$ac_cv_header_termios_h" = "no"
+then
+ AC_CHECK_FUNC(gtty, , AC_CHECK_LIB(compat, gtty))
+fi
+# We make a special variable for client library's to avoid including
+# thread libs in the client.
+NON_THREADED_CLIENT_LIBS="$LIBS"
+
+AC_MSG_CHECKING([for int8])
+case $SYSTEM_TYPE in
+ *netware)
+ AC_MSG_RESULT([no])
+ ;;
+ *)
+AC_TRY_RUN([
+#ifdef HAVE_STDLIB_H
+#include <stdlib.h>
+#endif
+
+#ifdef HAVE_STDDEF_H
+#include <stddef.h>
+#endif
+
+#ifdef HAVE_SYS_TYPES_H
+#include <sys/types.h>
+#endif
+
+int main()
+{
+ int8 i;
+ return 0;
+}
+], AC_DEFINE(HAVE_INT_8_16_32) AC_MSG_RESULT([yes]), AC_MSG_RESULT([no])
+)
+ ;;
+esac
+
+#
+# Some system specific hacks
+#
+
+MAX_C_OPTIMIZE="-O3"
+MAX_CXX_OPTIMIZE="-O3"
+
+case $SYSTEM_TYPE in
+ *solaris2.7*)
+ # Solaris 2.7 has a broken /usr/include/widec.h
+ # Make a fixed copy in ./include
+ echo "Fixing broken include files for $SYSTEM_TYPE"
+ echo " - Creating local copy of widec.h"
+ if test ! -d include
+ then
+ mkdir ./include
+ fi
+ builddir=`pwd`
+ sed -e "s|^#if[ ]*!defined(lint) && !defined(__lint)|#if !defined\(lint\) \&\& !defined\(__lint\) \&\& !defined\(getwc\)|" < /usr/include/widec.h > include/widec.h
+ CFLAGS="$CFLAGS -DHAVE_CURSES_H -I$builddir/include -DHAVE_RWLOCK_T"
+ CXXFLAGS="$CXXFLAGS -DHAVE_CURSES_H -I$builddir/include -DHAVE_RWLOCK_T"
+ ;;
+ *solaris2.8*)
+ # Solaris 2.8 has a broken /usr/include/widec.h
+ # Make a fixed copy in ./include
+ echo "Fixing broken include files for $SYSTEM_TYPE"
+ echo " - Creating local copy of widec.h"
+ if test ! -d include
+ then
+ mkdir ./include
+ fi
+ builddir=`pwd`
+ sed -e "s|^#if[ ]*!defined(__lint)|#if !defined\(__lint\) \&\& !defined\(getwc\)|" < /usr/include/widec.h > include/widec.h
+ CFLAGS="$CFLAGS -DHAVE_CURSES_H -I$builddir/include -DHAVE_RWLOCK_T"
+ CXXFLAGS="$CXXFLAGS -DHAVE_CURSES_H -I$builddir/include -DHAVE_RWLOCK_T"
+ ;;
+ *solaris2.5.1*)
+ echo "Enabling getpass() workaround for Solaris 2.5.1"
+ CFLAGS="$CFLAGS -DHAVE_BROKEN_GETPASS -DSOLARIS -DHAVE_RWLOCK_T";
+ CXXFLAGS="$CXXFLAGS -DHAVE_RWLOCK_T -DSOLARIS"
+ ;;
+ *solaris*)
+ CFLAGS="$CFLAGS -DHAVE_RWLOCK_T"
+ CXXFLAGS="$CXXFLAGS -DHAVE_RWLOCK_T"
+ ;;
+ *SunOS*)
+ echo "Enabling getpass() workaround for SunOS"
+ CFLAGS="$CFLAGS -DHAVE_BROKEN_GETPASS -DSOLARIS";
+ ;;
+ *hpux10.20*)
+ echo "Enabling workarounds for hpux 10.20"
+ CFLAGS="$CFLAGS -DHAVE_BROKEN_SNPRINTF -DSIGNALS_DONT_BREAK_READ -DDO_NOT_REMOVE_THREAD_WRAPPERS -DHPUX10 -DSIGNAL_WITH_VIO_CLOSE -DHAVE_BROKEN_PTHREAD_COND_TIMEDWAIT -DHAVE_POSIX1003_4a_MUTEX"
+ CXXFLAGS="$CXXFLAGS -DHAVE_BROKEN_SNPRINTF -D_INCLUDE_LONGLONG -DSIGNALS_DONT_BREAK_READ -DDO_NOT_REMOVE_THREAD_WRAPPERS -DHPUX10 -DSIGNAL_WITH_VIO_CLOSE -DHAVE_BROKEN_PTHREAD_COND_TIMEDWAIT -DHAVE_POSIX1003_4a_MUTEX"
+ if test "$with_named_thread" = "no"
+ then
+ echo "Using --with-named-thread=-lpthread"
+ with_named_thread="-lcma"
+ fi
+ ;;
+ *hpux11.*)
+ echo "Enabling workarounds for hpux 11"
+ CFLAGS="$CFLAGS -DHPUX11 -DHAVE_BROKEN_PREAD -DDONT_USE_FINITE -DHAVE_BROKEN_GETPASS -DNO_FCNTL_NONBLOCK -DDO_NOT_REMOVE_THREAD_WRAPPERS -DHAVE_BROKEN_PTHREAD_COND_TIMEDWAIT"
+ CXXFLAGS="$CXXFLAGS -DHPUX11 -DHAVE_BROKEN_PREAD -DDONT_USE_FINITE -D_INCLUDE_LONGLONG -DNO_FCNTL_NONBLOCK -DDO_NOT_REMOVE_THREAD_WRAPPERS -DHAVE_BROKEN_PTHREAD_COND_TIMEDWAIT"
+ if test "$with_named_thread" = "no"
+ then
+ echo "Using --with-named-thread=-lpthread"
+ with_named_thread="-lpthread"
+ fi
+ # Fixes for HPUX 11.0 compiler
+ if test "$ac_cv_prog_gcc" = "no"
+ then
+ CFLAGS="$CFLAGS -DHAVE_BROKEN_INLINE"
+ CXXFLAGS="$CXXFLAGS +O2"
+ MAX_C_OPTIMIZE=""
+ MAX_CXX_OPTIMIZE=""
+ fi
+ ;;
+ *rhapsody*)
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ CPPFLAGS="$CPPFLAGS -traditional-cpp "
+ CFLAGS="-DHAVE_CTHREADS_WRAPPER -DDO_NOT_REMOVE_THREAD_WRAPPERS"
+ CXXFLAGS="-DHAVE_CTHREADS_WRAPPER"
+ if test $with_named_curses = "no"
+ then
+ with_named_curses=""
+ fi
+ fi
+ ;;
+ *darwin5*)
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ FLAGS="-traditional-cpp -DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
+ CFLAGS="$CFLAGS $FLAGS"
+ CXXFLAGS="$CXXFLAGS $FLAGS"
+ MAX_C_OPTIMIZE="-O"
+ with_named_curses=""
+ fi
+ ;;
+ *darwin6*)
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ FLAGS="-DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ -DHAVE_BROKEN_REALPATH"
+ CFLAGS="$CFLAGS $FLAGS"
+ CXXFLAGS="$CXXFLAGS $FLAGS"
+ MAX_C_OPTIMIZE="-O"
+ fi
+ ;;
+ *darwin7*)
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ FLAGS="-DHAVE_DARWIN_THREADS -D_P1003_1B_VISIBLE -DSIGNAL_WITH_VIO_CLOSE -DSIGNALS_DONT_BREAK_READ"
+ CFLAGS="$CFLAGS $FLAGS"
+ CXXFLAGS="$CXXFLAGS $FLAGS"
+ MAX_C_OPTIMIZE="-O"
+ fi
+ ;;
+ *freebsd*)
+ echo "Adding fix for interrupted reads"
+ OSVERSION=`sysctl -a | grep osreldate | awk '{ print $2 }'`
+ if test "$OSVERSION" -gt "480100" && \
+ test "$OSVERSION" -lt "500000" || \
+ test "$OSVERSION" -gt "500109"
+ then
+ CXXFLAGS="$CXXFLAGS -DMYSQLD_NET_RETRY_COUNT=1000000"
+ else
+ CFLAGS="$CFLAGS -DHAVE_BROKEN_REALPATH"
+ CXXFLAGS="$CXXFLAGS -DMYSQLD_NET_RETRY_COUNT=1000000 -DHAVE_BROKEN_REALPATH"
+ fi
+ ;;
+ *netbsd*)
+ echo "Adding flag -Dunix"
+ CFLAGS="$CFLAGS -Dunix"
+ CXXFLAGS="$CXXFLAGS -Dunix"
+ OVERRIDE_MT_LD_ADD="\$(top_srcdir)/mit-pthreads/obj/libpthread.a"
+ ;;
+ *bsdi*)
+ echo "Adding fix for BSDI"
+ CFLAGS="$CFLAGS -D__BSD__ -DHAVE_BROKEN_REALPATH"
+ AC_DEFINE_UNQUOTED(SOCKOPT_OPTLEN_TYPE, size_t)
+ ;;
+ *sgi-irix6*)
+ if test "$with_named_thread" = "no"
+ then
+ echo "Using --with-named-thread=-lpthread"
+ with_named_thread="-lpthread"
+ fi
+ CXXFLAGS="$CXXFLAGS -D_BOOL"
+ ;;
+ *aix4.3*)
+ echo "Adding defines for AIX"
+ CFLAGS="$CFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS -DSIGNALS_DONT_BREAK_READ"
+ CXXFLAGS="$CXXFLAGS -Wa,-many -DUNDEF_HAVE_INITGROUPS -DSIGNALS_DONT_BREAK_READ"
+ ;;
+dnl Is this the right match for DEC OSF on alpha?
+ *dec-osf*)
+ if test "$ac_cv_prog_gcc" = "yes" && test "$host_cpu" = "alpha"
+ then
+ echo "Adding defines for DEC OSF on alpha"
+ CFLAGS="$CFLAGS -mieee"
+ CXXFLAGS="$CXXFLAGS -mieee"
+ fi
+ echo "Adding defines for OSF1"
+ # gethostbyname_r is deprecated and doesn't work ok on OSF1
+ CFLAGS="$CFLAGS -DUNDEF_HAVE_GETHOSTBYNAME_R"
+ CXXFLAGS="$CXXFLAGS -DUNDEF_HAVE_GETHOSTBYNAME_R"
+ ;;
+ *netware*)
+ # No need for curses library so set it to null
+ with_named_curses=""
+
+ # No thread library - in LibC
+ with_named_thread=""
+
+ #
+ # Edit Makefile.in files.
+ #
+ echo -n "configuring Makefile.in files for NetWare... "
+ for file in sql/Makefile.in libmysql/Makefile.in libmysql_r/Makefile.in sql/share/Makefile.in strings/Makefile.in client/Makefile.in
+ do
+ # echo "#### $file ####"
+ filedir="`dirname $file`"
+ filebase="`basename $file`"
+ filesed=$filedir/$filebase.sed
+ #
+ # Backup and always use original file
+ #
+ if test -f $file.bk
+ then
+ cp -fp $file.bk $file
+ else
+ cp -fp $file $file.bk
+ fi
+ case $file in
+ sql/Makefile.in)
+ # Use gen_lex_hash.linux instead of gen_lex_hash
+ # Add library dependencies to mysqld_DEPENDENCIES
+ lib_DEPENDENCIES="\$(bdb_libs_with_path) \$(innodb_libs) \$(pstack_libs) \$(innodb_system_libs) \$(openssl_libs)"
+ cat > $filesed << EOF
+s,\(^.*\$(MAKE) gen_lex_hash\),#\1,
+s,\(\./gen_lex_hash\),\1.linux,
+s%\(mysqld_DEPENDENCIES = \) %\1$lib_DEPENDENCIES %
+EOF
+ ;;
+ sql/share/Makefile.in)
+ cat > $filesed << EOF
+s,\(extra/comp_err\),\1.linux,
+EOF
+ ;;
+ libmysql/Makefile.in)
+ cat > $filesed << EOF
+s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
+s,\(: conf_to_src\),\1.linux,
+EOF
+ ;;
+ libmysql_r/Makefile.in)
+ cat > $filesed << EOF
+s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
+s,\(: conf_to_src\),\1.linux,
+EOF
+ ;;
+ strings/Makefile.in)
+ cat > $filesed << EOF
+s,\(\./conf_to_src\)\( \$(top_srcdir)\),\1.linux\2,
+s,\(: conf_to_src\),\1.linux,
+EOF
+ ;;
+ client/Makefile.in)
+ #
+ cat > $filesed << EOF
+s,libmysqlclient.la,.libs/libmysqlclient.a,
+EOF
+ ;;
+ esac
+ if `sed -f $filesed $file > $file.nw`;\
+ then
+ mv -f $file.nw $file
+ rm -f $filesed
+ else
+ exit 1
+ fi
+ # wait for file system changes to complete
+ sleep 1
+ done
+ echo "done"
+
+ #
+ # Make sure the following files are writable.
+ #
+ # When the files are retrieved from some source code control systems they are read-only.
+ #
+ echo -n "making sure specific build files are writable... "
+ for file in \
+ Docs/include.texi \
+ Docs/mysql.info \
+ Docs/manual.txt \
+ Docs/manual_toc.html \
+ Docs/manual.html \
+ Docs/INSTALL-BINARY \
+ INSTALL-SOURCE \
+ COPYING \
+ COPYING.LIB \
+ MIRRORS
+ do
+ if test -e $file; then
+ chmod +w $file
+ fi
+ done
+ echo "done"
+
+ ;;
+esac
+
+
+#---START: Used in for client configure
+# Check if we threads are in libc or if we should use
+# -lpthread, -lpthreads or mit-pthreads
+# We have to check libc last because else it fails on Solaris 2.6
+
+with_posix_threads="no"
+# Hack for DEC-UNIX (OSF1)
+if test "$with_named_thread" = "no" -a "$with_mit_threads" = "no"
+then
+ # Look for LinuxThreads.
+ AC_MSG_CHECKING("LinuxThreads")
+ res=`grep Linuxthreads /usr/include/pthread.h 2>/dev/null | wc -l`
+ if test "$res" -gt 0
+ then
+ AC_MSG_RESULT("Found")
+ AC_DEFINE(HAVE_LINUXTHREADS)
+ # Linux 2.0 sanity check
+ AC_TRY_COMPILE([#include <sched.h>], [int a = sched_get_priority_min(1);], ,
+ AC_MSG_ERROR([Syntax error in sched.h. Change _P to __P in the /usr/include/sched.h file. See the Installation chapter in the Reference Manual]))
+ # RedHat 5.0 does not work with dynamic linking of this. -static also
+ # gives a speed increase in linux so it does not hurt on other systems.
+ with_named_thread="-lpthread"
+ else
+ AC_MSG_RESULT("Not found")
+ # If this is a linux machine we should barf
+ if test "$IS_LINUX" = "true"
+ then
+ AC_MSG_ERROR([This is a linux system and Linuxthreads was not
+found. On linux Linuxthreads should be used. Please install Linuxthreads
+(or a new glibc) and try again. See the Installation chapter in the
+Reference Manual for more information.])
+ else
+ AC_MSG_CHECKING("DEC threads")
+ if test -f /usr/shlib/libpthread.so -a -f /usr/lib/libmach.a -a -f /usr/ccs/lib/cmplrs/cc/libexc.a
+ then
+ with_named_thread="-lpthread -lmach -lexc"
+ CFLAGS="$CFLAGS -D_REENTRANT"
+ CXXFLAGS="$CXXFLAGS -D_REENTRANT"
+ AC_DEFINE(HAVE_DEC_THREADS)
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_RESULT("no")
+ AC_MSG_CHECKING("DEC 3.2 threads")
+ if test -f /usr/shlib/libpthreads.so -a -f /usr/lib/libmach.a -a -f /usr/ccs/lib/cmplrs/cc/libexc.a
+ then
+ with_named_thread="-lpthreads -lmach -lc_r"
+ AC_DEFINE(HAVE_DEC_THREADS)
+ AC_DEFINE(HAVE_DEC_3_2_THREADS)
+ with_osf32_threads="yes"
+ MYSQLD_DEFAULT_SWITCHES="--skip-thread-priority"
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_RESULT("no")
+ fi
+ fi
+ fi
+ fi
+fi
+
+
+dnl This is needed because -lsocket has to come after the thread
+dnl library on SCO.
+AC_DEFUN([MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK], [
+ LIBS=`echo " $LIBS " | sed -e 's/ -lsocket / /g'`
+])
+# Hack for SCO UNIX
+if test "$with_named_thread" = "no"
+then
+ AC_MSG_CHECKING("SCO threads")
+ if expr "$SYSTEM_TYPE" : ".*sco.*" > /dev/null
+ then
+ if test -f /usr/lib/libgthreads.a -o -f /usr/lib/libgthreads.so
+ then
+ MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK
+ with_named_thread="-lgthreads -lsocket -lgthreads"
+ # sched.h conflicts with fsu-threads
+ touch ./include/sched.h
+
+ # We must have gcc
+ if expr "$CC" : ".*gcc.*"
+ then
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_ERROR([On SCO UNIX MySQL must be compiled with gcc. See the Installation chapter in the Reference Manual.]);
+ fi
+ AC_MSG_RESULT("yes")
+ elif test -f /usr/local/lib/libpthread.a -o -f /usr/local/lib/libpthread.so
+ then
+ MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK
+ with_named_thread="-lpthread -lsocket"
+ # sched.h conflicts with fsu-threads
+ # touch ./include/sched.h
+
+ AC_MSG_CHECKING("for gcc")
+ # We must have gcc
+ if expr "$CC" : ".*gcc.*"
+ then
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_ERROR([On SCO UNIX MySQL must be compiled with gcc. See the Installation chapter in the Reference Manual.]);
+ fi
+ AC_MSG_RESULT("yes")
+ # Hack for SCO UnixWare 7.1.x
+ #
+ elif test "$with_named_thread" = "no"
+ then
+ AC_MSG_RESULT("no")
+ AC_MSG_CHECKING("SCO UnixWare 7.1.x native threads")
+ if expr "$SYSTEM_TYPE" : ".*sco.*" > /dev/null
+ then
+ if test -f /usr/lib/libthread.so -o -f /usr/lib/libthreadT.so
+ then
+ MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK
+ if expr "$CC" : ".*gcc.*"
+ then
+ with_named_thread="-pthread -lsocket -lnsl"
+ else
+ with_named_thread="-Kthread -lsocket -lnsl"
+ fi
+ if expr "$SYSTEM_TYPE" : ".*unixware7.0.0" > /dev/null
+ then
+ AC_DEFINE(HAVE_UNIXWARE7_THREADS)
+ else
+ AC_DEFINE(HAVE_UNIXWARE7_POSIX)
+ fi
+ AC_MSG_RESULT("yes")
+ # We must have cc
+ AC_MSG_CHECKING("for gcc")
+ if expr "$CC" : ".*gcc.*"
+ then
+ CC="$CC -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ else
+ CC="$CC -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ fi
+ else
+ { echo "configure: error: Can't find thread libs on SCO UnixWare7. See the Installation chapter in the Reference Manual." 1>&2; exit 1; };
+ fi
+ else
+ AC_MSG_RESULT("no")
+ fi
+ else
+ AC_MSG_ERROR([On SCO UNIX MySQL requires that the FSUThreads package is installed. See the Installation chapter in the Reference Manual.]);
+ fi
+ else
+ AC_MSG_RESULT("no")
+ fi
+fi
+# Hack for SCO UnixWare7
+#
+if test "$with_named_thread" = "no"
+then
+ AC_MSG_CHECKING("SCO UnixWare7 native threads")
+ if expr "$SYSTEM_TYPE" : ".*UnixWare*" > /dev/null
+ then
+ if test -f /usr/lib/libthread.so -o -f /usr/lib/libthreadT.so
+ then
+ MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK
+ if expr "$CC" : ".*gcc.*"
+ then
+ with_named_thread="-pthread -lsocket -lnsl"
+ else
+ with_named_thread="-Kthread -lsocket -lnsl"
+ fi
+ if expr "$SYSTEM_TYPE" : ".*unixware7.0.0" > /dev/null
+ then
+ AC_DEFINE(HAVE_UNIXWARE7_THREADS)
+ else
+ AC_DEFINE(HAVE_UNIXWARE7_POSIX)
+ fi
+ # We must have cc
+ AC_MSG_CHECKING("for gcc")
+ if expr "$CC" : ".*gcc.*"
+ then
+ CC="$CC -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ else
+ CC="$CC -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ fi
+ AC_MSG_RESULT("yes")
+ else
+ { echo "configure: error: Can't find thread libs on SCO UnixWare7. See the Installation chapter in the Reference Manual." 1>&2; exit 1; };
+ fi
+ else
+ AC_MSG_RESULT("no")
+ fi
+fi
+
+# Hack for Caldera OpenUNIX8
+#
+if test "$with_named_thread" = "no"
+then
+ AC_MSG_CHECKING("OpenUNIX8 native threads")
+ if expr "$SYSTEM_TYPE" : ".*OpenUNIX*" > /dev/null
+ then
+ if test -f /usr/lib/libthread.so -o -f /usr/lib/libthreadT.so
+ then
+ MYSQL_REMOVE_SOCKET_FROM_LIBS_HACK
+ if expr "$CC" : ".*gcc.*"
+ then
+ with_named_thread="-pthread -lsocket -lnsl"
+ else
+ with_named_thread="-Kthread -lsocket -lnsl"
+ fi
+ if expr "$SYSTEM_TYPE" : ".*unixware7.0.0" > /dev/null
+ then
+ AC_DEFINE(HAVE_UNIXWARE7_THREADS)
+ else
+ AC_DEFINE(HAVE_UNIXWARE7_POSIX)
+ fi
+ # We must have cc
+ AC_MSG_CHECKING("for gcc")
+ if expr "$CC" : ".*gcc.*"
+ then
+ CC="$CC -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -pthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ else
+ CC="$CC -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ CXX="$CXX -Kthread -DUNIXWARE_7 -DHAVE_BROKEN_RWLOCK";
+ fi
+ AC_MSG_RESULT("yes")
+ else
+ { echo "configure: error: Can't find thread libs on Caldera OpenUNIX 8. See the Installation chapter in the Reference Manual." 1>&2; exit 1; };
+ fi
+ else
+ AC_MSG_RESULT("no")
+ fi
+fi
+
+# Hack for Siemens UNIX
+if test "$with_named_thread" = "no" -a "$with_mit_threads" = "no"
+then
+ AC_MSG_CHECKING("Siemens threads")
+ if test -f /usr/lib/libxnet.so -a "$SYSTEM_TYPE" = "sni-sysv4"
+ then
+ LIBS="-lxnet $LIBS"
+ NON_THREADED_CLIENT_LIBS="$NON_THREADED_CLIENT_LIBS -lxnet"
+ with_named_thread="-Kthread $LDFLAGS -lxnet"
+ LD_FLAGS=""
+ CFLAGS="-Kthread $CFLAGS"
+ CXXFLAGS="-Kthread $CXXFLAGS"
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_RESULT("no")
+ fi
+fi
+
+# Use library named -lpthread
+if test "$with_named_thread" = "no" -a "$with_pthread" = "yes"
+then
+ with_named_thread="-lpthread"
+fi
+
+#---END:
+
+# Hack for Solaris >= 2.5
+# We want both the new and the old interface
+
+if test "$with_named_thread" = "no" -a "$with_mit_threads" = "no"
+then
+ AC_MSG_CHECKING("Solaris threads")
+ if test -f /usr/lib/libpthread.so -a -f /usr/lib/libthread.so
+ then
+ with_named_thread="-lpthread -lthread"
+ AC_MSG_RESULT("yes")
+ else
+ AC_MSG_RESULT("no")
+ fi
+fi
+
+TOOLS_LIBS="$NON_THREADED_CLIENT_LIBS"
+
+# Should we use named pthread library ?
+AC_MSG_CHECKING("named thread libs:")
+if test "$with_named_thread" != "no"
+then
+ LIBS="$with_named_thread $LIBS $with_named_thread"
+ TOOLS_LIBS="$with_named_thread $TOOLS_LIBS $with_named_thread"
+ with_posix_threads="yes"
+ with_mit_threads="no"
+ AC_MSG_RESULT("$with_named_thread")
+else
+ AC_MSG_RESULT("no")
+ if test "$with_mit_threads" = "no"
+ then
+ # pthread_create is in standard libraries (As in BSDI 3.0)
+ AC_MSG_CHECKING("for pthread_create in -libc");
+ AC_TRY_LINK(
+ [#include <pthread.h>],
+ [ (void) pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
+ with_posix_threads=yes, with_posix_threads=no)
+ AC_MSG_RESULT("$with_posix_threads")
+ if test "$with_posix_threads" = "no"
+ then
+ AC_MSG_CHECKING("for pthread_create in -lpthread");
+ ac_save_LIBS="$LIBS"
+ ac_save_TOOLS_LIBS="$TOOLS_LIBS"
+ LIBS="$LIBS -lpthread"
+ TOOLS_LIBS="$TOOLS_LIBS -lpthread"
+ AC_TRY_LINK(
+ [#include <pthread.h>],
+ [ (void) pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
+ with_posix_threads=yes, with_posix_threads=no)
+ AC_MSG_RESULT("$with_posix_threads")
+ if test "$with_posix_threads" = "no"
+ then
+ LIBS=" $ac_save_LIBS -lpthreads"
+ TOOLS_LIBS=" $ac_save_TOOLS_LIBS -lpthreads"
+ AC_MSG_CHECKING("for pthread_create in -lpthreads");
+ AC_TRY_LINK(
+ [#include <pthread.h>],
+ [ pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
+ with_posix_threads=yes, with_posix_threads=no)
+ AC_MSG_RESULT("$with_posix_threads")
+ if test "$with_posix_threads" = "no"
+ then
+ # This is for FreeBSD
+ LIBS="$ac_save_LIBS -pthread"
+ TOOLS_LIBS="$ac_save_TOOLS_LIBS -pthread"
+ AC_MSG_CHECKING("for pthread_create in -pthread");
+ AC_TRY_LINK(
+ [#include <pthread.h>],
+ [ pthread_create((pthread_t*) 0,(pthread_attr_t*) 0, 0, 0); ],
+ with_posix_threads=yes, with_posix_threads=no)
+ AC_MSG_RESULT("$with_posix_threads")
+ if test "$with_posix_threads" = "no"
+ then
+ with_mit_threads="yes"
+ LIBS="$ac_save_LIBS"
+ TOOLS_LIBS="$ac_save_TOOLS_LIBS"
+ fi
+ fi
+ fi
+ fi
+ fi
+fi
+
+#---START: Used in for client configure
+# Must be checked after, because strtok_r may be in -lpthread
+# On AIX strtok_r is in libc_r
+
+my_save_LIBS="$LIBS"
+AC_CHECK_LIB(pthread,strtok_r)
+LIBS="$my_save_LIBS"
+if test "$ac_cv_lib_pthread_strtok_r" = "no"
+then
+ AC_CHECK_LIB(c_r,strtok_r)
+ case "$with_osf32_threads---$target_os" in
+ # Don't keep -lc_r in LIBS; -pthread handles it magically
+ yes---* | *---freebsd* | *---hpux*) LIBS="$my_save_LIBS" ;;
+
+ esac
+ AC_CHECK_FUNCS(strtok_r pthread_init)
+else
+ AC_CHECK_FUNCS(strtok_r)
+fi
+#---END:
+
+# Check for dlopen, needed for user definable functions
+# This must be checked after threads on AIX
+# We only need this for mysqld, not for the clients.
+
+my_save_LIBS="$LIBS"
+LIBS=""
+AC_CHECK_LIB(dl,dlopen)
+LIBDL=$LIBS
+LIBS="$my_save_LIBS"
+AC_SUBST(LIBDL)
+
+# System characteristics
+case $SYSTEM_TYPE in
+ *netware* | *modesto*) ;;
+ *)
+AC_SYS_RESTARTABLE_SYSCALLS
+ ;;
+esac
+
+# Build optimized or debug version ?
+# First check for gcc and g++
+if test "$ac_cv_prog_gcc" = "yes"
+then
+ DEBUG_CFLAGS="-g"
+ DEBUG_OPTIMIZE_CC="-O"
+ OPTIMIZE_CFLAGS="$MAX_C_OPTIMIZE"
+else
+ DEBUG_CFLAGS="-g"
+ DEBUG_OPTIMIZE_CC=""
+ OPTIMIZE_CFLAGS="-O"
+fi
+if test "$ac_cv_prog_cxx_g" = "yes"
+then
+ DEBUG_CXXFLAGS="-g"
+ DEBUG_OPTIMIZE_CXX="-O"
+ OPTIMIZE_CXXFLAGS="$MAX_CXX_OPTIMIZE"
+else
+ DEBUG_CXXFLAGS="-g"
+ DEBUG_OPTIMIZE_CXX=""
+ OPTIMIZE_CXXFLAGS="-O"
+fi
+
+if expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null; then
+ DEBUG_CFLAGS="$DEBUG_CFLAGS -DDEBUG -sym internal,codeview4"
+ DEBUG_CXXFLAGS="$DEBUG_CXXFLAGS -DDEBUG -sym internal,codeview4"
+ OPTIMIZE_CFLAGS="$OPTIMIZE_CFLAGS -DNDEBUG"
+ OPTIMIZE_CXXFLAGS="$OPTIMIZE_CXXFLAGS -DNDEBUG"
+fi
+
+AC_ARG_WITH(debug,
+ [ --without-debug Build a production version without debugging code],
+ [with_debug=$withval],
+ [with_debug=no])
+if test "$with_debug" = "yes"
+then
+ # Medium debug.
+ CFLAGS="$DEBUG_CFLAGS $DEBUG_OPTIMIZE_CC -DDBUG_ON -DSAFE_MUTEX $CFLAGS"
+ CXXFLAGS="$DEBUG_CXXFLAGS $DEBUG_OPTIMIZE_CXX -DSAFE_MUTEX $CXXFLAGS"
+elif test "$with_debug" = "full"
+then
+ # Full debug. Very slow in some cases
+ CFLAGS="$DEBUG_CFLAGS -DDBUG_ON -DSAFE_MUTEX -DSAFEMALLOC $CFLAGS"
+ CXXFLAGS="$DEBUG_CXXFLAGS -DSAFE_MUTEX -DSAFEMALLOC $CXXFLAGS"
+else
+ # Optimized version. No debug
+ CFLAGS="$OPTIMIZE_CFLAGS -DDBUG_OFF $CFLAGS"
+ CXXFLAGS="$OPTIMIZE_CXXFLAGS -DDBUG_OFF $CXXFLAGS"
+fi
+
+# Force static compilation to avoid linking problems/get more speed
+AC_ARG_WITH(mysqld-ldflags,
+ [ --with-mysqld-ldflags Extra linking arguments for mysqld],
+ [MYSQLD_EXTRA_LDFLAGS=$withval],
+ [MYSQLD_EXTRA_LDFLAGS=])
+AC_SUBST(MYSQLD_EXTRA_LDFLAGS)
+
+AC_ARG_WITH(client-ldflags,
+ [ --with-client-ldflags Extra linking arguments for clients],
+ [CLIENT_EXTRA_LDFLAGS=$withval],
+ [CLIENT_EXTRA_LDFLAGS=])
+AC_SUBST(CLIENT_EXTRA_LDFLAGS)
+
+AC_ARG_WITH(lib-ccflags,
+ [ --with-lib-ccflags Extra CC options for libraries],
+ [LIB_EXTRA_CCFLAGS=$withval],
+ [LIB_EXTRA_CCFLAGS=])
+AC_SUBST(LIB_EXTRA_CCFLAGS)
+
+# Avoid stupid bug on some OS
+AC_ARG_WITH(low-memory,
+ [ --with-low-memory Try to use less memory to compile to avoid
+ memory limitations.],
+ [with_lowmem=$withval],
+ [with_lowmem=no])
+if test "$with_lowmem" = "yes"
+then
+ if test "$ac_cv_prog_gcc" = "yes"
+ then
+ LM_CFLAGS="-fno-inline"
+ else
+ LM_CFLAGS="-O0"
+ fi
+else
+ LM_CFLAGS=""
+fi
+AC_SUBST(LM_CFLAGS)
+
+AC_ARG_WITH(comment,
+ [ --with-comment Comment about compilation environment.],
+ [with_comment=$withval],
+ [with_comment=no])
+if test "$with_comment" != "no"
+then
+ COMPILATION_COMMENT=$with_comment
+else
+ COMPILATION_COMMENT="Source distribution"
+fi
+AC_SUBST(COMPILATION_COMMENT)
+
+AC_MSG_CHECKING("need of special linking flags")
+if test "$IS_LINUX" = "true" -a "$ac_cv_prog_gcc" = "yes" -a "$all_is_static" != "yes"
+then
+ LDFLAGS="$LDFLAGS -rdynamic"
+ AC_MSG_RESULT("-rdynamic")
+else
+ AC_MSG_RESULT("none")
+fi
+
+dnl Checks for typedefs, structures, and compiler characteristics.
+AC_C_CONST
+AC_C_INLINE
+AC_TYPE_OFF_T
+AC_STRUCT_ST_RDEV
+AC_HEADER_TIME
+AC_STRUCT_TM
+# AC_CHECK_SIZEOF return 0 when it does not find the size of a
+# type. We want a error instead.
+AC_CHECK_SIZEOF(char, 1)
+if test "$ac_cv_sizeof_char" -eq 0
+then
+ AC_MSG_ERROR([No size for char type.
+A likely cause for this could be that there isn't any
+static libraries installed. You can verify this by checking if you have libm.a
+in /lib, /usr/lib or some other standard place. If this is the problem,
+install the static libraries and try again. If this isn't the problem,
+examine config.log for possible errors. If you want to report this, use
+'scripts/mysqlbug' and include at least the last 20 rows from config.log!])
+fi
+AC_CHECK_SIZEOF(char*, 4)
+AC_CHECK_SIZEOF(int, 4)
+if test "$ac_cv_sizeof_int" -eq 0
+then
+ AC_MSG_ERROR("No size for int type.")
+fi
+AC_CHECK_SIZEOF(long, 4)
+if test "$ac_cv_sizeof_long" -eq 0
+then
+ AC_MSG_ERROR("No size for long type.")
+fi
+AC_CHECK_SIZEOF(long long, 8)
+if test "$ac_cv_sizeof_long_long" -eq 0
+then
+ AC_MSG_ERROR("MySQL needs a long long type.")
+fi
+# off_t is not a builtin type
+MYSQL_CHECK_SIZEOF(off_t, 4)
+if test "$ac_cv_sizeof_off_t" -eq 0
+then
+ AC_MSG_ERROR("MySQL needs a off_t type.")
+fi
+# This always gives a warning. Ignore it unless you are cross compiling
+AC_C_BIGENDIAN
+#---START: Used in for client configure
+# Check base type of last arg to accept
+MYSQL_TYPE_ACCEPT
+
+#---END:
+# Find where the stack goes
+MYSQL_STACK_DIRECTION
+# We want to skip alloca on irix unconditionally. It may work on some version..
+MYSQL_FUNC_ALLOCA
+# Do struct timespec have members tv_sec or ts_sec
+MYSQL_TIMESPEC_TS
+# Do we have the tzname variable
+MYSQL_TZNAME
+# Do the system files define ulong
+MYSQL_CHECK_ULONG
+# Do the system files define uchar
+MYSQL_CHECK_UCHAR
+# Do the system files define uint
+MYSQL_CHECK_UINT
+# Check for fp_except in ieeefp.h
+MYSQL_CHECK_FP_EXCEPT
+# Check for IN_ADDR_T
+MYSQL_CHECK_IN_ADDR_T
+# Do the c++ compiler have a bool type
+MYSQL_CXX_BOOL
+# Check some common bugs with gcc 2.8.# on sparc
+if ! ( expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null ); then
+MYSQL_CHECK_LONGLONG_TO_FLOAT
+if test "$ac_cv_conv_longlong_to_float" != "yes"
+then
+ AC_MSG_ERROR([Your compiler cannot convert a longlong value to a float!
+If you are using gcc 2.8.# you should upgrade to egcs 1.0.3 or newer and try
+again]);
+fi
+fi
+MYSQL_PTHREAD_YIELD
+
+######################################################################
+# For readline/libedit (We simply move the mimimum amount of stuff from
+# the readline/libedit configure.in here)
+
+dnl Checks for header files.
+AC_CHECK_HEADERS(malloc.h sys/cdefs.h)
+
+dnl Checks for library functions.
+AC_FUNC_ALLOCA
+AC_PROG_GCC_TRADITIONAL
+AC_TYPE_SIGNAL
+AC_CHECK_FUNCS(re_comp regcomp strdup)
+
+AC_CHECK_HEADERS(vis.h)
+AC_CHECK_FUNCS(strlcat strlcpy)
+AC_CHECK_FUNCS(issetugid)
+AC_CHECK_FUNCS(fgetln)
+AC_CHECK_FUNCS(getline flockfile)
+
+# from old readline settting:
+
+MAKE_SHELL=/bin/sh
+AC_SUBST(MAKE_SHELL)
+
+# Already-done: stdlib.h string.h unistd.h termios.h
+AC_CHECK_HEADERS(varargs.h stdarg.h dirent.h locale.h ndir.h sys/dir.h \
+ sys/file.h sys/ndir.h sys/ptem.h sys/pte.h sys/select.h sys/stream.h \
+ sys/mman.h curses.h termcap.h termio.h termbits.h asm/termbits.h grp.h \
+paths.h semaphore.h)
+
+# Already-done: strcasecmp
+AC_CHECK_FUNCS(lstat putenv select setenv setlocale strcoll tcgetattr)
+
+AC_STAT_MACROS_BROKEN
+MYSQL_SIGNAL_CHECK
+MYSQL_CHECK_GETPW_FUNCS
+MYSQL_HAVE_TIOCGWINSZ
+MYSQL_HAVE_FIONREAD
+MYSQL_HAVE_TIOCSTAT
+MYSQL_STRUCT_DIRENT_D_INO
+MYSQL_TYPE_SIGHANDLER
+if test "$with_named_curses" = "no"
+then
+ MYSQL_CHECK_LIB_TERMCAP
+else
+ TERMCAP_LIB="$with_named_curses"
+fi
+AC_SUBST(TERMCAP_LIB)
+
+# End of readline/libedit stuff
+#########################################################################
+
+dnl Checks for library functions.
+
+#
+# The following code disables intrinsic function support while we test for
+# library functions. This is to avoid configure problems with Intel ecc
+# compiler
+
+ORG_CFLAGS="$CFLAGS"
+if test "$GCC" != "yes"; then
+ AC_SYS_COMPILER_FLAG(-nolib_inline,nolib_inline,CFLAGS,[],[])
+fi
+
+AC_FUNC_MMAP
+AC_TYPE_SIGNAL
+MYSQL_TYPE_QSORT
+AC_FUNC_UTIME_NULL
+AC_FUNC_VPRINTF
+
+AC_CHECK_FUNCS(alarm bcmp bfill bmove bzero chsize cuserid fchmod fcntl \
+ fconvert fdatasync finite fpresetsticky fpsetmask fsync ftruncate \
+ getcwd gethostbyaddr_r gethostbyname_r getpass getpassphrase getpwnam \
+ getpwuid getrlimit getrusage getwd gmtime_r index initgroups isnan \
+ localtime_r locking longjmp lrand48 madvise mallinfo memcpy memmove \
+ mkstemp mlockall perror poll pread pthread_attr_create clock_gettime \
+ pthread_attr_getstacksize pthread_attr_setprio pthread_attr_setschedparam \
+ pthread_attr_setstacksize pthread_condattr_create pthread_getsequence_np \
+ pthread_key_delete pthread_rwlock_rdlock pthread_setprio \
+ pthread_setprio_np pthread_setschedparam pthread_sigmask readlink \
+ realpath rename rint rwlock_init setupterm sighold sigset sigthreadmask \
+ snprintf socket stpcpy strcasecmp strerror strnlen strpbrk strstr strtol \
+ strtoll strtoul strtoull tell tempnam thr_setconcurrency vidattr)
+
+# isinf() could be a function or a macro (HPUX)
+AC_MSG_CHECKING(for isinf with <math.h>)
+AC_TRY_LINK([#include <math.h>], [float f = 0.0; isinf(f)],
+ AC_MSG_RESULT(yes) AC_DEFINE(HAVE_ISINF,,[isinf() macro or function]),
+ AC_MSG_RESULT(no))
+
+CFLAGS="$ORG_CFLAGS"
+
+# Sanity check: We chould not have any fseeko symbol unless
+# large_file_support=yes
+AC_CHECK_FUNC(fseeko,
+[if test "$large_file_support" = no -a "$IS_LINUX" = "true";
+then
+ AC_MSG_ERROR("Found fseeko symbol but large_file_support is not enabled!");
+fi]
+)
+
+my_save_LIBS="$LIBS"
+LIBS="$LIBS $LIBDL"
+AC_CHECK_FUNCS(dlopen dlerror)
+LIBS="$my_save_LIBS"
+
+# Check definition of gethostbyaddr_r (glibc2 defines this with 8 arguments)
+ac_save_CXXFLAGS="$CXXFLAGS"
+AC_CACHE_CHECK([style of gethost* routines], mysql_cv_gethost_style,
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+
+# Do not treat warnings as errors if we are linking against other libc
+# this is to work around gcc not being permissive on non-system includes
+# with respect to ANSI C++
+# We also remove the -fbranch-probabilities option as this will give warnings
+# about not profiled code, which confuses configure
+if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
+then
+ CXXFLAGS=`echo "$CXXFLAGS -Werror" | sed 's/-fbranch-probabilities//'`
+fi
+
+AC_TRY_COMPILE(
+[#undef inline
+#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
+#define _REENTRANT
+#endif
+#include <pthread.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <netdb.h>],
+[int skr;
+ struct hostent *foo = gethostbyaddr_r((const char *) 0,
+ 0, 0, (struct hostent *) 0, (char *) NULL, 0, &skr); return (foo == 0);],
+mysql_cv_gethost_style=solaris, mysql_cv_gethost_style=other))
+AC_LANG_RESTORE
+CXXFLAGS="$ac_save_CXXFLAGS"
+if test "$mysql_cv_gethost_style" = "solaris"
+then
+ AC_DEFINE(HAVE_SOLARIS_STYLE_GETHOST)
+fi
+
+#---START: Used in for client configure
+
+# Check definition of gethostbyname_r (glibc2.0.100 is different from Solaris)
+ac_save_CXXFLAGS="$CXXFLAGS"
+AC_CACHE_CHECK([style of gethostname_r routines], mysql_cv_gethostname_style,
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
+then
+ CXXFLAGS=`echo "$CXXFLAGS -Werror" | sed 's/-fbranch-probabilities//'`
+fi
+AC_TRY_COMPILE(
+[#undef inline
+#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
+#define _REENTRANT
+#endif
+#include <pthread.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <netdb.h>],
+[int skr;
+
+ skr = gethostbyname_r((const char *) 0,
+ (struct hostent*) 0, (char*) 0, 0, (struct hostent **) 0, &skr);],
+mysql_cv_gethostname_style=glibc2, mysql_cv_gethostname_style=other))
+AC_LANG_RESTORE
+CXXFLAGS="$ac_save_CXXFLAGS"
+if test "$mysql_cv_gethostname_style" = "glibc2"
+then
+ AC_DEFINE(HAVE_GETHOSTBYNAME_R_GLIBC2_STYLE)
+fi
+
+# Check 3rd argument of getthostbyname_r
+ac_save_CXXFLAGS="$CXXFLAGS"
+AC_CACHE_CHECK([3 argument to gethostname_r routines], mysql_cv_gethostname_arg,
+AC_LANG_SAVE
+AC_LANG_CPLUSPLUS
+if test "$ac_cv_prog_gxx" = "yes" -a "$with_other_libc" = "no"
+then
+ CXXFLAGS=`echo "$CXXFLAGS -Werror" | sed 's/-fbranch-probabilities//'`
+fi
+AC_TRY_COMPILE(
+[#undef inline
+#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
+#define _REENTRANT
+#endif
+#include <pthread.h>
+#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <netdb.h>],
+[int skr;
+
+ skr = gethostbyname_r((const char *) 0, (struct hostent*) 0, (struct hostent_data*) 0);],
+mysql_cv_gethostname_arg=hostent_data, mysql_cv_gethostname_arg=char))
+AC_LANG_RESTORE
+CXXFLAGS="$ac_save_CXXFLAGS"
+if test "$mysql_cv_gethostname_arg" = "hostent_data"
+then
+ AC_DEFINE(HAVE_GETHOSTBYNAME_R_RETURN_INT)
+fi
+
+
+if test "$with_mit_threads" = "no"
+then
+ # Check definition of pthread_getspecific
+ AC_CACHE_CHECK("args to pthread_getspecific", mysql_cv_getspecific_args,
+ AC_TRY_COMPILE(
+[#if !defined(SCO) && !defined(__osf__) && !defined(_REENTRANT)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h> ],
+[ void *pthread_getspecific(pthread_key_t key);
+pthread_getspecific((pthread_key_t) NULL); ],
+mysql_cv_getspecific_args=POSIX, mysql_cv_getspecific_args=other))
+ if test "$mysql_cv_getspecific_args" = "other"
+ then
+ AC_DEFINE(HAVE_NONPOSIX_PTHREAD_GETSPECIFIC)
+ fi
+
+ # Check definition of pthread_mutex_init
+ AC_CACHE_CHECK("args to pthread_mutex_init", mysql_cv_mutex_init_args,
+ AC_TRY_COMPILE(
+[#if !defined(SCO) && !defined(__osf__)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h> ],
+[
+ pthread_mutexattr_t attr;
+ pthread_mutex_t mp;
+ pthread_mutex_init(&mp,&attr); ],
+mysql_cv_mutex_init_args=POSIX, mysql_cv_mutex_init_args=other))
+ if test "$mysql_cv_mutex_init_args" = "other"
+ then
+ AC_DEFINE(HAVE_NONPOSIX_PTHREAD_MUTEX_INIT)
+ fi
+fi
+#---END:
+
+#---START: Used in for client configure
+# Check definition of readdir_r
+AC_CACHE_CHECK("args to readdir_r", mysql_cv_readdir_r,
+AC_TRY_LINK(
+[#if !defined(SCO) && !defined(__osf__)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h>
+#include <dirent.h>],
+[ int readdir_r(DIR *dirp, struct dirent *entry, struct dirent **result);
+readdir_r((DIR *) NULL, (struct dirent *) NULL, (struct dirent **) NULL); ],
+mysql_cv_readdir_r=POSIX, mysql_cv_readdir_r=other))
+if test "$mysql_cv_readdir_r" = "POSIX"
+then
+ AC_DEFINE(HAVE_READDIR_R)
+fi
+
+# Check definition of posix sigwait()
+AC_CACHE_CHECK("style of sigwait", mysql_cv_sigwait,
+AC_TRY_LINK(
+[#if !defined(SCO) && !defined(__osf__)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h>
+#include <signal.h>],
+[#ifndef _AIX
+sigset_t set;
+int sig;
+sigwait(&set,&sig);
+#endif],
+mysql_cv_sigwait=POSIX, mysql_cv_sigwait=other))
+if test "$mysql_cv_sigwait" = "POSIX"
+then
+ AC_DEFINE(HAVE_SIGWAIT)
+fi
+
+if test "$mysql_cv_sigwait" != "POSIX"
+then
+unset mysql_cv_sigwait
+# Check definition of posix sigwait()
+AC_CACHE_CHECK("style of sigwait", mysql_cv_sigwait,
+AC_TRY_LINK(
+[#if !defined(SCO) && !defined(__osf__)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h>
+#include <signal.h>],
+[sigset_t set;
+int sig;
+sigwait(&set);],
+mysql_cv_sigwait=NONPOSIX, mysql_cv_sigwait=other))
+if test "$mysql_cv_sigwait" = "NONPOSIX"
+then
+ AC_DEFINE(HAVE_NONPOSIX_SIGWAIT)
+fi
+fi
+#---END:
+
+# Check if pthread_attr_setscope() exists
+AC_CACHE_CHECK("for pthread_attr_setscope", mysql_cv_pthread_attr_setscope,
+AC_TRY_LINK(
+[#if !defined(SCO) && !defined(__osf__)
+#define _REENTRANT
+#endif
+#define _POSIX_PTHREAD_SEMANTICS
+#include <pthread.h>],
+[pthread_attr_t thr_attr;
+pthread_attr_setscope(&thr_attr,0);],
+mysql_cv_pthread_attr_setscope=yes, mysql_cv_pthread_attr_setscope=no))
+if test "$mysql_cv_pthread_attr_setscope" = "yes"
+then
+ AC_DEFINE(HAVE_PTHREAD_ATTR_SETSCOPE)
+fi
+
+# Check for bad includes
+AC_MSG_CHECKING("can netinet files be included")
+AC_TRY_COMPILE(
+[#include <sys/types.h>
+#include <sys/socket.h>
+#include <netinet/in_systm.h>
+#include <netinet/in.h>
+#include <netinet/ip.h>
+#include <netinet/tcp.h>],
+[ printf("1\n"); ],
+netinet_inc=yes, netinet_inc=no)
+if test "$netinet_inc" = "no"
+then
+ AC_DEFINE(HAVE_BROKEN_NETINET_INCLUDES)
+fi
+AC_MSG_RESULT("$netinet_inc")
+
+# Some usefull subst
+AC_SUBST(CC)
+AC_SUBST(GXX)
+
+# Output results
+AC_OUTPUT(Makefile dnl
+ , , [
+ test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
+ ])