<div dir="ltr"><div dir="ltr">Hi Abou!</div><div dir="ltr"><br></div><div>Thank you for the work. Sorry for the delay in answering -- I'm back from a vacation :) Answers to all 3 of your mails below.<br></div><div dir="ltr"><br>> I finally managed to find some time to integrate your FPC 3.2.0 related changes to CGE and unfortunately it fails building.<br>...<br>> mkdir -p /build/castle-game-engine-6.4+dfsg1/debian/tmp/tmp<br>> /usr/bin/fpc -FE/build/castle-game-engine-6.4+dfsg1/debian/tmp/tmp  @castle-fpc.cfg tools/texture-font-to-pascal/texture-font-to-pascal.lpr<br>> Free Pascal Compiler version 3.0.4+dfsg-23 [2019/11/25] for x86_64<br>...<br>> castlevectors_lists.inc(371,11) Error: Identifier not found "PT"<br><br>Ups, when I fixed the FPC 3.2.0 compilation on v6.4-fixes branch ( <a href="https://github.com/castle-engine/castle-engine/commits/v6.4-fixes">https://github.com/castle-engine/castle-engine/commits/v6.4-fixes</a> ), in turn I broke FPC 3.0.4 compilation. (Usually it would be caught by my Jenkins, but it has problems on "v6.4-fixes" branch for unrelated reasons...)<br><br>Fixed by <a href="https://github.com/castle-engine/castle-engine/commit/32e283f739ed75bb3a07c30713476b5b747fff75">https://github.com/castle-engine/castle-engine/commit/32e283f739ed75bb3a07c30713476b5b747fff75</a> . So, please add this patch into CGE 6.4 in Debian.<br><br>> I managed finally to build correctly CGE using 3.2.0 from experimental.<br>> However It required the following patch:<br>...<br>> +  {$IF (FPC_FULLVERSION >= 030100)} CThreads, {$endif}<br><br>Thanks! I committed an equivalent fix to v6.4-fixes ( <a href="https://github.com/castle-engine/castle-engine/commit/8b2233320ff59c01727174b506968cefd4def048">https://github.com/castle-engine/castle-engine/commit/8b2233320ff59c01727174b506968cefd4def048</a> ).<br><br>We do:<br><br>"""<br>{$ifdef UNIX} {$ifndef VER3_0} CThreads, {$endif} {$endif}<br>"""<br><br>We don't support FPC 2.x since a long time, so this is in practice equivalent.<br><br>I actually think your solution (with "{$IF (FPC_FULLVERSION >= 030100)}...") looks cleaner. But right now we use a similar construction ("{$ifndef VER3_0} ... ") often across CGE sources. So my version is more consistent with existing CGE code, and also it is what was already in the CGE master branch :)<br><br>> It seems that the messages at the end of the wiki page was mis interpreted to hide a bug on Debian FPC customization changes.<br>> I looked more deeply on this and discovered that the global units dir was not fixed when the change of the default units path was applied in order to support multi-arch.<br><br>It's good that you improved this with FPC version in Debian. But my workaround is also necessary with upstream FPC releases. So I'll leave it for now.</div><div dir="ltr"><br></div><div>Regards,</div><div>Michalis<br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">pon., 3 sie 2020 o 23:42 Abou Al Montacir <<a href="mailto:abou.almontacir@sfr.fr">abou.almontacir@sfr.fr</a>> napisał(a):<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div bgcolor="#ffffff" style="text-align:left;direction:ltr"><div>Looking more attentively at the CGE make file I was surprised by the following lines:</div><pre>     fpc fpmake.pp</pre><pre>    @echo 'Running fpmake. If this fails saying that "rtl" is not found, remember to set FPCDIR environment variable, see <a href="http://wiki.freepascal.org/FPMake" target="_blank">http://wiki.freepascal.org/FPMake</a> .'</pre><pre># Workaround FPC >= 3.x problem (bug?) --- it ignores $FPCDIR, but --globalunitdir works</pre><pre>   if [ '(' -n "$(FPCDIR)" ')' -a \</pre><pre>            '(' $(shell fpc -iV) '!=' '2.6.4' ')' -a \</pre><pre>       '(' $(shell fpc -iV) '!=' '2.6.2' ')' ]; then \</pre><pre>        ./fpmake --globalunitdir="$(FPCDIR)" -v -o -Ur; \</pre><pre>   else \</pre><pre>      ./fpmake -v -o -Ur; \</pre><pre> fi</pre><pre></pre><div><br></div><div>It seems that the messages at the end of the wiki page was mis interpreted to hide a bug on Debian FPC customization changes.</div><div>I looked more deeply on this and discovered that the global units dir was not fixed when the change of the default units path was applied in order to support multi-arch.</div><div><br></div><div>I fixed this on FPC and uploaded it.</div><pre><font color="#ff0000">--- fpc.orig/fpcsrc/packages/fpmkunit/src/fpmkunit.pp</font></pre><pre><font color="#339966">+++ fpc/fpcsrc/packages/fpmkunit/src/fpmkunit.pp</font></pre><pre><font color="#800000">@@ -4538,6 +4538,9 @@ begin</font></pre><pre>   BinInstallDir:='';</pre><pre>   LibInstallDir:='';</pre><pre>   ExamplesInstallDir:='';</pre><pre><font color="#339966">+  if GlobalUnitDir = '' then begin</font></pre><pre><font color="#339966">+    GlobalUnitDir := FBaseInstallDir;</font></pre><pre><font color="#339966">+  end;</font></pre><pre> end;</pre><pre> </pre><pre> </pre><div>So now we can remove the above check and use a simple line to build CGE.</div><div><span><pre><pre>-- <br></pre>Cheers,
Abou Al Montacir</pre></span></div></div>
_______________________________________________<br>
Pkg-pascal-devel mailing list<br>
<a href="mailto:Pkg-pascal-devel@alioth-lists.debian.net" target="_blank">Pkg-pascal-devel@alioth-lists.debian.net</a><br>
<a href="https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-pascal-devel" rel="noreferrer" target="_blank">https://alioth-lists.debian.net/cgi-bin/mailman/listinfo/pkg-pascal-devel</a></blockquote></div></div>