diff --git a/common/shlibs b/common/shlibs index c821e4c4f4b..371e6de9187 100644 --- a/common/shlibs +++ b/common/shlibs @@ -1513,6 +1513,8 @@ libecore_input.so.1 efl-1.12.0_1 libecore_ipc.so.1 efl-1.12.0_1 libecore.so.1 efl-1.12.0_1 libecore_x.so.1 efl-1.12.0_1 +libecore_wl2.so.1 efl-1.24.2_1 +libecore_drm2.so.1 efl-1.24.2_1 libedje.so.1 efl-1.12.0_1 libeet.so.1 efl-1.12.0_1 libeeze.so.1 efl-1.12.0_1 @@ -1522,6 +1524,7 @@ libefreet_trash.so.1 efl-1.12.0_1 libeina.so.1 efl-1.12.0_1 libeio.so.1 efl-1.12.0_1 libeldbus.so.1 efl-1.12.0_1 +libelput.so.1 efl-1.24.2_1 libembryo.so.1 efl-1.12.0_1 libemotion.so.1 efl-1.12.0_1 libeo.so.1 efl-1.12.0_1 @@ -1529,6 +1532,7 @@ libethumb_client.so.1 efl-1.12.0_1 libethumb.so.1 efl-1.12.0_1 libevas.so.1 efl-1.12.0_1 libefl.so.1 efl-1.12.0_1 +libefl_canvas_wl.so.1 efl-1.24.2_1 libelua.so.1 efl-1.13.0_1 libelocation.so.1 efl-1.13.0_1 libelementary.so.1 efl-1.18.0_1 diff --git a/srcpkgs/efl/patches/0001-fix-jpeg-loading-which-freed-the-wrong-ptr.patch b/srcpkgs/efl/patches/0001-fix-jpeg-loading-which-freed-the-wrong-ptr.patch deleted file mode 100644 index ebe1ea61732..00000000000 --- a/srcpkgs/efl/patches/0001-fix-jpeg-loading-which-freed-the-wrong-ptr.patch +++ /dev/null @@ -1,64 +0,0 @@ -From c6465dae30295d1b4adaaef83a62674dcc25c1d6 Mon Sep 17 00:00:00 2001 -From: "Carsten Haitzler (Rasterman)" -Date: Mon, 2 Dec 2019 19:53:31 +0000 -Subject: [PATCH 1/4] fix jpeg loading which freed the wrong ptr - -fixes T8497 -@fix ---- - src/lib/emile/emile_image.c | 14 ++++++++------ - 1 file changed, 8 insertions(+), 6 deletions(-) - -diff --git src/lib/emile/emile_image.c src/lib/emile/emile_image.c -index 4f6e11905e..21317cbe15 100644 ---- src/lib/emile/emile_image.c -+++ src/lib/emile/emile_image.c -@@ -1750,8 +1750,8 @@ _emile_jpeg_data(Emile_Image *image, - uint8_t *ptr, *line[16], *data; - volatile uint32_t *ptr2 = NULL; - uint32_t *ptr_rotate = NULL; -- uint16_t *ptrag = NULL, *ptrag_rotate = NULL; -- uint8_t *ptrg = NULL, *ptrg_rotate = NULL; -+ uint16_t *ptrag = NULL, *ptrag2 = NULL, *ptrag_rotate = NULL; -+ uint8_t *ptrg = NULL, *ptrg2 = NULL, *ptrg_rotate = NULL; - unsigned int y, l, i, scans; - volatile int region = 0; - /* rotation setting */ -@@ -2113,6 +2113,8 @@ _emile_jpeg_data(Emile_Image *image, - /* We finally handle RGB with 1 component */ - else if (cinfo.output_components == 1) - { -+ ptrg2 = ptrg; -+ ptrag2 = ptrag; - for (i = 0; (int)i < cinfo.rec_outbuf_height; i++) - line[i] = data + (i * w); - for (l = 0; l < h; l += cinfo.rec_outbuf_height) -@@ -2132,10 +2134,10 @@ _emile_jpeg_data(Emile_Image *image, - switch (prop->cspace) - { - case EMILE_COLORSPACE_GRY8: -- _jpeg_gry8_convert_copy(&ptrg, &ptr, w); -+ _jpeg_gry8_convert_copy(&ptrg2, &ptr, w); - break; - case EMILE_COLORSPACE_AGRY88: -- _jpeg_agry88_convert_copy(&ptrag, &ptr, w); -+ _jpeg_agry88_convert_copy(&ptrag2, &ptr, w); - break; - default: - _jpeg_argb8888_convert_copy(&ptr2, &ptr, w); -@@ -2168,10 +2170,10 @@ _emile_jpeg_data(Emile_Image *image, - switch (prop->cspace) - { - case EMILE_COLORSPACE_GRY8: -- _jpeg_gry8_convert_copy(&ptrg, &ptr, opts_region.w); -+ _jpeg_gry8_convert_copy(&ptrg2, &ptr, opts_region.w); - break; - case EMILE_COLORSPACE_AGRY88: -- _jpeg_agry88_convert_copy(&ptrag, &ptr, opts_region.w); -+ _jpeg_agry88_convert_copy(&ptrag2, &ptr, opts_region.w); - break; - default: - _jpeg_argb8888_convert_copy(&ptr2, &ptr, opts_region.w); --- -2.25.1 - diff --git a/srcpkgs/efl/patches/0002-eolian-account-for-entire-inheritance-trees-when-com.patch b/srcpkgs/efl/patches/0002-eolian-account-for-entire-inheritance-trees-when-com.patch deleted file mode 100644 index f82e46b2e4f..00000000000 --- a/srcpkgs/efl/patches/0002-eolian-account-for-entire-inheritance-trees-when-com.patch +++ /dev/null @@ -1,56 +0,0 @@ -From 387947f6b151f5dd65c6c38d99e762e612281269 Mon Sep 17 00:00:00 2001 -From: Daniel Kolesa -Date: Wed, 4 Dec 2019 15:30:17 +0100 -Subject: [PATCH 2/4] eolian: account for entire inheritance trees when - compositing - -When a class composites an interface, we need to ignore all of -its extends (and extends of those) as well as the main interface -when doing API checks, as composites essentially provides a -guarantee that this *will* be implemented at runtime, which -further extends to the whole inheritance tree of that interface. - -Fixes T8491. ---- - src/lib/eolian/database_validate.c | 18 +++++++++++++++++- - 1 file changed, 17 insertions(+), 1 deletion(-) - -diff --git src/lib/eolian/database_validate.c src/lib/eolian/database_validate.c -index 4e51718ecd..b1af2185ef 100644 ---- src/lib/eolian/database_validate.c -+++ src/lib/eolian/database_validate.c -@@ -1247,6 +1247,17 @@ _add_composite(Eolian_Class *cl, const Eolian_Class *icl, Eina_Hash *ch) - } - } - -+static void -+_add_implicit_composite(Eolian_Class *icl, Eina_Hash *ch, Eina_Bool try_tree) -+{ -+ eina_hash_set(ch, &icl, icl); -+ if (!try_tree) -+ return; -+ Eina_List *l; -+ EINA_LIST_FOREACH(icl->extends, l, icl) -+ _add_implicit_composite(icl, ch, try_tree); -+} -+ - static Eina_Bool - _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, - Eina_Hash *errh) -@@ -1325,7 +1336,12 @@ _db_fill_inherits(Validate_State *vals, Eolian_Class *cl, Eina_Hash *fhash, - cl->composite = eina_list_append(cl->composite, out_cl); - succ = _db_fill_inherits(vals, out_cl, fhash, errh); - ++ncomp; -- eina_hash_set(ch, &out_cl, out_cl); -+ /* for each thing that is composited, we need to add the entire -+ * inheritance tree of it into composite hash to check, so e.g. -+ * class A -> composites B -> extends C does not complain about -+ * A not implementing C -+ */ -+ _add_implicit_composite(out_cl, ch, out_cl->type == EOLIAN_CLASS_INTERFACE); - } - - /* parent can be abstract, those are not checked for unimplemented, --- -2.25.1 - diff --git a/srcpkgs/efl/patches/0003-eolian-fix-a-parse-bug-where-composites-was-treated-.patch b/srcpkgs/efl/patches/0003-eolian-fix-a-parse-bug-where-composites-was-treated-.patch deleted file mode 100644 index 38ff3fca3c1..00000000000 --- a/srcpkgs/efl/patches/0003-eolian-fix-a-parse-bug-where-composites-was-treated-.patch +++ /dev/null @@ -1,42 +0,0 @@ -From 266f0a57169efe672db44921665a05e73cc0eb58 Mon Sep 17 00:00:00 2001 -From: Daniel Kolesa -Date: Wed, 4 Dec 2019 16:04:19 +0100 -Subject: [PATCH 3/4] eolian: fix a parse bug where composites was treated as - implements - -In the specific case where you had "class A extends B composites C" -the correct composites branch was ignored and instead the implements -branch was used. This was entirely wrong/an oversight that did not -appear until now. Other combinations were handled correctly. ---- - src/lib/eolian/eo_parser.c | 6 +++++- - 1 file changed, 5 insertions(+), 1 deletion(-) - -diff --git src/lib/eolian/eo_parser.c src/lib/eolian/eo_parser.c -index 706d6c1c37..6c45f19907 100644 ---- src/lib/eolian/eo_parser.c -+++ src/lib/eolian/eo_parser.c -@@ -2301,8 +2301,11 @@ tags_done: - { - /* regular class can have a parent, but just one */ - _inherit_dep(ls, ibuf, EINA_TRUE); -+ /* followed by composites */ -+ if (ls->t.kw == KW_composites) -+ goto noimp_comp; - /* if not followed by implements, we're done */ -- if ((ls->t.kw != KW_implements) && (ls->t.kw != KW_composites)) -+ if (ls->t.kw != KW_implements) - { - eo_lexer_dtor_pop(ls); - goto inherit_done; -@@ -2314,6 +2317,7 @@ tags_done: - while (test_next(ls, ',')); - } - -+noimp_comp: - if (ls->t.kw == KW_composites) - { - if (type == EOLIAN_CLASS_INTERFACE) --- -2.25.1 - diff --git a/srcpkgs/efl/patches/0004-ecore-x-fix-fallbacks-to-use-capital-X-in-lib-name.patch b/srcpkgs/efl/patches/0004-ecore-x-fix-fallbacks-to-use-capital-X-in-lib-name.patch deleted file mode 100644 index f9a19f26fa9..00000000000 --- a/srcpkgs/efl/patches/0004-ecore-x-fix-fallbacks-to-use-capital-X-in-lib-name.patch +++ /dev/null @@ -1,36 +0,0 @@ -From ad912c805123b84c939da6a76158fef563809101 Mon Sep 17 00:00:00 2001 -From: "Carsten Haitzler (Rasterman)" -Date: Tue, 24 Dec 2019 00:22:37 +0000 -Subject: [PATCH 4/4] ecore-x - fix fallbacks to use capital X in lib name - -thanks peter. fixes T8543 -@fix ---- - src/lib/ecore_x/meson.build | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git src/lib/ecore_x/meson.build src/lib/ecore_x/meson.build -index 0e16bd7385..262538bd95 100644 ---- src/lib/ecore_x/meson.build -+++ src/lib/ecore_x/meson.build -@@ -75,7 +75,7 @@ endif - - x11 = dependency('x11', required: false) - if x11.found() == false -- x11 = cc.find_library('x11', required: true) -+ x11 = cc.find_library('X11', required: true) - endif - - xcb = dependency('xcb', required: false) -@@ -85,7 +85,7 @@ endif - - x11_xcb = dependency('x11-xcb', required: false) - if x11_xcb.found() == false -- x11_xcb = cc.find_library('x11-xcb', required: true) -+ x11_xcb = cc.find_library('X11-xcb', required: true) - endif - - foreach ecore_x_check : ecore_x_checks --- -2.25.1 - diff --git a/srcpkgs/efl/template b/srcpkgs/efl/template index 0d92842d392..cab22ad0531 100644 --- a/srcpkgs/efl/template +++ b/srcpkgs/efl/template @@ -1,19 +1,18 @@ # Template file for 'efl' pkgname=efl -version=1.23.3 +version=1.24.2 revision=1 build_style=meson configure_args=" - -Dsystemd=false -Dopengl=$(vopt_if opengl full $(vopt_if gles2 es-egl none)) -Dembedded-lz4=false -Dcrypto=openssl -Dnetwork-backend=none - -Devas-loaders-disabler=[] - -Decore-imf-loaders-disabler=scim + -Decore-imf-loaders-disabler=$(vopt_if ibus '' ibus,)scim + -Devas-loaders-disabler=$(vopt_if lottie '[]' json) -Demotion-loaders-disabler=$(vopt_if gstreamer '' gstreamer1,)$(vopt_if vlc '' libvlc,)gstreamer,xine -Demotion-generic-loaders-disabler=vlc - $(vopt_bool elogind elogind) + $(vopt_bool elogind systemd) $(vopt_bool x11 x11) $(vopt_bool x11 xpresent) $(vopt_bool x11 xinput2) $(vopt_bool x11 xinput22) @@ -23,15 +22,16 @@ configure_args=" $(vopt_bool gstreamer gstreamer) $(vopt_bool pulseaudio pulseaudio) $(vopt_bool harfbuzz harfbuzz) - $(vopt_bool simd native-arch-optimization)" + $(vopt_bool simd native-arch-optimization) + $(vopt_bool glib glib)" hostmakedepends="pkg-config gettext" makedepends=" gettext-devel libressl-devel liblz4-devel glib-devel ibus-devel fontconfig-devel fribidi-devel $(vopt_if harfbuzz harfbuzz-devel) libjpeg-turbo-devel libpng-devel giflib-devel tiff-devel libwebp-devel - rlottie-devel avahi-libs-devel eudev-libudev-devel bullet-devel + avahi-libs-devel eudev-libudev-devel bullet-devel libsndfile-devel libmount-devel LuaJIT-devel poppler-cpp-devel - librsvg-devel libspectre-devel libraw-devel + librsvg-devel libspectre-devel libraw-devel libopenjpeg2-devel $(vopt_if drm 'libdrm-devel libinput-devel libxkbcommon-devel') $(vopt_if elogind elogind-devel) $(vopt_if gstreamer gst-plugins-base1-devel) @@ -44,14 +44,16 @@ makedepends=" libXrender-devel libXi-devel libXinerama-devel libXpresent-devel xcb-util-devel xcb-util-keysyms-devel xcb-util-image-devel xcb-util-renderutil-devel xcb-util-wm-devel xorgproto') - $(vopt_if pulseaudio pulseaudio-devel)" + $(vopt_if pulseaudio pulseaudio-devel) + $(vopt_if lottie rlottie-devel) + $(vopt_if ibus ibus-devel)" short_desc="Enlightenment Foundation Libraries" maintainer="q66 " license="LGPL-2.1-only" homepage="https://enlightenment.org" changelog="https://git.enlightenment.org/core/efl.git/plain/NEWS" distfiles="https://download.enlightenment.org/rel/libs/efl/efl-${version}.tar.xz" -checksum=53cea69eaabe443a099fb204b7353e968e7bb62b41fbb0da24451403c7a56901 +checksum=e1f91dfe8b8171f182f474eb9cfb13d9176c21f1879983fb896e92f7e2ce7a70 if [ "$XBPS_CHECK_PKGS" ]; then configure_args+=" -Dbuild-tests=true" @@ -72,12 +74,20 @@ esac if [ -n "$build_option_wayland" -a -z "$build_option_drm" ]; then broken="wayland requires drm" fi +if [ -n "$build_option_ibus" -a -z "$build_option_glib" ]; then + broken="ibus requires glib integration" +fi +# TODO: add option for scim (don't have it packaged) build_options="elogind harfbuzz pulseaudio gstreamer vlc x11 wayland - opengl gles2 drm framebuffer simd" -build_options_default="elogind harfbuzz pulseaudio gstreamer x11 wayland drm" + opengl gles2 drm framebuffer simd lottie glib ibus" +build_options_default="elogind harfbuzz pulseaudio gstreamer x11 wayland drm + glib ibus" desc_option_simd="Enable support for SSE3/NEON/AltiVec" desc_option_vlc="Enable support for VLC multimedia backend" +desc_option_lottie="Enable support for Lottie JSON" +desc_option_glib="Enable GLib integration" +desc_option_ibus="Enable IBus input method support (needs glib)" # OpenGL acceleration support case "$XBPS_TARGET_MACHINE" in @@ -103,6 +113,15 @@ case "$XBPS_TARGET_MACHINE" in ;; esac +post_extract() { + # systemd option applies to elogind but we don't want to install services + vsed -i '/systemd-services/d' meson.build + # disable journald code, not used and breaks musl + vsed -i 's/ifdef HAVE_SYSTEMD/if 0/g' src/lib/eina/eina_log.c + # disable systemd ecore module, not used and breaks musl + vsed -i "/'systemd',/d" src/modules/ecore/meson.build +} + efl-devel_package() { short_desc+=" - development files" depends="${makedepends} efl>=${version}_${revision}"