Sign in Join

Live chat for Free Pascal, Lazarus, Delphi and every Pascal programmer.

Mailing lists / lazarus / 2012-04

build modes - I have an idea

6 messages · 3 people · –

Reply by email Subscribe to this list Your subscription

Read-only archive. Use j and k to move between messages.

Bernd

How about making a little change to the project options dialog so that on *every* page there is a dropdown (or a button at the bottom button panel) to change the currently active build mode without having to switch to the build modes page every time? This would make it much easier if I have a lot of build modes and want to change one compiler setting in all of them. If I have some time next week I could try to implement it and provide a patch.

Also it would be nice if the hint in the toolbar button would display the name of the currently active build mode without needing to open the dropdown, or/and if it could be displayed in the title bar.

Bernd

Reply by email

patspiper
to Bernd
Bernd wrote 11 lines
How about making a little change to the project options dialog so that on *every* page there is a dropdown (or a button at the bottom button panel) to change the currently active build mode without having to switch to the build modes page every time? This would make it much easier if I have a lot of build modes and want to change one compiler setting in all of them. If I have some time next week I could try to implement it and provide a patch. Also it would be nice if the hint in the toolbar button would display the name of the currently active build mode without needing to open the dropdown, or/and if it could be displayed in the title bar.

What about build mode modifiers/overrides? That way you won't have to change the setting for all build modes.

Examples:

- Cross compiling: One build mode modifier each for Windows and Linux that only sets the Widgetset and TargetOS.
- Debug/Release: One build mode modifier each for Debug and Release modes that only sets the relevant settings

Stephano

Reply by email

Juha Manninen
to Bernd: How about making a little change to the project options dialog so that on *every* page…

The GUI should indeed be more intuitive.
It should indicate the build more setting is "above" all other settings, affecting them all.

Build mode modifier/override is a good idea, too, but requires (maybe difficult) code changes.
Bernd's change is mostly about GUI.

If you come up with an intuitive GUI, I am interested to could also create a GUI mock-up first.

Regards,
Juha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120430/90338695/attachment-0001.html>

Reply by email

patspiper
to Juha Manninen
Juha Manninen wrote 6 lines
The GUI should indeed be more intuitive. It should indicate the build more setting is "above" all other settings, affecting them all. Build mode modifier/override is a good idea, too, but requires (maybe difficult) code changes.

True, but they are very flexible:
- They override the setting you need, and leave the other settings as per the default build mode
- No need to change a common setting in several places (paths, target filename, checks, etc...)
- You can mix build mode overrides, eg cross compilation and debug/release

example (bmo=build mode override):
- bmoLinux: Linux OS / GTK2 widgetset
- bmoWin32: Win32 OS / Win32 widgetset
- bmoWin64: Win64 OS / Win32 widgetset
- bmoWinCE: WinCE OS / WinCE widgetset
- bmoDebug: Debug mode
- bmoRelease: release mode

then
- Build mode Linux/Debug: bmoLinux + bmoDebug
- Build mode Linux/Release: bmoLinux + bmoRelease
The IDE toolbar will have the usual build mode dropdown button

or

- Build mode Target type = (bmoLinux, bmoWin32, bmoWin64, bmoWinCE)
- Build mode Usage type = (bmoDebug, bmoRelease)

Since there are 2 build mode types defined, there will be 2 dropdown buttons in the IDE toolbar to select/combine the Target and Usage types.

I don't see this implemented any time soon, but it is something to think about.

Bernd's change is mostly about GUI.

Indeed.

Stephano

Reply by email

Juha Manninen
to patspiper
patspiper wrote 7 lines
True, but they are very flexible: - They override the setting you need, and leave the other settings as per the default build mode - No need to change a common setting in several places (paths, target filename, checks, etc...) - You can mix build mode overrides, eg cross compilation and debug/release

I understand your idea but I would like to see an intuitive GUI for it. It requires many other changes, too.

Now that Lazarus 1.0 branch has been forked, trunk is open for new experimental features. Patches are welcome.

Juha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120430/0c37488e/attachment-0001.html>

Reply by email

patspiper
to Juha Manninen
Juha Manninen wrote 13 lines
On Mon, Apr 30, 2012 at 12:13 PM, patspiper < <mailto:>> wrote: True, but they are very flexible: - They override the setting you need, and leave the other settings as per the default build mode - No need to change a common setting in several places (paths, target filename, checks, etc...) - You can mix build mode overrides, eg cross compilation and debug/release I understand your idea but I would like to see an intuitive GUI for it.

Your previous email was a reply to Bernd's, so I thought you were referring to his changes.

I have to think about the GUI, and will post some ideas for brain storming in a later email.

Stephano
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lazarus.freepascal.org/pipermail/lazarus/attachments/20120430/101be5e6/attachment.html>

Reply by email