Re: [fpc-pascal] FP IDE sources
On Thu, 14 Mar 2024, Florian Klämpfl via fpc-pascal wrote: Still, it is more logical to place it under utils, with the rest of the programs. The argument about the time to compile seems simply false to me: If you consider the FPC toplevel 'make all' as the only command to issue, then you may win some time, although I doubt it will be that much. But 99% of the time, you don't need to recompile the utilities. I do always a make all as it takes only a few more seconds than a make cycle and then I am sure everything builds. You must have a very fast PC, here the difference is very measurable. 1:06 for a 'make cycle' 2:05 for a toplevel 'make all'. So almost a minute difference. This is with -j 4 and the according fpmakeopt. I certainly do not: I usually do a make cycle followed by a compilation of the rtl/packages with debug info. So if we moved the IDE to utils where it logically belongs, I would actually be winning time, contrary to the argument for having it in packages. As I moved it, my thinking was that it is not really a utility but a package (in particular in the sense of the installer). And having executables is also the case for other packages. Here I differ in opinion: Normally packages do not constitute a program. If that was the criterium, all utils could be put in the packages directory. It may be that some packages have a demo program, but the package itself is normally just a set of units. I know of no package other that is a program. chm has some tools but IMO they are also misplaced and should be in utils. So the IDE - for me - is definitely a utility. Given the times indicated above, it would make a considerable difference to move it. Michael.___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Am 14.03.2024 um 11:04 schrieb Michael Van Canneyt via fpc-pascal: On Thu, 14 Mar 2024, Karoly Balogh via fpc-pascal wrote: Hi, On Thu, 14 Mar 2024, Guillermo Martínez Jiménez via fpc-pascal wrote: I thought "packages" were libraries not applications, as there is an "utils" directory with programs. I agree, I'm also not very fond of the IDE being in packages, but most of the team considers it a legacy piece of code (which it is, no argument there), and at least this way it doesn't need constant special treatment, unlike when it was in the root folder of the repo under "ide". It's less "in the way". Still, it is more logical to place it under utils, with the rest of the programs. The argument about the time to compile seems simply false to me: If you consider the FPC toplevel 'make all' as the only command to issue, then you may win some time, although I doubt it will be that much. But 99% of the time, you don't need to recompile the utilities. I do always a make all as it takes only a few more seconds than a make cycle and then I am sure everything builds. I certainly do not: I usually do a make cycle followed by a compilation of the rtl/packages with debug info. So if we moved the IDE to utils where it logically belongs, I would actually be winning time, contrary to the argument for having it in packages. As I moved it, my thinking was that it is not really a utility but a package (in particular in the sense of the installer). And having executables is also the case for other packages. To me it therefore seems a better idea to move the IDE to utils, and to have a toplevel make command that does the same as 'make all' simply without the utilities. Or have a 'NOUTILS=1' define. It increases build time if one want to test that everything builds with no real gain and being not a utility? ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
On Thu, 14 Mar 2024, Tomas Hajny via fpc-pascal wrote: On 2024-03-14 11:06, Marco van de Voort via fpc-pascal wrote: Op 14-3-2024 om 11:04 schreef Michael Van Canneyt via fpc-pascal: To me it therefore seems a better idea to move the IDE to utils, and to have a toplevel make command that does the same as 'make all' simply without the utilities. Or have a 'NOUTILS=1' define. Or let fpmake simply build the union of packages and utils in parallel. So separate directories, but one build stage Well, whatever. I remember having raised the same question in the past (indeed - on the 5th of February 2020 at 1:30am ;-) on the core list) and this is what I got... I even explicity raised the point also mentioned by Michael now (quoting my follow-up mail on the same day): "OK, that would be addressed in case of inclusion under utils as well. Even more so, actually - users who want to recompile packages for whatever reason (e.g. to have debug information included as discussed here recently ;-) ) aren't probably interested in waiting for rebuilding of the IDE at all." However, Michael refused to move it to utils at that point in time in order not to delay the release. ;-) Given the delay we're experiencing on 3.2.4, my refusal was not without reason :-) However, if there is agreement to do so, maybe we can move it in trunk. Michael. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Op 14-3-2024 om 11:52 schreef Tomas Hajny via fpc-pascal: "OK, that would be addressed in case of inclusion under utils as well. Even more so, actually - users who want to recompile packages for whatever reason (e.g. to have debug information included as discussed here recently ;-) ) aren't probably interested in waiting for rebuilding of the IDE at all." However, Michael refused to move it to utils at that point in time in order not to delay the release. ;-) Note that I don't feel very strong about moving it to utils, frankly I don't care. There is also the matter than the IDE is not the only one generating installed programs, some other packages (like package CHM) that also generate binaries, would have to be split then (!?!?) My point was more that _if_ it is to be moved, parallel compilation should be retained, and I gave a possible direction Major buildsystem work is preferably done just before a new major release branch is split off trunk, but by then 3.2.0 was probably already branched off. Rearrangements during a release cycle makes merging back to fixes hard for a long period. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
On 2024-03-14 11:06, Marco van de Voort via fpc-pascal wrote: Op 14-3-2024 om 11:04 schreef Michael Van Canneyt via fpc-pascal: To me it therefore seems a better idea to move the IDE to utils, and to have a toplevel make command that does the same as 'make all' simply without the utilities. Or have a 'NOUTILS=1' define. Or let fpmake simply build the union of packages and utils in parallel. So separate directories, but one build stage Well, whatever. I remember having raised the same question in the past (indeed - on the 5th of February 2020 at 1:30am ;-) on the core list) and this is what I got... I even explicity raised the point also mentioned by Michael now (quoting my follow-up mail on the same day): "OK, that would be addressed in case of inclusion under utils as well. Even more so, actually - users who want to recompile packages for whatever reason (e.g. to have debug information included as discussed here recently ;-) ) aren't probably interested in waiting for rebuilding of the IDE at all." However, Michael refused to move it to utils at that point in time in order not to delay the release. ;-) Tomas ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Op 14-3-2024 om 11:04 schreef Michael Van Canneyt via fpc-pascal: To me it therefore seems a better idea to move the IDE to utils, and to have a toplevel make command that does the same as 'make all' simply without the utilities. Or have a 'NOUTILS=1' define. Or let fpmake simply build the union of packages and utils in parallel. So separate directories, but one build stage ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
On Thu, 14 Mar 2024, Karoly Balogh via fpc-pascal wrote: Hi, On Thu, 14 Mar 2024, Guillermo Martínez Jiménez via fpc-pascal wrote: I thought "packages" were libraries not applications, as there is an "utils" directory with programs. I agree, I'm also not very fond of the IDE being in packages, but most of the team considers it a legacy piece of code (which it is, no argument there), and at least this way it doesn't need constant special treatment, unlike when it was in the root folder of the repo under "ide". It's less "in the way". Still, it is more logical to place it under utils, with the rest of the programs. The argument about the time to compile seems simply false to me: If you consider the FPC toplevel 'make all' as the only command to issue, then you may win some time, although I doubt it will be that much. But 99% of the time, you don't need to recompile the utilities. I certainly do not: I usually do a make cycle followed by a compilation of the rtl/packages with debug info. So if we moved the IDE to utils where it logically belongs, I would actually be winning time, contrary to the argument for having it in packages. To me it therefore seems a better idea to move the IDE to utils, and to have a toplevel make command that does the same as 'make all' simply without the utilities. Or have a 'NOUTILS=1' define. Michael.___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Hi, On Thu, 14 Mar 2024, Guillermo Martínez Jiménez via fpc-pascal wrote: > I thought "packages" were libraries not applications, as there is an > "utils" directory with programs. I agree, I'm also not very fond of the IDE being in packages, but most of the team considers it a legacy piece of code (which it is, no argument there), and at least this way it doesn't need constant special treatment, unlike when it was in the root folder of the repo under "ide". It's less "in the way". However, Free Vision, and with that the ASCII table and mouse handling was always (or for a very long time) in packages. :) Charlie___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
On 2024-03-14 09:34, Guillermo Martínez Jiménez via fpc-pascal wrote: Thanks, Karoly and Marco. I thought "packages" were libraries not applications, as there is an "utils" directory with programs. Well, yes, it's somewhat confusing admittedly. The IDE sources used to be located at the higher level (i.e. next to the packages, rtl, etc.) in the past. They were moved to packages as part of the transition to using fpmake for compilation of most of FPC sources in order to allow having it compiled in parallel to other big packages (since IDE is probably the biggest one taking the longest time to compile). Having it in packages allows compiling it in parallel to other packages; since utils are compiled independently (and much quicker), moving IDE in utils would result in longer compilation time overall (if parallel compilation is allowed). Tomas El Wed, 13 Mar 2024 22:45:19 +0100 Marco van de Voort via fpc-pascal escribió: Op 13-3-2024 om 21:34 schreef Karoly Balogh via fpc-pascal: > H > > Where are they? Why aren't with the official source packages? > But they are. The IDE code is here: > https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/ide > > It also depends on Free Vision, which is here: > https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/fv > > The ASCII table code is part of Free Vision, and it's here: > https://gitlab.com/freepascal.org/fpc/source/-/blob/main/packages/fv/src/asciitab.pas > And the mouse-keyboard-video drivers are in package rtl-console, e.g. for windows https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/rtl-console/src/win ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Op 14-3-2024 om 09:34 schreef Guillermo Martínez Jiménez via fpc-pascal: Thanks, Karoly and Marco. I thought "packages" were libraries not applications, as there is an "utils" directory with programs. Roughly the RTL is a base set of units needed for the compiler itself. When the compiler bootstraps it is compiled several times. Most units not needed for the compiler have thus moved out into packages that is not compiled multiple time, and directories in packages/ can be compiled in parallel to some degree. ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal
Re: [fpc-pascal] FP IDE sources
Thanks, Karoly and Marco. I thought "packages" were libraries not applications, as there is an "utils" directory with programs. Thankyou again, Guillermo Martínez. El Wed, 13 Mar 2024 22:45:19 +0100 Marco van de Voort via fpc-pascal escribió: > Op 13-3-2024 om 21:34 schreef Karoly Balogh via fpc-pascal: > > H > > > > Where are they? Why aren't with the official source packages? > > But they are. The IDE code is here: > > https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/ide > > > > It also depends on Free Vision, which is here: > > https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/fv > > > > The ASCII table code is part of Free Vision, and it's here: > > https://gitlab.com/freepascal.org/fpc/source/-/blob/main/packages/fv/src/asciitab.pas > > > And the mouse-keyboard-video drivers are in package rtl-console, e.g. > for windows > > > https://gitlab.com/freepascal.org/fpc/source/-/tree/main/packages/rtl-console/src/win > > ___ > fpc-pascal maillist - fpc-pascal@lists.freepascal.org > https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal ___ fpc-pascal maillist - fpc-pascal@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal