Commit 2e83820b authored by monty@donna.mysql.com's avatar monty@donna.mysql.com
Browse files

Merge work:/my/mysql into donna.mysql.com:/home/my/bk/mysql

parents 56ba98f5 18f7b7b6
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
jani@prima.mysql.com
jani@prima.mysql.fi
jcole@tetra.spaceapes.com
monty@donna.mysql.com
monty@tik.mysql.com
monty@work.mysql.com
@@ -8,4 +9,3 @@ sasha@mysql.sashanet.com
sasha@work.mysql.com
serg@serg.mysql.com
tim@cane.mysql.fi
jcole@tetra.spaceapes.com
+7 −1
Original line number Diff line number Diff line
@@ -20439,7 +20439,7 @@ The maximum size of one packet. The message buffer is initialized to
bytes when needed.  This value by default is small, to catch big (possibly
wrong) packets.  You must increase this value if you are using big
@code{BLOB} columns. It should be as big as the biggest @code{BLOB} you want
to use.
to use.  The current protocol limits @code{max_allowed_packet} to 16M.
@item @code{max_binlog_cache_size}.  If a multi-statement transaction
requires more than this amount of memory, one will get the error
@@ -39680,6 +39680,9 @@ For making @code{mysqlaccess} more secure.
@item Konark IA-64 Centre of Persistent Systems Private Limited
@uref{http://www.pspl.co.in/konark/}.  Help with the Win64 port of the
@strong{MySQL} server.
@item Albert Chin-A-Young.
Configure updates for Tru64, large file support and better TCP wrappers
support.
@item Valueclick Inc.
For sponsoring the optimize section in this manual.
@end table
@@ -39800,6 +39803,9 @@ though, so Version 3.23 is not released as a stable version yet.
@appendixsubsec Changes in release 3.23.29
@itemize @bullet
@item
Configure updates for Tru64, large file support and better TCP wrappers
support. By Albert Chin-A-Young.
@item
Fixed bug in <=> operator.
@item
Fixed bug in @code{REPLACE} with BDB tables.
+56 −114
Original line number Diff line number Diff line
@@ -740,8 +740,8 @@ dnl echo ["MYSQL_CHECK_INSTALLED_BDB ($1) ($2)"]
      [.*#define[ 	]*], [[ 	][ 	]*])

    if test X"$bdb_version_ok" = Xyes; then
      save_LIBS="$LIBS"
      LIBS="-L$lib $LIBS"
      save_LDFLAGS="$LDFLAGS"
      LDFLAGS="-L$lib $LDFLAGS"
      AC_CHECK_LIB(db,db_env_create, [
        bdb_dir_ok=installed
        MYSQL_TOP_BUILDDIR([inc])
@@ -749,7 +749,7 @@ dnl echo ["MYSQL_CHECK_INSTALLED_BDB ($1) ($2)"]
        bdb_includes="-I$inc"
        bdb_libs="-L$lib -ldb"
      ])
      LIBS="$save_LIBS"
      LDFLAGS="$save_LDFLAGS"
    else
      bdb_dir_ok="$bdb_version_ok"
    fi
@@ -836,10 +836,7 @@ dnl ---------------------------------------------------------------------------
dnl END OF MYSQL_CHECK_BDB SECTION
dnl ---------------------------------------------------------------------------

dnl ---------------------------------------------------------------------------
dnl Got this from the GNU tar 1.13.11 distribution
dnl by Paul Eggert <eggert@twinsun.com>
dnl ---------------------------------------------------------------------------
#serial 12

dnl By default, many hosts won't let programs access large files;
dnl one must use special compiler options to get large-file access to work.
@@ -849,122 +846,67 @@ dnl http://www.sas.com/standards/large.file/x_open.20Mar96.html
dnl Written by Paul Eggert <eggert@twinsun.com>.

dnl Internal subroutine of AC_SYS_LARGEFILE.
dnl AC_SYS_LARGEFILE_FLAGS(FLAGSNAME)
AC_DEFUN(AC_SYS_LARGEFILE_FLAGS,
  [AC_CACHE_CHECK([for $1 value to request large file support],
     ac_cv_sys_largefile_$1,
     [if ($GETCONF LFS_$1) >conftest.1 2>conftest.2 && test ! -s conftest.2
      then
        ac_cv_sys_largefile_$1=`cat conftest.1`
      else
	ac_cv_sys_largefile_$1=no
	ifelse($1, CFLAGS,
	  [case "$host_os" in
	   # HP-UX 10.20 requires -D__STDC_EXT__ with gcc 2.95.1.
changequote(, )dnl
	   hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
changequote([, ])dnl
	     if test "$GCC" = yes; then
	       ac_cv_sys_largefile_CFLAGS=-D__STDC_EXT__
	     fi
	     ;;
	   # IRIX 6.2 and later require cc -n32.
changequote(, )dnl
	   irix6.[2-9]* | irix6.1[0-9]* | irix[7-9].* | irix[1-9][0-9]*)
changequote([, ])dnl
	     if test "$GCC" != yes; then
	       ac_cv_sys_largefile_CFLAGS=-n32
	     fi
	   esac
	   if test "$ac_cv_sys_largefile_CFLAGS" != no; then
	     ac_save_CC="$CC"
	     CC="$CC $ac_cv_sys_largefile_CFLAGS"
	     AC_TRY_LINK(, , , ac_cv_sys_largefile_CFLAGS=no)
	     CC="$ac_save_CC"
	   fi])
      fi
      rm -f conftest*])])

dnl Internal subroutine of AC_SYS_LARGEFILE.
dnl AC_SYS_LARGEFILE_SPACE_APPEND(VAR, VAL)
AC_DEFUN(AC_SYS_LARGEFILE_SPACE_APPEND,
  [case $2 in
   no) ;;
   ?*)
     case "[$]$1" in
     '') $1=$2 ;;
     *) $1=[$]$1' '$2 ;;
     esac ;;
   esac])
dnl AC_SYS_LARGEFILE_TEST_INCLUDES
AC_DEFUN(AC_SYS_LARGEFILE_TEST_INCLUDES,
  [[#include <sys/types.h>
    int a[(off_t) 9223372036854775807 == 9223372036854775807 ? 1 : -1];
  ]])

dnl Internal subroutine of AC_SYS_LARGEFILE.
dnl AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, CACHE-VAR, COMMENT, CODE-TO-SET-DEFAULT)
dnl AC_SYS_LARGEFILE_MACRO_VALUE(C-MACRO, VALUE, CACHE-VAR, COMMENT, INCLUDES, FUNCTION-BODY)
AC_DEFUN(AC_SYS_LARGEFILE_MACRO_VALUE,
  [AC_CACHE_CHECK([for $1], $2,
     [$2=no
changequote(, )dnl
      $4
      for ac_flag in $ac_cv_sys_largefile_CFLAGS no; do
	case "$ac_flag" in
	-D$1)
	  $2=1 ;;
	-D$1=*)
	  $2=`expr " $ac_flag" : '[^=]*=\(.*\)'` ;;
	esac
      done
changequote([, ])dnl
      ])
   if test "[$]$2" != no; then
     AC_DEFINE_UNQUOTED([$1], [$]$2, [$3])
  [AC_CACHE_CHECK([for $1 value needed for large files], $3,
     [$3=no
      AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES
$5
        ,
	[$6], 
	,
	[AC_TRY_COMPILE([#define $1 $2]
AC_SYS_LARGEFILE_TEST_INCLUDES
$5
	   ,
	   [$6],
	   [$3=$2])])])
   if test "[$]$3" != no; then
     AC_DEFINE_UNQUOTED([$1], [$]$3, [$4])
   fi])

AC_DEFUN(AC_SYS_LARGEFILE,
  [AC_REQUIRE([AC_CANONICAL_HOST])
   AC_ARG_ENABLE(largefile,
     [  --disable-large-files   Omit support for large files])
  [AC_ARG_ENABLE(largefile,
     [  --disable-largefile     omit support for large files])
   if test "$enable_largefile" != no; then
     AC_CHECK_TOOL(GETCONF, getconf)
     AC_SYS_LARGEFILE_FLAGS(CFLAGS)
     AC_SYS_LARGEFILE_FLAGS(LDFLAGS)
     AC_SYS_LARGEFILE_FLAGS(LIBS)

     for ac_flag in $ac_cv_sys_largefile_CFLAGS no; do
       case "$ac_flag" in
       no) ;;
       -D_FILE_OFFSET_BITS=*) ;;
       -D_LARGEFILE_SOURCE | -D_LARGEFILE_SOURCE=*) ;;
       -D_LARGE_FILES | -D_LARGE_FILES=*) ;;
       -D?* | -I?*)
	 AC_SYS_LARGEFILE_SPACE_APPEND(CPPFLAGS, "$ac_flag") ;;
       *)
	 AC_SYS_LARGEFILE_SPACE_APPEND(CFLAGS, "$ac_flag") ;;
       esac
     done
     AC_SYS_LARGEFILE_SPACE_APPEND(LDFLAGS, "$ac_cv_sys_largefile_LDFLAGS")
     AC_SYS_LARGEFILE_SPACE_APPEND(LIBS, "$ac_cv_sys_largefile_LIBS")
     AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS,

     AC_CACHE_CHECK([for special C compiler options needed for large files],
       ac_cv_sys_largefile_CC,
       [ac_cv_sys_largefile_CC=no
        if test "$GCC" != yes; then
	  # IRIX 6.2 and later do not support large files by default,
	  # so use the C compiler's -n32 option if that helps.
	  AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES, , ,
	    [ac_save_CC="$CC"
	     CC="$CC -n32"
	     AC_TRY_COMPILE(AC_SYS_LARGEFILE_TEST_INCLUDES, ,
	       ac_cv_sys_largefile_CC=' -n32')
	     CC="$ac_save_CC"])
        fi])
     if test "$ac_cv_sys_largefile_CC" != no; then
       CC="$CC$ac_cv_sys_largefile_CC"
     fi

     AC_SYS_LARGEFILE_MACRO_VALUE(_FILE_OFFSET_BITS, 64,
       ac_cv_sys_file_offset_bits,
       [Number of bits in a file offset, on hosts where this is settable.],
       [case "$host_os" in
	# HP-UX 10.20 and later
	hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
	  ac_cv_sys_file_offset_bits=64 ;;
	esac])
     AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE,
       [Number of bits in a file offset, on hosts where this is settable.])
     AC_SYS_LARGEFILE_MACRO_VALUE(_LARGEFILE_SOURCE, 1,
       ac_cv_sys_largefile_source,
       [Define to make fseeko etc. visible, on some hosts.],
       [case "$host_os" in
	# HP-UX 10.20 and later
	hpux10.[2-9][0-9]* | hpux1[1-9]* | hpux[2-9][0-9]*)
	  ac_cv_sys_largefile_source=1 ;;
	esac])
     AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES,
       [Define to make ftello visible on some hosts (e.g. HP-UX 10.20).],
       [#include <stdio.h>], [return !ftello;])
     AC_SYS_LARGEFILE_MACRO_VALUE(_LARGE_FILES, 1,
       ac_cv_sys_large_files,
       [Define for large files, on AIX-style hosts.],
       [case "$host_os" in
	# AIX 4.2 and later
	aix4.[2-9]* | aix4.1[0-9]* | aix[5-9].* | aix[1-9][0-9]*)
	  ac_cv_sys_large_files=1 ;;
	esac])
       [Define for large files, on AIX-style hosts.])
     AC_SYS_LARGEFILE_MACRO_VALUE(_XOPEN_SOURCE, 500,
       ac_cv_sys_xopen_source,
       [Define to make ftello visible on some hosts (e.g. glibc 2.1.3).],
       [#include <stdio.h>], [return !ftello;])
   fi
  ])
+61 −67
Original line number Diff line number Diff line
@@ -413,43 +413,6 @@ AC_ARG_WITH(named-z-libs,
    [ with_named_zlib=z ]
    )

AC_MSG_CHECKING(whether to use libwrap)
AC_ARG_WITH(libwrap,
[  --with-libwrap[=PATH]   Compile in libwrap (tcp_wrappers) support.],
[ case "$withval" in
  no)
    AC_MSG_RESULT(no)
    ;;
  yes)
    AC_MSG_RESULT(yes)
    AC_CHECK_LIB(wrap, request_init, [
	AC_DEFINE(LIBWRAP)
        WRAPLIBS="-lwrap"
        AC_DEFINE(HAVE_LIBWRAP) ])
    ;;
  *)
    AC_MSG_RESULT(yes)
    AC_DEFINE(LIBWRAP)
    if test -d "$withval"; then
    	WRAPLIBS="-L$withval -lwrap"
    else
	WRAPLIBS="$withval"
    fi
    AC_DEFINE(HAVE_LIBWRAP)
    OLDLIBS="$LIBS"
    LIBS="$WRAPLIBS $LIBS"
    AC_TRY_LINK([ int allow_severity; int deny_severity; ],
                [ hosts_access(); ],
		[],
		[ AC_MSG_ERROR(Could not find the $withval library.  You must first install tcp_wrappers.) ])
    LIBS="$OLDLIBS"
    ;;
  esac ],
  AC_MSG_RESULT(no)
)

AC_SUBST(WRAPLIBS)

# Make thread safe client
AC_ARG_ENABLE(thread-safe-client,
    [  --enable-thread-safe-client   
@@ -507,8 +470,7 @@ AC_ARG_WITH(mysqld-user,
    )
AC_SUBST(MYSQLD_USER)

# Use Paul Eggerts macros from GNU tar to check for large file
# support.
# Use Paul Eggert's macros to check for large file support
AC_SYS_LARGEFILE

# Types that must be checked AFTER large file support is checked
@@ -533,29 +495,61 @@ AC_CHECK_HEADERS(fcntl.h float.h floatingpoint.h ieeefp.h limits.h \
# and defines HAVE_LIBM etc
#--------------------------------------------------------------------

AC_CHECK_LIB(m, floor)
if test "$ac_cv_lib_m_floor" = "no"
then
  AC_CHECK_LIB(m, __infinity)
fi
AC_CHECK_LIB(nsl_r, gethostbyname_r)
if test "$ac_cv_lib_nsl_r_gethostbyname_r" = "no"
then
  AC_CHECK_LIB(nsl, gethostbyname_r)
fi
LIBS_BEFORE_SOCKET=$LIBS
LIBS=
AC_CHECK_LIB(socket, socket)
LIBS_SOCKET=$LIBS
LIBS=
AC_CHECK_LIB(gen, p2open)
AC_CHECK_LIB(m, floor, [], AC_CHECK_LIB(m, __infinity))
AC_CHECK_FUNC(gethostbyname_r, [], [
  AC_CHECK_LIB(nsl_r, gethostbyname_r, [],
    AC_CHECK_LIB(nsl, 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_LIB(bind, bind)
AC_CHECK_FUNC(bind, , AC_CHECK_LIB(bind, bind))
# For crypt() on Linux
AC_CHECK_LIB(crypt,crypt)
AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt))
# 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="$LIBS -lwrap"
      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)
        WRAPLIBS="-L$with_libwrap/lib -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])

@@ -592,7 +586,7 @@ fi
# 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_LIB(compat, gtty)
  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.
@@ -1272,7 +1266,7 @@ then
  CXXFLAGS="$CXXFLAGS -Werror"
fi
AC_TRY_COMPILE(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#include <pthread.h>
@@ -1304,7 +1298,7 @@ then
  CXXFLAGS="$CXXFLAGS -Werror"
fi
AC_TRY_COMPILE(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#include <pthread.h>
@@ -1335,7 +1329,7 @@ then
  CXXFLAGS="$CXXFLAGS -Werror"
fi
AC_TRY_COMPILE(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#include <pthread.h>
@@ -1361,7 +1355,7 @@ then
  # Check definition of pthread_getspecific
  AC_CACHE_CHECK("args to pthread_getspecific", mysql_cv_getspecific_args,
  AC_TRY_COMPILE(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
@@ -1377,7 +1371,7 @@ mysql_cv_getspecific_args=POSIX, mysql_cv_getspecific_args=other))
  # Check definition of pthread_mutex_init
  AC_CACHE_CHECK("args to pthread_mutex_init", mysql_cv_mutex_init_args,
  AC_TRY_COMPILE(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
@@ -1398,7 +1392,7 @@ fi
# Check definition of readdir_r
AC_CACHE_CHECK("args to readdir_r", mysql_cv_readdir_r,
AC_TRY_LINK(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
@@ -1415,7 +1409,7 @@ fi
# Check definition av posix sigwait()
AC_CACHE_CHECK("style of sigwait", mysql_cv_sigwait,
AC_TRY_LINK(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
@@ -1438,7 +1432,7 @@ unset mysql_cv_sigwait
# Check definition av posix sigwait()
AC_CACHE_CHECK("style of sigwait", mysql_cv_sigwait,
AC_TRY_LINK(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
@@ -1458,7 +1452,7 @@ fi
# Check if pthread_attr_setscope() exists
AC_CACHE_CHECK("for pthread_attr_setscope", mysql_cv_pthread_attr_setscope,
AC_TRY_LINK(
[#ifndef SCO
[#if !defined(SCO) && !defined(__osf__)
#define _REENTRANT
#endif
#define _POSIX_PTHREAD_SEMANTICS 
+4 −4
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@ static struct option long_options[] =
  {"defaults-file",	required_argument, 0,	'c'},
  {"defaults-extra-file", required_argument, 0,	'e'},
  {"extra-file", 	required_argument, 0,	'e'},
  {"no-defaults",	no_argument,	   0,	'd'},
  {"no-defaults",	no_argument,	   0,	'n'},
  {"help",		no_argument,	   0,	'?'},
  {"version",		no_argument,	   0,	'V'},
  {0, 0, 0, 0}
@@ -42,7 +42,7 @@ static struct option long_options[] =

static void usage(my_bool version)
{
  printf("%s  Ver 1.2 for %s at %s\n",my_progname,SYSTEM_TYPE,
  printf("%s  Ver 1.3 for %s at %s\n",my_progname,SYSTEM_TYPE,
	 MACHINE_TYPE);
  if (version)
    return;
@@ -55,7 +55,7 @@ static void usage(my_bool version)
  -e, --extra-file=#, --defaults-extra-file=#\n\
			Read this file after the global /etc config file and\n\
			before the config file in the users home directory.\n\
  --no-defaults		Return an empty string (useful for scripts)\n\
  -n, --no-defaults	Return an empty string (useful for scripts)\n\
  -?, --help		Display this help message and exit.\n\
  -V, --version		Output version information and exit.\n",
	 config_file);
@@ -66,7 +66,7 @@ static int get_options(int *argc,char ***argv)
{
  int c,option_index;

  while ((c=getopt_long(*argc,*argv,"c:e:V?I",
  while ((c=getopt_long(*argc,*argv,"nc:e:V?I",
			long_options, &option_index)) != EOF)
  {
    switch (c) {
Loading