From d7b829fbc78bc0e6ca73064eb4bbdfc0a4e0cfb7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Herv=C3=A9=20Poussineau?= Date: Mon, 24 Sep 2007 12:03:10 +0000 Subject: [PATCH] Depend again of autogenerated psdk headers (was broken in r29176) svn path=/trunk/; revision=29181 --- .../rbuild/backend/mingw/modulehandler.cpp | 24 ++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) diff --git a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp index 05d9c63a7b8..5e92687b179 100644 --- a/reactos/tools/rbuild/backend/mingw/modulehandler.cpp +++ b/reactos/tools/rbuild/backend/mingw/modulehandler.cpp @@ -500,7 +500,7 @@ MingwModuleHandler::GetObjectFilename ( else if ( module.type == RpcClient ) newExtension = "_c.o"; else - return NULL; + newExtension = ".h"; } else newExtension = ".o"; @@ -889,6 +889,7 @@ MingwModuleHandler::GenerateObjectMacros ( size_t i; const vector& compilationUnits = data.compilationUnits; + vector headers; if ( compilationUnits.size () > 0 ) { for ( i = 0; i < compilationUnits.size (); i++ ) @@ -914,7 +915,9 @@ MingwModuleHandler::GenerateObjectMacros ( if ( !compilationUnit.IsFirstFile () ) { const FileLocation *objectFilename = GetObjectFilename ( compilationUnit.GetFilename (), NULL ); - if ( objectFilename ) + if ( GetExtension ( *objectFilename ) == ".h" ) + headers.push_back ( objectFilename ); + else fprintf ( fMakefile, "%s%s", @@ -924,6 +927,21 @@ MingwModuleHandler::GenerateObjectMacros ( } fprintf ( fMakefile, "\n" ); } + if ( headers.size () > 0 ) + { + fprintf ( + fMakefile, + "%s_HEADERS %s", + module.name.c_str (), + assignmentOperation ); + for ( i = 0; i < headers.size (); i++ ) + fprintf ( + fMakefile, + "%s%s", + ( i%10 == 9 ? " \\\n\t" : " " ), + backend->GetFullName ( *headers[i] ).c_str () ); + fprintf ( fMakefile, "\n" ); + } const vector& ifs = data.ifs; for ( i = 0; i < ifs.size(); i++ ) @@ -2170,7 +2188,7 @@ MingwModuleHandler::GetDefaultDependencies ( if ( module.type != BuildTool && module.name != "psdk" ) - dependencies.push_back ( "$(PSDK_TARGET)" ); + dependencies.push_back ( "$(PSDK_TARGET) $(PSDK_HEADERS)" ); } void