emacs-bug-tracker
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#44600: closed (Automake does not make site.exp correctly when spaces


From: GNU bug Tracking System
Subject: bug#44600: closed (Automake does not make site.exp correctly when spaces in current path name.)
Date: Sat, 14 Nov 2020 22:13:02 +0000

Your message dated Sat, 14 Nov 2020 15:12:29 -0700
with message-id <202011142212.0AEMCTTl010026@freefriends.org>
and subject line Re: bug#44600: Automake does not make site.exp correctly when 
spaces in current path name.
has caused the debbugs.gnu.org bug report #44600,
regarding Automake does not make site.exp correctly when spaces in current path 
name.
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs@gnu.org.)


-- 
44600: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=44600
GNU Bug Tracking System
Contact help-debbugs@gnu.org with problems
--- Begin Message --- Subject: Automake does not make site.exp correctly when spaces in current path name. Date: Thu, 12 Nov 2020 17:23:59 -0500
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@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@mac.com>, Robert Menteer via Bug-dejagnu <bug-dejagnu@gnu.org>

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$ 


--- End Message ---
--- Begin Message --- 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.


--- End Message ---

reply via email to

[Prev in Thread] Current Thread [Next in Thread]