Merge pgalbraith@bk-internal.mysql.com:/home/bk/mysql-4.0
into krsna.patg.net:/home/patg/mysql-4.0
|
@ -15,7 +15,7 @@ argument.
|
|||
path=`dirname $0`
|
||||
. "$path/SETUP.sh"
|
||||
|
||||
extra_flags="$pentium_cflags $debug_cflags -USAFEMALLOC -DHAVE_purify"
|
||||
extra_flags="$pentium_cflags $debug_cflags -USAFEMALLOC -UFORCE_INIT_OF_VARS -DHAVE_purify -DMYSQL_SERVER_SUFFIX=-valgrind-max"
|
||||
c_warnings="$c_warnings $debug_extra_warnings"
|
||||
cxx_warnings="$cxx_warnings $debug_extra_warnings"
|
||||
extra_configs="$pentium_configs $debug_configs"
|
||||
|
|
|
@ -7,7 +7,7 @@ use Sys::Hostname;
|
|||
@config_options= ();
|
||||
@make_options= ();
|
||||
|
||||
$opt_distribution=$opt_user=$opt_config_env="";
|
||||
$opt_distribution=$opt_user=$opt_config_env=$opt_config_extra_env="";
|
||||
$opt_dbd_options=$opt_perl_options=$opt_config_options=$opt_make_options=$opt_suffix="";
|
||||
$opt_tmp=$opt_version_suffix="";
|
||||
$opt_help=$opt_delete=$opt_debug=$opt_stage=$opt_no_test=$opt_no_perl=$opt_with_low_memory=$opt_fast_benchmark=$opt_static_client=$opt_static_server=$opt_static_perl=$opt_sur=$opt_with_small_disk=$opt_local_perl=$opt_tcpip=$opt_build_thread=$opt_use_old_distribution=$opt_enable_shared=$opt_no_crash_me=$opt_no_strip=$opt_with_debug=$opt_no_benchmark=$opt_no_mysqltest=$opt_without_embedded=0;
|
||||
|
@ -17,6 +17,7 @@ GetOptions(
|
|||
"bdb",
|
||||
"build-thread=i",
|
||||
"config-env=s" => \@config_env,
|
||||
"config-extra-env=s" => \@config_extra_env,
|
||||
"config-options=s" => \@config_options,
|
||||
"dbd-options=s",
|
||||
"debug",
|
||||
|
@ -79,6 +80,12 @@ if (@config_env > 0)
|
|||
$opt_config_env= join(" ", @config_env);
|
||||
}
|
||||
|
||||
if (@config_extra_env > 0)
|
||||
{
|
||||
chomp(@config_extra_env);
|
||||
$opt_config_extra_env= join(" ", @config_extra_env);
|
||||
}
|
||||
|
||||
$host= hostname();
|
||||
chomp($uname=`uname`);
|
||||
$full_host_name=$host;
|
||||
|
@ -89,6 +96,7 @@ $email="$opt_user\@mysql.com";
|
|||
chomp($pwd = `pwd`);
|
||||
$VER= basename($opt_distribution);
|
||||
$VER=~ /mysql.*-([1-9]\.[0-9]{1,2}\.[0-9]{1,2}.*)\.tar*/; $version=$1;
|
||||
$release=""; # Shut up perl
|
||||
($major, $minor, $release) = split(/\./,$version);
|
||||
$log="$pwd/Logs/$host-$major.$minor$opt_version_suffix.log";
|
||||
$opt_distribution =~ /(mysql[^\/]*)\.tar/;
|
||||
|
@ -111,6 +119,8 @@ if (defined($gcc_version) && ! $opt_config_env)
|
|||
}
|
||||
}
|
||||
|
||||
$opt_config_env.=" $opt_config_extra_env";
|
||||
|
||||
$new_opt_tmp=0;
|
||||
if ($opt_tmp)
|
||||
{
|
||||
|
@ -154,6 +164,9 @@ select STDOUT;
|
|||
$|=1;
|
||||
|
||||
info("Compiling MySQL$opt_version_suffix at $host$opt_suffix, stage: $opt_stage\n");
|
||||
info("LD_LIBRARY_PATH is $ENV{LD_LIBRARY_PATH}");
|
||||
info("PATH is $ENV{PATH}");
|
||||
|
||||
log_timestamp();
|
||||
|
||||
if (-x "$host/bin/mysqladmin")
|
||||
|
@ -240,14 +253,14 @@ if ($opt_stage <= 1)
|
|||
|
||||
# Only enable InnoDB when requested (required to be able to
|
||||
# build the "Classic" packages that do not include InnoDB)
|
||||
if ($opt_innodb)
|
||||
{
|
||||
$opt_config_options.= " --with-innodb";
|
||||
}
|
||||
else
|
||||
{
|
||||
$opt_config_options.= " --without-innodb";
|
||||
}
|
||||
if ($opt_innodb)
|
||||
{
|
||||
$opt_config_options.= " --with-innodb";
|
||||
}
|
||||
else
|
||||
{
|
||||
$opt_config_options.= " --without-innodb";
|
||||
}
|
||||
|
||||
if ($opt_with_other_libc)
|
||||
{
|
||||
|
@ -443,7 +456,7 @@ exit 0;
|
|||
sub usage
|
||||
{
|
||||
print <<EOF;
|
||||
$0 version 1.5
|
||||
$0 version 1.6
|
||||
|
||||
$0 takes the following options:
|
||||
|
||||
|
@ -453,6 +466,10 @@ Compile with support for Berkeley DB tables
|
|||
--config-env <environment for configure>
|
||||
To set up the environment, like 'CC=cc CXX=gcc CXXFLAGS=-O3'
|
||||
|
||||
--config-extra-env <environment for configure>
|
||||
Additional flags for environment (not CC or CXX). Should be used when one
|
||||
wants Do-compile to propose proper CC and CXX flags.
|
||||
|
||||
--config-options <options>
|
||||
To add some extra options to configure (e.g. '--with-perl=yes')
|
||||
|
||||
|
|
|
@ -23,9 +23,8 @@ EXTRA_DIST = INSTALL-SOURCE README COPYING
|
|||
SUBDIRS = . include @docs_dirs@ @readline_dir@ \
|
||||
@thread_dirs@ pstack @sql_client_dirs@ \
|
||||
@sql_server_dirs@ scripts man tests \
|
||||
BUILD @netware_dir@ os2 @libmysqld_dirs@ \
|
||||
BUILD netware os2 @libmysqld_dirs@ \
|
||||
@bench_dirs@ support-files @fs_dirs@ @tools_dirs@
|
||||
|
||||
|
||||
# Relink after clean
|
||||
linked_sources = linked_client_sources linked_server_sources \
|
||||
|
|
|
@ -66,7 +66,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../bdb/build_win32" /I "../bdb/include" /D "__WIN32__" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /FD /c
|
||||
# SUBTRACT BASE CPP /Fr
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../bdb/build_win32" /I "../bdb/include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D MYSQL_SERVER_SUFFIX_MAX /Fo"max/" /Fd"max/" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../bdb/build_win32" /I "../bdb/include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D MYSQL_SERVER_SUFFIX=-max /Fo"max/" /Fd"max/" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -96,7 +96,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /WX /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /WX /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D "MYSQL_COMMERCIAL_LICENSE" /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /WX /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -95,7 +95,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -41,7 +41,7 @@ RSC=rc.exe
|
|||
# PROP Intermediate_Dir "release"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /D "MYSQL_CLIENT" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
|
@ -65,7 +65,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Intermediate_Dir "debug"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /W3 /GX /Z7 /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "../include" /I "../" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /D "MYSQL_CLIENT" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
|
|
|
@ -95,7 +95,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -96,7 +96,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -95,7 +95,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -46,7 +46,7 @@ BSC32=bscmake.exe
|
|||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\lib_release\mysys.lib wsock32.lib ..\lib_release\strings.lib ..\lib_release\dbug.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBC.lib" /out:"../client_release/comp-err.exe"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\lib_release\mysys.lib wsock32.lib ..\lib_release\strings.lib /nologo /subsystem:console /machine:I386 /nodefaultlib:"LIBC.lib" /out:"../client_release/comp-err.exe"
|
||||
# Begin Target
|
||||
|
||||
# Name "comp_err - Win32 Release"
|
||||
|
|
|
@ -2,12 +2,8 @@ REM stop any conflicting service
|
|||
|
||||
net stop mysql
|
||||
|
||||
REM Our build system uses M:\mysql-version for the build root dir
|
||||
|
||||
M:
|
||||
cd \mysql-4.0
|
||||
|
||||
REM Copy binaries
|
||||
REM Copy binaries to c:\mysql
|
||||
REM (We assume we are in build root when executing this script)
|
||||
|
||||
copy lib_debug\libmysql.* c:\mysql\lib\debug
|
||||
copy lib_debug\zlib.* c:\mysql\lib\debug
|
||||
|
@ -72,13 +68,13 @@ copy libmysqltest\release\myTest.exe c:\mysql\examples\libmysqltest
|
|||
|
||||
REM Copy share, docs etc
|
||||
|
||||
xcopy share\*.* c:\mysql\share /E
|
||||
xcopy scripts\*.* c:\mysql\scripts /E
|
||||
xcopy docs\*.* c:\mysql\docs /E
|
||||
xcopy docs\readme c:\mysql\
|
||||
xcopy sql-bench\*.* c:\mysql\bench /E
|
||||
xcopy share\*.* c:\mysql\share /E /Y
|
||||
xcopy scripts\*.* c:\mysql\scripts /E /Y
|
||||
xcopy docs\*.* c:\mysql\docs /E /Y
|
||||
xcopy sql-bench\*.* c:\mysql\bench /E /Y
|
||||
copy docs\readme c:\mysql\
|
||||
|
||||
REM Copy privilege tables (Delete old ones as they may be from a newer version)
|
||||
|
||||
del c:\mysql\data\mysql\*.* /Q
|
||||
copy data\*.* c:\mysql\data
|
||||
xcopy data\mysql\*.* c:\mysql\data\mysql /E /Y
|
||||
|
|
|
@ -19,6 +19,7 @@ CFG=dbug - Win32 Debug
|
|||
!MESSAGE
|
||||
!MESSAGE "dbug - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "dbug - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "dbug - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -76,12 +77,38 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\lib_debug\dbug.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "dbug - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "dbug___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "dbug___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "dbug___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "dbug___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "__WIN32__" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "__WIN32__" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_debug\dbug_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_debug\dbug_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "dbug - Win32 Release"
|
||||
# Name "dbug - Win32 Debug"
|
||||
# Name "dbug - Win32 TLS_DEBUG"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\dbug.c
|
||||
|
|
18
VC++Files/examples/udf_example/udf_example.def
Normal file
|
@ -0,0 +1,18 @@
|
|||
LIBRARY MYUDF
|
||||
DESCRIPTION 'MySQL Sample for UDF'
|
||||
VERSION 1.0
|
||||
EXPORTS
|
||||
metaphon_init
|
||||
metaphon_deinit
|
||||
metaphon
|
||||
myfunc_double_init
|
||||
myfunc_double
|
||||
myfunc_int
|
||||
sequence_init
|
||||
sequence_deinit
|
||||
sequence
|
||||
avgcost_init
|
||||
avgcost_deinit
|
||||
avgcost_reset
|
||||
avgcost_add
|
||||
avgcost
|
111
VC++Files/examples/udf_example/udf_example.dsp
Normal file
|
@ -0,0 +1,111 @@
|
|||
# Microsoft Developer Studio Project File - Name="udf_example" - Package Owner=<4>
|
||||
# Microsoft Developer Studio Generated Build File, Format Version 6.00
|
||||
# ** DO NOT EDIT **
|
||||
|
||||
# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
|
||||
|
||||
CFG=udf_example - Win32 Debug
|
||||
!MESSAGE This is not a valid makefile. To build this project using NMAKE,
|
||||
!MESSAGE use the Export Makefile command and run
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "udf_example.mak".
|
||||
!MESSAGE
|
||||
!MESSAGE You can specify a configuration when running NMAKE
|
||||
!MESSAGE by defining the macro CFG on the command line. For example:
|
||||
!MESSAGE
|
||||
!MESSAGE NMAKE /f "udf_example.mak" CFG="udf_example - Win32 Debug"
|
||||
!MESSAGE
|
||||
!MESSAGE Possible choices for configuration are:
|
||||
!MESSAGE
|
||||
!MESSAGE "udf_example - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE "udf_example - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
# PROP AllowPerConfigDependencies 0
|
||||
# PROP Scc_ProjName ""
|
||||
# PROP Scc_LocalPath ""
|
||||
CPP=cl.exe
|
||||
MTL=midl.exe
|
||||
RSC=rc.exe
|
||||
|
||||
!IF "$(CFG)" == "udf_example - Win32 Release"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "Release"
|
||||
# PROP BASE Intermediate_Dir "Release"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "Release"
|
||||
# PROP Intermediate_Dir "Release"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "UDF_EXAMPLE_EXPORTS" /YX /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /GX /O2 /I "..\..\include" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "UDF_EXAMPLE_EXPORTS" /D "HAVE_DLOPEN" /YX /FD /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\lib\opt\strings.lib /nologo /dll /machine:I386 /out:"Release/myudf.dll"
|
||||
|
||||
!ELSEIF "$(CFG)" == "udf_example - Win32 Debug"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "Debug"
|
||||
# PROP BASE Intermediate_Dir "Debug"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "Debug"
|
||||
# PROP Intermediate_Dir "Debug"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "UDF_EXAMPLE_EXPORTS" /YX /FD /GZ /c
|
||||
# ADD CPP /nologo /MTd /W3 /Gm /GX /ZI /Od /I "..\..\include" /D "_DEBUG" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "_USRDLL" /D "UDF_EXAMPLE_EXPORTS" /D "HAVE_DLOPEN" /YX /FD /GZ /c
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x416 /d "_DEBUG"
|
||||
# ADD RSC /l 0x416 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=link.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib ..\..\lib\debug\strings.lib /nologo /dll /debug /machine:I386 /out:"Debug/myudf.dll" /pdbtype:sept
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "udf_example - Win32 Release"
|
||||
# Name "udf_example - Win32 Debug"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\udf_example.cpp
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\udf_example.def
|
||||
# End Source File
|
||||
# End Group
|
||||
# Begin Group "Header Files"
|
||||
|
||||
# PROP Default_Filter "h;hpp;hxx;hm;inl"
|
||||
# End Group
|
||||
# Begin Group "Resource Files"
|
||||
|
||||
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
|
||||
# End Group
|
||||
# End Target
|
||||
# End Project
|
29
VC++Files/examples/udf_example/udf_example.dsw
Normal file
|
@ -0,0 +1,29 @@
|
|||
Microsoft Developer Studio Workspace File, Format Version 6.00
|
||||
# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE!
|
||||
|
||||
###############################################################################
|
||||
|
||||
Project: "udf_example"=.\udf_example.dsp - Package Owner=<4>
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<4>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
||||
Global:
|
||||
|
||||
Package=<5>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
Package=<3>
|
||||
{{{
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
|
@ -19,6 +19,8 @@ CFG=heap - Win32 Debug
|
|||
!MESSAGE
|
||||
!MESSAGE "heap - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "heap - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "heap - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "heap - Win32 TLS" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -76,12 +78,64 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\lib_debug\heap.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "heap - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "heap___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "heap___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "heap___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "heap___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_debug\heap_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_debug\heap_tls.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "heap - Win32 TLS"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "heap___Win32_TLS"
|
||||
# PROP BASE Intermediate_Dir "heap___Win32_TLS"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "heap___Win32_TLS"
|
||||
# PROP Intermediate_Dir "heap___Win32_TLS"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_release\heap_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\heap_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "heap - Win32 Release"
|
||||
# Name "heap - Win32 Debug"
|
||||
# Name "heap - Win32 TLS_DEBUG"
|
||||
# Name "heap - Win32 TLS"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\_check.c
|
||||
|
@ -128,6 +182,13 @@ SOURCE=.\hp_hash.c
|
|||
|
||||
# SUBTRACT CPP /YX
|
||||
|
||||
!ELSEIF "$(CFG)" == "heap - Win32 TLS_DEBUG"
|
||||
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# SUBTRACT CPP /YX
|
||||
|
||||
!ELSEIF "$(CFG)" == "heap - Win32 TLS"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
|
|
|
@ -91,7 +91,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Intermediate_Dir "nt"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "_LIB" /D "_WIN32" /D "WIN32" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /D MYSQL_SERVER_SUFFIX_NT /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "_LIB" /D "_WIN32" /D "WIN32" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /D MYSQL_SERVER_SUFFIX=-nt /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
|
@ -115,7 +115,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Intermediate_Dir "max_nt"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "NDEBUG" /D "_LIB" /D "_WIN32" /D "WIN32" /D "_MBCS" /D "MYSQL_SERVER" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "_LIB" /D "_WIN32" /D "WIN32" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /D MYSQL_SERVER_SUFFIX_NT_MAX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /GX /O2 /I "../innobase/include" /I "../include" /D "_LIB" /D "_WIN32" /D "WIN32" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /D MYSQL_SERVER_SUFFIX=-nt-max /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
|
@ -280,10 +280,6 @@ SOURCE=.\os\os0proc.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\os\os0shm.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\os\os0sync.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
@ -372,10 +368,6 @@ SOURCE=.\row\row0vers.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\srv\srv0que.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\srv\srv0srv.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
@ -388,10 +380,6 @@ SOURCE=.\sync\sync0arr.c
|
|||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\sync\sync0ipm.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\sync\sync0rw.c
|
||||
# End Source File
|
||||
# Begin Source File
|
||||
|
|
|
@ -19,6 +19,8 @@ CFG=isam - Win32 Debug
|
|||
!MESSAGE
|
||||
!MESSAGE "isam - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "isam - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "isam - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "isam - Win32 TLS" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -76,12 +78,64 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\isam.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "isam - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "isam___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "isam___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "isam___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "isam___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_Debug\isam_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\isam_tls.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "isam - Win32 TLS"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "isam___Win32_TLS"
|
||||
# PROP BASE Intermediate_Dir "isam___Win32_TLS"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "isam___Win32_TLS"
|
||||
# PROP Intermediate_Dir "isam___Win32_TLS"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_release\isam_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\isam_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "isam - Win32 Release"
|
||||
# Name "isam - Win32 Debug"
|
||||
# Name "isam - Win32 TLS_DEBUG"
|
||||
# Name "isam - Win32 TLS"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\_cache.c
|
||||
|
|
|
@ -97,7 +97,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "_CONSOLE" /D "_WINDOWS" /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /D MYSQL_COMMERCIAL_LICENSE /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "_CONSOLE" /D "_WINDOWS" /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /D LICENSE=Commercial /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x41d /d "NDEBUG"
|
||||
# ADD RSC /l 0x41d /d "NDEBUG"
|
||||
|
|
|
@ -43,7 +43,7 @@ RSC=rc.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "." /I "..\include" /I "../zlib" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "." /I "..\include" /I "../zlib" /D "DBUG_OFF" /D "_WINDOWS" /D "USE_TLS" /D "NDEBUG" /D "MYSQL_CLIENT" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
|
||||
|
@ -76,7 +76,7 @@ PostBuild_Cmds=xcopy release\libmysql.lib ..\lib_release /y
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MTd /W3 /Gm /GX /Zi /Od /D "WIN32" /D "_DEBUG" /D "_WINDOWS" /YX /FD /c
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "." /I "..\include" /I "../zlib" /D "_DEBUG" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /FD /c
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "." /I "..\include" /I "../zlib" /D "_DEBUG" /D "_WINDOWS" /D "SAFE_MUTEX" /D "USE_TLS" /D "MYSQL_CLIENT" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
|
||||
# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
|
||||
|
|
|
@ -55,7 +55,7 @@ BSC32=bscmake.exe
|
|||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam_tls.lib ..\lib_release\myisammrg_tls.lib ..\lib_release\mysys_tls.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap_tls.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ELSEIF "$(CFG)" == "libmysqld - Win32 Debug"
|
||||
|
@ -82,7 +82,7 @@ BSC32=bscmake.exe
|
|||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /dll /debug /machine:I386 /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_debug\dbug.lib ..\lib_debug\mysys.lib ..\lib_debug\strings.lib ..\lib_debug\regex.lib ..\lib_debug\heap.lib ..\lib_debug\innodb.lib /nologo /dll /incremental:no /debug /machine:I386 /nodefaultlib:"LIBCMTD" /out:"../lib_debug/libmysqld.dll" /implib:"../lib_debug/libmysqld.lib" /pdbtype:sept
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_debug\dbug_tls.lib ..\lib_debug\mysys_tls.lib ..\lib_debug\strings.lib ..\lib_debug\regex.lib ..\lib_debug\heap_tls.lib ..\lib_debug\innodb.lib /nologo /dll /incremental:no /debug /machine:I386 /nodefaultlib:"LIBCMTD" /out:"../lib_debug/libmysqld.dll" /implib:"../lib_debug/libmysqld.lib" /pdbtype:sept
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ELSEIF "$(CFG)" == "libmysqld - Win32 classic"
|
||||
|
@ -99,8 +99,8 @@ LINK32=xilink6.exe
|
|||
# PROP Intermediate_Dir "classic"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_WINDOWS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "USE_TLS" /D "__WIN__" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /D "WIN32" /D "_WINDOWS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "USE_TLS" /D "__WIN__" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
|
@ -109,9 +109,9 @@ BSC32=bscmake.exe
|
|||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam_tls.lib ..\lib_release\myisammrg_tls.lib ..\lib_release\mysys_tls.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap_tls.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_release/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# SUBTRACT BASE LINK32 /pdb:none
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_classic/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam_tls.lib ..\lib_release\myisammrg_tls.lib ..\lib_release\mysys_tls.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap_tls.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_classic/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ELSEIF "$(CFG)" == "libmysqld - Win32 pro"
|
||||
|
@ -128,8 +128,8 @@ LINK32=xilink6.exe
|
|||
# PROP Intermediate_Dir "pro"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "EMBEDDED_LIBRARY" /D "USE_TLS" /D "__WIN__" /D "MYSQL_SERVER" /D LICENCE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FR /FD /D MYSQL_SEVER_SUFFIX=-pro /c
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /D "WIN32" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "EMBEDDED_LIBRARY" /D "USE_TLS" /D "__WIN__" /D "MYSQL_SERVER" /D LICENSE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FR /FD /D MYSQL_SERVER_SUFFIX=-pro /c
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
|
@ -138,9 +138,9 @@ BSC32=bscmake.exe
|
|||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_classic/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam_tls.lib ..\lib_release\myisammrg_tls.lib ..\lib_release\mysys_tls.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap_tls.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_classic/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# SUBTRACT BASE LINK32 /pdb:none
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\bdb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_pro/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\myisam_tls.lib ..\lib_release\myisammrg_tls.lib ..\lib_release\mysys_tls.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap_tls.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /dll /machine:I386 /out:"../lib_pro/libmysqld.dll" /implib:"../lib_release/libmysqld.lib"
|
||||
# SUBTRACT LINK32 /pdb:none
|
||||
|
||||
!ENDIF
|
||||
|
|
|
@ -92,7 +92,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /GX /O2 /I "../include" /D "WIN32" /D "_CONSOLE" /D "_MBCS" /D "NDEBUG" /YX /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /GX /O2 /I "../include" /D "WIN32" /D "_CONSOLE" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /YX /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /GX /O2 /I "../include" /D "WIN32" /D "_CONSOLE" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /YX /FD /c
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -19,6 +19,8 @@ CFG=myisam - Win32 Debug
|
|||
!MESSAGE
|
||||
!MESSAGE "myisam - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisam - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisam - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisam - Win32 TLS" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -74,12 +76,60 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\myisam.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "myisam - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "myisam___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "myisam___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "myisam___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "myisam___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /Fo".\Debug/" /Fd".\Debug/" /FD /c
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /Fo".\Debug/" /Fd".\Debug/" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_Debug\myisam_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\myisam_tls.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "myisam - Win32 TLS"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "myisam___Win32_TLS"
|
||||
# PROP BASE Intermediate_Dir "myisam___Win32_TLS"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "myisam___Win32_TLS"
|
||||
# PROP Intermediate_Dir "myisam___Win32_TLS"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /D "USE_TLS" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_release\myisam_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\myisam_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "myisam - Win32 Release"
|
||||
# Name "myisam - Win32 Debug"
|
||||
# Name "myisam - Win32 TLS_DEBUG"
|
||||
# Name "myisam - Win32 TLS"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
|
|
|
@ -95,7 +95,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FR /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
|
|
@ -95,7 +95,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -19,6 +19,8 @@ CFG=myisammrg - Win32 Debug
|
|||
!MESSAGE
|
||||
!MESSAGE "myisammrg - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisammrg - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisammrg - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "myisammrg - Win32 TLS" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -75,12 +77,62 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\myisammrg.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "myisammrg - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "myisammrg___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "myisammrg___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "myisammrg___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "myisammrg___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /Fo".\Debug/" /Fd".\Debug/" /FD /c
|
||||
# SUBTRACT BASE CPP /Fr
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /Gf /I "../include" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_TLS" /Fo".\Debug/" /Fd".\Debug/" /FD /c
|
||||
# SUBTRACT CPP /Fr
|
||||
# ADD BASE RSC /l 0x409 /d "_DEBUG"
|
||||
# ADD RSC /l 0x409 /d "_DEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_Debug\myisammrg_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_Debug\myisammrg_tls.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "myisammrg - Win32 TLS"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "myisammrg___Win32_TLS"
|
||||
# PROP BASE Intermediate_Dir "myisammrg___Win32_TLS"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "myisammrg___Win32_TLS"
|
||||
# PROP Intermediate_Dir "myisammrg___Win32_TLS"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /D "USE_TLS" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_release\myisammrg_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\myisammrg_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
||||
# Name "myisammrg - Win32 Release"
|
||||
# Name "myisammrg - Win32 Debug"
|
||||
# Name "myisammrg - Win32 TLS_DEBUG"
|
||||
# Name "myisammrg - Win32 TLS"
|
||||
# Begin Group "Source Files"
|
||||
|
||||
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
|
||||
|
|
|
@ -93,7 +93,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../myisam" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FR /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -41,6 +41,9 @@ Package=<4>
|
|||
Begin Project Dependency
|
||||
Project_Dep_Name mysys
|
||||
End Project Dependency
|
||||
Begin Project Dependency
|
||||
Project_Dep_Name strings
|
||||
End Project Dependency
|
||||
}}}
|
||||
|
||||
###############################################################################
|
||||
|
|
|
@ -93,7 +93,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /I "../sql" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /I "../sql" /D "MYSQL_SERVER" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /I "../sql" /D "MYSQL_SERVER" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -92,7 +92,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "MYSQL_SERVER" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "MYSQL_SERVER" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../" /D "MYSQL_SERVER" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -90,9 +90,9 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Output_Dir "classic"
|
||||
# PROP Intermediate_Dir "classic"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_MBCS" /D "_LIB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "MYSQL_SERVER" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FD /c
|
||||
# ADD BASE CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /D "WIN32" /D "_MBCS" /D "_LIB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "MYSQL_SERVER" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_LIB" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "MYSQL_SERVER" /D "HAVE_INNOBASE_DB" /D "USE_TLS" /D "__WIN__" /D LICENCE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_LIB" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "MYSQL_SERVER" /D "USE_TLS" /D "__WIN__" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
|
@ -117,7 +117,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_MBCS" /D "_LIB" /D "USE_SYMDIR" /D "SIGNAL_WITH_VIO_CLOSE" /D "HAVE_DLOPEN" /D "EMBEDDED_LIBRARY" /D "MYSQL_SERVER" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "USE_TLS" /D "__WIN__" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_LIB" /D "SIGNAL_WITH_VIO_CLOSE" /D "EMBEDDED_LIBRARY" /D "USE_TLS" /D "__WIN__" /D "USE_SYMDIR" /D "MYSQL_SERVER" /D LICENCE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FD /D MYSQL_SEVER_SUFFIX=-pro /c
|
||||
# ADD CPP /nologo /MT /W3 /O2 /I "../include" /I "../regex" /I "../sql" /I "../bdb/build_win32" /D "WIN32" /D "_LIB" /D "SIGNAL_WITH_VIO_CLOSE" /D "EMBEDDED_LIBRARY" /D "USE_TLS" /D "__WIN__" /D "USE_SYMDIR" /D "MYSQL_SERVER" /D LICENSE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FD /D MYSQL_SERVER_SUFFIX=-pro /c
|
||||
# ADD BASE RSC /l 0x416 /d "NDEBUG"
|
||||
# ADD RSC /l 0x416 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 630 B After Width: | Height: | Size: 630 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 238 B After Width: | Height: | Size: 238 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 246 B After Width: | Height: | Size: 246 B |
Before Width: | Height: | Size: 1.1 KiB After Width: | Height: | Size: 1.1 KiB |
|
@ -20,6 +20,8 @@ CFG=mysys - Win32 Debug
|
|||
!MESSAGE "mysys - Win32 Release" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "mysys - Win32 Debug" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "mysys - Win32 Max" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "mysys - Win32 TLS_DEBUG" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE "mysys - Win32 TLS" (based on "Win32 (x86) Static Library")
|
||||
!MESSAGE
|
||||
|
||||
# Begin Project
|
||||
|
@ -91,7 +93,7 @@ LIB32=xilink6.exe -lib
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../zlib" /D "USE_SYMDIR" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D MYSQL_SERVER_SUFFIX_MAX /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../zlib" /D "USE_SYMDIR" /D "NDEBUG" /D "DBUG_OFF" /D "_WINDOWS" /D MYSQL_SERVER_SUFFIX=-max /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
|
@ -102,6 +104,56 @@ LIB32=xilink6.exe -lib
|
|||
# ADD BASE LIB32 /nologo /out:"..\lib_release\mysys.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\mysys-max.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS_DEBUG"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 1
|
||||
# PROP BASE Output_Dir "mysys___Win32_TLS_DEBUG"
|
||||
# PROP BASE Intermediate_Dir "mysys___Win32_TLS_DEBUG"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 1
|
||||
# PROP Output_Dir "mysys___Win32_TLS_DEBUG"
|
||||
# PROP Intermediate_Dir "mysys___Win32_TLS_DEBUG"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "../include" /I "../zlib" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /FD /c
|
||||
# SUBTRACT BASE CPP /Fr
|
||||
# ADD CPP /nologo /G6 /MTd /W3 /Z7 /Od /I "../include" /I "../zlib" /D "_DEBUG" /D "SAFEMALLOC" /D "SAFE_MUTEX" /D "_WINDOWS" /D "USE_SYMDIR" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /Fr
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_debug\mysys_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_debug\mysys_tls.lib"
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS"
|
||||
|
||||
# PROP BASE Use_MFC 0
|
||||
# PROP BASE Use_Debug_Libraries 0
|
||||
# PROP BASE Output_Dir "mysys___Win32_TLS"
|
||||
# PROP BASE Intermediate_Dir "mysys___Win32_TLS"
|
||||
# PROP BASE Target_Dir ""
|
||||
# PROP Use_MFC 0
|
||||
# PROP Use_Debug_Libraries 0
|
||||
# PROP Output_Dir "mysys___Win32_TLS"
|
||||
# PROP Intermediate_Dir "mysys___Win32_TLS"
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../zlib" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../zlib" /D "DBUG_OFF" /D "_WINDOWS" /D "NDEBUG" /D "USE_TLS" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409
|
||||
# ADD RSC /l 0x409
|
||||
BSC32=bscmake.exe
|
||||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LIB32=link.exe -lib
|
||||
# ADD BASE LIB32 /nologo /out:"..\lib_release\mysys_tls.lib"
|
||||
# ADD LIB32 /nologo /out:"..\lib_release\mysys_tls.lib"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# Begin Target
|
||||
|
@ -109,6 +161,8 @@ LIB32=xilink6.exe -lib
|
|||
# Name "mysys - Win32 Release"
|
||||
# Name "mysys - Win32 Debug"
|
||||
# Name "mysys - Win32 Max"
|
||||
# Name "mysys - Win32 TLS_DEBUG"
|
||||
# Name "mysys - Win32 TLS"
|
||||
# Begin Source File
|
||||
|
||||
SOURCE=.\array.c
|
||||
|
@ -121,6 +175,14 @@ SOURCE=.\array.c
|
|||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 Max"
|
||||
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS_DEBUG"
|
||||
|
||||
# ADD BASE CPP /FR
|
||||
# ADD CPP /FR
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
|
@ -504,6 +566,13 @@ SOURCE=.\thr_lock.c
|
|||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 Max"
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS_DEBUG"
|
||||
|
||||
# ADD BASE CPP /D "EXTRA_DEBUG"
|
||||
# ADD CPP /D "EXTRA_DEBUG"
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysys - Win32 TLS"
|
||||
|
||||
!ENDIF
|
||||
|
||||
# End Source File
|
||||
|
|
|
@ -93,7 +93,7 @@ LINK32=xilink6.exe
|
|||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../isam" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -102,7 +102,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "WIN32" /D "_WINDOWS" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "WIN32" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "WIN32" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
|
||||
|
|
|
@ -96,7 +96,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "DBUG_OFF" /D "_CONSOLE" /D "_MBCS" /D "_WINDOWS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "_CONSOLE" /D "_WINDOWS" /D MYSQL_COMMERCIAL_LICENSE /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /D "_CONSOLE" /D "_WINDOWS" /D LICENSE=Commercial /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x40b /d "NDEBUG"
|
||||
# ADD RSC /l 0x40b /d "NDEBUG"
|
||||
|
|
|
@ -102,7 +102,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G5 /MT /W3 /O2 /I "../include" /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /D "__WIN32__" /D "DBUG_OFF" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX_NT /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX=-nt /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x410 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
@ -110,7 +110,7 @@ BSC32=bscmake.exe
|
|||
# ADD BASE BSC32 /nologo
|
||||
# ADD BSC32 /nologo
|
||||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\dbug.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib /nologo /subsystem:console /debug /machine:I386
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib /nologo /subsystem:console /debug /machine:I386
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /subsystem:console /map /machine:I386 /out:"../client_release/mysqld-nt.exe"
|
||||
# SUBTRACT LINK32 /pdb:none /debug
|
||||
|
||||
|
@ -130,7 +130,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "__NT__" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "_WINDOWS" /D "_CONSOLE" /D "HAVE_DLOPEN" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /FD /D MYSQL_SERVER_SUFFIX_NT_MAX /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "_WINDOWS" /D "_CONSOLE" /D "HAVE_DLOPEN" /D "NDEBUG" /D "MYSQL_SERVER" /D "_MBCS" /FD /D MYSQL_SERVER_SUFFIX=-nt-max /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
@ -159,7 +159,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX_MAX /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../bdb/build_win32" /D "HAVE_INNOBASE_DB" /D "HAVE_BERKELEY_DB" /D "NDEBUG" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX=-max /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
@ -185,9 +185,9 @@ LINK32=xilink6.exe
|
|||
# PROP Intermediate_Dir "classic"
|
||||
# PROP Ignore_Export_Lib 0
|
||||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_DLOPEN" /D "NDEBUG" /FD /c
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_DLOPEN" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D MYSQL_COMMERCIAL_LICENSE /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "HAVE_DLOPEN" /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D LICENSE=Commercial /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "HAVE_DLOPEN" /D "DBUG_OFF" /D "_MBCS" /D "NDEBUG" /FD /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
@ -196,7 +196,7 @@ BSC32=bscmake.exe
|
|||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_release/mysqld-opt.exe"
|
||||
# SUBTRACT BASE LINK32 /debug
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_classic/mysqld.exe" /libpath:"..\lib_release"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_classic/mysqld.exe" /libpath:"..\lib_release"
|
||||
# SUBTRACT LINK32 /debug
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysqld - Win32 pro"
|
||||
|
@ -215,7 +215,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_DLOPEN" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "MYSQL_SERVER" /D LICENCE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FD /D MYSQL_SERVER_SUFFIX_PRO /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "MYSQL_SERVER" /D LICENSE=Commercial /D "_MBCS" /D "HAVE_DLOPEN" /D "HAVE_INNOBASE_DB" /D "DBUG_OFF" /D "NDEBUG" /D "_WINDOWS" /D "_CONSOLE" /FD /D MYSQL_SERVER_SUFFIX=-pro /c
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
@ -243,7 +243,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_DLOPEN" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "__NT__" /D "DBUG_OFF" /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX_NT /c
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "__NT__" /D "DBUG_OFF" /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D LICENSE=Commercial /D MYSQL_SERVER_SUFFIX=-nt /c
|
||||
# SUBTRACT CPP /YX
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
|
@ -253,7 +253,7 @@ BSC32=bscmake.exe
|
|||
LINK32=xilink6.exe
|
||||
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_classic/mysqld-opt.exe"
|
||||
# SUBTRACT BASE LINK32 /debug
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\innodb.lib ..\lib_release\zlib.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_classic/mysqld-nt.exe" /libpath:"..\lib_release"
|
||||
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib Wsock32.lib ..\lib_release\vio.lib ..\lib_release\isam.lib ..\lib_release\merge.lib ..\lib_release\myisam.lib ..\lib_release\myisammrg.lib ..\lib_release\mysys.lib ..\lib_release\strings.lib ..\lib_release\regex.lib ..\lib_release\heap.lib ..\lib_release\zlib.lib /nologo /subsystem:console /pdb:none /machine:I386 /out:"../client_classic/mysqld-nt.exe" /libpath:"..\lib_release"
|
||||
# SUBTRACT LINK32 /debug
|
||||
|
||||
!ELSEIF "$(CFG)" == "mysqld - Win32 pro nt"
|
||||
|
@ -272,7 +272,7 @@ LINK32=xilink6.exe
|
|||
# PROP Target_Dir ""
|
||||
# ADD BASE CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "DBUG_OFF" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "USE_SYMDIR" /D "HAVE_DLOPEN" /D "NDEBUG" /FD /c
|
||||
# SUBTRACT BASE CPP /YX
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D LICENCE=Commercial /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX_PRO_NT
|
||||
# ADD CPP /nologo /G6 /MT /W3 /O2 /I "../include" /I "../regex" /I "../zlib" /D "__NT__" /D "DBUG_OFF" /D "HAVE_INNOBASE_DB" /D LICENSE=Commercial /D "NDEBUG" /D "MYSQL_SERVER" /D "_WINDOWS" /D "_CONSOLE" /D "_MBCS" /D "HAVE_DLOPEN" /FD /D MYSQL_SERVER_SUFFIX=-pro-nt
|
||||
# ADD BASE RSC /l 0x409 /d "NDEBUG"
|
||||
# ADD RSC /l 0x409 /d "NDEBUG"
|
||||
BSC32=bscmake.exe
|
||||
|
|
|
@ -129,6 +129,7 @@ static my_bool info_flag=0,ignore_errors=0,wait_flag=0,quick=0,
|
|||
vertical=0, line_numbers=1, column_names=1,opt_html=0,
|
||||
opt_xml=0,opt_nopager=1, opt_outfile=0, named_cmds= 0,
|
||||
tty_password= 0, opt_nobeep=0;
|
||||
static ulong opt_max_allowed_packet, opt_net_buffer_length;
|
||||
static uint verbose=0,opt_silent=0,opt_mysql_port=0, opt_local_infile=0;
|
||||
static my_string opt_mysql_unix_port=0;
|
||||
static int connect_flag=CLIENT_INTERACTIVE;
|
||||
|
@ -330,7 +331,7 @@ int main(int argc,char *argv[])
|
|||
exit(1);
|
||||
}
|
||||
if (status.batch && !status.line_buff &&
|
||||
!(status.line_buff=batch_readline_init(max_allowed_packet+512,stdin)))
|
||||
!(status.line_buff=batch_readline_init(opt_max_allowed_packet+512,stdin)))
|
||||
{
|
||||
free_defaults(defaults_argv);
|
||||
exit(1);
|
||||
|
@ -573,11 +574,11 @@ static struct my_option my_long_options[] =
|
|||
(gptr*) &opt_connect_timeout, 0, GET_ULONG, REQUIRED_ARG, 0, 0, 3600*12, 0,
|
||||
0, 1},
|
||||
{"max_allowed_packet", OPT_MAX_ALLOWED_PACKET, "",
|
||||
(gptr*) &max_allowed_packet, (gptr*) &max_allowed_packet, 0, GET_ULONG,
|
||||
(gptr*) &opt_max_allowed_packet, (gptr*) &opt_max_allowed_packet, 0, GET_ULONG,
|
||||
REQUIRED_ARG, 16 *1024L*1024L, 4096, (longlong) 2*1024L*1024L*1024L,
|
||||
MALLOC_OVERHEAD, 1024, 0},
|
||||
{"net_buffer_length", OPT_NET_BUFFER_LENGTH, "",
|
||||
(gptr*) &net_buffer_length, (gptr*) &net_buffer_length, 0, GET_ULONG,
|
||||
(gptr*) &opt_net_buffer_length, (gptr*) &opt_net_buffer_length, 0, GET_ULONG,
|
||||
REQUIRED_ARG, 16384, 1024, 512*1024*1024L, MALLOC_OVERHEAD, 1024, 0},
|
||||
{"select_limit", OPT_SELECT_LIMIT, "", (gptr*) &select_limit,
|
||||
(gptr*) &select_limit, 0, GET_ULONG, REQUIRED_ARG, 1000L, 1, ~0L, 0, 1, 0},
|
||||
|
@ -590,6 +591,10 @@ static struct my_option my_long_options[] =
|
|||
|
||||
static void usage(int version)
|
||||
{
|
||||
/* Divert all help information on NetWare to logger screen. */
|
||||
#ifdef __NETWARE__
|
||||
#define printf consoleprintf
|
||||
#endif
|
||||
printf("%s Ver %s Distrib %s, for %s (%s)\n",
|
||||
my_progname, VER, MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE);
|
||||
if (version)
|
||||
|
@ -602,8 +607,13 @@ and you are welcome to modify and redistribute it under the GPL license\n");
|
|||
my_print_help(my_long_options);
|
||||
print_defaults("my", load_default_groups);
|
||||
my_print_variables(my_long_options);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
#ifdef __NETWARE__
|
||||
#undef printf
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
static my_bool
|
||||
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
char *argument)
|
||||
|
@ -729,6 +739,7 @@ static int get_options(int argc, char **argv)
|
|||
{
|
||||
char *tmp, *pagpoint;
|
||||
int ho_error;
|
||||
MYSQL_PARAMETERS *mysql_params= mysql_get_parameters();
|
||||
|
||||
tmp= (char *) getenv("MYSQL_HOST");
|
||||
if (tmp)
|
||||
|
@ -744,9 +755,15 @@ static int get_options(int argc, char **argv)
|
|||
strmov(pager, pagpoint);
|
||||
strmov(default_pager, pager);
|
||||
|
||||
opt_max_allowed_packet= *mysql_params->p_max_allowed_packet;
|
||||
opt_net_buffer_length= *mysql_params->p_net_buffer_length;
|
||||
|
||||
if ((ho_error=handle_options(&argc, &argv, my_long_options, get_one_option)))
|
||||
exit(ho_error);
|
||||
|
||||
*mysql_params->p_max_allowed_packet= opt_max_allowed_packet;
|
||||
*mysql_params->p_net_buffer_length= opt_net_buffer_length;
|
||||
|
||||
if (status.batch) /* disable pager and outfile in this case */
|
||||
{
|
||||
strmov(default_pager, "stdout");
|
||||
|
@ -812,6 +829,7 @@ static int read_lines(bool execute_commands)
|
|||
#ifdef __NETWARE__
|
||||
line=fgets(linebuffer, sizeof(linebuffer)-1, stdin);
|
||||
/* Remove the '\n' */
|
||||
if (line)
|
||||
{
|
||||
char *p = strrchr(line, '\n');
|
||||
if (p != NULL)
|
||||
|
@ -827,7 +845,11 @@ static int read_lines(bool execute_commands)
|
|||
line= readline(prompt);
|
||||
#endif /* defined( __WIN__) || defined(OS2) || defined(__NETWARE__) */
|
||||
|
||||
if (opt_outfile)
|
||||
/*
|
||||
When Ctrl+d or Ctrl+z is pressed, the line may be NULL on some OS
|
||||
which may cause coredump.
|
||||
*/
|
||||
if (opt_outfile && line)
|
||||
fprintf(OUTFILE, "%s\n", line);
|
||||
}
|
||||
if (!line) // End of file
|
||||
|
@ -2018,10 +2040,8 @@ static int
|
|||
com_quit(String *buffer __attribute__((unused)),
|
||||
char *line __attribute__((unused)))
|
||||
{
|
||||
#ifdef __NETWARE__
|
||||
// let the screen auto close on a normal shutdown
|
||||
setscreenmode(SCR_AUTOCLOSE_ON_EXIT);
|
||||
#endif
|
||||
/* let the screen auto close on a normal shutdown */
|
||||
NETWARE_SET_SCREEN_MODE(SCR_AUTOCLOSE_ON_EXIT);
|
||||
status.exit_status=0;
|
||||
return 1;
|
||||
}
|
||||
|
@ -2152,7 +2172,7 @@ static int com_source(String *buffer, char *line)
|
|||
return put_info(buff, INFO_ERROR, 0);
|
||||
}
|
||||
|
||||
if (!(line_buff=batch_readline_init(max_allowed_packet+512,sql_file)))
|
||||
if (!(line_buff=batch_readline_init(opt_max_allowed_packet+512,sql_file)))
|
||||
{
|
||||
my_fclose(sql_file,MYF(0));
|
||||
return put_info("Can't initialize batch_readline", INFO_ERROR, 0);
|
||||
|
@ -2489,6 +2509,7 @@ void tee_fprintf(FILE *file, const char *fmt, ...)
|
|||
{
|
||||
va_list args;
|
||||
|
||||
NETWARE_YIELD;
|
||||
va_start(args, fmt);
|
||||
(void) vfprintf(file, fmt, args);
|
||||
#ifdef OS2
|
||||
|
@ -2502,6 +2523,7 @@ void tee_fprintf(FILE *file, const char *fmt, ...)
|
|||
|
||||
void tee_fputs(const char *s, FILE *file)
|
||||
{
|
||||
NETWARE_YIELD;
|
||||
fputs(s, file);
|
||||
#ifdef OS2
|
||||
fflush( file);
|
||||
|
@ -2513,6 +2535,7 @@ void tee_fputs(const char *s, FILE *file)
|
|||
|
||||
void tee_puts(const char *s, FILE *file)
|
||||
{
|
||||
NETWARE_YIELD;
|
||||
fputs(s, file);
|
||||
fputs("\n", file);
|
||||
#ifdef OS2
|
||||
|
|
|
@ -815,11 +815,13 @@ static int execute_commands(MYSQL *mysql,int argc, char **argv)
|
|||
return 0;
|
||||
}
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
printf("%s Ver %s Distrib %s, for %s on %s\n",my_progname,ADMIN_VERSION,
|
||||
MYSQL_SERVER_VERSION,SYSTEM_TYPE,MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -861,6 +863,8 @@ static void usage(void)
|
|||
version Get version info from server");
|
||||
}
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
static int drop_db(MYSQL *mysql, const char *db)
|
||||
{
|
||||
char name_buff[FN_REFLEN+20], buf[10];
|
||||
|
|
|
@ -479,9 +479,12 @@ static void die(const char* fmt, ...)
|
|||
exit(1);
|
||||
}
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version()
|
||||
{
|
||||
printf("%s Ver 2.6 for %s at %s\n", my_progname, SYSTEM_TYPE, MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
}
|
||||
|
||||
|
||||
|
@ -500,6 +503,8 @@ the mysql command line client\n\n");
|
|||
my_print_variables(my_long_options);
|
||||
}
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
extern "C" my_bool
|
||||
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
char *argument)
|
||||
|
|
|
@ -159,10 +159,13 @@ static void print_result();
|
|||
static char *fix_table_name(char *dest, char *src);
|
||||
int what_to_do = 0;
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
printf("%s Ver %s Distrib %s, for %s (%s)\n", my_progname, CHECK_VERSION,
|
||||
MYSQL_SERVER_VERSION, SYSTEM_TYPE, MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
} /* print_version */
|
||||
|
||||
|
||||
|
@ -193,6 +196,7 @@ static void usage(void)
|
|||
my_print_variables(my_long_options);
|
||||
} /* usage */
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
static my_bool
|
||||
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
|
|
|
@ -79,6 +79,7 @@ static my_bool verbose=0,tFlag=0,cFlag=0,dFlag=0,quick=0, extended_insert = 0,
|
|||
opt_autocommit=0,opt_master_data,opt_disable_keys=0,opt_xml=0,
|
||||
opt_delete_master_logs=0, tty_password=0,
|
||||
opt_single_transaction=0, opt_comments= 0;
|
||||
static ulong opt_max_allowed_packet, opt_net_buffer_length;
|
||||
static MYSQL mysql_connection,*sock=0;
|
||||
static char insert_pat[12 * 1024],*opt_password=0,*current_user=0,
|
||||
*current_host=0,*path=0,*fields_terminated=0,
|
||||
|
@ -87,7 +88,6 @@ static char insert_pat[12 * 1024],*opt_password=0,*current_user=0,
|
|||
static uint opt_mysql_port=0;
|
||||
static my_string opt_mysql_unix_port=0;
|
||||
static int first_error=0;
|
||||
extern ulong net_buffer_length;
|
||||
static DYNAMIC_STRING extended_row;
|
||||
#include <sslopt-vars.h>
|
||||
FILE *md_result_file;
|
||||
|
@ -238,11 +238,11 @@ static struct my_option my_long_options[] =
|
|||
{"xml", 'X', "Dump a database as well formed XML.", 0, 0, 0, GET_NO_ARG,
|
||||
NO_ARG, 0, 0, 0, 0, 0, 0},
|
||||
{"max_allowed_packet", OPT_MAX_ALLOWED_PACKET, "",
|
||||
(gptr*) &max_allowed_packet, (gptr*) &max_allowed_packet, 0,
|
||||
(gptr*) &opt_max_allowed_packet, (gptr*) &opt_max_allowed_packet, 0,
|
||||
GET_ULONG, REQUIRED_ARG, 24*1024*1024, 4096,
|
||||
(longlong) 2L*1024L*1024L*1024L, MALLOC_OVERHEAD, 1024, 0},
|
||||
{"net_buffer_length", OPT_NET_BUFFER_LENGTH, "",
|
||||
(gptr*) &net_buffer_length, (gptr*) &net_buffer_length, 0,
|
||||
(gptr*) &opt_net_buffer_length, (gptr*) &opt_net_buffer_length, 0,
|
||||
GET_ULONG, REQUIRED_ARG, 1024*1024L-1025, 4096, 16*1024L*1024L,
|
||||
MALLOC_OVERHEAD-1024, 1024, 0},
|
||||
{"comments", 'i', "Write additional information.",
|
||||
|
@ -267,11 +267,13 @@ static char *quote_name(const char *name, char *buff, my_bool force);
|
|||
static void print_quoted_xml(FILE *output, char *fname, char *str, uint len);
|
||||
static const char *check_if_ignore_table(const char *table_name);
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
printf("%s Ver %s Distrib %s, for %s (%s)\n",my_progname,DUMP_VERSION,
|
||||
MYSQL_SERVER_VERSION,SYSTEM_TYPE,MACHINE_TYPE);
|
||||
MYSQL_SERVER_VERSION,SYSTEM_TYPE,MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
} /* print_version */
|
||||
|
||||
|
||||
|
@ -281,8 +283,10 @@ static void short_usage_sub(void)
|
|||
printf("OR %s [OPTIONS] --databases [OPTIONS] DB1 [DB2 DB3...]\n",
|
||||
my_progname);
|
||||
printf("OR %s [OPTIONS] --all-databases [OPTIONS]\n", my_progname);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
}
|
||||
|
||||
|
||||
static void usage(void)
|
||||
{
|
||||
print_version();
|
||||
|
@ -302,6 +306,8 @@ static void short_usage(void)
|
|||
printf("For more options, use %s --help\n", my_progname);
|
||||
}
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
|
||||
static void write_header(FILE *sql_file, char *db_name)
|
||||
{
|
||||
|
@ -399,6 +405,10 @@ get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
|||
static int get_options(int *argc, char ***argv)
|
||||
{
|
||||
int ho_error;
|
||||
MYSQL_PARAMETERS *mysql_params= mysql_get_parameters();
|
||||
|
||||
opt_max_allowed_packet= *mysql_params->p_max_allowed_packet;
|
||||
opt_net_buffer_length= *mysql_params->p_net_buffer_length;
|
||||
|
||||
md_result_file= stdout;
|
||||
load_defaults("my",load_default_groups,argc,argv);
|
||||
|
@ -406,6 +416,9 @@ static int get_options(int *argc, char ***argv)
|
|||
if ((ho_error=handle_options(argc, argv, my_long_options, get_one_option)))
|
||||
exit(ho_error);
|
||||
|
||||
*mysql_params->p_max_allowed_packet= opt_max_allowed_packet;
|
||||
*mysql_params->p_net_buffer_length= opt_net_buffer_length;
|
||||
|
||||
if (opt_delayed)
|
||||
opt_lock=0; /* Can't have lock with delayed */
|
||||
if (!path && (enclosed || opt_enclosed || escaped || lines_terminated ||
|
||||
|
@ -1067,7 +1080,7 @@ static void dumpTable(uint numFields, char *table)
|
|||
if (opt_lock)
|
||||
fprintf(md_result_file,"LOCK TABLES %s WRITE;\n", opt_quoted_table);
|
||||
|
||||
total_length=net_buffer_length; /* Force row break */
|
||||
total_length= opt_net_buffer_length; /* Force row break */
|
||||
row_break=0;
|
||||
rownr=0;
|
||||
init_length=(uint) strlen(insert_pat)+4;
|
||||
|
@ -1212,7 +1225,7 @@ static void dumpTable(uint numFields, char *table)
|
|||
ulong row_length;
|
||||
dynstr_append(&extended_row,")");
|
||||
row_length = 2 + extended_row.length;
|
||||
if (total_length + row_length < net_buffer_length)
|
||||
if (total_length + row_length < opt_net_buffer_length)
|
||||
{
|
||||
total_length += row_length;
|
||||
fputc(',',md_result_file); /* Always row break */
|
||||
|
|
|
@ -134,14 +134,16 @@ static struct my_option my_long_options[] =
|
|||
|
||||
static const char *load_default_groups[]= { "mysqlimport","client",0 };
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
printf("%s Ver %s Distrib %s, for %s (%s)\n" ,my_progname,
|
||||
IMPORT_VERSION, MYSQL_SERVER_VERSION,SYSTEM_TYPE,MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
static void usage(void)
|
||||
{
|
||||
print_version();
|
||||
|
@ -160,6 +162,7 @@ file. The SQL command 'LOAD DATA INFILE' is used to import the rows.\n");
|
|||
my_print_variables(my_long_options);
|
||||
}
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
static my_bool
|
||||
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
|
|
|
@ -182,12 +182,16 @@ static struct my_option my_long_options[] =
|
|||
};
|
||||
|
||||
|
||||
#include <help_start.h>
|
||||
|
||||
static void print_version(void)
|
||||
{
|
||||
printf("%s Ver %s Distrib %s, for %s (%s)\n",my_progname,SHOW_VERSION,
|
||||
MYSQL_SERVER_VERSION,SYSTEM_TYPE,MACHINE_TYPE);
|
||||
NETWARE_SET_SCREEN_MODE(1);
|
||||
}
|
||||
|
||||
|
||||
static void usage(void)
|
||||
{
|
||||
print_version();
|
||||
|
@ -207,6 +211,8 @@ are shown");
|
|||
my_print_variables(my_long_options);
|
||||
}
|
||||
|
||||
#include <help_end.h>
|
||||
|
||||
static my_bool
|
||||
get_one_option(int optid, const struct my_option *opt __attribute__((unused)),
|
||||
char *argument)
|
||||
|
|
|
@ -178,6 +178,17 @@ typedef struct
|
|||
int alloced;
|
||||
} VAR;
|
||||
|
||||
#ifdef __NETWARE__
|
||||
/*
|
||||
Netware doesn't proved environment variable substitution that is done
|
||||
by the shell in unix environments. We do this in the following function:
|
||||
*/
|
||||
|
||||
static char *subst_env_var(const char *cmd);
|
||||
static FILE *my_popen(const char *cmd, const char *mode);
|
||||
#define popen(A,B) my_popen((A),(B))
|
||||
#endif /* __NETWARE__ */
|
||||
|
||||
VAR var_reg[10];
|
||||
/*Perl/shell-like variable registers */
|
||||
HASH var_hash;
|
||||
|
@ -890,7 +901,7 @@ int do_exec(struct st_query* q)
|
|||
|
||||
while (fgets(buf, sizeof(buf), res_file))
|
||||
replace_dynstr_append_mem(ds, buf, strlen(buf));
|
||||
|
||||
|
||||
if (glob_replace)
|
||||
free_replace();
|
||||
|
||||
|
@ -913,6 +924,7 @@ int do_exec(struct st_query* q)
|
|||
DBUG_RETURN(error);
|
||||
}
|
||||
|
||||
|
||||
int var_query_set(VAR* v, const char* p, const char** p_end)
|
||||
{
|
||||
char* end = (char*)((p_end && *p_end) ? *p_end : p + strlen(p));
|
||||
|
@ -3473,3 +3485,102 @@ static void get_replace_column(struct st_query *q)
|
|||
}
|
||||
my_free(start, MYF(0));
|
||||
}
|
||||
|
||||
#ifdef __NETWARE__
|
||||
|
||||
/*
|
||||
Substitute environment variables with text.
|
||||
|
||||
SYNOPSIS
|
||||
subst_env_var()
|
||||
arg String that should be substitute
|
||||
|
||||
DESCRIPTION
|
||||
This function takes a string as an input and replaces the
|
||||
environment variables, that starts with '$' character, with it value.
|
||||
|
||||
NOTES
|
||||
Return string must be freed with my_free()
|
||||
|
||||
RETURN
|
||||
String with environment variables replaced.
|
||||
*/
|
||||
|
||||
static char *subst_env_var(const char *str)
|
||||
{
|
||||
char *result;
|
||||
char *pos;
|
||||
|
||||
result= pos= my_malloc(MAX_QUERY, MYF(MY_FAE));
|
||||
while (*str)
|
||||
{
|
||||
/*
|
||||
need this only when we want to provide the functionality of
|
||||
escaping through \ 'backslash'
|
||||
if ((result == pos && *str=='$') ||
|
||||
(result != pos && *str=='$' && str[-1] !='\\'))
|
||||
*/
|
||||
if (*str == '$')
|
||||
{
|
||||
char env_var[256], *env_pos= env_var, *subst;
|
||||
|
||||
/* Search for end of environment variable */
|
||||
for (str++;
|
||||
*str && !isspace(*str) && *str != '\\' && *str != '/' &&
|
||||
*str != '$';
|
||||
str++)
|
||||
*env_pos++= *str;
|
||||
*env_pos= 0;
|
||||
|
||||
if (!(subst= getenv(env_var)))
|
||||
{
|
||||
my_free(result, MYF(0));
|
||||
die("MYSQLTEST.NLM: Environment variable %s is not defined\n",
|
||||
env_var);
|
||||
}
|
||||
|
||||
/* get the string to be substitued for env_var */
|
||||
pos= strmov(pos, subst);
|
||||
/* Process delimiter in *str again */
|
||||
}
|
||||
else
|
||||
*pos++= *str++;
|
||||
}
|
||||
*pos= 0;
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
popen replacement for Netware
|
||||
|
||||
SYNPOSIS
|
||||
my_popen()
|
||||
name Command to execute (with possible env variables)
|
||||
mode Mode for popen.
|
||||
|
||||
NOTES
|
||||
Environment variable expansion does not take place for popen function
|
||||
on NetWare, so we use this function to wrap around popen to do this.
|
||||
|
||||
For the moment we ignore 'mode' and always use 'r0'
|
||||
|
||||
RETURN
|
||||
# >= 0 File handle
|
||||
-1 Error
|
||||
*/
|
||||
|
||||
#undef popen /* Remove wrapper */
|
||||
|
||||
FILE *my_popen(const char *cmd, const char *mode __attribute__((unused)))
|
||||
{
|
||||
char *subst_cmd;
|
||||
FILE *res_file;
|
||||
|
||||
subst_cmd= subst_env_var(cmd);
|
||||
res_file= popen(subst_cmd, "r0");
|
||||
my_free(subst_cmd, MYF(0));
|
||||
return res_file;
|
||||
}
|
||||
|
||||
#endif /* __NETWARE__ */
|
||||
|
|
26
configure.in
|
@ -4,7 +4,7 @@ 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.0.20)
|
||||
AM_INIT_AUTOMAKE(mysql, 4.0.21)
|
||||
AM_CONFIG_HEADER(config.h)
|
||||
|
||||
PROTOCOL_VERSION=10
|
||||
|
@ -128,8 +128,10 @@ fi
|
|||
|
||||
# The following hack should ensure that configure doesn't add optimizing
|
||||
# or debugging flags to CFLAGS or CXXFLAGS
|
||||
CFLAGS="$CFLAGS "
|
||||
CXXFLAGS="$CXXFLAGS "
|
||||
# C_EXTRA_FLAGS are flags that are automaticly added to both
|
||||
# CFLAGS and CXXFLAGS
|
||||
CFLAGS="$CFLAGS $C_EXTRA_FLAGS "
|
||||
CXXFLAGS="$CXXFLAGS $C_EXTRA_FLAGS "
|
||||
|
||||
dnl Checks for programs.
|
||||
AC_PROG_AWK
|
||||
|
@ -765,7 +767,14 @@ AC_CHECK_FUNC(crypt, AC_DEFINE(HAVE_CRYPT))
|
|||
AC_CHECK_FUNC(sem_init, , AC_CHECK_LIB(posix4, sem_init))
|
||||
|
||||
# For compress in zlib
|
||||
MYSQL_CHECK_ZLIB_WITH_COMPRESS($with_named_zlib)
|
||||
case $SYSTEM_TYPE in
|
||||
*netware*)
|
||||
AC_DEFINE(HAVE_COMPRESS)
|
||||
;;
|
||||
*)
|
||||
MYSQL_CHECK_ZLIB_WITH_COMPRESS($with_named_zlib)
|
||||
;;
|
||||
esac
|
||||
|
||||
#--------------------------------------------------------------------
|
||||
# Check for TCP wrapper support
|
||||
|
@ -1119,8 +1128,8 @@ dnl Is this the right match for DEC OSF on alpha?
|
|||
# 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,\(^.*\$(MAKE) gen_lex_hash\)\$(EXEEXT),#\1,
|
||||
s,\(\./gen_lex_hash\)\$(EXEEXT),\1.linux,
|
||||
s%\(mysqld_DEPENDENCIES = \) %\1$lib_DEPENDENCIES %
|
||||
EOF
|
||||
;;
|
||||
|
@ -2480,6 +2489,10 @@ if expr "$SYSTEM_TYPE" : ".*netware.*" > /dev/null; then
|
|||
fi
|
||||
AC_SUBST(netware_dir)
|
||||
AC_SUBST(linked_netware_sources)
|
||||
AM_CONDITIONAL(HAVE_NETWARE, test "$netware_dir" = "netware")
|
||||
|
||||
# Ensure that table handlers gets all modifications to CFLAGS/CXXFLAGS
|
||||
export CC CXX CFLAGS CXXFLAGS LD LDFLAGS AR
|
||||
|
||||
if test "$with_server" = "yes" -o "$THREAD_SAFE_CLIENT" != "no"
|
||||
then
|
||||
|
@ -2671,6 +2684,7 @@ AC_OUTPUT(Makefile extra/Makefile mysys/Makefile isam/Makefile dnl
|
|||
include/Makefile sql-bench/Makefile tools/Makefile dnl
|
||||
tests/Makefile Docs/Makefile support-files/Makefile dnl
|
||||
support-files/MacOSX/Makefile mysql-test/Makefile dnl
|
||||
netware/Makefile dnl
|
||||
include/mysql_version.h dnl
|
||||
, , [
|
||||
test -z "$CONFIG_HEADERS" || echo timestamp > stamp-h
|
||||
|
|
|
@ -16,7 +16,7 @@
|
|||
|
||||
/* Return error-text for system error messages and nisam messages */
|
||||
|
||||
#define PERROR_VERSION "2.9"
|
||||
#define PERROR_VERSION "2.10"
|
||||
|
||||
#include <my_global.h>
|
||||
#include <my_sys.h>
|
||||
|
@ -195,16 +195,30 @@ int main(int argc,char *argv[])
|
|||
else
|
||||
#endif
|
||||
{
|
||||
/*
|
||||
On some system, like NETWARE, strerror(unknown_error) returns a
|
||||
string 'Unknown Error'. To avoid printing it we try to find the
|
||||
error string by asking for an impossible big error message.
|
||||
*/
|
||||
const char *unknown_error= strerror(10000);
|
||||
|
||||
for ( ; argc-- > 0 ; argv++)
|
||||
{
|
||||
found=0;
|
||||
code=atoi(*argv);
|
||||
msg = strerror(code);
|
||||
if (msg)
|
||||
msg= strerror(code);
|
||||
|
||||
/*
|
||||
Don't print message for not existing error messages or for
|
||||
unknown errors. We test for 'Uknown Errors' just as an
|
||||
extra safety for Netware
|
||||
*/
|
||||
if (msg && strcmp(msg, "Unknown Error") &&
|
||||
(!unknown_error || strcmp(msg, unknown_error)))
|
||||
{
|
||||
found=1;
|
||||
if (verbose)
|
||||
printf("Error code %3d: %s\n",code,msg);
|
||||
printf("System error: %3d = %s\n",code,msg);
|
||||
else
|
||||
puts(msg);
|
||||
}
|
||||
|
@ -219,7 +233,7 @@ int main(int argc,char *argv[])
|
|||
else
|
||||
{
|
||||
if (verbose)
|
||||
printf("%3d = %s\n",code,msg);
|
||||
printf("MySql error: %3d = %s\n",code,msg);
|
||||
else
|
||||
puts(msg);
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ pkginclude_HEADERS = my_dbug.h m_string.h my_sys.h my_list.h \
|
|||
noinst_HEADERS = config-win.h config-os2.h config-netware.h \
|
||||
nisam.h heap.h merge.h my_bitmap.h\
|
||||
myisam.h myisampack.h myisammrg.h ft_global.h\
|
||||
mysys_err.h my_base.h \
|
||||
mysys_err.h my_base.h help_start.h help_end.h \
|
||||
my_nosys.h my_alarm.h queues.h rijndael.h sha1.h \
|
||||
my_aes.h my_tree.h hash.h thr_alarm.h \
|
||||
thr_lock.h t_ctype.h violite.h md5.h mysql_version.h.in
|
||||
|
|
|
@ -14,7 +14,10 @@
|
|||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */
|
||||
|
||||
/* Defines for netware compatible with MySQL */
|
||||
/* Header for NetWare compatible with MySQL */
|
||||
|
||||
#ifndef _config_netware_h
|
||||
#define _config_netware_h
|
||||
|
||||
/* required headers */
|
||||
#include <unistd.h>
|
||||
|
@ -32,18 +35,32 @@
|
|||
#include <pthread.h>
|
||||
#include <termios.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* required adjustments */
|
||||
#undef HAVE_READDIR_R
|
||||
#undef HAVE_RWLOCK_INIT
|
||||
#undef HAVE_SCHED_H
|
||||
#undef HAVE_SYS_MMAN_H
|
||||
#undef HAVE_SYNCH_H
|
||||
#undef HAVE_CRYPT
|
||||
#define HAVE_PTHREAD_ATTR_SETSTACKSIZE 1
|
||||
#define HAVE_PTHREAD_SIGMASK 1
|
||||
#define HAVE_PTHREAD_YIELD_ZERO_ARG 1
|
||||
#define HAVE_BROKEN_REALPATH 1
|
||||
|
||||
/* no libc crypt() function */
|
||||
#ifdef HAVE_OPENSSL
|
||||
#define HAVE_CRYPT 1
|
||||
#else
|
||||
#undef HAVE_CRYPT
|
||||
#endif /* HAVE_OPENSSL */
|
||||
|
||||
/* Configure can't detect this because it uses AC_TRY_RUN */
|
||||
#undef HAVE_COMPRESS
|
||||
#define HAVE_COMPRESS
|
||||
|
||||
/* include the old function apis */
|
||||
#define USE_OLD_FUNCTIONS 1
|
||||
|
||||
|
@ -59,6 +76,9 @@
|
|||
/* signal by closing the sockets */
|
||||
#define SIGNAL_WITH_VIO_CLOSE 1
|
||||
|
||||
/* On NetWare, stack grows towards lower address*/
|
||||
#define STACK_DIRECTION -1
|
||||
|
||||
/* default directory information */
|
||||
#define DEFAULT_MYSQL_HOME "sys:/mysql"
|
||||
#define PACKAGE "mysql"
|
||||
|
@ -80,6 +100,20 @@
|
|||
/* do not use the extended time in LibC sys\stat.h */
|
||||
#define _POSIX_SOURCE
|
||||
|
||||
/* Kernel call on NetWare that will only yield if our time slice is up */
|
||||
void kYieldIfTimeSliceUp(void);
|
||||
|
||||
/* Some macros for portability */
|
||||
|
||||
#define set_timespec(ABSTIME,SEC) { (ABSTIME).tv_sec=(SEC); (ABSTIME).tv_nsec=0; }
|
||||
#define set_timespec(ABSTIME,SEC) { (ABSTIME).tv_sec=time(NULL)+(SEC); (ABSTIME).tv_nsec=0; }
|
||||
|
||||
/* extra protection against CPU Hogs on NetWare */
|
||||
#define NETWARE_YIELD kYieldIfTimeSliceUp()
|
||||
/* Screen mode for help texts */
|
||||
#define NETWARE_SET_SCREEN_MODE(A) setscreenmode(A)
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _config_netware_h */
|
||||
|
|
6
include/help_end.h
Normal file
|
@ -0,0 +1,6 @@
|
|||
#ifdef __NETWARE__
|
||||
#undef printf
|
||||
#undef puts
|
||||
#undef fputs
|
||||
#undef putchar
|
||||
#endif
|
7
include/help_start.h
Normal file
|
@ -0,0 +1,7 @@
|
|||
/* Divert all help information on NetWare to logger screen. */
|
||||
|
||||
#ifdef __NETWARE__
|
||||
#define printf consoleprintf
|
||||
#define puts(s) consoleprintf("%s\n",s)
|
||||
#define fputs(s,f) puts(s)
|
||||
#endif
|
|
@ -73,6 +73,12 @@
|
|||
#endif
|
||||
#endif /* _WIN32... */
|
||||
|
||||
/* Some defines to avoid ifdefs in the code */
|
||||
#ifndef NETWARE_YIELD
|
||||
#define NETWARE_YIELD
|
||||
#define NETWARE_SET_SCREEN_MODE(A)
|
||||
#endif
|
||||
|
||||
/*
|
||||
The macros below are borrowed from include/linux/compiler.h in the
|
||||
Linux kernel. Use them to indicate the likelyhood of the truthfulness
|
||||
|
@ -152,7 +158,11 @@ C_MODE_END
|
|||
#ifdef HAVE_BROKEN_SNPRINTF /* HPUX 10.20 don't have this defined */
|
||||
#undef HAVE_SNPRINTF
|
||||
#endif
|
||||
#ifdef HAVE_BROKEN_PREAD /* These doesn't work on HPUX 11.x */
|
||||
#ifdef HAVE_BROKEN_PREAD
|
||||
/*
|
||||
pread()/pwrite() are not 64 bit safe on HP-UX 11.0 without
|
||||
installing the kernel patch PHKL_20349 or greater
|
||||
*/
|
||||
#undef HAVE_PREAD
|
||||
#undef HAVE_PWRITE
|
||||
#endif
|
||||
|
@ -318,6 +328,9 @@ C_MODE_END
|
|||
#define USE_BMOVE512 1 /* Use this unless system bmove is faster */
|
||||
#endif
|
||||
|
||||
#define QUOTE_ARG(x) #x /* Quote argument (before cpp) */
|
||||
#define STRINGIFY_ARG(x) QUOTE_ARG(x) /* Quote argument, after cpp */
|
||||
|
||||
/* Paranoid settings. Define I_AM_PARANOID if you are paranoid */
|
||||
#ifdef I_AM_PARANOID
|
||||
#define DONT_ALLOW_USER_CHANGE 1
|
||||
|
|
|
@ -620,7 +620,7 @@ extern my_string my_path(my_string to,const char *progname,
|
|||
const char *own_pathname_part);
|
||||
extern my_string my_load_path(my_string to, const char *path,
|
||||
const char *own_path_prefix);
|
||||
extern int wild_compare(const char *str,const char *wildstr);
|
||||
extern int wild_compare(const char *str,const char *wildstr,pbool str_is_pattern);
|
||||
extern my_string my_strcasestr(const char *src,const char *suffix);
|
||||
extern int my_strcasecmp(const char *s,const char *t);
|
||||
extern int my_strsortcmp(const char *s,const char *t);
|
||||
|
|
|
@ -244,6 +244,17 @@ typedef struct st_mysql_manager
|
|||
char last_error[MAX_MYSQL_MANAGER_ERR];
|
||||
} MYSQL_MANAGER;
|
||||
|
||||
typedef struct st_mysql_parameters
|
||||
{
|
||||
unsigned long *p_max_allowed_packet;
|
||||
unsigned long *p_net_buffer_length;
|
||||
} MYSQL_PARAMETERS;
|
||||
|
||||
#if !defined(MYSQL_CLIENT) && !defined(MYSQL_SERVER) && !defined(EMBEDDED_LIBRARY)
|
||||
#define max_allowed_packet (*mysql_get_parameters()->p_max_allowed_packet)
|
||||
#define net_buffer_length (*mysql_get_parameters()->p_net_buffer_length)
|
||||
#endif
|
||||
|
||||
/*
|
||||
Set up and bring down the server; to ensure that applications will
|
||||
work when linked against either the standard client library or the
|
||||
|
@ -252,6 +263,8 @@ typedef struct st_mysql_manager
|
|||
int STDCALL mysql_server_init(int argc, char **argv, char **groups);
|
||||
void STDCALL mysql_server_end(void);
|
||||
|
||||
MYSQL_PARAMETERS *STDCALL mysql_get_parameters(void);
|
||||
|
||||
/*
|
||||
Set up and bring down a thread; these function should be called
|
||||
for each thread in an application which opens at least one MySQL
|
||||
|
|
|
@ -223,9 +223,6 @@ typedef struct st_udf_init
|
|||
extern "C" {
|
||||
#endif
|
||||
|
||||
extern unsigned long max_allowed_packet;
|
||||
extern unsigned long net_buffer_length;
|
||||
|
||||
void randominit(struct rand_struct *,unsigned long seed1,
|
||||
unsigned long seed2);
|
||||
double my_rnd(struct rand_struct *);
|
||||
|
|
|
@ -11,9 +11,7 @@
|
|||
#define PROTOCOL_VERSION @PROTOCOL_VERSION@
|
||||
#define MYSQL_SERVER_VERSION "@VERSION@"
|
||||
#define MYSQL_BASE_VERSION "mysqld-@MYSQL_BASE_VERSION@"
|
||||
#ifndef MYSQL_SERVER_SUFFIX
|
||||
#define MYSQL_SERVER_SUFFIX "@MYSQL_SERVER_SUFFIX@"
|
||||
#endif
|
||||
#define MYSQL_SERVER_SUFFIX_DEF "@MYSQL_SERVER_SUFFIX@"
|
||||
#define FRM_VER @DOT_FRM_VERSION@
|
||||
#define MYSQL_VERSION_ID @MYSQL_VERSION_ID@
|
||||
#define MYSQL_PORT @MYSQL_TCP_PORT@
|
||||
|
@ -28,11 +26,7 @@
|
|||
#endif /* _CUSTOMCONFIG_ */
|
||||
|
||||
#ifndef LICENSE
|
||||
#ifdef MYSQL_COMMERICAL_LICENSE
|
||||
#define LICENSE "Commerical"
|
||||
#else
|
||||
#define LICENSE "GPL"
|
||||
#endif
|
||||
#define LICENSE GPL
|
||||
#endif /* LICENSE */
|
||||
|
||||
#endif /* _mysql_version_h */
|
||||
|
|
|
@ -64,7 +64,7 @@ typedef my_bool ALARM;
|
|||
#define init_thr_alarm(A)
|
||||
#define thr_alarm_kill(A)
|
||||
#define resize_thr_alarm(N)
|
||||
#define end_thr_alarm()
|
||||
#define end_thr_alarm(A)
|
||||
|
||||
#else
|
||||
#if defined(__WIN__)
|
||||
|
|
|
@ -642,7 +642,7 @@ dict_init(void)
|
|||
rw_lock_create(&dict_operation_lock);
|
||||
rw_lock_set_level(&dict_operation_lock, SYNC_DICT_OPERATION);
|
||||
|
||||
dict_foreign_err_file = tmpfile();
|
||||
dict_foreign_err_file = os_file_create_tmpfile();
|
||||
mutex_create(&dict_foreign_err_mutex);
|
||||
mutex_set_level(&dict_foreign_err_mutex, SYNC_ANY_LATCH);
|
||||
}
|
||||
|
|
|
@ -725,7 +725,7 @@ eval_predefined(
|
|||
uint_val = (ulint) int_val;
|
||||
}
|
||||
for (tmp = int_len; uint_val > 0; uint_val /= 10) {
|
||||
data[--tmp] = '0' + (byte)(uint_val % 10);
|
||||
data[--tmp] = (byte) ('0' + (byte)(uint_val % 10));
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ noinst_HEADERS = btr0btr.h btr0btr.ic btr0cur.h btr0cur.ic \
|
|||
row0purge.ic row0row.h row0row.ic row0sel.h row0sel.ic \
|
||||
row0types.h row0uins.h row0uins.ic row0umod.h row0umod.ic \
|
||||
row0undo.h row0undo.ic row0upd.h row0upd.ic row0vers.h \
|
||||
row0vers.ic srv0que.h srv0srv.h srv0srv.ic srv0start.h \
|
||||
row0vers.ic srv0srv.h srv0srv.ic srv0start.h \
|
||||
sync0arr.h sync0arr.ic sync0rw.h \
|
||||
sync0rw.ic sync0sync.h sync0sync.ic sync0types.h \
|
||||
thr0loc.h thr0loc.ic trx0purge.h trx0purge.ic trx0rec.h \
|
||||
|
|
|
@ -114,20 +114,6 @@ dulint
|
|||
log_get_lsn(void);
|
||||
/*=============*/
|
||||
/* out: current lsn */
|
||||
/****************************************************************************
|
||||
Gets the online backup lsn. */
|
||||
UNIV_INLINE
|
||||
dulint
|
||||
log_get_online_backup_lsn_low(void);
|
||||
/*===============================*/
|
||||
/****************************************************************************
|
||||
Gets the online backup state. */
|
||||
UNIV_INLINE
|
||||
ibool
|
||||
log_get_online_backup_state_low(void);
|
||||
/*=================================*/
|
||||
/* out: online backup state, the caller must
|
||||
own the log_sys mutex */
|
||||
/**********************************************************
|
||||
Initializes the log. */
|
||||
|
||||
|
@ -326,20 +312,6 @@ log_archived_file_name_gen(
|
|||
char* buf, /* in: buffer where to write */
|
||||
ulint id, /* in: group id */
|
||||
ulint file_no);/* in: file number */
|
||||
/**********************************************************
|
||||
Switches the database to the online backup state. */
|
||||
|
||||
ulint
|
||||
log_switch_backup_state_on(void);
|
||||
/*============================*/
|
||||
/* out: DB_SUCCESS or DB_ERROR */
|
||||
/**********************************************************
|
||||
Switches the online backup state off. */
|
||||
|
||||
ulint
|
||||
log_switch_backup_state_off(void);
|
||||
/*=============================*/
|
||||
/* out: DB_SUCCESS or DB_ERROR */
|
||||
/************************************************************************
|
||||
Checks that there is enough free space in the log to start a new query step.
|
||||
Flushes the log buffer or makes a new checkpoint if necessary. NOTE: this
|
||||
|
@ -871,13 +843,6 @@ struct log_struct{
|
|||
os_event_t archiving_on; /* if archiving has been stopped,
|
||||
a thread can wait for this event to
|
||||
become signaled */
|
||||
/* Fields involved in online backups */
|
||||
ibool online_backup_state;
|
||||
/* TRUE if the database is in the
|
||||
online backup state */
|
||||
dulint online_backup_lsn;
|
||||
/* lsn when the state was changed to
|
||||
the online backup state */
|
||||
};
|
||||
|
||||
#define LOG_ARCH_ON 71
|
||||
|
|
|
@ -318,8 +318,7 @@ log_reserve_and_write_fast(
|
|||
|
||||
data_len = len + log->buf_free % OS_FILE_LOG_BLOCK_SIZE;
|
||||
|
||||
if (log->online_backup_state
|
||||
|| (data_len >= OS_FILE_LOG_BLOCK_SIZE - LOG_BLOCK_TRL_SIZE)) {
|
||||
if (data_len >= OS_FILE_LOG_BLOCK_SIZE - LOG_BLOCK_TRL_SIZE) {
|
||||
|
||||
/* The string does not fit within the current log block
|
||||
or the log block would become full */
|
||||
|
@ -403,36 +402,3 @@ log_free_check(void)
|
|||
log_check_margins();
|
||||
}
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Gets the online backup lsn. */
|
||||
UNIV_INLINE
|
||||
dulint
|
||||
log_get_online_backup_lsn_low(void)
|
||||
/*===============================*/
|
||||
/* out: online_backup_lsn, the caller must
|
||||
own the log_sys mutex */
|
||||
{
|
||||
#ifdef UNIV_SYNC_DEBUG
|
||||
ut_ad(mutex_own(&(log_sys->mutex)));
|
||||
#endif /* UNIV_SYNC_DEBUG */
|
||||
ut_ad(log_sys->online_backup_state);
|
||||
|
||||
return(log_sys->online_backup_lsn);
|
||||
}
|
||||
|
||||
/****************************************************************************
|
||||
Gets the online backup state. */
|
||||
UNIV_INLINE
|
||||
ibool
|
||||
log_get_online_backup_state_low(void)
|
||||
/*=================================*/
|
||||
/* out: online backup state, the caller must
|
||||
own the log_sys mutex */
|
||||
{
|
||||
#ifdef UNIV_SYNC_DEBUG
|
||||
ut_ad(mutex_own(&(log_sys->mutex)));
|
||||
#endif /* UNIV_SYNC_DEBUG */
|
||||
|
||||
return(log_sys->online_backup_state);
|
||||
}
|
||||
|
|
|
@ -82,7 +82,7 @@ flag value must give the length also! */
|
|||
predefined minimum record */
|
||||
#define MLOG_IBUF_BITMAP_INIT ((byte)27) /* initialize an ibuf bitmap
|
||||
page */
|
||||
#define MLOG_FULL_PAGE ((byte)28) /* full contents of a page */
|
||||
/*#define MLOG_FULL_PAGE ((byte)28) full contents of a page */
|
||||
#define MLOG_INIT_FILE_PAGE ((byte)29) /* this means that a file page
|
||||
is taken into use and the prior
|
||||
contents of the page should be
|
||||
|
@ -230,16 +230,6 @@ mtr_memo_release(
|
|||
mtr_t* mtr, /* in: mtr */
|
||||
void* object, /* in: object */
|
||||
ulint type); /* in: object type: MTR_MEMO_S_LOCK, ... */
|
||||
/****************************************************************
|
||||
Parses a log record which contains the full contents of a page. */
|
||||
|
||||
byte*
|
||||
mtr_log_parse_full_page(
|
||||
/*====================*/
|
||||
/* out: end of log record or NULL */
|
||||
byte* ptr, /* in: buffer */
|
||||
byte* end_ptr,/* in: buffer end */
|
||||
page_t* page); /* in: page or NULL */
|
||||
/**************************************************************
|
||||
Checks if memo contains the given item. */
|
||||
UNIV_INLINE
|
||||
|
|
|
@ -133,6 +133,13 @@ Creates the seek mutexes used in positioned reads and writes. */
|
|||
void
|
||||
os_io_init_simple(void);
|
||||
/*===================*/
|
||||
/***************************************************************************
|
||||
Creates a temporary file. In case of error, causes abnormal termination. */
|
||||
|
||||
FILE*
|
||||
os_file_create_tmpfile(void);
|
||||
/*========================*/
|
||||
/* out: temporary file handle (never NULL) */
|
||||
/********************************************************************
|
||||
A simple function to open or create a file. */
|
||||
|
||||
|
|
|
@ -152,17 +152,6 @@ que_run_threads(
|
|||
/*============*/
|
||||
que_thr_t* thr); /* in: query thread which is run initially */
|
||||
/**************************************************************************
|
||||
After signal handling is finished, returns control to a query graph error
|
||||
handling routine. (Currently, just returns the control to the root of the
|
||||
graph so that the graph can communicate an error message to the client.) */
|
||||
|
||||
void
|
||||
que_fork_error_handle(
|
||||
/*==================*/
|
||||
trx_t* trx, /* in: trx */
|
||||
que_t* fork); /* in: query graph which was run before signal
|
||||
handling started, NULL not allowed */
|
||||
/**************************************************************************
|
||||
Handles an SQL error noticed during query thread execution. At the moment,
|
||||
does nothing! */
|
||||
|
||||
|
@ -181,18 +170,15 @@ a single worker thread to execute it. This function should be used to end
|
|||
the wait state of a query thread waiting for a lock or a stored procedure
|
||||
completion. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
que_thr_end_wait(
|
||||
/*=============*/
|
||||
que_thr_t* thr, /* in: query thread in the
|
||||
/* out: next query thread to run;
|
||||
NULL if none */
|
||||
que_thr_t* thr); /* in: query thread in the
|
||||
QUE_THR_LOCK_WAIT,
|
||||
or QUE_THR_PROCEDURE_WAIT, or
|
||||
QUE_THR_SIG_REPLY_WAIT state */
|
||||
que_thr_t** next_thr); /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread */
|
||||
/**************************************************************************
|
||||
Same as que_thr_end_wait, but no parameter next_thr available. */
|
||||
|
||||
|
|
|
@ -507,6 +507,9 @@ struct row_prebuilt_struct {
|
|||
dtuple_t* clust_ref; /* prebuilt dtuple used in
|
||||
sel/upd/del */
|
||||
ulint select_lock_type;/* LOCK_NONE, LOCK_S, or LOCK_X */
|
||||
ulint stored_select_lock_type;/* inside LOCK TABLES, either
|
||||
LOCK_S or LOCK_X depending on the lock
|
||||
type */
|
||||
ulint mysql_row_len; /* length in bytes of a row in the
|
||||
MySQL format */
|
||||
ulint n_rows_fetched; /* number of rows fetched after
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
/******************************************************
|
||||
Server query execution
|
||||
|
||||
(c) 1996 Innobase Oy
|
||||
|
||||
Created 6/5/1996 Heikki Tuuri
|
||||
*******************************************************/
|
||||
|
||||
|
||||
#ifndef srv0que_h
|
||||
#define srv0que_h
|
||||
|
||||
#include "univ.i"
|
||||
#include "que0types.h"
|
||||
|
||||
/**************************************************************************
|
||||
Checks if there is work to do in the server task queue. If there is, the
|
||||
thread starts processing a task. Before leaving, it again checks the task
|
||||
queue and picks a new task if any exists. This is called by a SRV_WORKER
|
||||
thread. */
|
||||
|
||||
void
|
||||
srv_que_task_queue_check(void);
|
||||
/*==========================*/
|
||||
/**************************************************************************
|
||||
Performs round-robin on the server tasks. This is called by a SRV_WORKER
|
||||
thread every second or so. */
|
||||
|
||||
que_thr_t*
|
||||
srv_que_round_robin(
|
||||
/*================*/
|
||||
/* out: the new (may be == thr) query thread
|
||||
to run */
|
||||
que_thr_t* thr); /* in: query thread */
|
||||
/**************************************************************************
|
||||
Enqueues a task to server task queue and releases a worker thread, if
|
||||
there exists one suspended. */
|
||||
|
||||
void
|
||||
srv_que_task_enqueue(
|
||||
/*=================*/
|
||||
que_thr_t* thr); /* in: query thread */
|
||||
/**************************************************************************
|
||||
Enqueues a task to server task queue and releases a worker thread, if
|
||||
there exists one suspended. */
|
||||
|
||||
void
|
||||
srv_que_task_enqueue_low(
|
||||
/*=====================*/
|
||||
que_thr_t* thr); /* in: query thread */
|
||||
|
||||
#endif
|
||||
|
|
@ -91,16 +91,12 @@ trx_undo_rec_release(
|
|||
/*************************************************************************
|
||||
Starts a rollback operation. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
trx_rollback(
|
||||
/*=========*/
|
||||
/* out: next query thread to run */
|
||||
trx_t* trx, /* in: transaction */
|
||||
trx_sig_t* sig, /* in: signal starting the rollback */
|
||||
que_thr_t** next_thr);/* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread */
|
||||
trx_sig_t* sig); /* in: signal starting the rollback */
|
||||
/***********************************************************************
|
||||
Rollback or clean up transactions which have no user session. If the
|
||||
transaction already was committed, then we clean up a possible insert
|
||||
|
@ -112,17 +108,12 @@ trx_rollback_or_clean_all_without_sess(void);
|
|||
/********************************************************************
|
||||
Finishes a transaction rollback. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
trx_finish_rollback_off_kernel(
|
||||
/*===========================*/
|
||||
/* out: next query thread to run */
|
||||
que_t* graph, /* in: undo graph which can now be freed */
|
||||
trx_t* trx, /* in: transaction */
|
||||
que_thr_t** next_thr);/* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread; if this parameter is
|
||||
NULL, it is ignored */
|
||||
trx_t* trx); /* in: transaction */
|
||||
/********************************************************************
|
||||
Builds an undo 'query' graph for a transaction. The actual rollback is
|
||||
performed by executing this query graph like a query subprocedure call.
|
||||
|
|
|
@ -194,9 +194,10 @@ trx_end_lock_wait(
|
|||
/********************************************************************
|
||||
Sends a signal to a trx object. */
|
||||
|
||||
ibool
|
||||
que_thr_t*
|
||||
trx_sig_send(
|
||||
/*=========*/
|
||||
/* out: next query thread to run */
|
||||
/* out: TRUE if the signal was
|
||||
successfully delivered */
|
||||
trx_t* trx, /* in: trx handle */
|
||||
|
@ -206,27 +207,17 @@ trx_sig_send(
|
|||
que_thr_t* receiver_thr, /* in: query thread which wants the
|
||||
reply, or NULL; if type is
|
||||
TRX_SIG_END_WAIT, this must be NULL */
|
||||
trx_savept_t* savept, /* in: possible rollback savepoint, or
|
||||
trx_savept_t* savept); /* in: possible rollback savepoint, or
|
||||
NULL */
|
||||
que_thr_t** next_thr); /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread; if the parameter
|
||||
is NULL, it is ignored */
|
||||
/********************************************************************
|
||||
Send the reply message when a signal in the queue of the trx has
|
||||
been handled. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
trx_sig_reply(
|
||||
/*==========*/
|
||||
trx_sig_t* sig, /* in: signal */
|
||||
que_thr_t** next_thr); /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread */
|
||||
/* out: next query thread to run */
|
||||
trx_sig_t* sig); /* in: signal */
|
||||
/********************************************************************
|
||||
Removes the signal object from a trx signal queue. */
|
||||
|
||||
|
@ -238,15 +229,11 @@ trx_sig_remove(
|
|||
/********************************************************************
|
||||
Starts handling of a trx signal. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
trx_sig_start_handle(
|
||||
/*=================*/
|
||||
trx_t* trx, /* in: trx handle */
|
||||
que_thr_t** next_thr); /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread */
|
||||
/* out: next query thread to run, or NULL */
|
||||
trx_t* trx); /* in: trx handle */
|
||||
/********************************************************************
|
||||
Ends signal handling. If the session is in the error state, and
|
||||
trx->graph_before_signal_handling != NULL, returns control to the error
|
||||
|
|
|
@ -38,7 +38,6 @@ sess_try_close(
|
|||
|
||||
/* The session handle. All fields are protected by the kernel mutex */
|
||||
struct sess_struct{
|
||||
ulint state; /* state of the session */
|
||||
trx_t* trx; /* transaction object permanently
|
||||
assigned for the session: the
|
||||
transaction instance designated by the
|
||||
|
@ -49,11 +48,6 @@ struct sess_struct{
|
|||
session */
|
||||
};
|
||||
|
||||
/* Session states */
|
||||
#define SESS_ACTIVE 1
|
||||
#define SESS_ERROR 2 /* session contains an error message
|
||||
which has not yet been communicated
|
||||
to the client */
|
||||
#ifndef UNIV_NONINL
|
||||
#include "usr0sess.ic"
|
||||
#endif
|
||||
|
|
|
@ -510,7 +510,7 @@ lock_sys_create(
|
|||
|
||||
/* hash_create_mutexes(lock_sys->rec_hash, 2, SYNC_REC_LOCK); */
|
||||
|
||||
lock_latest_err_file = tmpfile();
|
||||
lock_latest_err_file = os_file_create_tmpfile();
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
|
|
|
@ -793,11 +793,7 @@ log_init(void)
|
|||
log_sys->archiving_on = os_event_create(NULL);
|
||||
|
||||
/*----------------------------*/
|
||||
|
||||
log_sys->online_backup_state = FALSE;
|
||||
|
||||
/*----------------------------*/
|
||||
|
||||
log_block_init(log_sys->buf, log_sys->lsn);
|
||||
log_block_set_first_rec_group(log_sys->buf, LOG_BLOCK_HDR_SIZE);
|
||||
|
||||
|
@ -2973,66 +2969,6 @@ loop:
|
|||
mutex_exit(&(log_sys->mutex));
|
||||
}
|
||||
|
||||
/**********************************************************
|
||||
Switches the database to the online backup state. */
|
||||
|
||||
ulint
|
||||
log_switch_backup_state_on(void)
|
||||
/*============================*/
|
||||
/* out: DB_SUCCESS or DB_ERROR */
|
||||
{
|
||||
dulint backup_lsn;
|
||||
|
||||
mutex_enter(&(log_sys->mutex));
|
||||
|
||||
if (log_sys->online_backup_state) {
|
||||
|
||||
/* The database is already in that state */
|
||||
|
||||
mutex_exit(&(log_sys->mutex));
|
||||
|
||||
return(DB_ERROR);
|
||||
}
|
||||
|
||||
log_sys->online_backup_state = TRUE;
|
||||
|
||||
backup_lsn = log_sys->lsn;
|
||||
|
||||
log_sys->online_backup_lsn = backup_lsn;
|
||||
|
||||
mutex_exit(&(log_sys->mutex));
|
||||
|
||||
/* log_checkpoint_and_mark_file_spaces(); */
|
||||
|
||||
return(DB_SUCCESS);
|
||||
}
|
||||
|
||||
/**********************************************************
|
||||
Switches the online backup state off. */
|
||||
|
||||
ulint
|
||||
log_switch_backup_state_off(void)
|
||||
/*=============================*/
|
||||
/* out: DB_SUCCESS or DB_ERROR */
|
||||
{
|
||||
mutex_enter(&(log_sys->mutex));
|
||||
|
||||
if (!log_sys->online_backup_state) {
|
||||
|
||||
/* The database is already in that state */
|
||||
|
||||
mutex_exit(&(log_sys->mutex));
|
||||
|
||||
return(DB_ERROR);
|
||||
}
|
||||
|
||||
log_sys->online_backup_state = FALSE;
|
||||
|
||||
mutex_exit(&(log_sys->mutex));
|
||||
|
||||
return(DB_SUCCESS);
|
||||
}
|
||||
|
||||
/********************************************************************
|
||||
Makes a checkpoint at the latest lsn and writes it to first page of each
|
||||
data file in the database, so that we know that the file spaces contain
|
||||
|
|
|
@ -790,9 +790,6 @@ recv_parse_or_apply_log_rec_body(
|
|||
} else if (type == MLOG_IBUF_BITMAP_INIT) {
|
||||
new_ptr = ibuf_parse_bitmap_init(ptr, end_ptr, page, mtr);
|
||||
|
||||
} else if (type == MLOG_FULL_PAGE) {
|
||||
new_ptr = mtr_log_parse_full_page(ptr, end_ptr, page);
|
||||
|
||||
} else if (type == MLOG_INIT_FILE_PAGE) {
|
||||
new_ptr = fsp_parse_init_file_page(ptr, end_ptr, page);
|
||||
|
||||
|
@ -1093,15 +1090,7 @@ recv_recover_page(
|
|||
buf = ((byte*)(recv->data)) + sizeof(recv_data_t);
|
||||
}
|
||||
|
||||
if (recv->type == MLOG_INIT_FILE_PAGE
|
||||
|| recv->type == MLOG_FULL_PAGE) {
|
||||
/* A new file page may have been taken into use,
|
||||
or we have stored the full contents of the page:
|
||||
in this case it may be that the original log record
|
||||
type was MLOG_INIT_FILE_PAGE, and we replaced it
|
||||
with MLOG_FULL_PAGE, thus we have to apply
|
||||
any record of type MLOG_FULL_PAGE */
|
||||
|
||||
if (recv->type == MLOG_INIT_FILE_PAGE) {
|
||||
page_lsn = page_newest_lsn;
|
||||
|
||||
mach_write_to_8(page + UNIV_PAGE_SIZE
|
||||
|
|
|
@ -105,179 +105,6 @@ mtr_memo_pop_all(
|
|||
}
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
Writes to the log the contents of a full page. This is called when the
|
||||
database is in the online backup state. */
|
||||
static
|
||||
void
|
||||
mtr_log_write_full_page(
|
||||
/*====================*/
|
||||
page_t* page, /* in: page to write */
|
||||
ulint i, /* in: i'th page for mtr */
|
||||
ulint n_pages,/* in: total number of pages for mtr */
|
||||
mtr_t* mtr) /* in: mtr */
|
||||
{
|
||||
byte* buf;
|
||||
byte* ptr;
|
||||
ulint len;
|
||||
|
||||
buf = mem_alloc(UNIV_PAGE_SIZE + 50);
|
||||
|
||||
ptr = mlog_write_initial_log_record_fast(page, MLOG_FULL_PAGE, buf,
|
||||
mtr);
|
||||
ut_memcpy(ptr, page, UNIV_PAGE_SIZE);
|
||||
|
||||
len = (ptr - buf) + UNIV_PAGE_SIZE;
|
||||
|
||||
if (i == n_pages - 1) {
|
||||
if (n_pages > 1) {
|
||||
*(buf + len) = MLOG_MULTI_REC_END;
|
||||
len++;
|
||||
} else {
|
||||
*buf = (byte)((ulint)*buf | MLOG_SINGLE_REC_FLAG);
|
||||
}
|
||||
}
|
||||
|
||||
ut_ad(len < UNIV_PAGE_SIZE + 50);
|
||||
|
||||
log_write_low(buf, len);
|
||||
|
||||
mem_free(buf);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
Parses a log record which contains the full contents of a page. */
|
||||
|
||||
byte*
|
||||
mtr_log_parse_full_page(
|
||||
/*====================*/
|
||||
/* out: end of log record or NULL */
|
||||
byte* ptr, /* in: buffer */
|
||||
byte* end_ptr,/* in: buffer end */
|
||||
page_t* page) /* in: page or NULL */
|
||||
{
|
||||
if (end_ptr < ptr + UNIV_PAGE_SIZE) {
|
||||
|
||||
return(NULL);
|
||||
}
|
||||
|
||||
if (page) {
|
||||
ut_memcpy(page, ptr, UNIV_PAGE_SIZE);
|
||||
}
|
||||
|
||||
return(ptr + UNIV_PAGE_SIZE);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
Writes to the database log the full contents of the pages that this mtr has
|
||||
modified. */
|
||||
static
|
||||
void
|
||||
mtr_log_write_backup_full_pages(
|
||||
/*============================*/
|
||||
mtr_t* mtr, /* in: mini-transaction */
|
||||
ulint n_pages)/* in: number of pages modified by mtr */
|
||||
{
|
||||
mtr_memo_slot_t* slot;
|
||||
dyn_array_t* memo;
|
||||
buf_block_t* block;
|
||||
ulint offset;
|
||||
ulint type;
|
||||
ulint i;
|
||||
|
||||
ut_ad(mtr);
|
||||
ut_ad(mtr->magic_n == MTR_MAGIC_N);
|
||||
ut_ad(mtr->state == MTR_COMMITTING);
|
||||
|
||||
/* Open the database log for log_write_low */
|
||||
mtr->start_lsn = log_reserve_and_open(n_pages * (UNIV_PAGE_SIZE + 50));
|
||||
|
||||
memo = &(mtr->memo);
|
||||
|
||||
offset = dyn_array_get_data_size(memo);
|
||||
|
||||
i = 0;
|
||||
|
||||
while (offset > 0) {
|
||||
offset -= sizeof(mtr_memo_slot_t);
|
||||
slot = dyn_array_get_element(memo, offset);
|
||||
|
||||
block = slot->object;
|
||||
type = slot->type;
|
||||
|
||||
if ((block != NULL) && (type == MTR_MEMO_PAGE_X_FIX)) {
|
||||
|
||||
mtr_log_write_full_page(block->frame, i, n_pages, mtr);
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
ut_ad(i == n_pages);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
Checks if mtr is the first to modify any page after online_backup_lsn. */
|
||||
static
|
||||
ibool
|
||||
mtr_first_to_modify_page_after_backup(
|
||||
/*==================================*/
|
||||
/* out: TRUE if first for a page */
|
||||
mtr_t* mtr, /* in: mini-transaction */
|
||||
ulint* n_pages) /* out: number of modified pages (all modified
|
||||
pages, backup_lsn does not matter here) */
|
||||
{
|
||||
mtr_memo_slot_t* slot;
|
||||
dyn_array_t* memo;
|
||||
ulint offset;
|
||||
buf_block_t* block;
|
||||
ulint type;
|
||||
dulint backup_lsn;
|
||||
ibool ret = FALSE;
|
||||
|
||||
ut_ad(mtr);
|
||||
ut_ad(mtr->magic_n == MTR_MAGIC_N);
|
||||
ut_ad(mtr->state == MTR_COMMITTING);
|
||||
|
||||
backup_lsn = log_get_online_backup_lsn_low();
|
||||
|
||||
memo = &(mtr->memo);
|
||||
|
||||
offset = dyn_array_get_data_size(memo);
|
||||
|
||||
*n_pages = 0;
|
||||
|
||||
while (offset > 0) {
|
||||
offset -= sizeof(mtr_memo_slot_t);
|
||||
slot = dyn_array_get_element(memo, offset);
|
||||
|
||||
block = slot->object;
|
||||
type = slot->type;
|
||||
|
||||
if ((block != NULL) && (type == MTR_MEMO_PAGE_X_FIX)) {
|
||||
|
||||
*n_pages = *n_pages + 1;
|
||||
|
||||
if (ut_dulint_cmp(buf_frame_get_newest_modification(
|
||||
block->frame),
|
||||
backup_lsn) <= 0) {
|
||||
|
||||
fprintf(stderr,
|
||||
"Page %lu newest %lu backup %lu\n",
|
||||
block->offset,
|
||||
ut_dulint_get_low(
|
||||
buf_frame_get_newest_modification(
|
||||
block->frame)),
|
||||
ut_dulint_get_low(backup_lsn));
|
||||
|
||||
ret = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return(ret);
|
||||
}
|
||||
|
||||
/****************************************************************
|
||||
Writes the contents of a mini-transaction log, if any, to the database log. */
|
||||
static
|
||||
|
@ -291,7 +118,6 @@ mtr_log_reserve_and_write(
|
|||
ulint data_size;
|
||||
ibool success;
|
||||
byte* first_data;
|
||||
ulint n_modified_pages;
|
||||
|
||||
ut_ad(mtr);
|
||||
|
||||
|
@ -322,27 +148,12 @@ mtr_log_reserve_and_write(
|
|||
|
||||
if (mtr->log_mode == MTR_LOG_ALL) {
|
||||
|
||||
if (log_get_online_backup_state_low()
|
||||
&& mtr_first_to_modify_page_after_backup(mtr,
|
||||
&n_modified_pages)) {
|
||||
|
||||
/* The database is in the online backup state: write
|
||||
to the log the full contents of all the pages if this
|
||||
mtr is the first to modify any page in the buffer pool
|
||||
after online_backup_lsn */
|
||||
block = mlog;
|
||||
|
||||
log_close();
|
||||
log_release();
|
||||
|
||||
mtr_log_write_backup_full_pages(mtr, n_modified_pages);
|
||||
} else {
|
||||
block = mlog;
|
||||
|
||||
while (block != NULL) {
|
||||
log_write_low(dyn_block_get_data(block),
|
||||
dyn_block_get_used(block));
|
||||
block = dyn_array_get_next_block(mlog, block);
|
||||
}
|
||||
while (block != NULL) {
|
||||
log_write_low(dyn_block_get_data(block),
|
||||
dyn_block_get_used(block));
|
||||
block = dyn_array_get_next_block(mlog, block);
|
||||
}
|
||||
} else {
|
||||
ut_ad(mtr->log_mode == MTR_LOG_NONE);
|
||||
|
|
|
@ -301,14 +301,11 @@ os_file_handle_error(
|
|||
/*=================*/
|
||||
/* out: TRUE if we should retry the
|
||||
operation */
|
||||
os_file_t file, /* in: file pointer */
|
||||
const char* name, /* in: name of a file or NULL */
|
||||
const char* operation)/* in: operation */
|
||||
{
|
||||
ulint err;
|
||||
|
||||
UT_NOT_USED(file);
|
||||
|
||||
err = os_file_get_last_error();
|
||||
|
||||
if (err == OS_FILE_DISK_FULL) {
|
||||
|
@ -374,6 +371,25 @@ os_io_init_simple(void)
|
|||
}
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
Creates a temporary file. In case of error, causes abnormal termination. */
|
||||
|
||||
FILE*
|
||||
os_file_create_tmpfile(void)
|
||||
/*========================*/
|
||||
/* out: temporary file handle (never NULL) */
|
||||
{
|
||||
FILE* file = tmpfile();
|
||||
if (file == NULL) {
|
||||
ut_print_timestamp(stderr);
|
||||
fputs(" InnoDB: Error: unable to create temporary file\n",
|
||||
stderr);
|
||||
os_file_handle_error(NULL, "tmpfile");
|
||||
ut_error;
|
||||
}
|
||||
return(file);
|
||||
}
|
||||
|
||||
/********************************************************************
|
||||
A simple function to open or create a file. */
|
||||
|
||||
|
@ -430,7 +446,7 @@ try_again:
|
|||
if (file == INVALID_HANDLE_VALUE) {
|
||||
*success = FALSE;
|
||||
|
||||
retry = os_file_handle_error(file, name,
|
||||
retry = os_file_handle_error(name,
|
||||
create_mode == OS_FILE_OPEN ?
|
||||
"open" : "create");
|
||||
if (retry) {
|
||||
|
@ -472,7 +488,7 @@ try_again:
|
|||
if (file == -1) {
|
||||
*success = FALSE;
|
||||
|
||||
retry = os_file_handle_error(file, name,
|
||||
retry = os_file_handle_error(name,
|
||||
create_mode == OS_FILE_OPEN ?
|
||||
"open" : "create");
|
||||
if (retry) {
|
||||
|
@ -678,7 +694,7 @@ try_again:
|
|||
if (file == INVALID_HANDLE_VALUE) {
|
||||
*success = FALSE;
|
||||
|
||||
retry = os_file_handle_error(file, name,
|
||||
retry = os_file_handle_error(name,
|
||||
create_mode == OS_FILE_OPEN ?
|
||||
"open" : "create");
|
||||
if (retry) {
|
||||
|
@ -766,7 +782,7 @@ try_again:
|
|||
if (file == -1) {
|
||||
*success = FALSE;
|
||||
|
||||
retry = os_file_handle_error(file, name,
|
||||
retry = os_file_handle_error(name,
|
||||
create_mode == OS_FILE_OPEN ?
|
||||
"open" : "create");
|
||||
if (retry) {
|
||||
|
@ -801,7 +817,7 @@ os_file_close(
|
|||
return(TRUE);
|
||||
}
|
||||
|
||||
os_file_handle_error(file, NULL, "close");
|
||||
os_file_handle_error(NULL, "close");
|
||||
return(FALSE);
|
||||
#else
|
||||
int ret;
|
||||
|
@ -809,7 +825,7 @@ os_file_close(
|
|||
ret = close(file);
|
||||
|
||||
if (ret == -1) {
|
||||
os_file_handle_error(file, NULL, "close");
|
||||
os_file_handle_error(NULL, "close");
|
||||
return(FALSE);
|
||||
}
|
||||
|
||||
|
@ -1029,7 +1045,7 @@ os_file_flush(
|
|||
return(TRUE);
|
||||
}
|
||||
|
||||
os_file_handle_error(file, NULL, "flush");
|
||||
os_file_handle_error(NULL, "flush");
|
||||
|
||||
/* It is a fatal error if a file flush does not succeed, because then
|
||||
the database can get corrupt on disk */
|
||||
|
@ -1063,7 +1079,7 @@ os_file_flush(
|
|||
fprintf(stderr,
|
||||
" InnoDB: Error: the OS said file flush did not succeed\n");
|
||||
|
||||
os_file_handle_error(file, NULL, "flush");
|
||||
os_file_handle_error(NULL, "flush");
|
||||
|
||||
/* It is a fatal error if a file flush does not succeed, because then
|
||||
the database can get corrupt on disk */
|
||||
|
@ -1111,7 +1127,7 @@ os_file_pread(
|
|||
|
||||
os_n_file_reads++;
|
||||
|
||||
#ifdef HAVE_PREAD
|
||||
#if defined(HAVE_PREAD) && !defined(HAVE_BROKEN_PREAD)
|
||||
os_mutex_enter(os_file_count_mutex);
|
||||
os_file_n_pending_preads++;
|
||||
os_mutex_exit(os_file_count_mutex);
|
||||
|
@ -1186,7 +1202,7 @@ os_file_pwrite(
|
|||
|
||||
os_n_file_writes++;
|
||||
|
||||
#ifdef HAVE_PWRITE
|
||||
#if defined(HAVE_PWRITE) && !defined(HAVE_BROKEN_PREAD)
|
||||
os_mutex_enter(os_file_count_mutex);
|
||||
os_file_n_pending_pwrites++;
|
||||
os_mutex_exit(os_file_count_mutex);
|
||||
|
@ -1323,7 +1339,7 @@ try_again:
|
|||
#ifdef __WIN__
|
||||
error_handling:
|
||||
#endif
|
||||
retry = os_file_handle_error(file, NULL, "read");
|
||||
retry = os_file_handle_error(NULL, "read");
|
||||
|
||||
if (retry) {
|
||||
goto try_again;
|
||||
|
@ -2278,7 +2294,7 @@ try_again:
|
|||
|
||||
os_aio_array_free_slot(array, slot);
|
||||
|
||||
retry = os_file_handle_error(file, name,
|
||||
retry = os_file_handle_error(name,
|
||||
type == OS_FILE_READ ? "aio read" : "aio write");
|
||||
if (retry) {
|
||||
|
||||
|
@ -2378,7 +2394,7 @@ os_aio_windows_handle(
|
|||
ut_a(TRUE == os_file_flush(slot->file));
|
||||
}
|
||||
} else {
|
||||
os_file_handle_error(slot->file, slot->name, "Windows aio");
|
||||
os_file_handle_error(slot->name, "Windows aio");
|
||||
|
||||
ret_val = FALSE;
|
||||
}
|
||||
|
|
|
@ -12,7 +12,6 @@ Created 5/27/1996 Heikki Tuuri
|
|||
#include "que0que.ic"
|
||||
#endif
|
||||
|
||||
#include "srv0que.h"
|
||||
#include "usr0sess.h"
|
||||
#include "trx0trx.h"
|
||||
#include "trx0roll.h"
|
||||
|
@ -175,19 +174,15 @@ a single worker thread to execute it. This function should be used to end
|
|||
the wait state of a query thread waiting for a lock or a stored procedure
|
||||
completion. */
|
||||
|
||||
void
|
||||
que_thr_t*
|
||||
que_thr_end_wait(
|
||||
/*=============*/
|
||||
que_thr_t* thr, /* in: query thread in the
|
||||
/* out: next query thread to run;
|
||||
NULL if none */
|
||||
que_thr_t* thr) /* in: query thread in the
|
||||
QUE_THR_LOCK_WAIT,
|
||||
or QUE_THR_PROCEDURE_WAIT, or
|
||||
QUE_THR_SIG_REPLY_WAIT state */
|
||||
que_thr_t** next_thr) /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread; if NULL is passed
|
||||
as the parameter, it is ignored */
|
||||
{
|
||||
ibool was_active;
|
||||
|
||||
|
@ -206,17 +201,8 @@ que_thr_end_wait(
|
|||
|
||||
que_thr_move_to_run_state(thr);
|
||||
|
||||
if (was_active) {
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (next_thr && *next_thr == NULL) {
|
||||
*next_thr = thr;
|
||||
} else {
|
||||
srv_que_task_enqueue_low(thr);
|
||||
}
|
||||
}
|
||||
return(was_active ? NULL : thr);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
Same as que_thr_end_wait, but no parameter next_thr available. */
|
||||
|
@ -253,8 +239,6 @@ que_thr_end_wait_no_next_thr(
|
|||
for the lock to be released: */
|
||||
|
||||
srv_release_mysql_thread_if_suspended(thr);
|
||||
|
||||
/* srv_que_task_enqueue_low(thr); */
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -355,48 +339,6 @@ que_fork_start_command(
|
|||
return(NULL);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
After signal handling is finished, returns control to a query graph error
|
||||
handling routine. (Currently, just returns the control to the root of the
|
||||
graph so that the graph can communicate an error message to the client.) */
|
||||
|
||||
void
|
||||
que_fork_error_handle(
|
||||
/*==================*/
|
||||
trx_t* trx __attribute__((unused)), /* in: trx */
|
||||
que_t* fork) /* in: query graph which was run before signal
|
||||
handling started, NULL not allowed */
|
||||
{
|
||||
que_thr_t* thr;
|
||||
|
||||
#ifdef UNIV_SYNC_DEBUG
|
||||
ut_ad(mutex_own(&kernel_mutex));
|
||||
#endif /* UNIV_SYNC_DEBUG */
|
||||
ut_ad(trx->sess->state == SESS_ERROR);
|
||||
ut_ad(UT_LIST_GET_LEN(trx->reply_signals) == 0);
|
||||
ut_ad(UT_LIST_GET_LEN(trx->wait_thrs) == 0);
|
||||
|
||||
thr = UT_LIST_GET_FIRST(fork->thrs);
|
||||
|
||||
while (thr != NULL) {
|
||||
ut_ad(!thr->is_active);
|
||||
ut_ad(thr->state != QUE_THR_SIG_REPLY_WAIT);
|
||||
ut_ad(thr->state != QUE_THR_LOCK_WAIT);
|
||||
|
||||
thr->run_node = thr;
|
||||
thr->prev_node = thr->child;
|
||||
thr->state = QUE_THR_COMPLETED;
|
||||
|
||||
thr = UT_LIST_GET_NEXT(thrs, thr);
|
||||
}
|
||||
|
||||
thr = UT_LIST_GET_FIRST(fork->thrs);
|
||||
|
||||
que_thr_move_to_run_state(thr);
|
||||
|
||||
srv_que_task_enqueue_low(thr);
|
||||
}
|
||||
|
||||
/********************************************************************
|
||||
Tests if all the query threads in the same fork have a given state. */
|
||||
UNIV_INLINE
|
||||
|
@ -765,22 +707,18 @@ this function may only be called from inside que_run_threads or
|
|||
que_thr_check_if_switch! These restrictions exist to make the rollback code
|
||||
easier to maintain. */
|
||||
static
|
||||
void
|
||||
que_thr_t*
|
||||
que_thr_dec_refer_count(
|
||||
/*====================*/
|
||||
que_thr_t* thr, /* in: query thread */
|
||||
que_thr_t** next_thr) /* in/out: next query thread to run;
|
||||
if the value which is passed in is
|
||||
a pointer to a NULL pointer, then the
|
||||
calling function can start running
|
||||
a new query thread */
|
||||
/* out: next query thread to run */
|
||||
que_thr_t* thr) /* in: query thread */
|
||||
{
|
||||
que_fork_t* fork;
|
||||
trx_t* trx;
|
||||
sess_t* sess;
|
||||
ulint fork_type;
|
||||
ibool stopped;
|
||||
|
||||
que_thr_t* next_thr = NULL;
|
||||
|
||||
fork = thr->common.parent;
|
||||
trx = thr->graph->trx;
|
||||
sess = trx->sess;
|
||||
|
@ -791,9 +729,7 @@ que_thr_dec_refer_count(
|
|||
|
||||
if (thr->state == QUE_THR_RUNNING) {
|
||||
|
||||
stopped = que_thr_stop(thr);
|
||||
|
||||
if (!stopped) {
|
||||
if (!que_thr_stop(thr)) {
|
||||
/* The reason for the thr suspension or wait was
|
||||
already canceled before we came here: continue
|
||||
running the thread */
|
||||
|
@ -801,15 +737,9 @@ que_thr_dec_refer_count(
|
|||
/* fputs("!!!!!!!! Wait already ended: continue thr\n",
|
||||
stderr); */
|
||||
|
||||
if (next_thr && *next_thr == NULL) {
|
||||
*next_thr = thr;
|
||||
} else {
|
||||
srv_que_task_enqueue_low(thr);
|
||||
}
|
||||
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
return;
|
||||
return(thr);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -825,7 +755,7 @@ que_thr_dec_refer_count(
|
|||
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
return;
|
||||
return(next_thr);
|
||||
}
|
||||
|
||||
fork_type = fork->fork_type;
|
||||
|
@ -841,7 +771,7 @@ que_thr_dec_refer_count(
|
|||
ut_ad(UT_LIST_GET_LEN(trx->signals) > 0);
|
||||
ut_ad(trx->handling_signals == TRUE);
|
||||
|
||||
trx_finish_rollback_off_kernel(fork, trx, next_thr);
|
||||
next_thr = trx_finish_rollback_off_kernel(fork, trx);
|
||||
|
||||
} else if (fork_type == QUE_FORK_PURGE) {
|
||||
|
||||
|
@ -863,7 +793,7 @@ que_thr_dec_refer_count(
|
|||
zero, then we start processing a signal; from it we may get
|
||||
a new query thread to run */
|
||||
|
||||
trx_sig_start_handle(trx, next_thr);
|
||||
next_thr = trx_sig_start_handle(trx);
|
||||
}
|
||||
|
||||
if (trx->handling_signals && UT_LIST_GET_LEN(trx->signals) == 0) {
|
||||
|
@ -872,6 +802,8 @@ que_thr_dec_refer_count(
|
|||
}
|
||||
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
return(next_thr);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
|
@ -1243,6 +1175,7 @@ loop:
|
|||
/*-------------------------*/
|
||||
next_thr = que_thr_step(thr);
|
||||
/*-------------------------*/
|
||||
ut_a(next_thr == thr || next_thr == NULL);
|
||||
|
||||
/* Test the effect on performance of adding extra mutex
|
||||
reservations */
|
||||
|
@ -1259,7 +1192,7 @@ loop:
|
|||
loop_count++;
|
||||
|
||||
if (next_thr != thr) {
|
||||
que_thr_dec_refer_count(thr, &next_thr);
|
||||
next_thr = que_thr_dec_refer_count(thr);
|
||||
|
||||
if (next_thr == NULL) {
|
||||
|
||||
|
|
|
@ -33,12 +33,13 @@ At the present, the comparison functions return 0 in the case,
|
|||
where two records disagree only in the way that one
|
||||
has more fields than the other. */
|
||||
|
||||
#ifdef UNIV_DEBUG
|
||||
/*****************************************************************
|
||||
Used in debug checking of cmp_dtuple_... .
|
||||
This function is used to compare a data tuple to a physical record. If
|
||||
dtuple has n fields then rec must have either m >= n fields, or it must
|
||||
differ from dtuple in some of the m fields rec has. */
|
||||
|
||||
static
|
||||
int
|
||||
cmp_debug_dtuple_rec_with_match(
|
||||
/*============================*/
|
||||
|
@ -54,6 +55,7 @@ cmp_debug_dtuple_rec_with_match(
|
|||
completely matched fields; when function
|
||||
returns, contains the value for current
|
||||
comparison */
|
||||
#endif /* UNIV_DEBUG */
|
||||
/*****************************************************************
|
||||
This function is used to compare two data fields for which the data type
|
||||
is such that we must use MySQL code to compare them. The prototype here
|
||||
|
@ -946,13 +948,14 @@ order_resolved:
|
|||
return(ret);
|
||||
}
|
||||
|
||||
#ifdef UNIV_DEBUG
|
||||
/*****************************************************************
|
||||
Used in debug checking of cmp_dtuple_... .
|
||||
This function is used to compare a data tuple to a physical record. If
|
||||
dtuple has n fields then rec must have either m >= n fields, or it must
|
||||
differ from dtuple in some of the m fields rec has. If encounters an
|
||||
externally stored field, returns 0. */
|
||||
|
||||
static
|
||||
int
|
||||
cmp_debug_dtuple_rec_with_match(
|
||||
/*============================*/
|
||||
|
@ -1048,3 +1051,4 @@ order_resolved:
|
|||
|
||||
return(ret);
|
||||
}
|
||||
#endif /* UNIV_DEBUG */
|
||||
|
|
|
@ -380,6 +380,7 @@ row_create_prebuilt(
|
|||
prebuilt->clust_pcur = btr_pcur_create_for_mysql();
|
||||
|
||||
prebuilt->select_lock_type = LOCK_NONE;
|
||||
prebuilt->stored_select_lock_type = 99999999;
|
||||
|
||||
prebuilt->sel_graph = NULL;
|
||||
|
||||
|
|
|
@ -19,6 +19,6 @@ include ../include/Makefile.i
|
|||
|
||||
noinst_LIBRARIES = libsrv.a
|
||||
|
||||
libsrv_a_SOURCES = srv0srv.c srv0que.c srv0start.c
|
||||
libsrv_a_SOURCES = srv0srv.c srv0start.c
|
||||
|
||||
EXTRA_PROGRAMS =
|
||||
|
|
|
@ -1,111 +0,0 @@
|
|||
/******************************************************
|
||||
Server query execution
|
||||
|
||||
(c) 1996 Innobase Oy
|
||||
|
||||
Created 6/5/1996 Heikki Tuuri
|
||||
*******************************************************/
|
||||
|
||||
#include "srv0que.h"
|
||||
|
||||
#include "srv0srv.h"
|
||||
#include "sync0sync.h"
|
||||
#include "os0thread.h"
|
||||
#include "usr0sess.h"
|
||||
#include "que0que.h"
|
||||
|
||||
/**************************************************************************
|
||||
Checks if there is work to do in the server task queue. If there is, the
|
||||
thread starts processing a task. Before leaving, it again checks the task
|
||||
queue and picks a new task if any exists. This is called by a SRV_WORKER
|
||||
thread. */
|
||||
|
||||
void
|
||||
srv_que_task_queue_check(void)
|
||||
/*==========================*/
|
||||
{
|
||||
que_thr_t* thr;
|
||||
|
||||
for (;;) {
|
||||
mutex_enter(&kernel_mutex);
|
||||
|
||||
thr = UT_LIST_GET_FIRST(srv_sys->tasks);
|
||||
|
||||
if (thr == NULL) {
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
UT_LIST_REMOVE(queue, srv_sys->tasks, thr);
|
||||
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
que_run_threads(thr);
|
||||
}
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
Performs round-robin on the server tasks. This is called by a SRV_WORKER
|
||||
thread every second or so. */
|
||||
|
||||
que_thr_t*
|
||||
srv_que_round_robin(
|
||||
/*================*/
|
||||
/* out: the new (may be == thr) query thread
|
||||
to run */
|
||||
que_thr_t* thr) /* in: query thread */
|
||||
{
|
||||
que_thr_t* new_thr;
|
||||
|
||||
ut_ad(thr);
|
||||
ut_ad(thr->state == QUE_THR_RUNNING);
|
||||
|
||||
mutex_enter(&kernel_mutex);
|
||||
|
||||
UT_LIST_ADD_LAST(queue, srv_sys->tasks, thr);
|
||||
|
||||
new_thr = UT_LIST_GET_FIRST(srv_sys->tasks);
|
||||
|
||||
mutex_exit(&kernel_mutex);
|
||||
|
||||
return(new_thr);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
Enqueues a task to server task queue and releases a worker thread, if there
|
||||
is a suspended one. */
|
||||
|
||||
void
|
||||
srv_que_task_enqueue_low(
|
||||
/*=====================*/
|
||||
que_thr_t* thr) /* in: query thread */
|
||||
{
|
||||
ut_ad(thr);
|
||||
|
||||
#ifdef UNIV_SYNC_DEBUG
|
||||
ut_ad(mutex_own(&kernel_mutex));
|
||||
#endif /* UNIV_SYNC_DEBUG */
|
||||
|
||||
UT_LIST_ADD_LAST(queue, srv_sys->tasks, thr);
|
||||
|
||||
srv_release_threads(SRV_WORKER, 1);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
Enqueues a task to server task queue and releases a worker thread, if there
|
||||
is a suspended one. */
|
||||
|
||||
void
|
||||
srv_que_task_enqueue(
|
||||
/*=================*/
|
||||
que_thr_t* thr) /* in: query thread */
|
||||
{
|
||||
ut_ad(thr);
|
||||
|
||||
mutex_enter(&kernel_mutex);
|
||||
|
||||
srv_que_task_enqueue_low(thr);
|
||||
|
||||
mutex_exit(&kernel_mutex);
|
||||
}
|