Re: Build system change GTK's master branch

On 15 August 2017 at 04:09, Chun-wei Fan (范君維) <fanc999 yahoo com tw> wrote:

Thanks to Emmanuele for giving me the credit here :)

Absolutely well earned.

Emmanuele Bassi 於 2017/8/15 上午 05:46 寫道:

The change means that GTK+ master now has a build-time dependency on:

   - Python 3.x
   - Meson -
   - Ninja (though Meson also supports Visual Studio out of the box)

Building GTK+ is now a matter of calling:

   $ meson $builddir $srcdir
   $ ninja -C $builddir
   $ sudo ninja -C $builddir install

I should also mention that there are a few bugs underway to make the Meson
build experience on Windows/Visual Studio better/working for the stack,
which includes:
GLib: 783270 and 784995
ATK: 785802
Pango: 783274
GDK-Pixbuf: 785767
GTK+-4.x/3.9x: 785210 (Meson), 773299 (sources)

Any comments in those bugs are really appreciated, and thanks to all who
have given pointers there, including Emmanuele, Bastien, Alejandro and
Ignacio (and to those who I may have missed, sorry!)

I'll make sure to review those bugs, thanks.

Please also note that there is a PR on Meson to fix introspection builds of
GTK+ on Windows[1] due to the 8192-character-per-command limit on Windows,

We should modify the introspection scanner to allow taking a list of files.

If the Python setup/teardown cost weren't so high, I'd even look into
running g-ir-scanner on individual files, generate intermediate
introspection data, and then have a "link" phase to generate the XML;
that would also immensely help with incremental builds.

and Visual Studio 2008 support is not quite there for projects that still
support it (i.e. for Python 2.7.x support, as that is built with Visual
Studio 2008 for Windows), as we need to embed SxS manifests with 2008

Supporting Visual Studio pre-2015 is going to be hard; various modules
are trying to standardise on a C99 pipeline, and I'd rather move away
from nearly ten year old development environments if that involves
work on our side.


[@] ebassi []

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]