Re: [fpc-devel] Freeze of fixes for 3.2.4 by 9th June
02.06.2024 23:28, Florian Klämpfl via fpc-devel пишет: To get finally forward with the 3.2.4 release, fixes will be frozen by 9th June, so if there are some last second cherry picks needed, now it’s time to speak up :) Can fcl-fpcunit changes related to junit-compatible output be considered for merging? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests - again
19.03.2024 17:41, Mattias Gaertner via fpc-devel пишет: On 19.03.24 14:58, Maxim Ganetsky via fpc-devel wrote: [...] #7 944.7 fpmake.pp(228,5) Error: Identifier not found "T" Ah, you are using fpc 3.3.1 to compile it. Fixed. But I get strange linker errors compiling webidl2pas: (9015) Linking bin/x86_64-linux/webidl2pas /usr/bin/ld.bfd: /path/compiler/utils/pas2js/units/x86_64-linux/webidl2pas.o:(.fpc.n_links+0x50): undefined reference to `DEBUGSTART_$CUSTAPP' /usr/bin/ld.bfd: /path/compiler/utils/pas2js/units/x86_64-linux/webidl2pas.o:(.fpc.n_links+0x58): undefined reference to `DEBUGEND_$CUSTAPP' It compiles with the ppu files of fpc 3.3.1 and 3.2.2 tough, but not with the sources ... I use binary FPC installers, so don't get these errors, everything is fine in this regard. Build image is successfully updated and tests work OK now, thanks. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests - again
19.03.2024 12:56, Mattias Gaertner via fpc-devel пишет: On 18.03.24 20:29, Michael Van Canneyt via fpc-devel wrote: [...] #7 1429.0 -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/namespaced || #7 1429.0 -Fi$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/src This seems wrong to me, but Mattias will need to look at this. I changed the fpmake.pp. Please test. Pas2Js cannot be built now: #7 941.6 Cloning into 'pas2js'... | #7 944.6 /usr/lib/fpc/3.3.1/ppcx64 fpmake.pp || #7 944.6 Free Pascal Compiler version 3.3.1 [2024/03/19] for x86_64 || #7 944.6 Copyright (c) 1993-2024 by Florian Klaempfl and others || #7 944.6 Target OS: Linux for x86-64 || #7 944.6 Compiling fpmake.pp || #7 944.7 fpmake.pp(228,5) Error: Identifier not found "T" || #7 944.7 fpmake.pp(230,7) Error: Identifier not found "T" || #7 944.7 fpmake.pp(363) Fatal: There were 2 errors compiling module, stopping || #7 944.7 Fatal: Compilation aborted ||#7 944.7 make: *** [Makefile:1550: fpmake] Error 1| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests - again
18.03.2024 22:15, Mattias Gaertner via fpc-devel пишет: On 18.03.24 18:43, Maxim Ganetsky via fpc-devel wrote: [...] After recent update of FPC 3.3.1 (and Pas2JS) in Lazarus CI several Codetools tests related to Pas2JS started failing again: TTestPas2js.TestPas2js_ReadSettings: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration_AWait: pas2js system unit not found They worked fine with FPC 3.3.1 from the end of December. Contents of Pas2JS configuration files follow: [...] #7 1429.0 #else || #7 1429.0 -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/src This should be enough -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/packages/*/src [...] Can you compile a simple Helloworld? begin writeln('Hi'); end. Note that these failures are encountered in our CI system. I didn't test, but guess that compiling Helloworld will fail (because system unit cannot be found). ? If this works, you might try removing the components/codetools/tests/codetools.config, so codetools rebuild the cache. These failures happen inside CI, so there is always a clean checkout without this file. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Failing Lazarus Codetools Pas2JS-related tests - again
Hello. After recent update of FPC 3.3.1 (and Pas2JS) in Lazarus CI several Codetools tests related to Pas2JS started failing again: TTestPas2js.TestPas2js_ReadSettings: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration_AWait: pas2js system unit not found They worked fine with FPC 3.3.1 from the end of December. Contents of Pas2JS configuration files follow: #7 1429.0 Contents of /usr/local/bin/pas2js.cfg: | #7 1429.0 # || #7 1429.0 # Minimal config file for pas2js compiler || #7 1429.0 # || #7 1429.0 # -d is the same as #DEFINE || #7 1429.0 # -u is the same as #UNDEF || #7 1429.0 # || #7 1429.0 # Write always a nice logo ;) || #7 1429.0 -l || #7 1429.0 || #7 1429.0 # Display Warnings, Notes and Hints || #7 1429.0 -vwnh || #7 1429.0 # If you don't want so much verbosity use || #7 1429.0 #-vw || #7 1429.0 || #7 1429.0 # Allow C-operators || #7 1429.0 -Sc || #7 1429.0 || #7 1429.0 #IFDEF FPC_SUBTARGET_NAMESPACED || #7 1429.0 -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/namespaced || #7 1429.0 -Fi$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/src || #7 1429.0 #else || #7 1429.0 -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/*/src || #7 1429.0 #endif || #7 1429.0 || #7 1429.0 #IFDEF nodejs || #7 1429.0 -Jirtl.js || #7 1429.0 #ENDIF || #7 1429.0 || #7 1429.0 # Put all generated JavaScript into one file || #7 1429.0 -Jc || #7 1429.0 || #7 1429.0 # end. || #7 1429.0 Contents of /usr/local/bin/pas2js-namespaced.cfg: ||#7 1429.0 -dUNICODERTL| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
26.12.2023 19:40, Michael Van Canneyt via fpc-devel пишет: On Tue, 26 Dec 2023, Maxim Ganetsky via fpc-devel wrote: So `make install` does not work as expected? It does, but 'make install' only does half the job for making a release: pas2js works with sources only, which are not installed by 'make install'. They were before. I rolled back to Pas2Js commit bdf63857de5cc53bde6d72f1261ecff5d08c8d7b, and with this commit hello.pas builds successfully and I see the following files installed by `make install`: Aha, the plot thickens... OK. I see that code was added to fpmake to install the sources. I adapted and enhanced that code, now all sources are again installed. (I checked that) So I hope that now the 'hello world' will compile. Phew, now it works correctly again (both "Hello, World" and Codetools tests), thanks. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
26.12.2023 16:21, Michael Van Canneyt via fpc-devel пишет: On Tue, 26 Dec 2023, Maxim Ganetsky via fpc-devel wrote: 26.12.2023 11:49, Michael Van Canneyt via fpc-devel пишет: On Mon, 25 Dec 2023, Maxim Ganetsky wrote: Thanks. But still no luck. It seems like asterisks in config file are not expanded properly. See the output of compilation run for a trivial "Hello, World!" program: They are expanded. I've been using it for quite some time now. I don't think I've been hallucinating. See below :-) || Info: Macro defined: UNICODE || Info: Compiler exe: "/usr/local/bin/pas2js" || Info: Using working directory: "/builds/freepascal.org/lazarus-sandbox/lazarus-test-4" || Info: Using unit path: "/usr/local/lib/fpc/3.3.1/pas2js/*/src" || Note: unit path not found: "/usr/local/lib/fpc/3.3.1/pas2js/*/src" Is the path correct to begin with ? Sigh, no it is not: $ ls -l /usr/local/lib/fpc/3.3.1/pas2js | total 4 || drwxr-xr-x 2 root root 4096 Dec 25 17:37 rtl || $ ls -l /usr/local/lib/fpc/3.3.1/pas2js/rtl || total 48 ||-rw-rw-r-- 1 root root 45451 Dec 25 15:49 rtl.js| So `make install` does not work as expected? It does, but 'make install' only does half the job for making a release: pas2js works with sources only, which are not installed by 'make install'. They were before. I rolled back to Pas2Js commit bdf63857de5cc53bde6d72f1261ecff5d08c8d7b, and with this commit hello.pas builds successfully and I see the following files installed by `make install`: $ ls /usr/local/lib/fpc/$FPC_MAIN_VER/pas2js | chartjs || dataabstract || fcl-base || fcl-db || fpcunit || jspdf || nodejs || rtl || $ ls /usr/local/lib/fpc/$FPC_MAIN_VER/pas2js/rtl || Rtl.BrowserLoadHelper.pas || Rtl.HTMLActions.pas || Rtl.HTMLEventNames.pas || Rtl.HTMLTranslate.pas || Rtl.HTMLUtils.pas || Rtl.ScriptLoader.pas || Rtl.TemplateLoader.pas || Rtl.UnitLoader.pas || arrayutils.pas || browserconsole.pas || class2pas.pas || classes.pas || contnrs.pas || dateutils.pas || generics.collections.pas || generics.defaults.pas || generics.strings.pas || hotreloadclient.pas || js.pas || libjquery.pas || math.pas || node.events.pas || nodejs.pas || objpas.pas || p2jsres.pp || pas2js_rtl.lpk || pas2js_rtl.pas || rstranslate.pp || rtl.js || rtl.webthreads.pas || rtlconsts.pas || rtti.pas || simplelinkedlist.pas || strutils.pas || system.pas || sysutils.pas || timer.pas || types.pas || typinfo.pas || web.pas || webassembly.pas || webaudio.pas || webbluetooth.pas || webgl.pas || weborworker.pas || webrouter.pp || webrtc.pas || websvg.pas || webutils.pas ||webworker.pas| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
26.12.2023 11:49, Michael Van Canneyt via fpc-devel пишет: On Mon, 25 Dec 2023, Maxim Ganetsky wrote: Thanks. But still no luck. It seems like asterisks in config file are not expanded properly. See the output of compilation run for a trivial "Hello, World!" program: They are expanded. I've been using it for quite some time now. I don't think I've been hallucinating. See below :-) || Info: Macro defined: UNICODE || Info: Compiler exe: "/usr/local/bin/pas2js" || Info: Using working directory: "/builds/freepascal.org/lazarus-sandbox/lazarus-test-4" || Info: Using unit path: "/usr/local/lib/fpc/3.3.1/pas2js/*/src" || Note: unit path not found: "/usr/local/lib/fpc/3.3.1/pas2js/*/src" Is the path correct to begin with ? Sigh, no it is not: $ ls -l /usr/local/lib/fpc/3.3.1/pas2js | total 4 || drwxr-xr-x 2 root root 4096 Dec 25 17:37 rtl || $ ls -l /usr/local/lib/fpc/3.3.1/pas2js/rtl || total 48 ||-rw-rw-r-- 1 root root 45451 Dec 25 15:49 rtl.js| So `make install` does not work as expected? i.e. do the directories /usr/local/lib/fpc/3.3.1/pas2js/*/src actually exist ? -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
25.12.2023 18:35, Michael Van Canneyt via fpc-devel пишет: On Mon, 25 Dec 2023, Maxim Ganetsky via fpc-devel wrote: || -Fu$CfgDir../lib/fpc/3.3.1/pas2js/rtl/src | I see that there are missing directory separators after $CfgDir, maybe this is the reason? I added it. Thanks. But still no luck. It seems like asterisks in config file are not expanded properly. See the output of compilation run for a trivial "Hello, World!" program: $ cat hello.pas | program hello; || begin || writeln('Hello, World!'); end. || $ pas2js -va hello.pas || Debug: quick handling option "hello.pas" || Info: Configfile search: /root/.pas2js.cfg || Info: Configfile search: /usr/local/bin/pas2js.cfg || Info: Reading options from file "/usr/local/bin/pas2js.cfg" || Debug: interpreting file option "#" || Debug: interpreting file option "# Minimal config file for pas2js compiler" || Debug: interpreting file option "#" || Debug: interpreting file option "# -d is the same as #DEFINE" || Debug: interpreting file option "# -u is the same as #UNDEF" || Debug: interpreting file option "#" || Debug: interpreting file option "# Write always a nice logo ;)" || Debug: interpreting file option "-l" || Debug: handling option "-l" || Debug: interpreting file option "" || Debug: interpreting file option "# Display Warnings, Notes and Hints" || Debug: interpreting file option "-vwnh" || Debug: handling option "-vwnh" || Debug: interpreting file option "# If you don't want so much verbosity use" || Debug: interpreting file option "#-vw" || Debug: interpreting file option "" || Debug: interpreting file option "#IFDEF FPC_SUBTARGET_NAMESPACED" || /usr/local/bin/pas2js.cfg(15,1) Debug: cfg directive "#IFDEF FPC_SUBTARGET_NAMESPACED": false -> skip || Debug: interpreting file option "-Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/namespaced" || Debug: interpreting file option "-Fi$CfgDir/../lib/fpc/3.3.1/pas2js/*/src" || Debug: interpreting file option "-Fu$CfgDir/../lib/fpc/3.3.1/pas2js/rtl/src" || Debug: interpreting file option "#else" || /usr/local/bin/pas2js.cfg(19,1) Debug: cfg directive "#else": execute || Debug: interpreting file option "-Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/src" || Debug: handling option "-Fu$CfgDir/../lib/fpc/3.3.1/pas2js/*/src" || Debug: interpreting file option "#endif" || Debug: interpreting file option "" || Debug: interpreting file option "#IFDEF nodejs" || /usr/local/bin/pas2js.cfg(23,1) Debug: cfg directive "#IFDEF nodejs": false -> skip || Debug: interpreting file option "-Jirtl.js" || Debug: interpreting file option "#ENDIF" || /usr/local/bin/pas2js.cfg(25,1) Debug: cfg directive "#ENDIF": end block || Debug: interpreting file option "" || Debug: interpreting file option "# Put all generated JavaScript into one file" || Debug: interpreting file option "-Jc" || Debug: handling option "-Jc" || Debug: interpreting file option "" || Debug: interpreting file option "# end." || Info: End of reading config file "/usr/local/bin/pas2js.cfg" || Debug: handling option "-va" || Debug: handling option "hello.pas" || Pas2JS Compiler version 2.3.1 [2023/12/25] for Linux x86_64 || Info: Message encoding is console || Copyright (c) 2023 Free Pascal team. || Info: Target platform is Browser || Info: Target processor is ECMAScript5 || Info: Syntax mode is ObjFPC || Info: Modeswitch CLASS is on || Info: Modeswitch RESULT is on || Info: Modeswitch NESTEDCOMMENTS is on || Info: Modeswitch REPEATFORWARD is on || Info: Modeswitch AUTODEREF is off || Info: Modeswitch INITFINAL is on || Info: Modeswitch OUT is on || Info: Modeswitch DEFAULTPARAMETERS is on || Info: Modeswitch HINTDIRECTIVE is on || Info: Modeswitch PROPERTIES is on || Info: Modeswitch EXCEPTIONS is on || Info: Modeswitch ADVANCEDRECORDS is off || Info: Modeswitch UNICODESTRINGS is on || Info: Modeswitch TYPEHELPERS is off || Info: Modeswitch CBLOCKS is on || Info: Modeswitch ARRAYOPERATORS is off || Info: Modeswitch MULTIHELPERS is off || Info: Modeswitch PREFIXEDATTRIBUTES is off || Info: Modeswitch IMPLICITFUNCTIONSPECIALIZATION is off || Info: Modeswitch FUNCTIONREFERENCES is on || Info: Modeswitch ANONYMOUSFUNCTIONS is on || Info: Modeswitch EXTERNALCLASS is off || Info: Modeswitch OMITRTTI is off || Info: Modeswitch MULTILINESTRINGS is off || Info: Modeswitch DELPHIMULTILINESTRINGS is off || Info: Class interface style is COM || Info: Option "Skip default configs" is disabled || Info: Option "Build all" is disabled || Info: Option "Show logo" is enabled || Info: Option "Show errors" is
[fpc-devel] Test, please ignore
Hello. Test, please ignore. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
25.12.2023 16:51, Maxim Ganetsky via fpc-devel пишет: 25.12.2023 13:01, Michael Van Canneyt via fpc-devel пишет: On Sun, 24 Dec 2023, Maxim Ganetsky via fpc-devel wrote: As far as I know, Mattias is busy with it and has at least fixed the tests ? I see the commit by Mattias now, but it does not affect config file created by `make install`, because the following duplicated code is used for creating config files when running `make install`: https://gitlab.com/freepascal.org/fpc/pas2js/-/blob/main/fpmake.pp?ref_type=heads#L20 I updated the config file writing. 2 files are written now. My local tests are all OK. Please elaborate. I just updated FPC and Pas2Js, nothing changed in behavior. Where is the commit? Sorry, forgot to push. fpmake.pp in pas2js repo. OK, now config contents have changed, but Codetools tests still fail with the same error (pas2js system unit not found). Config contents: Contents of /usr/local/bin/pas2js.cfg: | # || # Minimal config file for pas2js compiler || # || # -d is the same as #DEFINE || # -u is the same as #UNDEF || # || # Write always a nice logo ;) || -l || || # Display Warnings, Notes and Hints || -vwnh || # If you don't want so much verbosity use || #-vw #IFDEF FPC_SUBTARGET_NAMESPACED -Fu$CfgDir../lib/fpc/3.3.1/pas2js/*/namespaced || -Fi$CfgDir../lib/fpc/3.3.1/pas2js/*/src || -Fu$CfgDir../lib/fpc/3.3.1/pas2js/rtl/src | I see that there are missing directory separators after $CfgDir, maybe this is the reason? Also probably it would be worth to consider removing code duplication between createconfig.pp and fpmake.pp in regards of config file generation. ||| #else || -Fu$CfgDir../lib/fpc/3.3.1/pas2js/*/src || #endif || || #IFDEF nodejs || -Jirtl.js || #ENDIF || || # Put all generated JavaScript into one file || -Jc || || # end. || Contents of /usr/local/bin/pas2js-namespaced.cfg: ||-dUNICODERTL| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
25.12.2023 13:01, Michael Van Canneyt via fpc-devel пишет: On Sun, 24 Dec 2023, Maxim Ganetsky via fpc-devel wrote: As far as I know, Mattias is busy with it and has at least fixed the tests ? I see the commit by Mattias now, but it does not affect config file created by `make install`, because the following duplicated code is used for creating config files when running `make install`: https://gitlab.com/freepascal.org/fpc/pas2js/-/blob/main/fpmake.pp?ref_type=heads#L20 I updated the config file writing. 2 files are written now. My local tests are all OK. Please elaborate. I just updated FPC and Pas2Js, nothing changed in behavior. Where is the commit? Sorry, forgot to push. fpmake.pp in pas2js repo. OK, now config contents have changed, but Codetools tests still fail with the same error (pas2js system unit not found). Config contents: Contents of /usr/local/bin/pas2js.cfg: | # || # Minimal config file for pas2js compiler || # || # -d is the same as #DEFINE || # -u is the same as #UNDEF || # || # Write always a nice logo ;) || -l || || # Display Warnings, Notes and Hints || -vwnh || # If you don't want so much verbosity use || #-vw #IFDEF FPC_SUBTARGET_NAMESPACED -Fu$CfgDir../lib/fpc/3.3.1/pas2js/*/namespaced || -Fi$CfgDir../lib/fpc/3.3.1/pas2js/*/src || -Fu$CfgDir../lib/fpc/3.3.1/pas2js/rtl/src || #else || -Fu$CfgDir../lib/fpc/3.3.1/pas2js/*/src || #endif || || #IFDEF nodejs || -Jirtl.js || #ENDIF || || # Put all generated JavaScript into one file || -Jc || || # end. || Contents of /usr/local/bin/pas2js-namespaced.cfg: ||-dUNICODERTL| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
24.12.2023 17:24, Michael Van Canneyt пишет: On Sun, 24 Dec 2023, Maxim Ganetsky via fpc-devel wrote: 24.12.2023 01:07, Michael Van Canneyt via fpc-devel пишет: On Sat, 23 Dec 2023, Maxim Ganetsky via fpc-devel wrote: 20.12.2023 12:36, Mattias Gaertner via fpc-devel пишет: On 20.12.23 10:18, Michael Van Canneyt via fpc-devel wrote: [...] Is this an FPC regression or the tests should be adapted somehow? Can this be related to introduction of subtargets to Pas2JS? It could be, although I suspect it is more likely that the sources moved to a subdir src in each of the package directories, to support namespaced files. Yes. I was not aware that there were tests for pas2js in the lazarus codebase, so yes, probably some tests or the underlying code in the IDE need to be adapted. utils/createconfig.pas needs to be adapted... Any news on this? What changes are needed? As far as I know, Mattias is busy with it and has at least fixed the tests ? I see the commit by Mattias now, but it does not affect config file created by `make install`, because the following duplicated code is used for creating config files when running `make install`: https://gitlab.com/freepascal.org/fpc/pas2js/-/blob/main/fpmake.pp?ref_type=heads#L20 I updated the config file writing. 2 files are written now. My local tests are all OK. Please elaborate. I just updated FPC and Pas2Js, nothing changed in behavior. Where is the commit? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
24.12.2023 01:07, Michael Van Canneyt via fpc-devel пишет: On Sat, 23 Dec 2023, Maxim Ganetsky via fpc-devel wrote: 20.12.2023 12:36, Mattias Gaertner via fpc-devel пишет: On 20.12.23 10:18, Michael Van Canneyt via fpc-devel wrote: [...] Is this an FPC regression or the tests should be adapted somehow? Can this be related to introduction of subtargets to Pas2JS? It could be, although I suspect it is more likely that the sources moved to a subdir src in each of the package directories, to support namespaced files. Yes. I was not aware that there were tests for pas2js in the lazarus codebase, so yes, probably some tests or the underlying code in the IDE need to be adapted. utils/createconfig.pas needs to be adapted... Any news on this? What changes are needed? As far as I know, Mattias is busy with it and has at least fixed the tests ? I see the commit by Mattias now, but it does not affect config file created by `make install`, because the following duplicated code is used for creating config files when running `make install`: https://gitlab.com/freepascal.org/fpc/pas2js/-/blob/main/fpmake.pp?ref_type=heads#L20 -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
20.12.2023 12:36, Mattias Gaertner via fpc-devel пишет: On 20.12.23 10:18, Michael Van Canneyt via fpc-devel wrote: [...] Is this an FPC regression or the tests should be adapted somehow? Can this be related to introduction of subtargets to Pas2JS? It could be, although I suspect it is more likely that the sources moved to a subdir src in each of the package directories, to support namespaced files. Yes. I was not aware that there were tests for pas2js in the lazarus codebase, so yes, probably some tests or the underlying code in the IDE need to be adapted. utils/createconfig.pas needs to be adapted... Any news on this? What changes are needed? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Failing Lazarus Codetools Pas2JS-related tests
Hello. After recent update of FPC 3.3.1 (and Pas2JS) in Lazarus CI several Codetools tests related to Pas2JS started failing: TTestPas2js.TestPas2js_ReadSettings: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration: pas2js system unit not found TTestPas2js.TestPas2js_FindDeclaration_AWait: pas2js system unit not found They worked fine with FPC 3.3.1 from November 30. Is this an FPC regression or the tests should be adapted somehow? Can this be related to introduction of subtargets to Pas2JS? Contents of /usr/local/bin/pas2js.cfg: # # Minimal config file for pas2js compiler # # -d is the same as #DEFINE # -u is the same as #UNDEF # # Write always a nice logo -l # Display Warnings, Notes and Hints -vwnh # If you don't want so much verbosity use #-vw -Fu$CfgDir/../lib/fpc/3.3.1/pas2js/* #IFDEF nodejs -Jirtl.js #ENDIF # Put all generated JavaScript into one file -Jc # end. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository, attn. Florian
13.11.2023 0:14, Michael Van Canneyt via fpc-devel пишет: On Sun, 12 Nov 2023, Maxim Ganetsky via fpc-devel wrote: 12.11.2023 19:44, Michael Van Canneyt via fpc-devel пишет: On Thu, 9 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Is there any estimation how much will it take to be fixed? No, since I don't even know yet what the fix is. If it will take too long, I would like to suggest to temporarily disable generation of documentation in order to have binary snapshots available again. That is what I proposed in the first place. Since the units reference documentation has become too big for LaTeX to handle, I have disabled the generation of PDF for the units reference documentation. Henceforth, the documentation for the units will only be available as HTML. (and, presumably, chm) The build should again be OK. Now FPC 3.3.1 crashes when trying to build cross-compiler for i386-win32: Oh bloody hell, an IFDEF MSWINDOWS... The IDE didn't create the implementation for that :/ You may want to create an issue. Fixed. It is fine now, thanks! -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository, attn. Florian
12.11.2023 19:44, Michael Van Canneyt via fpc-devel пишет: On Thu, 9 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Is there any estimation how much will it take to be fixed? No, since I don't even know yet what the fix is. If it will take too long, I would like to suggest to temporarily disable generation of documentation in order to have binary snapshots available again. That is what I proposed in the first place. Since the units reference documentation has become too big for LaTeX to handle, I have disabled the generation of PDF for the units reference documentation. Henceforth, the documentation for the units will only be available as HTML. (and, presumably, chm) The build should again be OK. Now FPC 3.3.1 crashes when trying to build cross-compiler for i386-win32: #7 1175.5 External command "/source-main/compiler/ppcross386 -Twin32 -FUvcl-compat/units/i386-win32/ -Fu/source-main/rtl/units/i386-win32/ -Fu/source-main/packages/fcl-base/units/i386-win32/ -Fu/source-main/packages/rtl-objpas/units/i386-win32/ -Fu/source-main/packages/fcl-xml/units/i386-win32/ -Fu/source-main/packages/fcl-web/units/i386-win32/ -Fu/source-main/packages/fcl-db/units/i386-win32/ -Fu/source-main/packages/rtl-extra/units/i386-win32/ -Fu/source-main/packages/ibase/units/i386-win32/ -Fu/source-main/packages/mysql/units/i386-win32/ -Fu/source-main/packages/odbc/units/i386-win32/ -Fu/source-main/packages/oracle/units/i386-win32/ -Fu/source-main/packages/postgres/units/i386-win32/ -Fu/source-main/packages/sqlite/units/i386-win32/ -Fu/source-main/packages/dblib/units/i386-win32/ -Fu/source-main/packages/pxlib/units/i386-win32/ -Fu/source-main/packages/fcl-json/units/i386-win32/ -Fu/source-main/packages/fcl-fpcunit/units/i386-win32/ -Fu/source-main/packages/paszlib/units/i386-win32/ -Fu/source-main/packages/hash/units/i386-win32/ -Fu/source-main/packages/libtar/units/i386-win32/ -Fu/source-main/packages/fcl-net/units/i386-win32/ -Fu/source-main/packages/fcl-passrc/units/i386-win32/ -Fu/source-main/packages/fcl-process/units/i386-win32/ -Fu/source-main/packages/fcl-hash/units/i386-win32/ -Fu/source-main/packages/fcl-registry/units/i386-win32/ -Fu/source-main/packages/openssl/units/i386-win32/ -Fu/source-main/packages/fastcgi/units/i386-win32/ -Fu/source-main/packages/httpd22/units/i386-win32/ -Fu/source-main/packages/httpd24/units/i386-win32/ -Fu/source-main/packages/winunits-base/units/i386-win32/ -Fu/source-main/packages/libmicrohttpd/units/i386-win32/ -Fu/source-main/packages/rtl-generics/units/i386-win32/ -Fuvcl-compat/src -Fivcl-compat/src -Twin32 -Pi386 -XPi386-win32- -Ur -Xs -O2 -n -di386 -dRELEASE -XX -CX -Sc -viq vcl-compat/BuildUnit_vcl_compat.pp" failed with exit code 256. Console output: | #7 1175.5 Target OS: Win32 for i386 || #7 1175.5 Compiling vcl-compat/BuildUnit_vcl_compat.pp || #7 1175.5 Compiling ./vcl-compat/src/system.permissions.pp || #7 1175.5 Compiling ./vcl-compat/src/system.messaging.pp || #7 1175.5 Compiling ./vcl-compat/src/system.netencoding.pp || #7 1175.5 Writing Resource String Table file: system.netencoding.rsj || #7 1175.5 Compiling ./vcl-compat/src/system.ioutils.pp || #7 1175.5 Writing Resource String Table file: system.ioutils.rsj || #7 1175.5 Compiling ./vcl-compat/src/system.devices.pp || #7 1175.5 Compiling ./vcl-compat/src/system.analytics.pp || #7 1175.5 Compiling ./vcl-compat/src/system.ansistrings.pp || #7 1175.5 system.ansistrings.pp(106,10) Error: Forward declaration not solved "ExtractShortPathName(const AnsiString):System.AnsiString;" || #7 1175.5 system.ansistrings.pp(1427) Fatal: There were 1 errors compiling module, stopping || #7 1175.5 Fatal: Compilation aborted || #7 1175.5 || #7 1175.5 The installer encountered the following error: || #7 1175.5 Compilation of "BuildUnit_vcl_compat.pp" failed || #7 1175.5 $00527749 || #7 1175.5 $005324D8 || #7 1175.5 $005314B1 || #7 1175.5 $00532801 || #7 1175.5 $00535F0A || #7 1175.5 $00525F12 || #7 1175.5 $00526624 || #7 1175.5 $00479A76 || #7 1175.5 make[2]: *** [Makefile:1992: smart] Error 1 || #7 1175.5 make[2]: Leaving directory '/source-main/packages' || #7 1175.5 make[1]: *** [Makefile:3129: packages_smart] Error 2 || #7 1175.5 make[1]: Leaving directory '/source-main' ||#7 1175.5 make: *** [Makefile:3283: build-stamp.i386-win32] Error 2| -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository, attn. Florian
09.11.2023 12:10, Michael Van Canneyt via fpc-devel пишет: On Thu, 9 Nov 2023, Maxim Ganetsky via fpc-devel wrote: 03.11.2023 17:34, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: 03.11.2023 17:05, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Currently builds in FPC Build repository are failing for FPC main branch: https://gitlab.com/freepascal.org/fpc/build/-/pipelines I am aware. I cannot build the docs myself. The problem is: Recently the documentation became too big for pdfLaTeX to handle, too many identifiers. (well over 2500 pages) I have not (yet) found a way to increase TexLive's memory bounds. I am investigating this but it seems save_size is stuck at a value of 8. So unless I find a solution, either I need to split up the docs, or completely abandon the idea of PDF docs for the API reference. For the moment, simply disable the building of the PDF docs. The problem is, in our CI we rely on precompiled FPC snapshot TAR installers in order to save time when updating an image. So no new installer, no new FPC. Well, all I can say is that I am looking into it. Till a solution is found, you'll need to be patient... Is there any estimation how much will it take to be fixed? No, since I don't even know yet what the fix is. If it will take too long, I would like to suggest to temporarily disable generation of documentation in order to have binary snapshots available again. That is what I proposed in the first place. But I have no idea who generates the snapshots you use, or how they are generated. In this file: https://gitlab.com/freepascal.org/fpc/build/-/blob/main/.gitlab-ci.yml?ref_type=heads comment out (add `#` at line start) lines 20, 21, 26-30. Note that these changes may not be optimal. I see that Florian wrote this script, so it would be best if he will look at it. On a side note. Here: https://gitlab.com/freepascal.org/fpc/build/-/jobs/5498828229 I see the following errors: Parser error: ../fpcsrc/rtl/linux/osdefs.inc (34,47): ../fpcsrc/rtl/linux/osdefs.inc(34,47) : "identifier" expected, but "EOF" found | Ignoring error, continuing with next unit (if any). || Error: Access violation || Ignoring error, continuing with next unit (if any). || Parser error: ../fpcsrc/rtl/linux/osdefs.inc (34,47): ../fpcsrc/rtl/linux/osdefs.inc(34,47) : "identifier" expected, but "EOF" found || Ignoring error, continuing with next unit (if any). || Error: Access violation || Ignoring error, continuing with next unit (if any). || Parser error: /builds/freepascal.org/fpc/build/fpcsrc/packages/rtl-extra/src/linux/osdefs.inc (38,47): /builds/freepascal.org/fpc/build/fpcsrc/packages/rtl-extra/src/linux/osdefs.inc(38,47) : "identifier" expected, but "EOF" found || Ignoring error, continuing with next unit (if any). || Parser error: /builds/freepascal.org/fpc/build/fpcsrc/rtl/linux/osdefs.inc (34,47): /builds/freepascal.org/fpc/build/fpcsrc/rtl/linux/osdefs.inc(34,47) : "identifier" expected, but "EOF" found || Ignoring error, continuing with next unit (if any). || Error: Access violation ||Ignoring error, continuing with next unit (if any).| So I would think that FPDoc has some problems too. Maybe after they are fixed, documentation build process will be able finish, albeit probably with incorrect result. But it will anyway improve the situation by an order of magnitude. -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository
03.11.2023 17:34, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: 03.11.2023 17:05, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Currently builds in FPC Build repository are failing for FPC main branch: https://gitlab.com/freepascal.org/fpc/build/-/pipelines I am aware. I cannot build the docs myself. The problem is: Recently the documentation became too big for pdfLaTeX to handle, too many identifiers. (well over 2500 pages) I have not (yet) found a way to increase TexLive's memory bounds. I am investigating this but it seems save_size is stuck at a value of 8. So unless I find a solution, either I need to split up the docs, or completely abandon the idea of PDF docs for the API reference. For the moment, simply disable the building of the PDF docs. The problem is, in our CI we rely on precompiled FPC snapshot TAR installers in order to save time when updating an image. So no new installer, no new FPC. Well, all I can say is that I am looking into it. Till a solution is found, you'll need to be patient... Is there any estimation how much will it take to be fixed? If it will take too long, I would like to suggest to temporarily disable generation of documentation in order to have binary snapshots available again. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository
03.11.2023 17:34, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: 03.11.2023 17:05, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Currently builds in FPC Build repository are failing for FPC main branch: https://gitlab.com/freepascal.org/fpc/build/-/pipelines I am aware. I cannot build the docs myself. The problem is: Recently the documentation became too big for pdfLaTeX to handle, too many identifiers. (well over 2500 pages) I have not (yet) found a way to increase TexLive's memory bounds. I am investigating this but it seems save_size is stuck at a value of 8. So unless I find a solution, either I need to split up the docs, or completely abandon the idea of PDF docs for the API reference. For the moment, simply disable the building of the PDF docs. The problem is, in our CI we rely on precompiled FPC snapshot TAR installers in order to save time when updating an image. So no new installer, no new FPC. Well, all I can say is that I am looking into it. Till a solution is found, you'll need to be patient... I understand, thanks. It is amazing to see how big FPC project has become so it triggers limitations in well established external tools. :) -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Build failure in FPC Build repository
03.11.2023 17:05, Michael Van Canneyt via fpc-devel пишет: On Fri, 3 Nov 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Currently builds in FPC Build repository are failing for FPC main branch: https://gitlab.com/freepascal.org/fpc/build/-/pipelines I am aware. I cannot build the docs myself. The problem is: Recently the documentation became too big for pdfLaTeX to handle, too many identifiers. (well over 2500 pages) I have not (yet) found a way to increase TexLive's memory bounds. I am investigating this but it seems save_size is stuck at a value of 8. So unless I find a solution, either I need to split up the docs, or completely abandon the idea of PDF docs for the API reference. For the moment, simply disable the building of the PDF docs. The problem is, in our CI we rely on precompiled FPC snapshot TAR installers in order to save time when updating an image. So no new installer, no new FPC. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Build failure in FPC Build repository
Hello. Currently builds in FPC Build repository are failing for FPC main branch: https://gitlab.com/freepascal.org/fpc/build/-/pipelines It prevents from updating to the latest FPC 3.3.1 in Lazarus CI build image (it still contains FPC from 01.11.2023) which is needed by latest changes in Lazarus. Relevant log excerpt: Transcript written on tcrb1000.log. | mktexpk: /root/.texlive2020/texmf-var/fonts/pk/ljfour/jknappen/ec/tcrb1000.600pk: successfully generated. || Input index file dist/pdf/user.idx not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || make[2]: [Makefile:2602: dist/pdf/user.pdf] Error 1 (ignored) || Index style file ./index not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || system returned with code 256 || Index style file ./index not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || system returned with code 256 || Input index file dist/pdf/user.idx not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || make[2]: [Makefile:2602: dist/pdf/user.pdf] Error 1 (ignored) || Index style file ./index not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || system returned with code 256 || Index style file ./index not found. || Usage: makeindex [-ilqrcgLT] [-s sty] [-o ind] [-t log] [-p num] [idx0 idx1 ...] || system returned with code 256 || [#rtl.sysutils.TSymLinkRec] Warning: Target ID of is unknown: "" || [#rtl.sysutils.TSymLinkRec] Warning: Target ID of is unknown: "" || [#rtl.sysutils.TSymLinkRec] Warning: Target ID of is unknown: "" || [#rtl.sysutils.TSymLinkRec] Warning: Target ID of is unknown: "" || [#rtl.sysutils.TSymLinkRec] Warning: Target ID of is unknown: "" || [#rtl.sysutils.TRawbyteSymLinkRec] Warning: Target ID of is unknown: "TRawbyteSymLinkRec.Mode" || [#rtl.sysutils.TUnicodeSymLinkRec] Warning: Target ID of is unknown: "TRawbyteSymLinkRec.Mode" || Package: #rtl - Documentation process finished. || make[2]: *** [Makefile:2602: dist/pdf/rtl.pdf] Error 1 || make[1]: *** [Makefile:2165: fpc_zipinstall] Error 2 || make: *** [Makefile:3161: pdfzip] Error | -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Recent changes break distclean for utils
16.08.2023 4:29, Garry Wood via fpc-devel пишет: Hello, Just letting you know that some recent changes seem to have broken “make distclean” for source/utils Please create a bug report. Makefile.fpc in the source/utils folder contains the line: CLEAN_TARGET_DIRS=$(subst /Makefile.fpc, ,$(wildcard */Makefile.fpc)) But a recent commit (25 July 2023) removed all the Makefile.fpc files from source/utils/* so it now finds no targets to clean. I tried changing the line to : CLEAN_TARGET_DIRS=$(subst /Makefile, ,$(wildcard */Makefile)) which is the same as what is used for source/packages but then it fails because the Makefile in the sim_pasc folder doesn’t have a distclean target. For now I’ve resolved by adding the list of target folders directly to CLEAN_TARGET_DIRS but hopefully you have a better solution. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Possible copy-paste error in fpc.cfg template
Hello. While looking at fpc.cfg created by latest FPC 3.3.1 Linux .sh installer, I noticed the following section in it: # never need cross-prefix when targeting the JVM | # (no native compiler, always cross-compiling) || #ifdef cpujvm || #undef NEEDCROSSBINUTILS || #endif || || # for android cross-prefix is set by compiler || #ifdef android || #undef NEEDCROSSBINUTILS || #endif || || # never need cross-prefix when targeting the i8086 || # (no native compiler, always cross-compiling) || #ifdef cpui8086 || #undef NEEDCROSSBINUTILS || #endif || || # never need cross-prefix when targeting the i8086 || # (no native compiler, always cross-compiling) || #ifdef cpujvm || #undef NEEDCROSSBINUTILS |#endif| | |The last clause in it seems to be a result of some copy-paste error: its comment erroneously refers to i8086 (|||which has already been checked|), while IFDEF checks for cpujvm, which has already been checked too. | -- Best regards, Maxim Ganetskymailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] cthreads and fpc.cfg?
19.07.2023 3:25, Maxim Ganetsky via fpc-devel пишет: 19.07.2023 0:15, Martin Frb via fpc-devel пишет: On 18/07/2023 22:56, Martin via fpc-devel wrote: Using 33dba315366ec3002e062c3aa6dcb15b88356580 (3.3.1) My fpc.cfg looks like this / any idea?: Threading has been used before cthreads was initialized. Make cthreads one of the first units in your uses clause. tried 757f65d0e283c9fd33f2f99e794203590711c686 still... JFYI, today I have been testing a build image containing FPC 3.3.1 no older than ce37431a3f57ce11da4e8025a12a0eda3e651ff0. Just checked, config is OK there. Also compiler itself works fine. Hmm, I was just lucky, correct config in my case probably generated by another FPC version. ;) I see the following output of FPC 3.3.1 binary .sh installer: Writing sample configuration file to /etc/fpc.cfg #6 28.14 Runtime error 211 at $004C0B8D #6 28.14 $004C0B8D #6 28.14 #6 28.14 Threading has been used before cthreads was initialized. #6 28.14 Make cthreads one of the first units in your uses clause. #6 28.14 Writing sample configuration file to /usr/lib/fpc/3.3.1/ide/text/fp.cfg #6 28.14 Runtime error 211 at $004C0B8D #6 28.14 $004C0B8D #6 28.14 #6 28.14 Threading has been used before cthreads was initialized. #6 28.14 Make cthreads one of the first units in your uses clause. #6 28.14 Writing sample configuration file to /usr/lib/fpc/3.3.1/ide/text/fp.ini #6 28.14 Runtime error 211 at $004C0B8D #6 28.14 $004C0B8D #6 28.14 #6 28.14 Threading has been used before cthreads was initialized. #6 28.14 Make cthreads one of the first units in your uses clause. #6 28.15 Writing sample configuration file to /etc/fppkg.cfg #6 28.15 Runtime error 211 at $004C0B8D #6 28.15 $004C0B8D #6 28.15 #6 28.15 Threading has been used before cthreads was initialized. #6 28.15 Make cthreads one of the first units in your uses clause. #6 28.15 Writing sample configuration file to /etc/fppkg/default #6 28.15 Runtime error 211 at $004C0B8D #6 28.15 $004C0B8D #6 28.15 #6 28.15 Threading has been used before cthreads was initialized. #6 28.15 Make cthreads one of the first units in your uses clause. #6 28.15 #6 28.15 End of installation. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] cthreads and fpc.cfg?
19.07.2023 0:15, Martin Frb via fpc-devel пишет: On 18/07/2023 22:56, Martin via fpc-devel wrote: Using 33dba315366ec3002e062c3aa6dcb15b88356580 (3.3.1) My fpc.cfg looks like this / any idea?: Threading has been used before cthreads was initialized. Make cthreads one of the first units in your uses clause. tried 757f65d0e283c9fd33f2f99e794203590711c686 still... JFYI, today I have been testing a build image containing FPC 3.3.1 no older than ce37431a3f57ce11da4e8025a12a0eda3e651ff0. Just checked, config is OK there. Also compiler itself works fine. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString"
16.07.2023 20:14, Maxim Ganetsky via fpc-devel пишет: 16.07.2023 20:08, Michael Van Canneyt via fpc-devel пишет: On Sun, 16 Jul 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Recent changes in FPC `main` led to the following errors when building some code in Lazarus tree: Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString" See: https://gitlab.com/freepascal.org/lazarus/lazarus/-/issues/40381 Note that the unit which fails to build has {$H-} directive. Is it a bug in compiler? No. We're preparing for the unicode RTL. Part of that was changing string -> shortstring and pchar -> ansichar. In some rare places I changed string to ansistring in preparation of unicodestring, in this case it was misplaced since it was a var argument. I added an overloaded version, which should fix the compilation error. But I thought that it was possible to assign ShortString to AnsiString. Am I mistaken? Ah, I see now that it is Var argument, so they should match exactly. Thanks for helping. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString"
16.07.2023 20:08, Michael Van Canneyt via fpc-devel пишет: On Sun, 16 Jul 2023, Maxim Ganetsky via fpc-devel wrote: Hello. Recent changes in FPC `main` led to the following errors when building some code in Lazarus tree: Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString" See: https://gitlab.com/freepascal.org/lazarus/lazarus/-/issues/40381 Note that the unit which fails to build has {$H-} directive. Is it a bug in compiler? No. We're preparing for the unicode RTL. Part of that was changing string -> shortstring and pchar -> ansichar. In some rare places I changed string to ansistring in preparation of unicodestring, in this case it was misplaced since it was a var argument. I added an overloaded version, which should fix the compilation error. But I thought that it was possible to assign ShortString to AnsiString. Am I mistaken? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString"
Hello. Recent changes in FPC `main` led to the following errors when building some code in Lazarus tree: Error: (3069) Call by var for arg no. xx has to match exactly: Got "ShortString" expected "AnsiString" See: https://gitlab.com/freepascal.org/lazarus/lazarus/-/issues/40381 Note that the unit which fails to build has {$H-} directive. Is it a bug in compiler? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Overloading problem in generic class.
18.09.2022 12:37, Bart via fpc-devel пишет: Hi, The following program will compile for Windows 32 and 64 bit. It fails to compile for Linix 64 bit (and if I understand correctly, also for MacOS 64 bit). <...> Linux 64-bit Compile Project, Target: test: Exit code 1, Errors: 1, Hints: 3 test.lpr(40,13) Error: Can't determine which overloaded function to call test.lpr(22,10) Hint: Found declaration: SameValue(const Single;const Single):Boolean; test.lpr(15,10) Hint: Found declaration: SameValue(const Double;const Double):Boolean; test.lpr(7,10) Hint: Found declaration: SameValue(const Extended;const Extended):Boolean; If I remove the typecast then it compiles OK on all platforms. (fpc 3.2.2 of fpc main seem to do the same) I simply do not understand where the difference between Windows/Non-Windows comes from. As far as I see from CI build log, FPC 3.2.0 is the culprit. FPC 3.2.2 compiles your code fine both on Linux and Windows. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Tar installers for x86_64-linux for FPC from main and fixes
20.08.2022 22:52, Florian Klämpfl via fpc-devel пишет: Am 20.08.2022 um 21:38 schrieb Maxim Ganetsky via fpc-devel mailto:fpc-devel@lists.freepascal.org>>: 20.08.2022 21:58, Florian Klämpfl via fpc-devel пишет: Am 20.08.2022 um 02:49 schrieb Maxim Ganetsky via fpc-devel <mailto:fpc-devel@lists.freepascal.org> <mailto:fpc-devel@lists.freepascal.org <mailto:fpc-devel@lists.freepascal.org>>>: hello. I would like to ask, is it possible to get on a regular basis tar installers somewhere for FPC from main and fixes branches for x86_64-linux and corresponding FPC sources tarballs? You can get the tar built by the latest CI run from https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job> <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job>> and https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job> <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job>> Thanks, this is what I need. But I need its corresponding source too in order to build cross-compilers. Can exported sources in tarball be retrieved somewhere too? https://gitlab.com/freepascal.org/fpc/build/-/archive/main/build-main.tar.gz <https://gitlab.com/freepascal.org/fpc/build/-/archive/main/build-main.tar.gz> https://gitlab.com/freepascal.org/fpc/build/-/archive/fixes_3_2/build-fixes_3_2.tar.gz <https://gitlab.com/freepascal.org/fpc/build/-/archive/fixes_3_2/build-fixes_3_2.tar.gz> I just checked, and their fpcsrc directory is empty. BTW, how frequently they are updated? In theory there might be the danger of a race condition, but I see no good way to prevent this. One way is to include source tarball straight into a tar installer (in is not necessary to install it, just include). This package will be useful for Docker-like images like ours, which include native FPC and its cross-compilers. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Tar installers for x86_64-linux for FPC from main and fixes
20.08.2022 22:52, Florian Klämpfl via fpc-devel пишет: Am 20.08.2022 um 21:38 schrieb Maxim Ganetsky via fpc-devel mailto:fpc-devel@lists.freepascal.org>>: 20.08.2022 21:58, Florian Klämpfl via fpc-devel пишет: Am 20.08.2022 um 02:49 schrieb Maxim Ganetsky via fpc-devel <mailto:fpc-devel@lists.freepascal.org> <mailto:fpc-devel@lists.freepascal.org <mailto:fpc-devel@lists.freepascal.org>>>: hello. I would like to ask, is it possible to get on a regular basis tar installers somewhere for FPC from main and fixes branches for x86_64-linux and corresponding FPC sources tarballs? You can get the tar built by the latest CI run from https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job> <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job>> and https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job> <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job>> Thanks, this is what I need. But I need its corresponding source too in order to build cross-compilers. Can exported sources in tarball be retrieved somewhere too? https://gitlab.com/freepascal.org/fpc/build/-/archive/main/build-main.tar.gz <https://gitlab.com/freepascal.org/fpc/build/-/archive/main/build-main.tar.gz> https://gitlab.com/freepascal.org/fpc/build/-/archive/fixes_3_2/build-fixes_3_2.tar.gz <https://gitlab.com/freepascal.org/fpc/build/-/archive/fixes_3_2/build-fixes_3_2.tar.gz> In theory there might be the danger of a race condition, but I see no good way to prevent this. I don't think that this race condition is very critical, after all we can always just restart building image (and redownload sources in the process) if it fails to compile. Thanks. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Tar installers for x86_64-linux for FPC from main and fixes
20.08.2022 21:58, Florian Klämpfl via fpc-devel пишет: Am 20.08.2022 um 02:49 schrieb Maxim Ganetsky via fpc-devel mailto:fpc-devel@lists.freepascal.org>>: hello. I would like to ask, is it possible to get on a regular basis tar installers somewhere for FPC from main and fixes branches for x86_64-linux and corresponding FPC sources tarballs? You can get the tar built by the latest CI run from https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/main/raw/fpc-3.3.1.x86_64-linux.tar?job=build-job> and https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job <https://gitlab.com/freepascal.org/fpc/build/-/jobs/artifacts/fixes_3_2/raw/fpc-3.2.3.x86_64-linux.tar?job=build-job> Thanks, this is what I need. But I need its corresponding source too in order to build cross-compilers. Can exported sources in tarball be retrieved somewhere too? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Tar installers for x86_64-linux for FPC from main and fixes
hello. I would like to ask, is it possible to get on a regular basis tar installers somewhere for FPC from main and fixes branches for x86_64-linux and corresponding FPC sources tarballs? These installers are convenient when generating build environment image (e. g. in Docker). If they will be updated on a regular basis it will allow to update FPC in build environment image in automated manner. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
Re: [fpc-devel] Cross-compiling Linux x86_64 -> Win32
09.08.2022 03:49, Maxim Ganetsky via fpc-devel пишет: Hello. I am trying to set up cross-compilation from Linux x86_64 to Win32 and have the following problems: Case 1. Using FPC 3.2.0. I installed the following: fpc-3.2.0-x86_64-linux.tar fpc-3.2.0.i386-linux.tar fpc-3.2.0-i386-win32.cross.x86_64-linux.tar Installation process finished successfully without warnings. Case 2. Using FPC 3.2.2. I don't see i386-win32.cross.x86_64-linux for FPC 3.2.2. What is the recommended way to cross-compile with it? Forget it, omitting installing fpc-3.2.0.i386-linux.tar and building cross-compiler from source fixed the issue. -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Cross-compiling Linux x86_64 -> Win32
Hello. I am trying to set up cross-compilation from Linux x86_64 to Win32 and have the following problems: Case 1. Using FPC 3.2.0. I installed the following: fpc-3.2.0-x86_64-linux.tar fpc-3.2.0.i386-linux.tar fpc-3.2.0-i386-win32.cross.x86_64-linux.tar Installation process finished successfully without warnings. And with this setup I get the following result: $ make bigide OPT="-V3.2.0 -vut" OS_TARGET=win32 CPU_TARGET=i386 LCL_PLATFORM=win32 make -C packager/registration make[1]: Entering directory '/builds/freepascal.org/lazarus-sandbox/lazarus-test-4/packager/registration' /bin/rm -f ../units/i386-win32/fcllaz.ppu /bin/mkdir -p ../units/i386-win32 /usr/bin/ppc386 -Twin32 -XPi386-win32- -MObjFPC -Scghi -O1 -g -gl -l -vewnhibq -Fu. -FE. -FU../units/i386-win32 -V3.2.0 -vut -di386 fcllaz.pas Configfile search: /root/.fpc.cfg Configfile search: /usr/lib/fpc/etc/fpc.cfg Configfile search: /etc/fpc.cfg (11026) Reading options from file /etc/fpc.cfg Hint: (11030) Start of reading config file /etc/fpc.cfg Path "/usr/lib/fpc/3.2.0/units/i386-win32/rtl/" not found Path "/root/.fppkg/lib/fpc/3.2.0/units/i386-win32/*/" not found Path "/usr/lib/fpc/3.2.0/lib/i386-win32/" not found Hint: (11031) End of reading config file /etc/fpc.cfg Free Pascal Compiler version 3.2.0 [2020/06/09] for i386 Copyright (c) 1993-2020 by Florian Klaempfl and others Path "/usr/lib/fpc/3.2.0/units/i386-win32/rtl/" not found (1000) Compiler: /usr/lib/fpc/3.2.0/ppc386 (1002) Target OS: Win32 for i386 (1003) Using executable path: /usr/lib/fpc/3.2.0/ (1004) Using unit path: ./ (1004) Using unit path: /usr/lib/fpc/3.2.0/units/i386-win32/httpd22/ (1004) Using unit path: /usr/lib/fpc/3.2.0/units/i386-win32/libtar/ (1004) Using unit path: /usr/lib/fpc/3.2.0/units/i386-win32/httpd24/ (1004) Using unit path: /usr/lib/fpc/3.2.0/units/i386-win32/fcl-process/ Note the warning "Path "/usr/lib/fpc/3.2.0/units/i386-win32/rtl/" not found". Indeed there should have been system.ppu which is missing and therefore compilation fails. Why is this directory was not installed? Case 2. Using FPC 3.2.2. I don't see i386-win32.cross.x86_64-linux for FPC 3.2.2. What is the recommended way to cross-compile with it? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
[fpc-devel] Revision r47409 in https://svn.freepascal.org/svn/fpc/tags/release_3_2_0
Hello. Are you sure that r47409: * Merging revisions 46778 from trunk: r46778 | jonas | 2020-09-05 20:44:57 +0200 (Sat, 05 Sep 2020) | 2 lines * fix formatfloat for 0 in exponential format (based on patch by Jamie Philbrook, mantis #37374) is really meant to be in https://svn.freepascal.org/svn/fpc/tags/release_3_2_0 and not in branches/fixes_3_2? -- Best regards, Maxim Ganetsky mailto:gan...@narod.ru ___ fpc-devel maillist - fpc-devel@lists.freepascal.org https://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel