summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaniel Stenberg <daniel@haxx.se>2022-11-19 15:58:35 +0100
committerDaniel Stenberg <daniel@haxx.se>2022-11-25 09:33:52 +0100
commit280cbeee2789749fa9b2267ce7a07813645897de (patch)
tree765bd4c8ea20955827da2c17741a84b2728342e7
parentfcf8f68546336e066c3151c0f932b65446038dbf (diff)
downloadcurl-280cbeee2789749fa9b2267ce7a07813645897de.tar.gz
runtests: --no-debuginfod now disables DEBUGINFOD_URLS
Prior to this change, DEBUGINFOD_URLS was always disabled by runtests due to a report of it slowing down tests. However, some setups need it to fetch debug symbols, and if it is disabled on those systems then curl tests with valgrind will fail. Reported-by: Mark Gaiser Ref: #8805 Closes #9950
-rw-r--r--tests/runtests.13
-rwxr-xr-xtests/runtests.pl8
2 files changed, 10 insertions, 1 deletions
diff --git a/tests/runtests.1 b/tests/runtests.1
index d7681df47..ea9f7a7b8 100644
--- a/tests/runtests.1
+++ b/tests/runtests.1
@@ -95,6 +95,9 @@ using curl's regression test suite.
Lists all test case names.
.IP "-n"
Disable the check for and use of valgrind.
+.IP "--no-debuginfod"
+Delete the DEBUGINFOD_URLS variable if that is defined. Makes valgrind, gdb
+etc not able to use this functionality.
.IP "-o <variablename=value>"
Overwrite the specified internal \fBvariable\fP with \fBvalue\fP.
Useful to change variables that didn't get a dedicated flag to change them.
diff --git a/tests/runtests.pl b/tests/runtests.pl
index 3f6197249..ae8b25e52 100755
--- a/tests/runtests.pl
+++ b/tests/runtests.pl
@@ -347,6 +347,7 @@ my $short;
my $automakestyle;
my $verbose;
my $debugprotocol;
+my $no_debuginfod;
my $anyway;
my $gdbthis; # run test case with gdb debugger
my $gdbxwin; # use windowed gdb when using gdb
@@ -435,7 +436,6 @@ foreach $protocol (('ftp', 'http', 'ftps', 'https', 'no', 'all')) {
delete $ENV{'SSL_CERT_DIR'} if($ENV{'SSL_CERT_DIR'});
delete $ENV{'SSL_CERT_PATH'} if($ENV{'SSL_CERT_PATH'});
-delete $ENV{'DEBUGINFOD_URLS'} if($ENV{'DEBUGINFOD_URLS'});
delete $ENV{'CURL_CA_BUNDLE'} if($ENV{'CURL_CA_BUNDLE'});
#######################################################################
@@ -5661,6 +5661,10 @@ while(@ARGV) {
# no valgrind
undef $valgrind;
}
+ elsif($ARGV[0] eq "--no-debuginfod") {
+ # disable the valgrind debuginfod functionality
+ $no_debuginfod = 1;
+ }
elsif ($ARGV[0] eq "-R") {
# execute in scrambled order
$scrambleorder=1;
@@ -5841,6 +5845,8 @@ EOHELP
shift @ARGV;
}
+delete $ENV{'DEBUGINFOD_URLS'} if($ENV{'DEBUGINFOD_URLS'} && $no_debuginfod);
+
if(!$randseed) {
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
localtime(time);