mirror of https://github.com/python/cpython
issue 10501
make_buildinfo regression with unquoted path Make_buildinfo.exe should be called with a quoted path, and should quote the full paths to its temp files, to support spaces in filenames.
This commit is contained in:
parent
b87ef8f872
commit
60fafa276c
|
@ -52,9 +52,9 @@ int make_buildinfo2(const char *tmppath)
|
|||
if (_stat(command+1, &st) < 0)
|
||||
/* subwcrev.exe not part of the release */
|
||||
return 0;
|
||||
strcat_s(command, CMD_SIZE, "\" .. ..\\Modules\\getbuildinfo.c ");
|
||||
strcat_s(command, CMD_SIZE, tmppath);
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c");
|
||||
strcat_s(command, CMD_SIZE, "\" .. ..\\Modules\\getbuildinfo.c \"");
|
||||
strcat_s(command, CMD_SIZE, tmppath); /* quoted tmppath */
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c\"");
|
||||
puts(command); fflush(stdout);
|
||||
if (system(command) < 0)
|
||||
return 0;
|
||||
|
@ -95,19 +95,21 @@ int main(int argc, char*argv[])
|
|||
}
|
||||
|
||||
if ((do_unlink = make_buildinfo2(tmppath))) {
|
||||
strcat_s(command, CMD_SIZE, "\"");
|
||||
strcat_s(command, CMD_SIZE, tmppath);
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c -DSUBWCREV ");
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c\" -DSUBWCREV ");
|
||||
} else
|
||||
strcat_s(command, CMD_SIZE, "..\\Modules\\getbuildinfo.c");
|
||||
strcat_s(command, CMD_SIZE, " -Fo");
|
||||
strcat_s(command, CMD_SIZE, " -Fo\"");
|
||||
strcat_s(command, CMD_SIZE, tmppath);
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo.o -I..\\Include -I..\\PC");
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo.o\" -I..\\Include -I..\\PC");
|
||||
puts(command); fflush(stdout);
|
||||
result = system(command);
|
||||
if (do_unlink) {
|
||||
command[0] = '\0';
|
||||
strcat_s(command, CMD_SIZE, "\"");
|
||||
strcat_s(command, CMD_SIZE, tmppath);
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c");
|
||||
strcat_s(command, CMD_SIZE, "getbuildinfo2.c\"");
|
||||
_unlink(command);
|
||||
}
|
||||
if (result < 0)
|
||||
|
|
|
@ -59,11 +59,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
@ -134,11 +134,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
@ -212,11 +212,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Debug $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName)_d.dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName)_d.pdb"
|
||||
|
@ -290,11 +290,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Debug $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Debug "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName)_d.dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName)_d.pdb"
|
||||
|
@ -364,11 +364,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
@ -439,11 +439,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
@ -514,11 +514,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release ($IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
@ -589,11 +589,11 @@
|
|||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
Description="Generate build information..."
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release $(IntDir)"
|
||||
CommandLine=""$(SolutionDir)make_buildinfo.exe" Release "$(IntDir)\""
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
AdditionalDependencies="$(IntDir)\getbuildinfo.o"
|
||||
AdditionalDependencies=""$(IntDir)getbuildinfo.o""
|
||||
OutputFile="$(OutDir)\$(PyDllName).dll"
|
||||
IgnoreDefaultLibraryNames="libc"
|
||||
ProgramDatabaseFile="$(OutDir)$(PyDllName).pdb"
|
||||
|
|
Loading…
Reference in New Issue