If your current directory path contains a space then Automake creates an invalid site.exp file. The problem is in the following code placed into Makefile.in:
@echo 'set srcdir "$(srcdir)"' >>site.tmp @echo "set objdir `pwd`" >>site.tmp Note you do quote the source directory. If you were to quote the result of the pwd it would create a valid site.exp file: @echo "set objdir \"`pwd`\"" >>site.tmp > Begin forwarded message: > > From: Jacob Bachmeyer <jcb62...@gmail.com> > Subject: Re: bug#44580: DejaGnu runtest not found of site.exp exists > Date: November 11, 2020 at 9:56:09 PM EST > To: Robert Menteer <reet...@mac.com>, Robert Menteer via Bug-dejagnu > <bug-deja...@gnu.org> > Cc: 44580-d...@debbugs.gnu.org > Reply-To: jcb62...@gmail.com > > Robert Menteer via Bug-dejagnu via wrote: >> What I found by running runtest by hand is it fails if the file site.ext >> exists. > > Your site.exp file is invalid; this is a bug in Automake rather than a bug in > DejaGnu. The version of Automake that produced the Makefile.in that you are > using mishandles filenames containing spaces. Tcl requires a value > containing spaces to be properly quoted in a "set" command, and Automake is > producing a site.exp that does not contain those quotes for the objdir > variable. > > An immediate workaround is to run `sed -e '/^set [^ ]*dir [^"]/{s/dir > /&"/;s/$/"/}' -i site.exp` (tested with GNU sed) to fix your site.exp file, > or to avoid building in a directory where the absolute filename contains > spaces. > > Additionally, as of commit b53b22c29880f785ae5e9e1c72925d2583a4c76d (after > 1.6.2 was released) DejaGnu no longer loads site.exp when invoked with the > --version option. > > Please try regenerating your Makefile.in with a newer Automake or report this > as a bug in Automake if you are already using the latest version. > > I am closing this report as NOTOURBUG. > > > -- Jacob Original bug report to DejaGnu follows: I have a Makefile created using the auto tools and it has a problem when making the ‘check’ target. The problem is the make file fails to verify the existence of runtest. The command used to test for the existence of runtest is: if /bin/bash -c "runtest --version" > /dev/null 2>&1; then What I found by running runtest by hand is it fails if the file site.ext exists. parallels@parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ runtest --version ERROR: tcl error sourcing /media/psf/FlDist/trunk/testsuite/site.exp. wrong # args: should be "set varName ?newValue?" while executing "set objdir /home/parallels/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite" (file "/media/psf/FlDist/trunk/testsuite/site.exp" line 5) invoked from within "source /media/psf/FlDist/trunk/testsuite/site.exp" ("uplevel" body line 1) invoked from within "uplevel #0 source /media/psf/FlDist/trunk/testsuite/site.exp" invoked from within "catch "uplevel #0 source $file"" parallels@parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ rm site.exp parallels@parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ runtest --version DejaGnu version 1.6.2 Expect version 5.45.4 Tcl version 8.6 parallels@parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ uname -a Linux parallels-Parallels-Virtual-Platform 5.4.0-42-generic #46-Ubuntu SMP Fri Jul 10 00:24:02 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux parallels@parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$