Regular expressions can help to minimize the number of build actions.
I like using them but I also hit against the following inconvenience.
Say a solution contains two configurations: “Debug|Win32” and “Release|Win32”.
Say the regex “.*32” is used in the Configuration field, then both configurations are built. That’s fine.
Say the regex “Debug” is used in the Configuration field, then only “Debug|Win32” is built, which is still ok.
If the regex “.*64” is used however, then the action attempts to build configuration “.*64” although none of the configurations match the regular expression “.*64”.
Why’s that?
I would rather expect that devenv.com doesn’t get invoked if none of the configurations match the expression.
Is there a simple way to prevent the action from failing when the regex doesn’t match any configurations?
Because that’s what happening now. Devenv.com fails:
Running d:\Software\VS2008\Common7\IDE\devenv.com with parameters : /build “.*64” …
devenv.com returned Error code : 1
Hi Jagy,
This seems like a bug to me. I have logged it into our tracking system and will let you know when I have a solution for this.
Hi Jagy,
I have updated FinalBuilder to now fail if no configurations match instead of trying to use the regular expression directly.
http://downloads.finalbuilder.com/downloads/finalbuilder/700/FB700_2633.exe
Please let me know how this goes.
Hi Jason,
The action is still failing. The failure still causes the build to fail…
One can discuss about what would be the most reasonable outcome of the action.
It does not seem like an error to me to build nothing when nothing has to be build.
Personally, I would prefer that the action would be marked skipped (completed will also do).
There might be other points of view of course. May be a user customizable option is needed for backward compatibility.
Anyway I thank you for making the effort to address this issue.
Best Regards.