void
MingwModuleHandler::GenerateCommands (
const CompilationUnit& compilationUnit,
+ const string& extraDependencies,
const string& cc,
const string& cppc,
const string& cflagsMacro,
if ( extension == ".c" || extension == ".C" )
{
GenerateGccCommand ( sourceFile,
- GetCompilationUnitDependencies ( compilationUnit ),
+ GetCompilationUnitDependencies ( compilationUnit ) + extraDependencies,
cc,
cflagsMacro );
return;
extension == ".cxx" || extension == ".CXX" )
{
GenerateGccCommand ( sourceFile,
- GetCompilationUnitDependencies ( compilationUnit ),
+ GetCompilationUnitDependencies ( compilationUnit ) + extraDependencies,
cppc,
cflagsMacro );
return;
{
GenerateWinebuildCommands ( sourceFile );
GenerateGccCommand ( GetActualSourceFilename ( sourceFile ),
- "",
+ extraDependencies,
cc,
cflagsMacro );
return;
const string& widlflagsMacro )
{
size_t i;
+ string moduleDependencies;
const vector<CompilationUnit*>& compilationUnits = data.compilationUnits;
+ for ( i = 0; i < compilationUnits.size (); i++ )
+ {
+ CompilationUnit& compilationUnit = *compilationUnits[i];
+ const FileLocation *objectFilename = GetObjectFilename ( compilationUnit.GetFilename (), NULL );
+ if ( GetExtension ( *objectFilename ) == ".h" )
+ {
+ moduleDependencies = ssprintf ( " $(%s_HEADERS)", module.name.c_str () );
+ break;
+ }
+ }
+
for ( i = 0; i < compilationUnits.size (); i++ )
{
GenerateCommands ( *compilationUnits[i],
+ moduleDependencies,
cc,
cppc,
cflagsMacro,
for ( i = 0; i < sourceCompilationUnits.size (); i++ )
{
GenerateCommands ( *sourceCompilationUnits[i],
+ moduleDependencies,
cc,
cppc,
cflagsMacro,
void GenerateWidlCommands ( const CompilationUnit& compilationUnit,
const std::string& widlflagsMacro );
void GenerateCommands ( const CompilationUnit& compilationUnit,
+ const std::string& extraDependencies,
const std::string& cc,
const std::string& cppc,
const std::string& cflagsMacro,