Re: [Lazarus] about infobuild form development
21-06-2014 02:43 tarihinde, Mattias Gaertner yazdı: Other people have already written similar tools. With selections for FPC version, CPU, OS, processor, LCL widgetset, defines, environment variables, etc. I Couldn't find, if have a link I be glad, I don't wanna discover america one more :) -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
Please remove the commented code. Thats okey, ' cos //{$IFNDEF EnableOldExtTools}{$ERROR Obsolete}{$ENDIF} this line is work in InfoBuild.pp this mean this unit was included, and I check one more time without -dEnableCompInfoWnd param. here is okey, next puzzle item; You have to port all code depending on the infobuild unit. For example the CompileProgress. where is infobuild form show and / or other code? not enough add infobuild in project isn't it? IDE not showing this form still. I moved those lists to codetools. Thank you. I'm still try infoBuild Show form. The infobuild window was only shown when compiling, was only showing information and was for the .. nostalgia. You want a selector for your favorite settings (target OS and CPU). That's a different thing. Personal things should go into a separate package. If I'm not wrong, this is not antique hellenic city name,, this is lazarus project, they can be use that, this them problem. I wanna make useful tool. I get one more idea too while writeing this message :) I get one project, it will work on linux, w32, w64, osx (will future) and my IDE in linux. Project options set default cpu and os. First click build for linux. ok. for w32, open Project option, find config target change cpu os then click ok then compile third one bla bla same thing. If I can do my tool, all off them be in one form, just select cpu os etc. Last idea, (before end idea :) ) I'm using auto. inc. build number. I have to disable and re enable every time 'cos same project 4 diffrent version can see. this checkbox and/or can edded on infoBuild form too If you fear those automatism, then you are doing something wrong. yes, I'm fear, if I don't know how its work that automatism. and next idea, It can be future of future design. if remember my screenshot, get imagination Stringlist on ınfoBuid form, I'll select cpu and os then click add button, and create a list, then click build AUTOMATIC all defined configuretion. yes, separate package is good idea, I was started two comboxbox :) I'm still not show form, and I'm still riddle. Thank you -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
FreeMan, you have misunderstood the purpose of infoBuild dialog. It only shows information _during_ compilation, it is not meant for selecting what will be compiled next. Build modes solve your problems. In future it will be possible to select many modes and compile all of them. It is not implemented yet, you could create a GUI and implement it. Juha -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
Juha, you misunderstood me, is there anybody NOT know this what about this form? my opinion is what will be compile next ADD on this form This is NOT for problem, just make practice use. 20-06-2014 20:11 tarihinde, Juha Manninen yazdı: FreeMan, you have misunderstood the purpose of infoBuild dialog. It only shows information _during_ compilation, it is not meant for selecting what will be compiled next. Build modes solve your problems. In future it will be possible to select many modes and compile all of them. It is not implemented yet, you could create a GUI and implement it. Juha -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Fri, 20 Jun 2014 17:43:07 +0300 FreeMan freema...@delphiturkiye.com wrote: [...] You have to port all code depending on the infobuild unit. For example the CompileProgress. where is infobuild form show and / or other code? not enough add infobuild in project isn't it? IDE not showing this form still. The form was formerly shown with CompileProgress.CreateDialog. I disabled all the CompileProgress code because the way how it counted hints, notes, etc no longer works. There are now counters for each tool (e.g. a call of fpc) and each view (the filtered lines of a single tool). You can sum up them if you want. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Fri, 20 Jun 2014 17:43:07 +0300 FreeMan freema...@delphiturkiye.com wrote: [...] Project options set default cpu and os. First click build for linux. ok. for w32, open Project option, find config target change cpu os then click ok then compile third one bla bla same thing. As Juha wrote: Use Build Modes for that. Build Modes can be switched with two mouse clicks. One to open the list, one to select. If I can do my tool, all off them be in one form, just select cpu os etc. Other people have already written similar tools. With selections for FPC version, CPU, OS, processor, LCL widgetset, defines, environment variables, etc. [...] If you fear those automatism, then you are doing something wrong. yes, I'm fear, if I don't know how its work that automatism. Then read the docs and/or ask. Don't stay afraid. The automatism is simple: if something has changed, invoke the compiler. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] about infobuild form development
I'll changed mail subject. 19-06-2014 02:55 tarihinde, Mattias Gaertner yazdı: What compiler directive? A compiler directive is for example {$mode objfpc}. Maybe you mean something else? I was use antique hellenic city name, so I used to much that. {$IFNDEF EnableOldExtTools}ExtTools,{$ELSE}InfoBuild,{$ENDIF} if tell condition to compiler, its mean directive, never mind, I'm still not used to lazarus Show compiler dialog check box removed from IDE options, so I need to active when IDE start compile, infobuild form have to show. I hope traslate my self :) Select a message and right click / About ... This will tell you what you compiled, how and why it was auto compiled. I don't like auto thing, its mean out of my control. and not just get info about compiled project. Project inspector always open on my desktop, just click to options from here, better then looking for menu item for me :) Please describe what the infobuild window should do in your opinion. Then we can probably give implementation hints. I think you saw my form screenshot. Before removed, and if checked in IDE options. When IDE start compile job, this form was showing and give detail,when finish compiling, write success and if not selected auto close, its wait click to close. My opinion start here, target os cpu, debug info check box are there, so I'll see while compiling, not after finish and looking for any form any menu item. If I don't wanna -T=default -P=default I'll abort compiling in this form, and change cpu or os from combobox, maybe remove or add debug info too, and click to compile or build button, all of them in same form, so I don't need looking for in menu or options, for cross compile jobs -compiler_config_target.pas has in what I need, What do you need? I can add events. What events do you need? 1-) In compiler_config_target.pas, TargetOSComboBox TargetCPUComboBox adding items, this can be in include file or public procedure, without class. For TargetCPUComboBox too. example: procedure TargetOSComboBox_Fill_Items(aItems : Tstringlist); begin aItems.Add('(' + lisDefault + ')'); aItems.Add('Darwin'); aItems.Add('FreeBSD'); 2- I need this procedures too but out TCompilerConfigTargetFrame class procedure UpdateByTargetOS(aTargetOS: string); procedure UpdateByTargetCPU(aTargetCPU: string); 3-) I need ReadSettings writeSetting from project options. Why I need, when open infobuild form, I have to set saved settings so set selected combobox items. why write, readed win32 changed to linux and click to compile, If I'm not wrong, compiler classes, read settings before start compile and build compiler parameter. so I need to writesettings. 4-) Need Main menu Items Compile Build click events, not sure but have Tactionlist I think. Will add this to build compile buttons 5-) need raise error check. infobuild how to show or create, that lines have to check, 'cos infobuild can showing still. This mean clicked compile button ln infobuild, so no need the trigger show or create infobuild form. Please don't misunderstand me, I'm not say do this, I have to do this, but all of them part of IDE, I can not change big system for my opinions, so I need yours helps. This small changing can be practice use for other users too. Thank you -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Thu, 19 Jun 2014 11:37:19 +0300 FreeMan freema...@delphiturkiye.com wrote: I'll changed mail subject. 19-06-2014 02:55 tarihinde, Mattias Gaertner yazdı: What compiler directive? A compiler directive is for example {$mode objfpc}. Maybe you mean something else? I was use antique hellenic city name, so I used to much that. {$IFNDEF EnableOldExtTools}ExtTools,{$ELSE}InfoBuild,{$ENDIF} if tell condition to compiler, its mean directive, never mind, I'm still not used to lazarus Show compiler dialog check box removed from IDE options, so I need to active when IDE start compile, infobuild form have to show. I hope traslate my self :) You can do the following: Add a flag to configure build lazarus dialog. For example -dEnableCompInfoWnd Then replace each {$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF} with {$IFNDEF EnableOldExtTools}Something{$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} This way your changes activates only when the IDE is compiled with the flag. You can then send us patches even if they are not yet fully functional. When it is complete, the IFDEFs can be removed. This allows others to help with specific questions or to tell early when you are on the wrong track. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Thu, 19 Jun 2014 11:37:19 +0300 FreeMan freema...@delphiturkiye.com wrote: [...] Select a message and right click / About ... This will tell you what you compiled, how and why it was auto compiled. I don't like auto thing, its mean out of my control. You give the compiler the main source (e.g. lpr) and it compiles all outdated units. It's the same with the IDE, a project and its packages. It's in your control. If you fear those automatism, then you are doing something wrong. and not just get info about compiled project. Project inspector always open on my desktop, just click to options from here, better then looking for menu item for me :) That's good to find out what will be done. But if you forgot or if you are unsure what has been done, you have to look into the messages About item. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
19-06-2014 12:28 tarihinde, Mattias Gaertner yazdı: Then replace each {$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF} with {$IFNDEF EnableOldExtTools}Something{$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} I did: /opt/lazarus/ide/compiler.pp {$IFNDEF EnableOldExtTools} IDEExternToolIntf, {$ELSE} UTF8Process, OutputFilter, {InfoBuild,} {$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} /opt/lazarus/ide/main.pp {$IFNDEF EnableOldExtTools} ExtTools, {$ELSE} //InfoBuild, {$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} and this is my command line: make PREFIX=/opt clean all OPT=-dUSE_QT_45 -dEnableCompInfoWnd LCL_PLATFORM=qt bigide infobuild form not showing on build or compile or run command whats wrong? -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Thu, 19 Jun 2014 13:56:52 +0300 FreeMan freema...@delphiturkiye.com wrote: 19-06-2014 12:28 tarihinde, Mattias Gaertner yazdı: Then replace each {$IFNDEF EnableOldExtTools}Something{$ELSE}InfoBuild,{$ENDIF} with {$IFNDEF EnableOldExtTools}Something{$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} I did: /opt/lazarus/ide/compiler.pp {$IFNDEF EnableOldExtTools} IDEExternToolIntf, {$ELSE} UTF8Process, OutputFilter, {InfoBuild,} {$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} /opt/lazarus/ide/main.pp {$IFNDEF EnableOldExtTools} ExtTools, {$ELSE} //InfoBuild, {$ENDIF} {$IFDEF EnableCompInfoWnd}InfoBuild,{$ENDIF} Please remove the commented code. and this is my command line: make PREFIX=/opt clean all OPT=-dUSE_QT_45 -dEnableCompInfoWnd LCL_PLATFORM=qt bigide infobuild form not showing on build or compile or run command whats wrong? You have to port all code depending on the infobuild unit. For example the CompileProgress. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] about infobuild form development
On Thu, 19 Jun 2014 11:37:19 +0300 FreeMan freema...@delphiturkiye.com wrote: [...] 1-) In compiler_config_target.pas, TargetOSComboBox TargetCPUComboBox adding items, this can be in include file or public procedure, without class. For TargetCPUComboBox too. example: procedure TargetOSComboBox_Fill_Items(aItems : Tstringlist); begin aItems.Add('(' + lisDefault + ')'); aItems.Add('Darwin'); aItems.Add('FreeBSD'); 2- I need this procedures too but out TCompilerConfigTargetFrame class procedure UpdateByTargetOS(aTargetOS: string); procedure UpdateByTargetCPU(aTargetCPU: string); I moved those lists to codetools. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus