summaryrefslogtreecommitdiff
path: root/dev-libs/efl
diff options
context:
space:
mode:
Diffstat (limited to 'dev-libs/efl')
-rw-r--r--dev-libs/efl/Manifest2
-rw-r--r--dev-libs/efl/efl-1.25.1-r11.ebuild323
-rw-r--r--dev-libs/efl/files/efl-1.25.1-libavif-fix.patch71
3 files changed, 396 insertions, 0 deletions
diff --git a/dev-libs/efl/Manifest b/dev-libs/efl/Manifest
index 51c83d5a8f1f..293472403d40 100644
--- a/dev-libs/efl/Manifest
+++ b/dev-libs/efl/Manifest
@@ -1,3 +1,5 @@
+AUX efl-1.25.1-libavif-fix.patch 2477 BLAKE2B 36ad24c7ba88a34e4da0d69cfda74b3a7a890dc639d966403511373a182cf908229a15e6c3302c3635a8ac134399a71823d2dc65320f4304078c674da7978911 SHA512 7293fbccc394f09887398940996d44f59170fc556662f095bdcead752be84b7583411af8303e462703272b00523a8e14407d14c4f0e1589ba395b592b7c29f01
DIST efl-1.25.1.tar.xz 72306872 BLAKE2B 060d729380ba62677307c5346da1786e879c14c4e40f0a3288c8cb81ece08f4ac501d989495b1c3dcbfeb19a86d23130892ae874861de5684c867aef60cb07d6 SHA512 cd281c2299aa6f74f0204e59a13dc254135e6dc40641e0a437c6f5025efe517d415f0915f69e123123319a9bbddb748aec1948ed0b5eb386e028cf45b244bed8
EBUILD efl-1.25.1-r10.ebuild 8191 BLAKE2B 9a217e079ef634df822d42bc9106986c395978bee7a3deff60f7a5f5564f9c7e6c31b07a46ae70142a01a3cb16e840d0fdfe3ac6f5be01a02dd31fa52f76ecc5 SHA512 9c8efce650ab2c9ff5e2c12663a5929c4d4863b6630c9bda7ff9733519f45aad69d865a8007e5d53821eb92f12153420dfd3cdde723c351a14cc0bbb9aeba3d7
+EBUILD efl-1.25.1-r11.ebuild 8249 BLAKE2B ba546c94a4460a4544b3634ed2fa01a36595e10d92468e9e5fc672b103cc5996861b2408c331f0c29c759683cdecddbba19ada44cea1e5c4347d9a8b990d54bb SHA512 6cb05681c695432881d5e82f1be291f59a2267013df33b02acbe5617357ea50a2ef5616bd6e2946b1ca542e5884306d4fefcbe80e84413ef027f63d239689bad
MISC metadata.xml 1888 BLAKE2B 4c689687387fb09a2387587bc32e5cb4f09b94264fb1b594d8dc0c1c214eaeb6cf5f39110ea3dde72acdcf328da25bfcd2756dc85c8b060ad64aa321b8dc8a23 SHA512 40289f8c6e10786c8c9d5069b775c7db5695910a33593e706d3ed0f623bdb8b6149161a25ad55deedd479fbc214dac174d6b99151e5167272fa464f5115eece1
diff --git a/dev-libs/efl/efl-1.25.1-r11.ebuild b/dev-libs/efl/efl-1.25.1-r11.ebuild
new file mode 100644
index 000000000000..30a74e5dfdd2
--- /dev/null
+++ b/dev-libs/efl/efl-1.25.1-r11.ebuild
@@ -0,0 +1,323 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+DOCS_BUILDER="doxygen"
+DOCS_DIR="${S}/doc"
+
+LUA_REQ_USE="deprecated(+)"
+LUA_COMPAT=( lua5-{1..3} luajit )
+
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit docs lua-single meson python-any-r1 xdg-utils
+
+DESCRIPTION="Enlightenment Foundation Libraries all-in-one package"
+HOMEPAGE="https://www.enlightenment.org"
+SRC_URI="https://download.enlightenment.org/rel/libs/${PN}/${P}.tar.xz"
+
+LICENSE="BSD-2 GPL-2 LGPL-2.1 ZLIB"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~x86"
+IUSE="+X avif bmp connman cpu_flags_arm_neon dds debug drm +eet efl-one elogind examples fbcon
+ +fontconfig fribidi gif gles2-only gnutls glib +gstreamer harfbuzz hyphen ibus ico libressl
+ jpeg2k json nls mono opengl +pdf physics pmaps postscript psd pulseaudio raw scim
+ sdl +sound +ssl +svg +system-lz4 systemd tga tgv tiff tslib unwind v4l vnc wayland webp xcf
+ xim xpm xpresent zeroconf"
+
+REQUIRED_USE="${LUA_REQUIRED_USE}
+ ?? ( elogind systemd )
+ ?? ( gles2-only opengl )
+ ?? ( fbcon tslib )
+ ssl
+ drm? ( gles2-only )
+ examples? ( eet svg )
+ gles2-only? ( || ( wayland X ) )
+ ibus? ( glib )
+ pulseaudio? ( sound )
+ wayland? ( gles2-only !opengl )
+ xim? ( X )
+ xpresent? ( X )"
+
+# Requires everything to be enabled unconditionally.
+RESTRICT="test"
+
+RDEPEND="${LUA_DEPS}
+ dev-libs/check
+ net-misc/curl
+ media-libs/giflib:=
+ media-libs/libpng:0=
+ sys-apps/dbus
+ sys-libs/zlib
+ virtual/jpeg:0=
+ X? (
+ media-libs/freetype
+ x11-libs/libX11
+ x11-libs/libXcomposite
+ x11-libs/libXcursor
+ x11-libs/libXdamage
+ x11-libs/libXdmcp
+ x11-libs/libXext
+ x11-libs/libXfixes
+ x11-libs/libXi
+ x11-libs/libXinerama
+ x11-libs/libXrandr
+ x11-libs/libXrender
+ x11-libs/libXtst
+ x11-libs/libXScrnSaver
+ wayland? ( x11-libs/libxkbcommon[X] )
+ )
+ avif? ( media-libs/libavif )
+ connman? ( net-misc/connman )
+ drm? (
+ dev-libs/libinput
+ dev-libs/wayland
+ media-libs/mesa[gbm]
+ x11-libs/libdrm
+ x11-libs/libxkbcommon
+ )
+ elogind? (
+ sys-auth/elogind
+ virtual/libudev
+ )
+ fontconfig? ( media-libs/fontconfig )
+ fribidi? ( dev-libs/fribidi )
+ gles2-only? (
+ media-libs/mesa[egl,gles2]
+ virtual/opengl
+ )
+ glib? ( dev-libs/glib:2 )
+ gstreamer? (
+ media-libs/gstreamer:1.0
+ media-libs/gst-plugins-base:1.0
+ )
+ hyphen? ( dev-libs/hyphen )
+ ibus? ( app-i18n/ibus )
+ jpeg2k? ( media-libs/openjpeg:= )
+ json? ( >=media-libs/rlottie-0.0.1_pre20200424:= )
+ mono? ( dev-lang/mono )
+ opengl? ( virtual/opengl )
+ pdf? ( app-text/poppler:=[cxx] )
+ physics? ( sci-physics/bullet:= )
+ postscript? ( app-text/libspectre )
+ pulseaudio? ( media-sound/pulseaudio )
+ raw? ( media-libs/libraw:= )
+ scim? ( app-i18n/scim )
+ sdl? ( media-libs/libsdl2 )
+ sound? ( media-libs/libsndfile )
+ ssl? (
+ gnutls? ( net-libs/gnutls:= )
+ !gnutls? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:= )
+ )
+ )
+ svg? ( gnome-base/librsvg )
+ system-lz4? ( app-arch/lz4 )
+ systemd? ( sys-apps/systemd:= )
+ tiff? ( media-libs/tiff:0= )
+ tslib? ( x11-libs/tslib:= )
+ unwind? ( sys-libs/libunwind )
+ v4l? ( media-libs/libv4l )
+ vnc? ( net-libs/libvncserver )
+ wayland? (
+ dev-libs/wayland
+ media-libs/mesa[gles2,wayland]
+ x11-libs/libxkbcommon
+ )
+ webp? ( media-libs/libwebp:= )
+ xpm? ( x11-libs/libXpm )
+ xpresent? ( x11-libs/libXpresent )
+ zeroconf? ( net-dns/avahi )"
+DEPEND="${RDEPEND}"
+BDEPEND="${PYTHON_DEPS}
+ virtual/pkgconfig
+ nls? ( sys-devel/gettext )"
+
+PATCHES=( "${FILESDIR}"/efl-1.25.1-libavif-fix.patch )
+
+pkg_setup() {
+ # Deprecated, provided for backward-compatibility. Everything is moved to libefreet.so.
+ QA_FLAGS_IGNORED="/usr/$(get_libdir)/libefreet_trash.so.1.25.1
+ /usr/$(get_libdir)/libefreet_mime.so.1.25.1"
+
+ python-any-r1_pkg_setup
+}
+
+src_prepare() {
+ default
+
+ # Remove automagic unwind configure option, #743154
+ if ! use unwind; then
+ sed -i "/config_h.set('HAVE_UNWIND/,/eina_ext_deps += unwind/d" src/lib/eina/meson.build ||
+ die "Failed to remove libunwind dep"
+ fi
+
+ # Fixup Doxyfile
+ pushd "${DOCS_DIR}" || die
+ cp Doxyfile.in Doxyfile || die
+ sed -i \
+ -e "s/@PACKAGE_VERSION@/${PV}/g" \
+ -e "s/@top_builddir@/../g" \
+ -e "s/@top_srcdir@/../g" \
+ -e "s/@srcdir@/./g" \
+ Doxyfile || die
+ popd || die
+
+ # Fix python shebangs for python-exec[-native-symlinks], #764086
+ local shebangs=($(grep -rl "#!/usr/bin/env python3" || die))
+ python_fix_shebang -q ${shebangs[*]}
+}
+
+src_configure() {
+ local emesonargs=(
+ --buildtype=release
+
+ -D buffer=false
+ -D cocoa=false
+ -D drm-deprecated=false
+ -D g-mainloop=false
+ -D mono-beta=false
+ -D dotnet=false
+ -D pixman=false
+ -D wl-deprecated=false
+ -D dotnet-stylecop-severity=Warning
+
+ -D edje-sound-and-video=true
+ -D eeze=true
+ -D install-eo-files=true
+ -D libmount=true
+ -D native-arch-optimization=true
+ -D xinput2=true
+ -D xinput22=true
+
+ $(meson_use X x11)
+ $(meson_use debug debug-threads)
+ $(meson_use drm)
+ $(meson_use examples build-examples)
+ $(meson_use fbcon fb)
+ $(meson_use fontconfig)
+ $(meson_use fribidi)
+ $(meson_use glib)
+ $(meson_use gstreamer)
+ $(meson_use harfbuzz)
+ $(meson_use hyphen)
+ $(meson_use lua_single_target_luajit elua)
+ $(meson_use nls)
+ $(meson_use physics)
+ $(meson_use pulseaudio)
+ $(meson_use sdl)
+ $(meson_use sound audio)
+ $(meson_use tslib)
+ $(meson_use v4l v4l2)
+ $(meson_use vnc vnc-server)
+ $(meson_use wayland wl)
+ $(meson_use xpresent)
+ $(meson_use zeroconf avahi)
+
+ $(meson_use !system-lz4 embedded-lz4)
+ )
+
+ if use elogind || use systemd; then
+ emesonargs+=( -D systemd=true )
+ else
+ emesonargs+=( -D systemd=false )
+ fi
+
+ if use opengl; then
+ emesonargs+=( -D opengl=full )
+ elif use gles2-only; then
+ emesonargs+=( -D opengl=es-egl )
+ else
+ emesonargs+=( -D opengl=none )
+ fi
+
+ if use gnutls; then
+ emesonargs+=( -D crypto=gnutls )
+ else
+ emesonargs+=( -D crypto=openssl )
+ fi
+
+ if use connman; then
+ emesonargs+=( -D network-backend=connman )
+ else
+ emesonargs+=( -D network-backend=none )
+ fi
+
+ local disabledEvasLoaders=""
+ ! use avif && disabledEvasLoaders="avif,"
+ ! use bmp && disabledEvasLoaders+="bmp,wbmp,"
+ ! use dds && disabledEvasLoaders+="dds,"
+ ! use eet && disabledEvasLoaders+="eet,"
+ ! use gstreamer && disabledEvasLoaders+="gst,"
+ ! use ico && disabledEvasLoaders+="ico,"
+ ! use jpeg2k && disabledEvasLoaders+="jp2k,"
+ ! use json && disabledEvasLoaders+="json,"
+ ! use pdf && disabledEvasLoaders+="pdf,"
+ ! use pmaps && disabledEvasLoaders+="pmaps,"
+ ! use postscript && disabledEvasLoaders+="ps,"
+ ! use psd && disabledEvasLoaders+="psd,"
+ ! use raw && disabledEvasLoaders+="raw,"
+ ! use svg && disabledEvasLoaders+="rsvg,svg,"
+ ! use tga && disabledEvasLoaders+="tga,"
+ ! use tgv && disabledEvasLoaders+="tgv,"
+ ! use tiff && disabledEvasLoaders+="tiff,"
+ ! use webp && disabledEvasLoaders+="webp,"
+ ! use xcf && disabledEvasLoaders+="xcf,"
+ ! use xpm && disabledEvasLoaders+="xpm,"
+ [[ ! -z "$disabledEvasLoaders" ]] && disabledEvasLoaders=${disabledEvasLoaders::-1}
+ emesonargs+=( -D evas-loaders-disabler="${disabledEvasLoaders}" )
+
+ local disabledImfLoaders=""
+ ! use ibus && disabledImfLoaders+="ibus,"
+ ! use scim && disabledImfLoaders+="scim,"
+ ! use xim && disabledImfLoaders+="xim,"
+ [[ ! -z "$disabledImfLoaders" ]] && disabledImfLoaders=${disabledImfLoaders::-1}
+ emesonargs+=( -D ecore-imf-loaders-disabler="${disabledImfLoaders}" )
+
+ local bindingsList="cxx,"
+ use lua_single_target_luajit && bindingsList+="lua,"
+ use mono && bindingsList+="mono,"
+ [[ ! -z "$bindingsList" ]] && bindingsList=${bindingsList::-1}
+ emesonargs+=( -D bindings="${bindingsList}" )
+
+ local luaChoice=""
+ if use lua_single_target_luajit; then
+ luaChoice+="luajit"
+ else
+ luaChoice+="lua"
+ fi
+ emesonargs+=( -D lua-interpreter="${luaChoice}" )
+
+ # Not all arm CPU's have neon instruction set, #722552
+ if use arm && ! use cpu_flags_arm_neon; then
+ emesonargs+=( -D native-arch-optimization=false )
+ fi
+
+ meson_src_configure
+}
+
+src_compile() {
+ docs_compile
+ meson_src_compile
+}
+
+src_install() {
+ meson_src_install
+
+ if use examples; then
+ docompress -x /usr/share/doc/${PF}/examples/
+ dodoc -r "${BUILD_DIR}"/src/examples/
+ fi
+}
+
+pkg_postinst() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}
+
+pkg_postrm() {
+ xdg_icon_cache_update
+ xdg_mimeinfo_database_update
+}
diff --git a/dev-libs/efl/files/efl-1.25.1-libavif-fix.patch b/dev-libs/efl/files/efl-1.25.1-libavif-fix.patch
new file mode 100644
index 000000000000..ab11790f1b79
--- /dev/null
+++ b/dev-libs/efl/files/efl-1.25.1-libavif-fix.patch
@@ -0,0 +1,71 @@
+From 00f5eed1d2390d204c83a2cb78a37531f6bbe49c Mon Sep 17 00:00:00 2001
+From: "Carsten Haitzler (Rasterman)" <raster@rasterman.com>
+Date: Fri, 18 Dec 2020 11:16:38 +0000
+Subject: evas - avif - fix for 0.8.2 libavif that broke api
+
+also require 0.8.2 ... as well - no point trying to support older
+versions forever and this is still experimental.
+
+fixes T8844
+@fix
+---
+ src/modules/evas/image_loaders/avif/evas_image_load_avif.c | 14 ++++----------
+ 1 file changed, 4 insertions(+), 10 deletions(-)
+
+(limited to 'src/modules/evas/image_loaders/avif/evas_image_load_avif.c')
+
+diff --git a/src/modules/evas/image_loaders/avif/evas_image_load_avif.c b/src/modules/evas/image_loaders/avif/evas_image_load_avif.c
+index 34b6da9bd3..f7cfe0ef03 100644
+--- a/src/modules/evas/image_loaders/avif/evas_image_load_avif.c
++++ b/src/modules/evas/image_loaders/avif/evas_image_load_avif.c
+@@ -43,7 +43,6 @@ evas_image_load_file_head_avif_internal(Evas_Loader_Internal *loader,
+ int *error)
+ {
+ Evas_Image_Animated *animated;
+- avifROData raw;
+ avifDecoder *decoder;
+ avifResult res;
+ Eina_Bool ret;
+@@ -55,9 +54,6 @@ evas_image_load_file_head_avif_internal(Evas_Loader_Internal *loader,
+ prop->h = 0;
+ prop->alpha = EINA_FALSE;
+
+- raw.size = length;
+- raw.data = (const uint8_t *)map;
+-
+ decoder = avifDecoderCreate();
+ if (!decoder)
+ {
+@@ -65,7 +61,8 @@ evas_image_load_file_head_avif_internal(Evas_Loader_Internal *loader,
+ return ret;
+ }
+
+- res = avifDecoderParse(decoder, &raw);
++ avifDecoderSetIOMemory(decoder, (const uint8_t *)map, length);
++ res = avifDecoderParse(decoder);
+ if (res != AVIF_RESULT_OK)
+ {
+ ERR("avif file format invalid");
+@@ -141,7 +138,6 @@ evas_image_load_file_data_avif_internal(Evas_Loader_Internal *loader,
+ decoder = loader->decoder;
+ if (!decoder)
+ {
+- avifROData raw;
+ decoder = avifDecoderCreate();
+ if (!decoder)
+ {
+@@ -149,10 +145,8 @@ evas_image_load_file_data_avif_internal(Evas_Loader_Internal *loader,
+ return EINA_FALSE;
+ }
+
+- raw.size = length;
+- raw.data = (const uint8_t *)map;
+-
+- res = avifDecoderParse(decoder, &raw);
++ avifDecoderSetIOMemory(decoder, (const uint8_t *)map, length);
++ res = avifDecoderParse(decoder);
+ if (res != AVIF_RESULT_OK)
+ {
+ *error = EVAS_LOAD_ERROR_GENERIC;
+--
+cgit v1.2.1