After almost 6 months of development we are releasing version 1.23 of the Enlightenment Foundation Libraries, featuring over 2100 patches from 48 developers around the world. Thanks a lot for your contributions!
Again, the primary focus of this release has been stabilizing the EO library as well as an extending the set of unified API which is based on it. From this release onwards we also switched to meson as our only build system (RIP autotools, you served us well for a long time). The 2110 commits contain more changes to possible list here, but you will find improved DRM support, a new widget for controlling vector animations, a first step towards MVVM support, general bugfixes and more.
Please see the NEWS file for more details.
(git log –pretty=oneline v1.22.0..v1.23.0 | wc -l)
Number of commits in 1.23: 2110
Number of commits in 1.22: 2152
(git shortlog -ns v1.22.0..v1.23.0 | wc -l)
Number of authors in 1.23: 48
Number of authors in 1.22: 55
(git diff –stat v1.22.0..v1.23.0 | tail -1)
2296 files changed, 90115 insertions(+), 85554 deletions(-) in 1.23
3154 files changed, 169564 insertions(+), 79861 deletions(-) in 1.22
See the INSTALL file: https://git.enlightenment.org/core/efl.git/tree/INSTALL
EFL requires a C and C++ compiler by default. C++ exists mostly to interface to C++ libraries like Bullet and our C++ bindings.
Required by default:
You might want webp support so disable fewer loaders and remove webp from the disablers with: -Devas-loaders-disabler=json
You may also want wayland support when on Linux. This enables support for EFL to trget wayland support for client applications. To do this supply: -Dwl=true
This requires linux frame-buffer support, headers etc. This supports basic frame-buffers like /dev/fb as well as input via /dev/input for keyboards and mice in a basic way. Enable this with: -Dfb=true
For more modern framebuffer support you may want drm/kms rendering support so enable this. This is what you also want for wayland compositor support in enlightenment as it will want to be able to render to a moder framebuffer tarbet with atomic buffer swapping. To do this provide: -Ddrm=true
You may want to change the install prefix for EFL with: –prefix=/path/to/prefix
The default prefix if not given is “/usr/local”. Many people like to use prefixes like /opt/e or /opt/efl or /home/USERNAME/software etc.
You can affect compilation optimization, debugging and other factors by setting your CFLAGS environment variable (and CXXFLAGS). Be aware that to ensure ABI stability you should use the exact same CFLAGS / CXXFLAGS for all the build of EFL and any applications/libraries that depend on them.
There are many other configure options that can be used, but in general it is not a good idea to go enabling or disabling things unless you wish to break things. The defaults are well tested, with the above recommended options also being well tested. Go much further and your mileage may vary wildly. Disabling features is a good way of breaking EFL functionality, so it is not recommended to mess with these without understanding the implications. The defaults have been carefully considered to provide full functionality so users will not be missing anything.
EFL officially offers openssl or gnutls as cryptography backends. By default it uses “openssl” to do signature, cipher and related. Alternatively one can use “gnutls” (some distros are strict about licenses and want gnutls instead of openssl) You can switch to gnutls with: -Dcrypto=gnutls