To comment on the following update, log in, then open the issue:
http://www.openoffice.org/issues/show_bug.cgi?id=81252
Issue #|81252
Summary|Problem running double-quoted command with double-quot
|ed arguments
Component|tools
Version|current
Platform|PC
URL|
OS/Version|Windows XP
Status|UNCONFIRMED
Status whiteboard|
Keywords|
Resolution|
Issue type|DEFECT
Priority|P2
Subcomponent|dmake
Assigned to|vq
Reported by|shay
------- Additional comments from [EMAIL PROTECTED] Tue Sep 4 10:26:34 +0000
2007 -------
dmake (on Windows XP, at least) seems unable to run a command such as:
"command" "arg"
(including the double-quotes) which causes problems when the command to be run
contains a space in its path and requires an argument that also contains a space
(i.e. so that both *need* double-quoting).
It isn't the spaces themselves that cause the trouble. It is the use of
double-quotes the breaks it. The following simple makefile doesn't require the
commands or arguments to be double-quoted, but illustrates the problem:
HELLO1 = C:\Temp\hello.exe
HELLO2 = C:\Temp\hello.exe arg
HELLO3 = C:\Temp\hello.exe "arg"
HELLO4 = "C:\Temp\hello.exe"
HELLO5 = "C:\Temp\hello.exe" arg
HELLO6 = "C:\Temp\hello.exe" "arg"
all :
@echo $(HELLO1)
@$(HELLO1)
@echo $(HELLO2)
@$(HELLO2)
@echo $(HELLO3)
@$(HELLO3)
@echo $(HELLO4)
@$(HELLO4)
@echo $(HELLO5)
@$(HELLO5)
@echo $(HELLO6)
@$(HELLO6)
When I place that makefile in C:\Temp, together with a compiled C program called
hello.exe that simply printf()s "Hello, world.", I get the following output by
running "dmake":
C:\Temp\hello.exe
Hello, world.
C:\Temp\hello.exe arg
Hello, world.
C:\Temp\hello.exe "arg"
Hello, world.
"C:\Temp\hello.exe"
Hello, world.
"C:\Temp\hello.exe" arg
Hello, world.
"C:\Temp\hello.exe" "arg"
'C:\Temp\hello.exe" "arg' is not recognized as an internal or external command,
operable program or batch file.
dmake: Error code 129, while making 'all'
As you can see, the last command, combining the use of double-quotes on the
command as well as its argument breaks it. The previous five commands show that
this particular example can be fixed by simply not using double-quotes, but that
isn't an option if the command and the argument happen to contain spaces.
This is currently causing trouble for a user of my CPAN binary distribution of
dmake-4.8 for building perl and perl CPAN modules:
http://rt.cpan.org/Public/Bug/Display.html?id=28847
The same makefile as above runs OK (producing the expected output) using
Microsoft's nmake (VC6, VC7, VC8 or even VC9 Beta 2!), so it must be a dmake
thing, rather than something intrinsically wrong with the cmd.exe shell or
Win32's process handling generally.
PS. The web page http://tools.openoffice.org/dmake/ still refers to dmake-4.7 as
the latest version. I thought that 4.8 had been released (and, indeed, the dmake
source that I have verified the above bug in identifies itself as 4.9(-to-be, I
guess), which also suggests that 4.8 is released).
---------------------------------------------------------------------
Please do not reply to this automatically generated notification from
Issue Tracker. Please log onto the website and enter your comments.
http://qa.openoffice.org/issue_handling/project_issues.html#notification
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]