Assuming I understand the idea being discussed, the following would be the core of the necessary changes (I think):
Index: src/plugins/compilergcc/compilergcc.cpp
===================================================================
--- src/plugins/compilergcc/compilergcc.cpp (revision 8684)
+++ src/plugins/compilergcc/compilergcc.cpp (working copy)
@@ -1880,9 +1880,15 @@
else
{
// commands-only target?
- cbMessageBox(_("You can't \"run\" a commands-only target..."));
- m_pProject->SetCurrentlyCompilingTarget(0);
- return -1;
+ if (target->GetHostApplication().IsEmpty())
+ {
+ cbMessageBox(_("You must select a host application to \"run\" a commands-only target..."));
+ m_pProject->SetCurrentlyCompilingTarget(0);
+ return -1;
+ }
+ Manager::Get()->GetMacrosManager()->ReplaceEnvVars(hostapStr);
+ command << hostapStr << strSPACE;
+ command << target->GetExecutionParameters();
}
wxString script = command;
@@ -1903,7 +1909,7 @@
cmd << command;
Manager::Get()->GetLogManager()->Log(_("Checking for existence: ") + f.GetFullPath(), m_PageIndex);
- if (!wxFileExists(f.GetFullPath()))
+ if ( (target->GetTargetType() != ttCommandsOnly) && !wxFileExists(f.GetFullPath()) )
{
int ret = cbMessageBox(_("It seems that this project has not been built yet.\n"
"Do you want to build it now?"),
(Note: this code was very quickly stuck together; do
not commit without changing/fixing/polishing.)