GNU bug report logs - #44600
Automake does not make site.exp correctly when spaces in current path name.

Previous Next

Package: automake;

Reported by: Robert Menteer <reetnem <at> mac.com>

Date: Thu, 12 Nov 2020 22:25:02 UTC

Severity: normal

Done: Karl Berry <karl <at> freefriends.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Robert Menteer <reetnem <at> mac.com>
Subject: bug#44600: closed (Re: bug#44600: Automake does not make site.exp
 correctly when spaces in current path name.)
Date: Sat, 14 Nov 2020 22:13:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#44600: Automake does not make site.exp correctly when spaces in current path name.

which was filed against the automake package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 44600 <at> debbugs.gnu.org.

-- 
44600: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44600
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Karl Berry <karl <at> freefriends.org>
To: reetnem <at> mac.com
Cc: 44600 <at> debbugs.gnu.org
Subject: Re: bug#44600: Automake does not make site.exp correctly when spaces
 in current path name.
Date: Sat, 14 Nov 2020 15:12:29 -0700
            @echo "set objdir \"`pwd`\"" >>site.tmp

Thanks much. I installed the change. --best, karl.

[Message part 3 (message/rfc822, inline)]
From: Robert Menteer <reetnem <at> mac.com>
To: bug-automake <at> gnu.org
Subject: Automake does not make site.exp correctly when spaces in current path
 name.
Date: Thu, 12 Nov 2020 17:23:59 -0500
[Message part 4 (text/plain, inline)]
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 <jcb62281 <at> 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 <reetnem <at> mac.com>, Robert Menteer via Bug-dejagnu <bug-dejagnu <at> gnu.org>
> Cc: 44580-done <at> debbugs.gnu.org
> Reply-To: jcb62281 <at> 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 <at> 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 <at> parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ rm site.exp
parallels <at> 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 <at> 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 <at> parallels-Parallels-Virtual-Platform:~/Desktop/Parallels Shared Folders/FlDist/trunk/testsuite$ 

[Message part 5 (text/html, inline)]

This bug report was last modified 4 years and 241 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.