Author: hyperion Date: Wed Oct 15 08:46:23 2008 New Revision: 36760
URL: http://svn.reactos.org/svn/reactos?rev=36760&view=rev Log: Give .gch files an unique path based on module name: allows multiple modules to (safely!) share a single precompiled header. Enjoy rebuilding the whole tree <3
This commit dedicated to hpoussin See issue #3263 for more details.
Modified: trunk/reactos/tools/rbuild/backend/mingw/modulehandler.cpp
Modified: trunk/reactos/tools/rbuild/backend/mingw/modulehandler.cpp URL: http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw/... ============================================================================== --- trunk/reactos/tools/rbuild/backend/mingw/modulehandler.cpp [iso-8859-1] (original) +++ trunk/reactos/tools/rbuild/backend/mingw/modulehandler.cpp [iso-8859-1] Wed Oct 15 08:46:23 2008 @@ -1018,7 +1018,7 @@ if ( !module.pch || !use_pch ) return NULL; return new FileLocation ( IntermediateDirectory, - module.pch->file->relative_path, + module.pch->file->relative_path + "/.gch_" + module.name, module.pch->file->name + ".gch" ); }
@@ -2081,14 +2081,14 @@ if ( ModuleHandlerInformations[module.type].DefaultHost == HostTrue ) return;
- if (module.name != "psdk" && + if (module.name != "psdk" && module.name != "dxsdk") { dependencies.push_back ( "$(PSDK_TARGET) $(psdk_HEADERS)" ); dependencies.push_back ( "$(DXSDK_TARGET) $(dxsdk_HEADERS)" ); }
- if (module.name != "errcodes" && + if (module.name != "errcodes" && module.name != "bugcodes" && module.name != "ntstatus") { @@ -3139,9 +3139,9 @@
vSourceFiles.push_back ( reactosDff );
- /* + /* We use only the name and not full FileLocation(ouput) because Iso/LiveIso are an exception to the general rule. - Iso/LiveIso outputs are generated in code base root + Iso/LiveIso outputs are generated in code base root */ string IsoName = module.output->name;
@@ -3320,9 +3320,9 @@
const FileLocation *isoboot = bootModule->output;
- /* + /* We use only the name and not full FileLocation(ouput) because Iso/LiveIso are an exception to the general rule. - Iso/LiveIso outputs are generated in code base root + Iso/LiveIso outputs are generated in code base root */ IsoName = module.output->name;
@@ -3435,7 +3435,7 @@ string targetMacro ( GetTargetMacro (module) );
GenerateRules (); - + const FileLocation *target_file = GetTargetFilename ( module, NULL ); fprintf ( fMakefile, "%s: $(CABMAN_TARGET) | %s\n", targetMacro.c_str (),