Commit 9a00f96f authored by unknown's avatar unknown

When valgrinding add /usr/lib/debug" to LD_LIBRARY_PATH if available


mysql-test/mysql-test-run.pl:
  Rewrite the setup of LD_LIBRARY_PATH and DYLD_LIBRARY_PATH to make it easier to modify
  Valgrind need to be run with debug libraries  otherwise it's almost impossible to add
  correct supressions, that means if "/usr/lib/debug" is available, it should be added to
  LD_LIBRARY_PATH
parent 792b2b6b
...@@ -1189,7 +1189,7 @@ sub executable_setup () { ...@@ -1189,7 +1189,7 @@ sub executable_setup () {
sub environment_setup () { sub environment_setup () {
my $extra_ld_library_paths; my @ld_library_paths;
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Setup LD_LIBRARY_PATH so the libraries from this distro/clone # Setup LD_LIBRARY_PATH so the libraries from this distro/clone
...@@ -1197,25 +1197,40 @@ sub environment_setup () { ...@@ -1197,25 +1197,40 @@ sub environment_setup () {
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
if ( $opt_source_dist ) if ( $opt_source_dist )
{ {
$extra_ld_library_paths= "$glob_basedir/libmysql/.libs/"; push(@ld_library_paths, "$glob_basedir/libmysql/.libs/")
} }
else else
{ {
$extra_ld_library_paths= "$glob_basedir/lib"; push(@ld_library_paths, "$glob_basedir/lib")
} }
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Add the path where mysqld will find udf_example.so # Add the path where mysqld will find udf_example.so
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
$extra_ld_library_paths .= ":" . if ( $lib_udf_example )
($lib_udf_example ? dirname($lib_udf_example) : ""); {
push(@ld_library_paths, dirname($lib_udf_example));
$ENV{'LD_LIBRARY_PATH'}= }
"$extra_ld_library_paths" .
($ENV{'LD_LIBRARY_PATH'} ? ":$ENV{'LD_LIBRARY_PATH'}" : ""); # --------------------------------------------------------------------------
$ENV{'DYLD_LIBRARY_PATH'}= #Valgrind need to be run with debug libraries otherwise it's almost
"$extra_ld_library_paths" . # impossible to add correct supressions, that means if "/usr/lib/debug"
($ENV{'DYLD_LIBRARY_PATH'} ? ":$ENV{'DYLD_LIBRARY_PATH'}" : ""); # is available, it should be added to
# LD_LIBRARY_PATH
# --------------------------------------------------------------------------
my $debug_libraries_path= "/usr/lib/debug";
if ( $opt_valgrind and -d $debug_libraries_path )
{
push(@ld_library_paths, $debug_libraries_path);
}
$ENV{'LD_LIBRARY_PATH'}= join(":", @ld_library_paths,
split(':', $ENV{'LD_LIBRARY_PATH'}));
mtr_debug("LD_LIBRARY_PATH: $ENV{'LD_LIBRARY_PATH'}");
$ENV{'DYLD_LIBRARY_PATH'}= join(":", @ld_library_paths,
split(':', $ENV{'DYLD_LIBRARY_PATH'}));
mtr_debug("DYLD_LIBRARY_PATH: $ENV{'DYLD_LIBRARY_PATH'}");
# -------------------------------------------------------------------------- # --------------------------------------------------------------------------
# Also command lines in .opt files may contain env vars # Also command lines in .opt files may contain env vars
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment