summaryrefslogtreecommitdiff
path: root/mysql-test
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test')
-rw-r--r--mysql-test/CMakeLists.txt110
-rw-r--r--mysql-test/Makefile.am5
-rw-r--r--mysql-test/lib/My/ConfigFactory.pm11
-rw-r--r--mysql-test/lib/My/Find.pm20
-rw-r--r--mysql-test/lib/My/SafeProcess.pm18
-rw-r--r--mysql-test/lib/My/SafeProcess/CMakeLists.txt14
-rwxr-xr-xmysql-test/lib/My/SafeProcess/safe_kill_win.cc1
-rwxr-xr-xmysql-test/lib/My/SafeProcess/safe_process_win.cc5
-rw-r--r--mysql-test/mtr.out-of-source5
-rwxr-xr-xmysql-test/mysql-test-run.pl161
-rw-r--r--mysql-test/t/fulltext_plugin.test3
11 files changed, 269 insertions, 84 deletions
diff --git a/mysql-test/CMakeLists.txt b/mysql-test/CMakeLists.txt
new file mode 100644
index 00000000000..b3afa4f8f98
--- /dev/null
+++ b/mysql-test/CMakeLists.txt
@@ -0,0 +1,110 @@
+# Copyright (C) 2009 Sun Microsystems, Inc
+#
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; version 2 of the License.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+
+INSTALL(
+ DIRECTORY .
+ DESTINATION mysql-test
+ PATTERN "var/" EXCLUDE
+ PATTERN "lib/My/SafeProcess" EXCLUDE
+ PATTERN "CPack" EXCLUDE
+ PATTERN "CMake" EXCLUDE
+ PATTERN "mtr.out" EXCLUDE
+ PATTERN ".cvsignore" EXCLUDE
+)
+
+
+
+IF(NOT ${CMAKE_SOURCE_DIR} STREQUAL ${CMAKE_BINARY_DIR})
+ # Enable running mtr from build directory
+ CONFIGURE_FILE(
+ ${CMAKE_CURRENT_SOURCE_DIR}/mtr.out-of-source
+ ${CMAKE_CURRENT_BINARY_DIR}/mysql-test-run.pl
+ @ONLY
+ )
+ENDIF()
+IF(UNIX)
+ EXECUTE_PROCESS(
+ COMMAND chmod +x mysql-test-run.pl
+ COMMAND ${CMAKE_COMMAND} -E create_symlink
+ ./mysql-test-run.pl mtr
+ COMMAND ${CMAKE_COMMAND} -E create_symlink
+ ./mysql-test-run.pl mysql-test-run
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+ )
+ INSTALL(FILES ${CMAKE_CURRENT_BINARY_DIR}/mtr
+ ${CMAKE_CURRENT_BINARY_DIR}/mysql-test-run DESTINATION mysql-test)
+ENDIF()
+
+IF(CMAKE_GENERATOR MATCHES "Visual Studio")
+ SET(SETCONFIG_COMMAND set MTR_VS_CONFIG=$(OutDir))
+ELSEIF(CMAKE_GENERATOR MATCHES "Xcode")
+ SET(SETCONFIG_COMMAND export MTR_VS_CONFIG=$(CONFIGURATION))
+ELSE()
+ SET(SETCONFIG_COMMAND echo Running tests)
+ENDIF()
+IF(CYGWIN)
+ # On cygwin, pretend to be "Unix" system
+ SET(SETOS_COMMAND export MTR_CYGWIN_IS_UNIX=1)
+ELSE()
+ SET(SETOS_COMMAND echo OS=${CMAKE_SYSTEM_NAME})
+ENDIF()
+
+
+ADD_CUSTOM_TARGET(test-force
+ COMMAND ${SETCONFIG_COMMAND}
+ COMMAND ${SETOS_COMMAND}
+ COMMAND perl mysql-test-run.pl --force
+ WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR}
+)
+
+SET(EXP --experimental=collections/default.experimental)
+IF(WIN32)
+ SET(SET_ENV set)
+ELSE()
+ SET(SET_ENV export)
+ENDIF()
+
+
+SET(MTR_FORCE perl ./mysql-test-run.pl --force)
+IF(EXISTS ${CMAKE_SOURCE_DIR}/mysql-test/suite/nist)
+ SET(TEST_NIST ${MTR_FORCE} --comment=nist suite=nist ${EXP} &&
+ ${MTR_FORCE} --comment=nist --force --suite=nist+ps ${EXP})
+ELSE()
+ SET(TEST_NIST echo "NIST tests not found")
+ENDIF()
+
+IF(WITH_EMBEDDED_SERVER)
+ SET(TEST_EMBEDDED ${MTR_FORCE} --comment=embedded --timer --embedded-server
+ --skip-rpl --skip-ndbcluster $(EXP))
+ELSE()
+ SET(TEST_EMBEDDED echo "Can not test embedded, not compiled in")
+ENDIF()
+
+ADD_CUSTOM_TARGET(test-bt
+ COMMAND ${SETCONFIG_COMMAND}
+ COMMAND ${SETOS_COMMAND}
+ COMMAND ${SET_ENV} MTR_BUILD_THREAD=auto
+ COMMAND ${MTR_FORCE} --comment=normal --timer --skip-ndbcluster --report-features ${EXP}
+ COMMAND ${MTR_FORCE} --comment=ps --timer --skip-ndbcluster --ps-protocol ${EXP}
+ COMMAND ${MTR_FORCE} --comment=funcs1+ps --ps-protocol --reorder --suite=funcs_1 ${EXP}
+ COMMAND ${MTR_FORCE} --comment=funcs2 --suite=funcs_2 ${EXP}
+ COMMAND ${MTR_FORCE} --comment=partitions --suite=parts ${EXP}
+ COMMAND ${MTR_FORCE} --comment=stress --suite=stress ${EXP}
+ COMMAND ${MTR_FORCE} --force --comment=jp --suite=jp ${EXP}
+ COMMAND ${TEST_NIST}
+ COMMAND ${TEST_EMBEDDED}
+)
+
+
diff --git a/mysql-test/Makefile.am b/mysql-test/Makefile.am
index b1d0e85c70e..a040688596f 100644
--- a/mysql-test/Makefile.am
+++ b/mysql-test/Makefile.am
@@ -71,7 +71,10 @@ SUBDIRS = lib/My/SafeProcess
EXTRA_DIST = README \
$(test_SCRIPTS) \
- $(nobase_test_DATA)
+ $(nobase_test_DATA) \
+ CMakeLists.txt \
+ mtr.out-of-source
+
# List of directories containing test + result files and the
# related test data files that should be copied
diff --git a/mysql-test/lib/My/ConfigFactory.pm b/mysql-test/lib/My/ConfigFactory.pm
index 505f93f1fec..1d2c606a6f7 100644
--- a/mysql-test/lib/My/ConfigFactory.pm
+++ b/mysql-test/lib/My/ConfigFactory.pm
@@ -29,6 +29,15 @@ sub get_basedir {
return $basedir;
}
+# Retrive build directory (which is different from basedir in out-of-source build)
+sub get_bindir {
+ if (defined $ENV{MTR_BINDIR})
+ {
+ return $ENV{MTR_BINDIR};
+ }
+ my ($self, $group)= @_;
+ return $self->get_basedir($group);
+}
sub fix_charset_dir {
my ($self, $config, $group_name, $group)= @_;
@@ -38,7 +47,7 @@ sub fix_charset_dir {
sub fix_language {
my ($self, $config, $group_name, $group)= @_;
- return my_find_dir($self->get_basedir($group),
+ return my_find_dir($self->get_bindir($group),
\@share_locations);
}
diff --git a/mysql-test/lib/My/Find.pm b/mysql-test/lib/My/Find.pm
index 8557584bbc8..b2fec0d77b8 100644
--- a/mysql-test/lib/My/Find.pm
+++ b/mysql-test/lib/My/Find.pm
@@ -167,16 +167,16 @@ sub my_find_paths {
}
# -------------------------------------------------------
- # Windows specific
- # -------------------------------------------------------
- if (IS_WINDOWS) {
- # Add the default extra build dirs unless a specific one has
- # already been selected
- push(@extra_dirs,
- ("release",
- "relwithdebinfo",
- "debug")) if @extra_dirs == 0;
- }
+ # CMake generator specific (Visual Studio and Xcode have multimode builds)
+ # -------------------------------------------------------
+
+ # Add the default extra build dirs unless a specific one has
+ # already been selected
+ push(@extra_dirs,
+ ("Release",
+ "Relwithdebinfo",
+ "Debug")) if @extra_dirs == 0;
+
#print "extra_build_dir: @extra_dirs\n";
diff --git a/mysql-test/lib/My/SafeProcess.pm b/mysql-test/lib/My/SafeProcess.pm
index 7e102b628ca..0fac25b814b 100644
--- a/mysql-test/lib/My/SafeProcess.pm
+++ b/mysql-test/lib/My/SafeProcess.pm
@@ -84,19 +84,31 @@ sub is_child {
# Find the safe process binary or script
my @safe_process_cmd;
my $safe_kill;
+my $bindir;
+if(defined $ENV{MTR_BINDIR})
+{
+ # This is an out-of-source build. Build directory
+ # is given in MTR_BINDIR env.variable
+ $bindir = $ENV{MTR_BINDIR}."/mysql-test";
+}
+else
+{
+ $bindir = ".";
+}
+
if (IS_WIN32PERL or IS_CYGWIN){
# Use my_safe_process.exe
- my $exe= my_find_bin(".", ["lib/My/SafeProcess", "My/SafeProcess"],
+ my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
"my_safe_process");
push(@safe_process_cmd, $exe);
# Use my_safe_kill.exe
- $safe_kill= my_find_bin(".", "lib/My/SafeProcess", "my_safe_kill");
+ $safe_kill= my_find_bin($bindir, "lib/My/SafeProcess", "my_safe_kill");
}
else
{
# Use my_safe_process
- my $exe= my_find_bin(".", ["lib/My/SafeProcess", "My/SafeProcess"],
+ my $exe= my_find_bin($bindir, ["lib/My/SafeProcess", "My/SafeProcess"],
"my_safe_process");
push(@safe_process_cmd, $exe);
}
diff --git a/mysql-test/lib/My/SafeProcess/CMakeLists.txt b/mysql-test/lib/My/SafeProcess/CMakeLists.txt
index 97fab820f95..d22d4fddddf 100644
--- a/mysql-test/lib/My/SafeProcess/CMakeLists.txt
+++ b/mysql-test/lib/My/SafeProcess/CMakeLists.txt
@@ -13,5 +13,15 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
-ADD_EXECUTABLE(my_safe_process safe_process_win.cc)
-ADD_EXECUTABLE(my_safe_kill safe_kill_win.cc)
+IF (WIN32)
+ ADD_EXECUTABLE(my_safe_process safe_process_win.cc)
+ ADD_EXECUTABLE(my_safe_kill safe_kill_win.cc)
+ELSE()
+ ADD_EXECUTABLE(my_safe_process safe_process.cc)
+ENDIF()
+
+INSTALL(TARGETS my_safe_process DESTINATION "mysql-test/lib/My/SafeProcess")
+IF(WIN32)
+ INSTALL(TARGETS my_safe_kill DESTINATION "mysql-test/lib/My/SafeProcess")
+ENDIF()
+INSTALL(FILES safe_process.pl Base.pm DESTINATION "mysql-test/lib/My/SafeProcess")
diff --git a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
index 963a02c8099..f72b851d0b6 100755
--- a/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
+++ b/mysql-test/lib/My/SafeProcess/safe_kill_win.cc
@@ -24,6 +24,7 @@
#include <windows.h>
#include <stdio.h>
#include <signal.h>
+#include <stdlib.h>
int main(int argc, const char** argv )
{
diff --git a/mysql-test/lib/My/SafeProcess/safe_process_win.cc b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
index 455262b29f5..ce5deb4d82a 100755
--- a/mysql-test/lib/My/SafeProcess/safe_process_win.cc
+++ b/mysql-test/lib/My/SafeProcess/safe_process_win.cc
@@ -57,6 +57,7 @@
#include <stdio.h>
#include <tlhelp32.h>
#include <signal.h>
+#include <stdlib.h>
static int verbose= 0;
static char safe_process_name[32]= {0};
@@ -248,6 +249,10 @@ int main(int argc, const char** argv )
Make all processes associated with the job terminate when the
last handle to the job is closed.
*/
+#ifndef JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE
+#define JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE 0x00002000
+#endif
+
jeli.BasicLimitInformation.LimitFlags = JOB_OBJECT_LIMIT_KILL_ON_JOB_CLOSE;
if (SetInformationJobObject(job_handle, JobObjectExtendedLimitInformation,
&jeli, sizeof(jeli)) == 0)
diff --git a/mysql-test/mtr.out-of-source b/mysql-test/mtr.out-of-source
new file mode 100644
index 00000000000..c2809ede136
--- /dev/null
+++ b/mysql-test/mtr.out-of-source
@@ -0,0 +1,5 @@
+#!/usr/bin/perl
+# Call mtr in out-of-source build
+$ENV{MTR_BINDIR} = "@CMAKE_BINARY_DIR@";
+chdir("@CMAKE_SOURCE_DIR@/mysql-test");
+exit(system($^X, "@CMAKE_SOURCE_DIR@/mysql-test/mysql-test-run.pl", @ARGV) >> 8); \ No newline at end of file
diff --git a/mysql-test/mysql-test-run.pl b/mysql-test/mysql-test-run.pl
index f76cb008c3c..9a9fa85aa79 100755
--- a/mysql-test/mysql-test-run.pl
+++ b/mysql-test/mysql-test-run.pl
@@ -94,6 +94,7 @@ $SIG{INT}= sub { mtr_error("Got ^C signal"); };
our $mysql_version_id;
our $glob_mysql_test_dir;
our $basedir;
+our $bindir;
our $path_charsetsdir;
our $path_client_bindir;
@@ -943,7 +944,11 @@ sub command_line_setup {
{
$basedir= dirname($basedir);
}
-
+
+ # Respect MTR_BINDIR variable, which is typically set in to the
+ # build directory in out-of-source builds.
+ $bindir=$ENV{MTR_BINDIR}||$basedir;
+
# Look for the client binaries directory
if ($path_client_bindir)
{
@@ -952,21 +957,21 @@ sub command_line_setup {
}
else
{
- $path_client_bindir= mtr_path_exists("$basedir/client_release",
- "$basedir/client_debug",
+ $path_client_bindir= mtr_path_exists("$bindir/client_release",
+ "$bindir/client_debug",
vs_config_dirs('client', ''),
- "$basedir/client",
- "$basedir/bin");
+ "$bindir/client",
+ "$bindir/bin");
}
# Look for language files and charsetsdir, use same share
- $path_language= mtr_path_exists("$basedir/share/mysql",
- "$basedir/sql/share",
- "$basedir/share");
-
-
+ $path_language= mtr_path_exists("$bindir/share/mysql",
+ "$bindir/sql/share",
+ "$bindir/share");
my $path_share= $path_language;
- $path_charsetsdir= mtr_path_exists("$path_share/charsets");
+ $path_charsetsdir = mtr_path_exists("$basedir/share/mysql/charsets",
+ "$basedir/sql/share/charsets",
+ "$basedir/share/charsets");
if (using_extern())
{
@@ -1104,7 +1109,14 @@ sub command_line_setup {
# --------------------------------------------------------------------------
# Set the "var/" directory, the base for everything else
# --------------------------------------------------------------------------
- $default_vardir= "$glob_mysql_test_dir/var";
+ if(defined $ENV{MTR_BINDIR})
+ {
+ $default_vardir= "$ENV{MTR_BINDIR}/mysql-test/var";
+ }
+ else
+ {
+ $default_vardir= "$glob_mysql_test_dir/var";
+ }
if ( ! $opt_vardir )
{
$opt_vardir= $default_vardir;
@@ -1558,7 +1570,8 @@ sub collect_mysqld_features_from_running_server ()
}
sub find_mysqld {
- my ($mysqld_basedir)= @_;
+
+ my ($mysqld_basedir)= $ENV{MTR_BINDIR}|| @_;
my @mysqld_names= ("mysqld", "mysqld-max-nt", "mysqld-max",
"mysqld-nt");
@@ -1644,7 +1657,7 @@ sub client_debug_arg($$) {
sub mysql_fix_arguments () {
- return "" if ( IS_WINDOWS );
+ return "" ;
my $exe=
mtr_script_exists("$basedir/scripts/mysql_fix_privilege_tables",
@@ -1744,6 +1757,30 @@ sub mysql_client_test_arguments(){
# Set environment to be used by childs of this process for
# things that are constant during the whole lifetime of mysql-test-run
#
+
+sub find_plugin($$)
+{
+ my ($plugin, $location) = @_;
+ my $plugin_filename;
+
+ if (IS_WINDOWS)
+ {
+ $plugin_filename = $plugin.".dll";
+ }
+ else
+ {
+ $plugin_filename = $plugin.".so";
+ }
+
+ my $lib_example_plugin=
+ mtr_file_exists(vs_config_dirs($location,$plugin_filename),
+ "$basedir/lib/plugin/".$plugin_filename,
+ "$basedir/$location/.libs/".$plugin_filename,
+ "$basedir/lib/mysql/plugin/".$plugin_filename,
+ );
+ return $lib_example_plugin;
+}
+
sub environment_setup {
umask(022);
@@ -1782,9 +1819,18 @@ sub environment_setup {
# --------------------------------------------------------------------------
# Add the path where mysqld will find udf_example.so
# --------------------------------------------------------------------------
+ my $udf_example_filename;
+ if (IS_WINDOWS)
+ {
+ $udf_example_filename = "udf_example.dll";
+ }
+ else
+ {
+ $udf_example_filename = "udf_example.so";
+ }
my $lib_udf_example=
- mtr_file_exists(vs_config_dirs('sql', 'udf_example.dll'),
- "$basedir/sql/.libs/udf_example.so",);
+ mtr_file_exists(vs_config_dirs('sql', $udf_example_filename),
+ "$basedir/sql/.libs/$udf_example_filename",);
if ( $lib_udf_example )
{
@@ -1800,60 +1846,46 @@ sub environment_setup {
# Add the path where mysqld will find ha_example.so
# --------------------------------------------------------------------------
if ($mysql_version_id >= 50100) {
- my $plugin_filename;
- if (IS_WINDOWS)
- {
- $plugin_filename = "ha_example.dll";
+ my ($lib_example_plugin) = find_plugin("ha_example", "storage/example");
+
+ if($lib_example_plugin)
+ {
+ $ENV{'EXAMPLE_PLUGIN'}=
+ ($lib_example_plugin ? basename($lib_example_plugin) : "");
+ $ENV{'EXAMPLE_PLUGIN_OPT'}= "--plugin-dir=".
+ ($lib_example_plugin ? dirname($lib_example_plugin) : "");
+
+ $ENV{'HA_EXAMPLE_SO'}="'".basename($lib_example_plugin)."'";
+ $ENV{'EXAMPLE_PLUGIN_LOAD'}="--plugin_load=EXAMPLE=".basename($lib_example_plugin);
}
- else
+ else
{
- $plugin_filename = "ha_example.so";
+ # Some ".opt" files use some of these variables, so they must be defined
+ $ENV{'EXAMPLE_PLUGIN'}= "";
+ $ENV{'EXAMPLE_PLUGIN_OPT'}= "";
+ $ENV{'HA_EXAMPLE_SO'}= "";
+ $ENV{'EXAMPLE_PLUGIN_LOAD'}= "";
}
- my $lib_example_plugin=
- mtr_file_exists(vs_config_dirs('storage/example',$plugin_filename),
- "$basedir/storage/example/.libs/".$plugin_filename,
- "$basedir/lib/mysql/plugin/".$plugin_filename);
- $ENV{'EXAMPLE_PLUGIN'}=
- ($lib_example_plugin ? basename($lib_example_plugin) : "");
- $ENV{'EXAMPLE_PLUGIN_OPT'}= "--plugin-dir=".
- ($lib_example_plugin ? dirname($lib_example_plugin) : "");
-
- $ENV{'HA_EXAMPLE_SO'}="'".$plugin_filename."'";
- $ENV{'EXAMPLE_PLUGIN_LOAD'}="--plugin_load=EXAMPLE=".$plugin_filename;
- }
- else
- {
- # Some ".opt" files use some of these variables, so they must be defined
- $ENV{'EXAMPLE_PLUGIN'}= "";
- $ENV{'EXAMPLE_PLUGIN_OPT'}= "";
- $ENV{'HA_EXAMPLE_SO'}= "";
- $ENV{'EXAMPLE_PLUGIN_LOAD'}= "";
}
+
# --------------------------------------------------------------------------
# Add the path where mysqld will find semisync plugins
# --------------------------------------------------------------------------
if (!$opt_embedded_server) {
- my $semisync_master_filename;
- my $semisync_slave_filename;
+ my $semisync_lib_prefix;
if (IS_WINDOWS)
{
- $semisync_master_filename = "semisync_master.dll";
- $semisync_slave_filename = "semisync_slave.dll";
+ $semisync_lib_prefix = "";
}
else
{
- $semisync_master_filename = "libsemisync_master.so";
- $semisync_slave_filename = "libsemisync_slave.so";
+ $semisync_lib_prefix= "lib";
}
- my $lib_semisync_master_plugin=
- mtr_file_exists(vs_config_dirs('plugin/semisync',$semisync_master_filename),
- "$basedir/plugin/semisync/.libs/" . $semisync_master_filename,
- "$basedir/lib/mysql/plugin/" . $semisync_master_filename);
- my $lib_semisync_slave_plugin=
- mtr_file_exists(vs_config_dirs('plugin/semisync',$semisync_slave_filename),
- "$basedir/plugin/semisync/.libs/" . $semisync_slave_filename,
- "$basedir/lib/mysql/plugin/" . $semisync_slave_filename);
+
+ my ($lib_semisync_master_plugin) = find_plugin($semisync_lib_prefix."semisync_master", "plugin/semisync");
+ my ($lib_semisync_slave_plugin) = find_plugin($semisync_lib_prefix."semisync_slave", "plugin/semisync");
+
if ($lib_semisync_master_plugin && $lib_semisync_slave_plugin)
{
$ENV{'SEMISYNC_MASTER_PLUGIN'}= basename($lib_semisync_master_plugin);
@@ -1871,10 +1903,10 @@ sub environment_setup {
# ----------------------------------------------------
# Add the path where mysqld will find mypluglib.so
# ----------------------------------------------------
- my $lib_simple_parser=
- mtr_file_exists(vs_config_dirs('plugin/fulltext', 'mypluglib.dll'),
- "$basedir/plugin/fulltext/.libs/mypluglib.so",);
+ my ($lib_simple_parser) = find_plugin("mypluglib", "plugin/fulltext");
+
+ $ENV{'MYPLUGLIB_SO'}="'".basename($lib_simple_parser)."'";
$ENV{'SIMPLE_PARSER'}=
($lib_simple_parser ? basename($lib_simple_parser) : "");
$ENV{'SIMPLE_PARSER_OPT'}= "--plugin-dir=".
@@ -2303,18 +2335,15 @@ sub vs_config_dirs ($$) {
my ($path_part, $exe) = @_;
$exe = "" if not defined $exe;
-
- # Don't look in these dirs when not on windows
- return () unless IS_WINDOWS;
-
if ($opt_vs_config)
{
- return ("$basedir/$path_part/$opt_vs_config/$exe");
+ return ("$bindir/$path_part/$opt_vs_config/$exe");
}
- return ("$basedir/$path_part/release/$exe",
- "$basedir/$path_part/relwithdebinfo/$exe",
- "$basedir/$path_part/debug/$exe");
+ return ("$bindir/$path_part/Release/$exe",
+ "$bindir/$path_part/RelWithDebinfo/$exe",
+ "$bindir/$path_part/Debug/$exe",
+ "$bindir/$path_part/$exe");
}
diff --git a/mysql-test/t/fulltext_plugin.test b/mysql-test/t/fulltext_plugin.test
index 31978dadc51..25e4302ef0d 100644
--- a/mysql-test/t/fulltext_plugin.test
+++ b/mysql-test/t/fulltext_plugin.test
@@ -3,7 +3,8 @@
#
# BUG#39746 - Debug flag breaks struct definition (server crash)
#
-INSTALL PLUGIN simple_parser SONAME 'mypluglib.so';
+--replace_regex /\.dll/.so/
+eval INSTALL PLUGIN simple_parser SONAME $MYPLUGLIB_SO;
CREATE TABLE t1(a TEXT, b TEXT, FULLTEXT(a) WITH PARSER simple_parser);
ALTER TABLE t1 ADD FULLTEXT(b) WITH PARSER simple_parser;
DROP TABLE t1;