This page covers the minimum meson build system version we need for EFL and explains the reasoning behind it.
It also gives a current overview on the versions of meson packages by some of the major distributions.
EFL does currently require meson version 0.47, which was released 2nd of July 2018.
By the time we will release EFL 1.23 with meson as the only build system our required meson version would be released for over a year. Not really a bleeding edge requirement anymore.
Features we require from 0.47:
- array flattening on set_variable
- copy: call in configure_file, cmake modules would not be creatable
- flattening of dependency array in library() and executable() calls
- we need @BASENAME@ and @PLAINNAME@ in custom_targets, so eolian does generate the dep file correctly.
- we use dictionaries for .eo file listing, to ensure that bindings can use them correctly. This datatype was introduced here.
- we started to use "install_mode" on all install_data calls a while back.
In addition to this older meson version (0.46.1 and below) seem to have a bug in the iterator usage which is a problem for our setup.
Distributions status on our required meson version:
- Stable: 0.37.1 but an official backport of 0.49 is available
- Testing/Unstable: 0.49.2
- As still has efl 1.8.6 there is no chance it will get an update to 1.23 and testing/unstable provides what is needed
-> not a problem
- Bionic 18.04 LTS: 0.45.1
- Backport requested: https://bugs.launchpad.net/bionic-backports/+bug/1815092
- Cosmic 18.10: 0.47.2
- Disco 19.04: 0.49
-> Bionic 18.04 LTS still has efl 1.8.6, no chance for an upgrade to 1.23
- Fedora EPEL 7: 0.47.2
- Fedora 29: 0.50
- Fedora 30: 0.50.1
-> No problem
- Leap 15.0: 0.46
- Leap 15.1: ?
- Tumbleweed: 0.49.2
-> Leap 15 with the older mesonversion could be a problem. On the other hand Leap 15 still uses efl 1.20.7 so an upgrade to (not released) 1.23 seems unlikely. Having it supported for Leap 15.1 would be more important.