Re: fribidi and meson

Dov Grobgeld <[email protected]> Sat, 10 Mar 2018 19:06:43 +0200
Newsgroups gmane.comp.internationalization.fribidi
Message-ID <CA++fsGE++27_j5448+5mycmMoyhZcrVwR=Dig6M=C+km-HvsqQ@mail.gmail.com>
--===============1070083490==
Content-Type: multipart/alternative; boundary="94eb2c0dda94ec1e18056711ee5e"

--94eb2c0dda94ec1e18056711ee5e
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Hi John,

I decided to have a look at the meson build, to learn about it, and also to
make sure that things are working smoothly under Windows.

Here is roughly what I did to make the compilation working:


   1. Installed
   https://www.python.org/ftp/python/3.6.4/python-3.6.4-amd64.exe
   2. Installed meson through pip
   python -m pip install meson
   3. Installed ninja.exe for windows and put in the path.
   4. Did a fresh git checkout of the main branch of fribidi.
   5. Opened a visual studio command prompt
   6. compiled fribidi through the following two commands:

   meson -buildtype release build_release
   ninja -C build_release

   7. Tested the visual studio backend through:
   meson -backend vs2010 -buiildtype release
   8. Opened visual studio, loaded the project, and tested a compilation.

This worked, so I tried running the tests as well through:

ninja -C build_release test

This ran all the fribidi.exe based tests (except one, which I fixed in
git), but it did not run the BidiTest and BidiCharacterTest tests, that
depend on glib, which is not available by default on Windows.

So I rewrote these two c-programs to remove all glib dependencies, and then
the tests then run under Windows as well.

But... And here is the strange part: BidiTest passed under debug but failed
on the release build! I don't know if this is a bug in the Microsoft VS2013
compiler, or something unitialized variable or something else. (An
interesting detail is that all the tests that failed involved FSI.) I
opened the following bug about it:
https://github.com/fribidi/fribidi/issues/71 . It would be interesting to
know if this happens only under VS2013 and not under later versions.

Regards,

Dov

On Fri, Mar 9, 2018 at 8:26 AM, John Emmas <[email protected]> wrote:

> On 08/03/2018 22:39, Khaled Hosny wrote:
>
>>
>> Please consult the official documentation, FriBiDi=E2=80=99s mailing lis=
t might
>> not be the best place to ask about meson:
>>
>>
> Thanks Khaled but I'm guessing that if it's possible for FriBIDI to build
> MSVC projects (or libraries) it can only do this if its meson build scrip=
t
> has been suitably configured?  Before I move my question to the meson
> community, can I at least check if other FriBIDI users are managing to
> build FriBIDI with MSVC?  And if so, are they doing this via meson?
>
> Or is there some alternative build strategy I should be looking at?
> Regards,
>
> John
>
> _______________________________________________
> fribidi mailing list
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/fribidi
>

--94eb2c0dda94ec1e18056711ee5e
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div class=3D"gmail_default" style=3D"font-family:arial,he=
lvetica,sans-serif">Hi John,<br><br></div><div class=3D"gmail_default" styl=
e=3D"font-family:arial,helvetica,sans-serif">I decided to have a look at th=
e meson build, to learn about it, and also to make sure that things are wor=
king smoothly under Windows. <br><br></div><div class=3D"gmail_default" sty=
le=3D"font-family:arial,helvetica,sans-serif">Here is roughly what I did to=
 make the compilation working:<br><br><ol><li>Installed <a href=3D"https://=
www.python.org/ftp/python/3.6.4/python-3.6.4-amd64.exe">https://www.python.=
org/ftp/python/3.6.4/python-3.6.4-amd64.exe</a></li><li>Installed meson thr=
ough pip<br>python -m pip install meson</li><li>Installed ninja.exe for win=
dows and put in the path.</li><li>Did a fresh git checkout of the main bran=
ch of fribidi.</li><li>Opened a visual studio command prompt <br></li><li>c=
ompiled fribidi through the following two commands:<br><br>meson -buildtype=
 release build_release<br>ninja -C build_release<br><br></li><li>Tested the=
 visual studio backend through:<br>meson -backend vs2010 -buiildtype releas=
e</li><li>Opened visual studio, loaded the project, and tested a compilatio=
n.<br></li></ol><p>This worked, so I tried running the tests as well throug=
h:</p><p>ninja -C build_release test</p><p>This ran all the fribidi.exe bas=
ed tests (except one, which I fixed in git), but it did not run the BidiTes=
t and BidiCharacterTest tests, that depend on glib, which is not available =
by default on Windows.</p><p>So I rewrote these two c-programs to remove al=
l glib dependencies, and then the tests then run under Windows as well.<br>=
</p><p>But... And here is the strange part: BidiTest passed under debug but=
 failed on the release build! I don&#39;t know if this is a bug in the Micr=
osoft VS2013 compiler, or something unitialized variable or something else.=
 (An interesting detail is that all the tests that failed involved FSI.) I =
opened the following bug about it: <a href=3D"https://github.com/fribidi/fr=
ibidi/issues/71">https://github.com/fribidi/fribidi/issues/71</a> . It woul=
d be interesting to know if this happens only under VS2013 and not under la=
ter versions.</p><p>Regards,</p><p>Dov<br></p></div></div><div class=3D"gma=
il_extra"><br><div class=3D"gmail_quote">On Fri, Mar 9, 2018 at 8:26 AM, Jo=
hn Emmas <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" t=
arget=3D"_blank">[email protected]</a>&gt;</span> wrote:<br><blockquo=
te class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc so=
lid;padding-left:1ex"><span class=3D"">On 08/03/2018 22:39, Khaled Hosny wr=
ote:<br>
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
<br>
Please consult the official documentation, FriBiDi=E2=80=99s mailing list m=
ight<br>
not be the best place to ask about meson:<br>
<br>
</blockquote>
<br></span>
Thanks Khaled but I&#39;m guessing that if it&#39;s possible for FriBIDI to=
 build MSVC projects (or libraries) it can only do this if its meson build =
script has been suitably configured?=C2=A0 Before I move my question to the=
 meson community, can I at least check if other FriBIDI users are managing =
to build FriBIDI with MSVC?=C2=A0 And if so, are they doing this via meson?=
<br>
<br>
Or is there some alternative build strategy I should be looking at? Regards=
,<br>
<br>
John<div class=3D"HOEnZb"><div class=3D"h5"><br>
______________________________<wbr>_________________<br>
fribidi mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">fribidi@=
lists.freedesktop.org</a><br>
<a href=3D"https://lists.freedesktop.org/mailman/listinfo/fribidi" rel=3D"n=
oreferrer" target=3D"_blank">https://lists.freedesktop.org/<wbr>mailman/lis=
tinfo/fribidi</a><br>
</div></div></blockquote></div><br></div>

--94eb2c0dda94ec1e18056711ee5e--

--===============1070083490==
Content-Type: text/plain; charset="utf-8"
MIME-Version: 1.0
Content-Transfer-Encoding: base64
Content-Disposition: inline

X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZnJpYmlkaSBt
YWlsaW5nIGxpc3QKZnJpYmlkaUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0cy5m
cmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9mcmliaWRpCg==

--===============1070083490==--