--- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp 2005-05-06 16:02:04 UTC (rev 15046)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/mingw.cpp 2005-05-06 16:05:37 UTC (rev 15047)
@@ -283,6 +283,7 @@
h.Process ();
h.GenerateInvocations ();
h.GenerateCleanTarget ();
+ h.GenerateInstallTarget ();
delete v[i];
}
--- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp 2005-05-06 16:02:04 UTC (rev 15046)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.cpp 2005-05-06 16:05:37 UTC (rev 15047)
@@ -440,6 +440,27 @@
fprintf ( fMakefile, "clean: %s_clean\n\n", module.name.c_str() );
}
+void
+MingwModuleHandler::GenerateInstallTarget () const
+{
+ if ( module.installName.length () == 0 )
+ return;
+ fprintf ( fMakefile, ".PHONY: %s_install\n", module.name.c_str() );
+ fprintf ( fMakefile, "%s_install:\n", module.name.c_str() );
+ string sourceFilename = MingwModuleHandler::PassThruCacheDirectory (
+ NormalizeFilename ( module.GetPath () ),
+ backend->outputDirectory );
+ string normalizedTargetFilename = MingwModuleHandler::PassThruCacheDirectory (
+ NormalizeFilename ( module.installBase + SSEP + module.installName ),
+ backend->installDirectory );
+ fprintf ( fMakefile,
+ "\t$(ECHO_CP)\n" );
+ fprintf ( fMakefile,
+ "\t${cp} %s %s 1>$(NUL)\n",
+ sourceFilename.c_str (),
+ normalizedTargetFilename.c_str () );
+}
+
string
MingwModuleHandler::GetObjectFilenames ()
{
--- branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.h 2005-05-06 16:02:04 UTC (rev 15046)
+++ branches/xmlbuildsystem/reactos/tools/rbuild/backend/mingw/modulehandler.h 2005-05-06 16:05:37 UTC (rev 15047)
@@ -54,6 +54,7 @@
virtual std::string TypeSpecificLinkerFlags() { return ""; }
void GenerateInvocations () const;
void GenerateCleanTarget () const;
+ void GenerateInstallTarget () const;
static bool ReferenceObjects ( const Module& module );
protected:
std::string GetWorkingDirectory () const;