Support to build more than one object file with one source file

svn path=/trunk/; revision=30183
This commit is contained in:
Hervé Poussineau 2007-11-05 16:19:10 +00:00
parent e10c1b69e6
commit f93fa0baf7

View file

@ -507,7 +507,7 @@ MingwModuleHandler::GetObjectFilename (
string newExtension; string newExtension;
string extension = GetExtension ( *sourceFile ); string extension = GetExtension ( *sourceFile );
if ( extension == ".rc" || extension == ".RC" ) if ( extension == ".rc" || extension == ".RC" )
newExtension = ".coff"; newExtension = "_" + module.name + ".coff";
else if ( extension == ".spec" || extension == ".SPEC" ) else if ( extension == ".spec" || extension == ".SPEC" )
newExtension = ".stubs.o"; newExtension = ".stubs.o";
else if ( extension == ".idl" || extension == ".IDL" ) else if ( extension == ".idl" || extension == ".IDL" )
@ -520,7 +520,7 @@ MingwModuleHandler::GetObjectFilename (
newExtension = ".h"; newExtension = ".h";
} }
else else
newExtension = ".o"; newExtension = "_" + module.name + ".o";
if ( module.type == BootSector ) if ( module.type == BootSector )
destination_directory = OutputDirectory; destination_directory = OutputDirectory;
@ -1119,7 +1119,7 @@ MingwModuleHandler::GenerateObjectMacros (
const FileLocation* const FileLocation*
MingwModuleHandler::GetPrecompiledHeaderFilename () const MingwModuleHandler::GetPrecompiledHeaderFilename () const
{ {
const string& basePchFilename = module.pch->file.name + ".gch"; const string& basePchFilename = module.pch->file.name + "_" + module.name + ".gch";
return new FileLocation ( IntermediateDirectory, return new FileLocation ( IntermediateDirectory,
module.pch->file.relative_path, module.pch->file.relative_path,
basePchFilename ); basePchFilename );