package/efl: bump to version 1.23.2

- Remove upstream patch [1].
- Switch to meson build system.
- The cryptography backend is now mandatory, use openssl for the host
  and use openssl by default for the target if gnutls is not selected.
- Add host-giflib since the dependency can't be disabled anymore.
  (even by adding gif in HOST_EFL_EVAS_LOADERS_DISABLER).
- Disable explicitely meson build options that was not previously handled
  (avahi, emotion, ecore-imf-loarders...)
- Elput support is now enabled through drm meson option [2], remove
  BR2_PACKAGE_EFL_ELPUT.
- Update license file hash (csharp licensing information, cxx bindings
  licensing)
- Add COPYING.images and licenses/COPYING.ASL license file.
- The evas png loader is now mandatory [3] (even by adding png in
  EFL_EVAS_LOADERS_DISABLER).
- Same for the evas gif loader [4].
- Backport an upstream patch to fix the evas build with -Dwl=false.
- Update indentation of hash file (two spaces)

See:
https://www.enlightenment.org/news/efl-1.23.0
https://www.enlightenment.org/news/efl-1.23.1
https://www.enlightenment.org/news/efl-1.23.2

[1] https://git.enlightenment.org/core/efl.git/commit/?id=c46a8143916f0d3f66bbdffc7107c97c88df212d
[2] https://git.enlightenment.org/core/efl.git/tree/meson.build?h=v1.23.3#n297
[3] https://git.enlightenment.org/core/efl.git/tree/src/modules/evas/meson.build?h=v1.23.3#n2
[4] https://git.enlightenment.org/core/efl.git/tree/src/modules/evas/meson.build?h=v1.23.3#n4

Signed-off-by: Romain Naour <romain.naour@gmail.com>
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@bootlin.com>
This commit is contained in:
Romain Naour 2020-08-01 16:20:31 +02:00 committed by Thomas Petazzoni
parent b26a62236f
commit 6deaa3d50d
7 changed files with 209 additions and 258 deletions

View File

@ -146,6 +146,24 @@ endif
comment "Legacy options removed in 2020.08"
config BR2_PACKAGE_EFL_GIF
bool "efl evas gif loader is mandatory"
select BR2_LEGACY
help
Since efl 1.23.x, the evas gif loader can't be disabled.
config BR2_PACKAGE_EFL_PNG
bool "efl evas png loader is mandatory"
select BR2_LEGACY
help
Since efl 1.23.x, the evas png loader can't be disabled.
config BR2_PACKAGE_EFL_ELPUT
bool "efl elput is enabled by efl drm option"
select BR2_LEGACY
help
Since efl 1.23.x, the drm option enable the elput library.
config BR2_KERNEL_HEADERS_5_6
bool "kernel headers version 5.6.x are no longer supported"
select BR2_LEGACY

View File

@ -1,51 +0,0 @@
From b8458ed248cf49bfe9a263d708b5e34adf77e275 Mon Sep 17 00:00:00 2001
From: Cedric BAIL <cedric.bail@free.fr>
Date: Wed, 17 Jul 2019 11:12:18 -0700
Subject: [PATCH] eina: set EINA_VALUE_EMPTY during library init.
This is a work around compiler/linker limit on some system as reported
by Romain Naour.
Reviewed-by: Mike Blumenkrantz <michael.blumenkrantz@gmail.com>
Differential Revision: https://phab.enlightenment.org/D9348
(cherry picked from commit c46a8143916f0d3f66bbdffc7107c97c88df212d)
[Romain: backport to 1.22.x]
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
src/lib/eina/eina_value.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/src/lib/eina/eina_value.c b/src/lib/eina/eina_value.c
index c75a5f1235..942a6d533e 100644
--- a/src/lib/eina/eina_value.c
+++ b/src/lib/eina/eina_value.c
@@ -58,7 +58,7 @@ static Eina_Hash *_eina_value_inner_mps = NULL;
static Eina_Lock _eina_value_inner_mps_lock;
static char *_eina_value_mp_choice = NULL;
static int _eina_value_log_dom = -1;
-static const Eina_Value _eina_value_empty = EINA_VALUE_EMPTY;
+static Eina_Value _eina_value_empty;
#ifdef ERR
#undef ERR
@@ -5404,6 +5404,7 @@ eina_value_inner_free(size_t size, void *mem)
Eina_Bool
eina_value_init(void)
{
+ const Eina_Value empty = EINA_VALUE_EMPTY;
const char *choice, *tmp;
_eina_value_log_dom = eina_log_domain_register("eina_value",
@@ -5490,6 +5491,8 @@ eina_value_init(void)
EINA_ERROR_VALUE_FAILED = eina_error_msg_static_register("Eina_Value failed to copy/convert.");
+ memcpy(&_eina_value_empty, &empty, sizeof (empty));
+
return EINA_TRUE;
on_init_fail_hash:
--
2.21.0

View File

@ -0,0 +1,31 @@
From e1c289912c4ad68380f8b317c6c91d25b5b73814 Mon Sep 17 00:00:00 2001
From: Boris Faure <billiob@gmail.com>
Date: Thu, 2 Jan 2020 11:38:31 +0000
Subject: [PATCH] evas: fix compilation with -Dwl=false
Reviewed-by: Chris Michael <cp.michael@samsung.com>
Reviewed-by: Marcel Hollerbach <mail@marcel-hollerbach.de>
Differential Revision: https://phab.enlightenment.org/D10994
(cherry picked from commit a2afcfc872c29bd2c4a60fdafbc655c90f938d1e)
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
src/modules/evas/engines/gl_drm/evas_engine.c | 2 --
1 file changed, 2 deletions(-)
diff --git a/src/modules/evas/engines/gl_drm/evas_engine.c b/src/modules/evas/engines/gl_drm/evas_engine.c
index a5b4c7a4c8..8c1d6013e7 100644
--- a/src/modules/evas/engines/gl_drm/evas_engine.c
+++ b/src/modules/evas/engines/gl_drm/evas_engine.c
@@ -3,8 +3,6 @@
#include "../gl_common/evas_gl_define.h"
#include "../software_generic/evas_native_common.h"
-#include <wayland-client.h>
-
#ifdef HAVE_DLSYM
# include <dlfcn.h> /* dlopen,dlclose,etc */
#else
--
2.24.1

View File

@ -11,8 +11,11 @@ config BR2_PACKAGE_EFL
depends on BR2_PACKAGE_LUAJIT
select BR2_PACKAGE_DBUS
select BR2_PACKAGE_FREETYPE
select BR2_PACKAGE_GIFLIB
select BR2_PACKAGE_JPEG # Emile needs libjpeg
select BR2_PACKAGE_LIBCURL # Ecore_con_url, runtime dependency
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_OPENSSL if !(BR2_PACKAGE_GNUTLS && BR2_PACKAGE_LIBGCRYPT)
select BR2_PACKAGE_LZ4
select BR2_PACKAGE_ZLIB
help
@ -216,58 +219,35 @@ config BR2_PACKAGE_EFL_OPENGL_NONE
endchoice # OpenGL support
config BR2_PACKAGE_EFL_ELPUT
bool "Elput"
depends on BR2_PACKAGE_EFL_EEZE
select BR2_PACKAGE_LIBINPUT
select BR2_PACKAGE_LIBXKBCOMMON
help
The elput library is an efl abstraction for the libinput
library which can be used by various other subsystems
(ecore_fb, ecore_drm, etc) to handle interfacing with
libinput without having to duplicate the code in each
subsystem.
comment "Elput support needs udev /dev management (eeze)"
depends on !BR2_PACKAGE_EFL_EEZE
config BR2_PACKAGE_EFL_DRM
bool "Evas DRM Engine"
depends on BR2_PACKAGE_EFL_EEZE
depends on BR2_TOOLCHAIN_HAS_THREADS # libdrm
depends on BR2_PACKAGE_MESA3D_OPENGL_EGL # require libgbm from mesa3d
select BR2_PACKAGE_EFL_ELPUT
select BR2_PACKAGE_LIBDRM
select BR2_PACKAGE_LIBINPUT # For elput
select BR2_PACKAGE_LIBXKBCOMMON
help
This option enable building support for the Evas DRM Engine.
Since efl 1.23.x, the drm option enable the elput library
which is an efl abstraction for the libinput library which
can be used by various other subsystems (ecore_fb, ecore_drm,
etc) to handle interfacing with libinput without having to
duplicate the code in each subsystem.
comment "Evas DRM Engine needs udev /dev management (eeze), mesa3d w/ EGL support, threads"
depends on !BR2_TOOLCHAIN_HAS_THREADS || !BR2_PACKAGE_MESA3D_OPENGL_EGL \
|| !BR2_PACKAGE_EFL_EEZE
comment "libevas loaders"
config BR2_PACKAGE_EFL_PNG
bool "libevas png loader"
select BR2_PACKAGE_LIBPNG
help
This enables the loader code that loads png files using
libpng.
config BR2_PACKAGE_EFL_JPEG
bool "libevas jpeg loader"
help
This enables the loader code that loads jpeg files using
libjpeg.
config BR2_PACKAGE_EFL_GIF
bool "libevas gif loader"
select BR2_PACKAGE_GIFLIB
help
This enables the loader code that loads gif files using
giflib.
config BR2_PACKAGE_EFL_TIFF
bool "libevas tiff loader"
select BR2_PACKAGE_TIFF

View File

@ -1,11 +1,13 @@
# From https://download.enlightenment.org/rel/libs/efl/efl-1.22.3.tar.xz.sha256
sha256 7e7a4199b1e90d400dab2491db6032f8e0b26bab65ec19c9f8a97a82394331c8 efl-1.22.3.tar.xz
# From https://download.enlightenment.org/rel/libs/efl/efl-1.23.2.tar.xz.sha256sum
sha256 ba8d9e4a4690a6c917c98ec090fffa6ffe005ab911811b8d443aa155ad95d493 efl-1.23.2.tar.xz
sha256 d949e42ca8fd48d275c397c5fc2ac34c9b63ada715dcaf1a670e17bb62964341 COMPLIANCE
sha256 1f0597d326e2fdb54aa2f0caec6d8bb0afb9941ef32475f017ed02ca214fcf37 COPYING
sha256 af4ffe7ed1795a6e9cd3b3ce8747fdc45da449ff58cf35b8027c0699a66fd5cf licenses/COPYING.BSD
sha256 e60d07dfb2c5264f9f405fa52bf0d4f85429dd9ae1bc2ffcff8af1924ef720d1 licenses/COPYING.FTL
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 licenses/COPYING.GPL
sha256 ae2d99bf2a8e8310281bdbe5e8b78cbe5e89bfead8c01e67a8c68b530efcf25a licenses/COPYING.LGPL
sha256 2996a1c43ee757f9c997a829d82bdd584052323e73cf02ff8126c6fbd95c2d87 licenses/COPYING.NGINX-MIT
sha256 d847c749aa38b8d864665fc4e5c80e2f2a505e414fafe9712e85b5154e908218 licenses/COPYING.SMALL
sha256 d949e42ca8fd48d275c397c5fc2ac34c9b63ada715dcaf1a670e17bb62964341 COMPLIANCE
sha256 aacde32f865e7166fd8efb117f6a3436c8c6fbe8cce0e4501cb2dbe8c10c86f6 COPYING
sha256 e5133b4034a4749a781e2220ffb230b60a282b88861f1124d69a58abd5143994 COPYING.images
sha256 c95bae1d1ce0235ecccd3560b772ec1efb97f348a79f0fbe0a634f0c2ccefe2c licenses/COPYING.ASL
sha256 af4ffe7ed1795a6e9cd3b3ce8747fdc45da449ff58cf35b8027c0699a66fd5cf licenses/COPYING.BSD
sha256 e60d07dfb2c5264f9f405fa52bf0d4f85429dd9ae1bc2ffcff8af1924ef720d1 licenses/COPYING.FTL
sha256 8177f97513213526df2cf6184d8ff986c675afb514d4e68a404010521b880643 licenses/COPYING.GPL
sha256 ae2d99bf2a8e8310281bdbe5e8b78cbe5e89bfead8c01e67a8c68b530efcf25a licenses/COPYING.LGPL
sha256 2996a1c43ee757f9c997a829d82bdd584052323e73cf02ff8126c6fbd95c2d87 licenses/COPYING.NGINX-MIT
sha256 d847c749aa38b8d864665fc4e5c80e2f2a505e414fafe9712e85b5154e908218 licenses/COPYING.SMALL

View File

@ -4,13 +4,15 @@
#
################################################################################
EFL_VERSION = 1.22.3
EFL_VERSION = 1.23.2
EFL_SOURCE = efl-$(EFL_VERSION).tar.xz
EFL_SITE = http://download.enlightenment.org/rel/libs/efl
EFL_LICENSE = BSD-2-Clause, LGPL-2.1+, GPL-2.0+, FTL, MIT
EFL_LICENSE_FILES = \
COMPLIANCE \
COPYING \
COPYING.images \
licenses/COPYING.ASL \
licenses/COPYING.BSD \
licenses/COPYING.FTL \
licenses/COPYING.GPL \
@ -21,157 +23,139 @@ EFL_LICENSE_FILES = \
EFL_INSTALL_STAGING = YES
EFL_DEPENDENCIES = host-pkgconf host-efl host-luajit dbus freetype \
jpeg luajit lz4 zlib
giflib jpeg libpng luajit lz4 zlib
# Configure options:
# --disable-lua-old: build elua for the target.
# --disable-sdl: disable sdl2 support.
# --disable-spectre: disable spectre image loader.
# --disable-xinput22: disable X11 XInput v2.2+ support.
# --disable-vnc-server: remove libvncserver dependency.
# --enable-liblz4: use liblz4 from lz4 package.
# --with-net-control=none: disable connman networkmanager.
# --with-doxygen: disable doxygen documentation
# elua=true: build elua for the target.
# sdl=false: disable sdl2 support.
# xinput22=false: disable X11 XInput v2.2+ support.
# embedded-lz4=false: use liblz4 from lz4 package.
# network-backend=none: disable connman networkmanager.
EFL_CONF_OPTS = \
--with-edje-cc=$(HOST_DIR)/bin/edje_cc \
--with-eet-eet=$(HOST_DIR)/bin/eet \
--with-eldbus_codegen=$(HOST_DIR)/bin/eldbus-codegen \
--with-elementary-codegen=$(HOST_DIR)/bin/elementary_codegen \
--with-elm-prefs-cc=$(HOST_DIR)/bin/elm_prefs_cc \
--with-elua=$(HOST_DIR)/bin/elua \
--with-eolian-gen=$(HOST_DIR)/bin/eolian_gen \
--disable-image-loader-jp2k \
--with-net-control=none \
--disable-lua-old \
--disable-sdl \
--disable-spectre \
--disable-xinput22 \
--disable-vnc-server \
--enable-liblz4 \
--with-doxygen=no
-Davahi=false \
-Dbuild-examples=false \
-Dbuild-tests=false \
-Decore-imf-loaders-disabler=ibus,scim,xim \
-Delua=true \
-Demotion-generic-loaders-disabler=vlc \
-Demotion-loaders-disabler=gstreamer,gstreamer1,libvlc,xine \
-Dembedded-lz4=false \
-Dlua-interpreter=luajit \
-Dnetwork-backend=none \
-Dpixman=false \
-Dsdl=false \
-Dvnc-server=false \
-Dxinput22=false
EFL_BINDINGS = luajit
ifeq ($(BR2_PACKAGE_EFL_EOLIAN_CPP),y)
EFL_CONF_OPTS += --enable-cxx-bindings \
--with-eolian-cxx=$(HOST_DIR)/bin/eolian_cxx
else
EFL_CONF_OPTS += --disable-cxx-bindings
EFL_BINDINGS += cxx
endif
EFL_CONF_OPTS += -Dbindings=$(subst $(space),$(comma),$(EFL_BINDINGS))
ifeq ($(BR2_PACKAGE_EFL_EEZE),y)
EFL_DEPENDENCIES += udev
EFL_CONF_OPTS += --enable-libeeze
EFL_CONF_OPTS += -Deeze=true
else
EFL_CONF_OPTS += --disable-libeeze
EFL_CONF_OPTS += -Deeze=false
endif
ifeq ($(BR2_PACKAGE_EFL_UTIL_LINUX_LIBMOUNT),y)
EFL_DEPENDENCIES += util-linux
EFL_CONF_OPTS += --enable-libmount
EFL_CONF_OPTS += -Dlibmount=true
else
EFL_CONF_OPTS += --disable-libmount
EFL_CONF_OPTS += -Dlibmount=false
endif
ifeq ($(BR2_PACKAGE_SYSTEMD),y)
EFL_CONF_OPTS += --enable-systemd
EFL_CONF_OPTS += -Dsystemd=true
EFL_DEPENDENCIES += systemd
else
EFL_CONF_OPTS += --disable-systemd
EFL_CONF_OPTS += -Dsystemd=false
endif
ifeq ($(BR2_PACKAGE_FONTCONFIG),y)
EFL_CONF_OPTS += --enable-fontconfig
EFL_CONF_OPTS += -Dfontconfig=true
EFL_DEPENDENCIES += fontconfig
else
EFL_CONF_OPTS += --disable-fontconfig
EFL_CONF_OPTS += -Dfontconfig=false
endif
ifeq ($(BR2_PACKAGE_LIBFRIBIDI),y)
EFL_CONF_OPTS += --enable-fribidi
EFL_CONF_OPTS += -Dfribidi=true
EFL_DEPENDENCIES += libfribidi
else
EFL_CONF_OPTS += --disable-fribidi
EFL_CONF_OPTS += -Dfribidi=false
endif
ifeq ($(BR2_PACKAGE_GSTREAMER1)$(BR2_PACKAGE_GST1_PLUGINS_BASE),yy)
EFL_CONF_OPTS += --enable-gstreamer1
EFL_CONF_OPTS += -Dgstreamer=true
EFL_DEPENDENCIES += gstreamer1 gst1-plugins-base
else
EFL_CONF_OPTS += --disable-gstreamer1
EFL_CONF_OPTS += -Dgstreamer=false
endif
ifeq ($(BR2_PACKAGE_BULLET),y)
EFL_CONF_OPTS += --enable-physics
EFL_CONF_OPTS += -Dphysics=true
EFL_DEPENDENCIES += bullet
else
EFL_CONF_OPTS += --disable-physics
EFL_CONF_OPTS += -Dphysics=false
endif
ifeq ($(BR2_PACKAGE_LIBSNDFILE),y)
EFL_CONF_OPTS += --enable-audio
EFL_CONF_OPTS += -Daudio=true
EFL_DEPENDENCIES += libsndfile
else
EFL_CONF_OPTS += --disable-audio
EFL_CONF_OPTS += -Daudio=false
endif
ifeq ($(BR2_PACKAGE_PULSEAUDIO),y)
EFL_CONF_OPTS += --enable-pulseaudio
EFL_CONF_OPTS += -Dpulseaudio=true
EFL_DEPENDENCIES += pulseaudio
else
EFL_CONF_OPTS += --disable-pulseaudio
EFL_CONF_OPTS += -Dpulseaudio=false
endif
ifeq ($(BR2_PACKAGE_HARFBUZZ),y)
EFL_DEPENDENCIES += harfbuzz
EFL_CONF_OPTS += --enable-harfbuzz
EFL_CONF_OPTS += -Dharfbuzz=true
else
EFL_CONF_OPTS += --disable-harfbuzz
EFL_CONF_OPTS += -Dharfbuzz=false
endif
ifeq ($(BR2_PACKAGE_TSLIB),y)
EFL_DEPENDENCIES += tslib
EFL_CONF_OPTS += --enable-tslib
EFL_CONF_OPTS += -Dtslib=true
else
EFL_CONF_OPTS += --disable-tslib
EFL_CONF_OPTS += -Dtslib=false
endif
ifeq ($(BR2_PACKAGE_LIBGLIB2),y)
EFL_DEPENDENCIES += libglib2
EFL_CONF_OPTS += --with-glib=yes
EFL_CONF_OPTS += -Dglib=true
else
EFL_CONF_OPTS += --with-glib=no
EFL_CONF_OPTS += -Dglib=false
endif
# Prefer openssl (the default) over gnutls.
ifeq ($(BR2_PACKAGE_OPENSSL),y)
EFL_DEPENDENCIES += openssl
EFL_CONF_OPTS += --with-crypto=openssl
else ifeq ($(BR2_PACKAGE_GNUTLS)$(BR2_PACKAGE_LIBGCRYPT),yy)
EFL_CONF_OPTS += -Dcrypto=openssl
else
EFL_DEPENDENCIES += gnutls libgcrypt
EFL_CONF_OPTS += --with-crypto=gnutls \
--with-libgcrypt-prefix=$(STAGING_DIR)/usr
else
EFL_CONF_OPTS += --with-crypto=none
endif # BR2_PACKAGE_OPENSSL
ifeq ($(BR2_PACKAGE_EFL_ELPUT),y)
EFL_CONF_OPTS += --enable-elput
EFL_DEPENDENCIES += libinput
else
EFL_CONF_OPTS += --disable-elput
EFL_CONF_OPTS += -Dcrypto=gnutls
endif
ifeq ($(BR2_PACKAGE_EFL_FB),y)
EFL_CONF_OPTS += --enable-fb
EFL_CONF_OPTS += -Dfb=true
else
EFL_CONF_OPTS += --disable-fb
EFL_CONF_OPTS += -Dfb=false
endif
ifeq ($(BR2_PACKAGE_EFL_X_XLIB),y)
EFL_CONF_OPTS += \
--with-x11=xlib \
--with-x=$(STAGING_DIR) \
--x-includes=$(STAGING_DIR)/usr/include \
--x-libraries=$(STAGING_DIR)/usr/lib
EFL_CONF_OPTS += -Dx11=true
EFL_DEPENDENCIES += \
xlib_libX11 \
@ -185,100 +169,83 @@ EFL_DEPENDENCIES += \
xlib_libXScrnSaver \
xlib_libXtst
else
EFL_CONF_OPTS += --with-x11=none
EFL_CONF_OPTS += -Dx11=false
endif
ifeq ($(BR2_PACKAGE_EFL_OPENGL),y)
EFL_CONF_OPTS += --with-opengl=full
EFL_CONF_OPTS += -Dopengl=full
EFL_DEPENDENCIES += libgl
# OpenGL ES requires EGL
else ifeq ($(BR2_PACKAGE_EFL_OPENGLES),y)
EFL_CONF_OPTS += --with-opengl=es --enable-egl
EFL_CONF_OPTS += -Dopengl=es-egl
EFL_DEPENDENCIES += libegl libgles
else ifeq ($(BR2_PACKAGE_EFL_OPENGL_NONE),y)
EFL_CONF_OPTS += --with-opengl=none
EFL_CONF_OPTS += -Dopengl=none
endif
ifeq ($(BR2_PACKAGE_EFL_DRM),y)
EFL_CONF_OPTS += --enable-drm
EFL_DEPENDENCIES += libdrm libegl mesa3d
EFL_CONF_OPTS += -Ddrm=true
EFL_DEPENDENCIES += libdrm libegl libinput mesa3d
else
EFL_CONF_OPTS += --disable-drm
EFL_CONF_OPTS += -Ddrm=false
endif
# The EFL Wayland support requires Evas GLES DRM engine support
# which depends on wayland-client to build.
# So enable gl_drm only when wayland support is selected.
ifeq ($(BR2_PACKAGE_EFL_WAYLAND),y)
EFL_DEPENDENCIES += wayland wayland-protocols
EFL_CONF_OPTS += --enable-wayland --enable-gl-drm
EFL_CONF_OPTS += -Dwl=true
else
EFL_CONF_OPTS += --disable-wayland --disable-gl-drm
EFL_CONF_OPTS += -Dwl=false
endif
EFL_DEPENDENCIES += $(if $(BR2_PACKAGE_LIBXKBCOMMON),libxkbcommon)
# Loaders that need external dependencies needs to be --enable-XXX=yes
# otherwise the default is '=static'.
# All other loaders are statically built-in
ifeq ($(BR2_PACKAGE_EFL_PNG),y)
EFL_CONF_OPTS += --enable-image-loader-png=yes
EFL_DEPENDENCIES += libpng
else
EFL_CONF_OPTS += --disable-image-loader-png
endif
# Evas loaders are shared by default.
EFL_CONF_OPTS += -Devas-modules=shared
# json evas loader is disabled by default by upstream.
# Disable libspectre (ps).
# Keep all other evas loader enabled or handled below.
EFL_EVAS_LOADERS_DISABLER = gst json ps
ifeq ($(BR2_PACKAGE_EFL_JPEG),y)
EFL_CONF_OPTS += --enable-image-loader-jpeg=yes
# efl already depends on jpeg.
else
EFL_CONF_OPTS += --disable-image-loader-jpeg
endif
ifeq ($(BR2_PACKAGE_EFL_GIF),y)
EFL_CONF_OPTS += --enable-image-loader-gif=yes
EFL_DEPENDENCIES += giflib
else
EFL_CONF_OPTS += --disable-image-loader-gif
ifeq ($(BR2_PACKAGE_EFL_JPEG),)
EFL_EVAS_LOADERS_DISABLER += jp2k
endif
ifeq ($(BR2_PACKAGE_EFL_TIFF),y)
EFL_CONF_OPTS += --enable-image-loader-tiff=yes
EFL_DEPENDENCIES += tiff
else
EFL_CONF_OPTS += --disable-image-loader-tiff
EFL_EVAS_LOADERS_DISABLER += tiff
endif
ifeq ($(BR2_PACKAGE_EFL_WEBP),y)
EFL_CONF_OPTS += --enable-image-loader-webp=yes
EFL_DEPENDENCIES += webp
else
EFL_CONF_OPTS += --disable-image-loader-webp
EFL_EVAS_LOADERS_DISABLER += webp
endif
ifeq ($(BR2_PACKAGE_POPPLER),y)
# poppler needs c++11
EFL_CONF_ENV += CXXFLAGS="$(TARGET_CXXFLAGS) -std=c++11"
EFL_DEPENDENCIES += poppler
EFL_CONF_OPTS += --enable-poppler
else
EFL_CONF_OPTS += --disable-poppler
EFL_EVAS_LOADERS_DISABLER += pdf
endif
ifeq ($(BR2_PACKAGE_EFL_LIBRAW),y)
EFL_DEPENDENCIES += libraw
EFL_CONF_OPTS += --enable-libraw
else
EFL_CONF_OPTS += --disable-libraw
EFL_EVAS_LOADERS_DISABLER += raw
endif
ifeq ($(BR2_PACKAGE_EFL_SVG),y)
EFL_DEPENDENCIES += librsvg cairo
EFL_CONF_OPTS += --enable-librsvg
else
EFL_CONF_OPTS += --disable-librsvg
EFL_EVAS_LOADERS_DISABLER += rsvg
endif
EFL_CONF_OPTS += -Devas-loaders-disabler=$(subst $(space),$(comma),$(EFL_EVAS_LOADERS_DISABLER))
ifeq ($(BR2_PACKAGE_UPOWER),)
# upower ecore system module is only useful if upower
# dbus service is available.
@ -295,7 +262,7 @@ ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
EFL_DEPENDENCIES += libunwind
endif
$(eval $(autotools-package))
$(eval $(meson-package))
################################################################################
#
@ -311,73 +278,78 @@ $(eval $(autotools-package))
# * host-dbus: for Eldbus
# * host-freetype: for libevas
# * host-libglib2: for libecore
# * host-libjpeg, host-libpng: for libevas image loader
# * host-giflib, host-libjpeg, host-libpng: for libevas image loader
# * host-luajit for Elua tool for the host
# * host-openssl: cryptography backends.
HOST_EFL_DEPENDENCIES = \
host-pkgconf \
host-dbus \
host-freetype \
host-giflib \
host-libglib2 \
host-libjpeg \
host-libpng \
host-luajit \
host-openssl \
host-zlib
# Configure options:
# --disable-audio, --disable-multisense remove libsndfile dependency.
# --disable-fontconfig: remove dependency on fontconfig.
# --disable-fribidi: remove dependency on libfribidi.
# --disable-gstreamer1: remove dependency on gtreamer 1.0.
# --disable-libeeze: remove libudev dependency.
# --disable-libmount: remove dependency on host-util-linux libmount.
# --disable-lua-old: build elua for the host.
# --disable-physics: remove Bullet dependency.
# --disable-poppler: disable poppler image loader.
# --disable-spectre: disable spectre image loader.
# --disable-systemd: disable systemd dependency.
# --disable-vnc-server: remove libvncserver dependency.
# --enable-image-loader-gif=no: disable Gif dependency.
# --enable-image-loader-tiff=no: disable Tiff dependency.
# --with-crypto=none: remove dependencies on openssl or gnutls.
# --with-doxygen: disable doxygen documentation
# --with-net-control=none: disable connman networkmanager.
# --with-x11=none: remove dependency on X.org.
# audio=false: remove libsndfile dependency.
# eeze=false: remove libudev dependency.
# libmount=false: remove dependency on host-util-linux libmount.
# elua=true: build elua for the host.
# physics=false: remove Bullet dependency.
# network-backend=none: remove network-backend (connman).
# embedded-lz4=true: use lz4 bundled in efl.
HOST_EFL_CONF_OPTS += \
--disable-audio \
--disable-fontconfig \
--disable-fribidi \
--disable-gstreamer1 \
--disable-libeeze \
--disable-libmount \
--disable-libraw \
--disable-librsvg \
--disable-lua-old \
--disable-multisense \
--disable-physics \
--disable-poppler \
--disable-spectre \
--disable-systemd \
--disable-xcf \
--disable-vnc-server \
--enable-image-loader-gif=no \
--enable-image-loader-jpeg=yes \
--enable-image-loader-png=yes \
--enable-image-loader-tiff=no \
--with-crypto=none \
--with-doxygen=no \
--with-glib=yes \
--with-net-control=none \
--with-opengl=none \
--with-x11=none
-Daudio=false \
-Davahi=false \
-Dbuild-examples=false \
-Dbuild-tests=false \
-Dcrypto=openssl \
-Decore-imf-loaders-disabler=ibus,scim,xim \
-Dedje-sound-and-video=false \
-Deeze=false \
-Delogind=false \
-Delua=true \
-Dembedded-lz4=true \
-Demotion-generic-loaders-disabler=vlc \
-Demotion-loaders-disabler=gstreamer,gstreamer1,libvlc,xine \
-Dfontconfig=false \
-Dfribidi=false \
-Dglib=true \
-Dgstreamer=false \
-Dharfbuzz=false \
-Dlibmount=false \
-Dlua-interpreter=luajit \
-Dnetwork-backend=none \
-Dnls=false \
-Dopengl=none \
-Dphysics=false \
-Dpixman=false \
-Dpulseaudio=false \
-Dsdl=false \
-Dsystemd=false \
-Dv4l2=false \
-Dvnc-server=false \
-Dx11=false \
-Dxinput22=false
# List of modular image/vector loaders to disable in efl
HOST_EFL_EVAS_LOADERS_DISABLER = bmp dds eet generic gst ico json \
jp2k pdf pmaps ps psd raw rsvg tga tgv tiff wbmp webp xcf xpm
HOST_EFL_CONF_OPTS += -Devas-loaders-disabler=$(subst $(space),$(comma),$(HOST_EFL_EVAS_LOADERS_DISABLER))
HOST_EFL_BINDINGS = luajit
# Enable Eolian language bindings to provide eolian_cxx tool for the
# host which is required to build Eolian language bindings for the
# target.
ifeq ($(BR2_PACKAGE_EFL_EOLIAN_CPP),y)
HOST_EFL_CONF_OPTS += --enable-cxx-bindings
else
HOST_EFL_CONF_OPTS += --disable-cxx-bindings
HOST_EFL_BINDINGS += cxx
endif
HOST_EFL_CONF_OPTS += -Dbindings=$(subst $(space),$(comma),$(HOST_EFL_BINDINGS))
# Always disable upower system module from host as it's
# not useful and would try to use the output/host/var
@ -388,4 +360,4 @@ define HOST_EFL_HOOK_REMOVE_UPOWER
endef
HOST_EFL_POST_INSTALL_HOOKS = HOST_EFL_HOOK_REMOVE_UPOWER
$(eval $(host-autotools-package))
$(eval $(host-meson-package))

View File

@ -17,7 +17,6 @@ config BR2_PACKAGE_ENLIGHTENMENT
select BR2_PACKAGE_EFL_X_XLIB
select BR2_PACKAGE_EFL_EEZE
select BR2_PACKAGE_EFL_JPEG # needed at runtime by enlightenment_start
select BR2_PACKAGE_EFL_PNG # needed at runtime by enlightenment_start
select BR2_PACKAGE_EFL_SVG
select BR2_PACKAGE_XCB_UTIL_KEYSYMS
help