I have committed a prototype of the first part of the changes proposed for the build system to the build system branch. Since the manual on the branch still describes the full functionality we have been talking about, here is a short summary of what this commit can do. It could stand alone as a minimal set of changes if further functionality proves too difficult or controversial.
If no project is open everything should look, feel and operate as normal except the "Set Arguments and Includes" item in the build menu is now called "Set Build Menu Commands". The dialog is still the same if no project is open.
If a project is open the dialog will have extra fields to provide labels and commands to replace the "Make" series of menu items on the build menu. On the menu any label or command which is not set will revert to the default (the same as without any project). By default no labels or commands are set in the project file, so unless the user does something (sets them) there will be no change. These labels and commands are saved and restored with the project file.
Note when using commands set in the project file, the "make" command path in tools preferences is not used so that each command can have a different path. Therefore the command entered in the "Set Build Menu Commands" dialog must include any path it requires. Any command that reverts to default will still use the "make" command path so that it operates as usual.
At the moment there is no way to reset project commands to default without hand editing the project file.Setting them to blank does just that, it doesn't reset to default. A "reset to default" button will be added.
Having gotten some more experience I am in the process of updating the manual describing the full functionality some more to better describe how it should operate.
Best Regards Lex