This commit is contained in:
TriForceX
2021-03-13 22:13:38 -03:00
parent c77595adbd
commit b3ecc6e32d
7043 changed files with 119377 additions and 73694 deletions

View File

@@ -0,0 +1,36 @@
From 51dfe1863ddc8c5dd576405a9bbb8bca875c1142 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 1 Aug 2020 02:25:47 +0200
Subject: [PATCH] ecore_evas/engines/drm/meson.build: use "gl_deps" as engine
dependencies
Meson trigger an error since "engine_gl_drm" variable doesn't exist.
src/modules/ecore_evas/engines/drm/meson.build:10:2: ERROR: Unknown variable "engine_gl_drm".
Instead use "gl_deps" as engine dependencies.
Upstream status:
https://sourceforge.net/p/enlightenment/mailman/message/37075016/
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
src/modules/ecore_evas/engines/drm/meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/modules/ecore_evas/engines/drm/meson.build b/src/modules/ecore_evas/engines/drm/meson.build
index 58071010d0..0741d7fccd 100644
--- a/src/modules/ecore_evas/engines/drm/meson.build
+++ b/src/modules/ecore_evas/engines/drm/meson.build
@@ -3,7 +3,7 @@ engine_deps = [ecore_drm2, ecore_input, eeze, elput, libdrm, engine_drm]
if get_option('opengl') != 'none'
config_h.set('BUILD_ECORE_EVAS_GL_DRM', '1')
- engine_deps += [engine_gl_drm]
+ engine_deps += [gl_deps]
endif
engine_include_dir += include_directories(join_paths('..', '..', '..', 'evas', 'engines', 'drm'))
--
2.25.4

View File

@@ -1,48 +0,0 @@
From c394fba4c4c820ea2b7200306ff033e4bbc12ead Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Mon, 22 Apr 2019 19:26:09 +0200
Subject: [PATCH] libunibreak: add missing __has_attribute definitions for old
compilers
__has_attribute has been introduced with gcc 5 [1].
[1] https://www.gnu.org/software/gcc/gcc-5/changes.html
Fixes:
http://autobuild.buildroot.net/results/64ab825048fac1654b0d0698740ddf857fcc0afa/build-end.log
Upstream status:
https://phab.enlightenment.org/T7818
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
src/static_libs/libunibreak/wordbreak.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/src/static_libs/libunibreak/wordbreak.c b/src/static_libs/libunibreak/wordbreak.c
index 017e0fd091..50c830c7cc 100644
--- a/src/static_libs/libunibreak/wordbreak.c
+++ b/src/static_libs/libunibreak/wordbreak.c
@@ -209,6 +209,9 @@ static void set_wordbreaks(
posLast = posCur;
break;
}
+#ifndef __has_attribute
+# define __has_attribute(x) 0
+#endif
#if __has_attribute(fallthrough)
__attribute__((fallthrough));
#endif
@@ -325,6 +328,9 @@ static void set_wordbreaks(
wbcSeqStart = wbcCur;
posLast = posCur;
}
+#ifndef __has_attribute
+# define __has_attribute(x) 0
+#endif
#if __has_attribute(fallthrough)
__attribute__((fallthrough));
#endif
--
2.14.5

View File

@@ -0,0 +1,37 @@
From 8548b02c487ba7e9d78489c6db58812ee5cfb197 Mon Sep 17 00:00:00 2001
From: Romain Naour <romain.naour@gmail.com>
Date: Sat, 1 Aug 2020 01:01:00 +0200
Subject: [PATCH] ecore_evas/engines/drm/meson.build: fix "gl_drm" include
directory
The Evas_Engine_GL_Drm.h file is in "gl_drm" directory, not "drm".
../src/modules/ecore_evas/engines/drm/ecore_evas_drm.c:23:11: fatal error: Evas_Engine_GL_Drm.h: No such file or directory
23 | # include <Evas_Engine_GL_Drm.h>
| ^~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
Upstream status:
https://sourceforge.net/p/enlightenment/mailman/message/37075004/
Signed-off-by: Romain Naour <romain.naour@gmail.com>
---
src/modules/ecore_evas/engines/drm/meson.build | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/modules/ecore_evas/engines/drm/meson.build b/src/modules/ecore_evas/engines/drm/meson.build
index 0741d7fccd..edda1abd71 100644
--- a/src/modules/ecore_evas/engines/drm/meson.build
+++ b/src/modules/ecore_evas/engines/drm/meson.build
@@ -6,7 +6,7 @@ if get_option('opengl') != 'none'
engine_deps += [gl_deps]
endif
-engine_include_dir += include_directories(join_paths('..', '..', '..', 'evas', 'engines', 'drm'))
+engine_include_dir += include_directories(join_paths('..', '..', '..', 'evas', 'engines', 'gl_drm'))
shared_module(mod_full_name, engine_src,
include_directories : config_dir + [engine_include_dir],
--
2.25.4

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

@@ -1,20 +1,21 @@
config BR2_PACKAGE_EFL
bool "efl"
# g++ issue with 4.4.5, tested with g++ 4.7.2
depends on BR2_HOST_GCC_AT_LEAST_4_7
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_7
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # C++11
depends on BR2_HOST_GCC_AT_LEAST_4_9 # host-efl
depends on BR2_INSTALL_LIBSTDCPP
depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS # luajit
depends on BR2_TOOLCHAIN_HAS_THREADS # untested without threads
depends on BR2_USE_MMU
depends on BR2_USE_WCHAR # use wchar_t
depends on !BR2_STATIC_LIBS # dlfcn.h
# https://phab.enlightenment.org/T2728
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
# https://phab.enlightenment.org/T2728
select BR2_PACKAGE_LUAJIT # Lua support broken
select BR2_PACKAGE_LIBPNG
select BR2_PACKAGE_OPENSSL if !(BR2_PACKAGE_GNUTLS && BR2_PACKAGE_LIBGCRYPT)
select BR2_PACKAGE_LZ4
select BR2_PACKAGE_ZLIB
help
@@ -25,8 +26,7 @@ config BR2_PACKAGE_EFL
if BR2_PACKAGE_EFL
config BR2_PACKAGE_EFL_BULLET
bool "Enable bullet support (recommended)"
default y
bool "Enable bullet support"
select BR2_PACKAGE_BULLET
help
If you have chosen to disable physics support, this disables
@@ -130,8 +130,7 @@ comment "efl's libmount support needs udev /dev management (eeze)"
config BR2_PACKAGE_EFL_HAS_RECOMMENDED_CONFIG
bool
default y if BR2_PACKAGE_EFL_BULLET && \
BR2_PACKAGE_EFL_EEZE && \
default y if BR2_PACKAGE_EFL_EEZE && \
BR2_PACKAGE_EFL_FONTCONFIG && \
BR2_PACKAGE_EFL_GSTREAMER1 && \
BR2_PACKAGE_EFL_LIBFRIBIDI && \
@@ -144,15 +143,14 @@ comment "Warning: one of the recommended option for EFL is not enabled"
config BR2_PACKAGE_EFL_EOLIAN_CPP
bool "Enable Eolian C++ bindings"
depends on BR2_HOST_GCC_AT_LEAST_4_8 # Eolian (host) needs C++11
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # Eolian needs C++11
help
Eolian is an EO object parser and code generator.
With this option enabled Eolian will handle automatic
generation of EFL bindings for the C++11 language.
comment "Eolian needs host and target gcc >= 4.8"
depends on !BR2_HOST_GCC_AT_LEAST_4_8 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
comment "Eolian needs gcc >= 4.8"
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
comment "libecore video support"
@@ -168,7 +166,6 @@ config BR2_PACKAGE_EFL_X_XLIB
select BR2_PACKAGE_XLIB_LIBXCURSOR
select BR2_PACKAGE_XLIB_LIBXDAMAGE
select BR2_PACKAGE_XLIB_LIBXINERAMA
select BR2_PACKAGE_XLIB_LIBXP
select BR2_PACKAGE_XLIB_LIBXRANDR
select BR2_PACKAGE_XLIB_LIBXRENDER
select BR2_PACKAGE_XLIB_LIBXSCRNSAVER
@@ -220,60 +217,36 @@ config BR2_PACKAGE_EFL_OPENGL_NONE
endchoice # OpenGL support
config BR2_PACKAGE_EFL_ELPUT
bool "Elput"
depends on BR2_ENABLE_LOCALE # libinput
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), locales"
depends on !BR2_PACKAGE_EFL_EEZE || !BR2_ENABLE_LOCALE
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
depends on BR2_ENABLE_LOCALE # efl-elput <- libinput
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.
comment "Evas DRM Engine needs udev /dev management (eeze), mesa3d w/ EGL support, threads, locales"
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 || !BR2_ENABLE_LOCALE
|| !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"
select BR2_PACKAGE_OPENJPEG
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
@@ -294,6 +267,7 @@ config BR2_PACKAGE_EFL_LIBRAW
config BR2_PACKAGE_EFL_SVG
bool "SVG loader"
depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # librsvg
depends on BR2_TOOLCHAIN_HAS_SYNC_4 # librsvg -> pango -> harfbuzz
depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_8 # librsvg -> pango -> harfbuzz
select BR2_PACKAGE_LIBRSVG
@@ -302,14 +276,15 @@ config BR2_PACKAGE_EFL_SVG
This option enables the Evas generic SVG loader
comment "SVG loader needs a toolchain w/ gcc >= 4.8"
depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
depends on BR2_TOOLCHAIN_HAS_SYNC_4
depends on !BR2_TOOLCHAIN_GCC_AT_LEAST_4_8
endif # BR2_PACKAGE_EFL
comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.7, threads, wchar"
comment "efl needs a toolchain w/ C++, dynamic library, gcc >= 4.9, host gcc >= 4.9, threads, wchar"
depends on !BR2_INSTALL_LIBSTDCPP \
|| !BR2_HOST_GCC_AT_LEAST_4_7 || !BR2_TOOLCHAIN_GCC_AT_LEAST_4_7 \
|| BR2_STATIC_LIBS || !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
depends on BR2_PACKAGE_LUAJIT_ARCH_SUPPORTS
|| !BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 \
|| !BR2_HOST_GCC_AT_LEAST_4_9 || BR2_STATIC_LIBS \
|| !BR2_TOOLCHAIN_HAS_THREADS || !BR2_USE_WCHAR
depends on BR2_USE_MMU

View File

@@ -1,11 +1,13 @@
# From https://download.enlightenment.org/rel/libs/efl/efl-1.22.2.tar.xz.sha256
sha256 1699891f825911622de0aa77fe1140eff7335aba619d2352485e54dcff6b1cd0 efl-1.22.2.tar.xz
# From https://download.enlightenment.org/rel/libs/efl/efl-1.25.0.tar.xz.sha256sum
sha256 53941f910daf5d1b5162bfdb0dc66f1a04e55a0f2dd7760da0ad63713370956e efl-1.25.0.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 d666b6b2df9f5b791f85c299c65516cb55528b02a807603de246f65f4918ae22 COMPLIANCE
sha256 5bceb52d65debe420bc520f2992807740dc928b7fdc3c2e9a74b5889177ddf4c 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.2
EFL_VERSION = 1.25.0
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,146 @@ 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 $(TARGET_NLS_DEPENDENCIES)
# 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.
# embedded-lz4=false: use liblz4 from lz4 package.
# native-arch-optimization=false: avoid optimization flags added by meson.
# 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 \
-Ddotnet=false \
-Decore-imf-loaders-disabler=ibus,scim,xim \
-Delua=true \
-Dembedded-lz4=false \
-Dlua-interpreter=luajit \
-Dnative-arch-optimization=false \
-Dnetwork-backend=none \
-Dpixman=false \
-Dsdl=false \
-Dvnc-server=false
ifeq ($(BR2_SYSTEM_ENABLE_NLS),y)
EFL_CONF_OPTS += -Dnls=true
else
EFL_CONF_OPTS += -Dnls=false
endif
EFL_BINDINGS = lua
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 \
-Dxinput2=true \
-Dxinput22=true
EFL_DEPENDENCIES += \
xlib_libX11 \
@@ -185,98 +176,82 @@ 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
# 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 = avif gst json ps
ifeq ($(BR2_PACKAGE_EFL_JPEG),y)
EFL_CONF_OPTS += --enable-image-loader-jpeg=yes
# efl already depends on jpeg.
ifeq ($(BR2_PACKAGE_EFL_JPEG),y)
EFL_DEPENDENCIES += openjpeg
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
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.
@@ -293,7 +268,7 @@ ifeq ($(BR2_PACKAGE_LIBUNWIND),y)
EFL_DEPENDENCIES += libunwind
endif
$(eval $(autotools-package))
$(eval $(meson-package))
################################################################################
#
@@ -309,73 +284,76 @@ $(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 \
-Ddotnet=false \
-Decore-imf-loaders-disabler=ibus,scim,xim \
-Dedje-sound-and-video=false \
-Deeze=false \
-Delua=true \
-Dembedded-lz4=true \
-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 = avif 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 = lua
# 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
@@ -386,4 +364,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))