diff options
Diffstat (limited to 'dev-libs/efl/efl-1.26.1-r1.ebuild')
-rw-r--r-- | dev-libs/efl/efl-1.26.1-r1.ebuild | 310 |
1 files changed, 310 insertions, 0 deletions
diff --git a/dev-libs/efl/efl-1.26.1-r1.ebuild b/dev-libs/efl/efl-1.26.1-r1.ebuild new file mode 100644 index 000000000000..8528716bda38 --- /dev/null +++ b/dev-libs/efl/efl-1.26.1-r1.ebuild @@ -0,0 +1,310 @@ +# Copyright 1999-2022 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +DOCS_BUILDER="doxygen" +DOCS_DEPEND="dev-texlive/texlive-fontutils" +DOCS_DIR="${S}/doc" + +LUA_REQ_USE="deprecated(+)" +LUA_COMPAT=( lua5-{1,2} luajit ) + +PYTHON_COMPAT=( python3_{8..10} ) + +inherit docs lua-single meson python-any-r1 xdg + +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 ~riscv ~x86" +IUSE="+X avif bmp connman cpu_flags_arm_neon dds debug drm +eet efl-one elogind examples fbcon + +fontconfig fribidi gif gnutls glib +gstreamer harfbuzz heif hyphen ibus ico + jpeg2k json nls mono opengl +pdf physics pmaps postscript psd pulseaudio raw scim + sdl +sound +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 ) + ?? ( fbcon tslib ) + drm? ( wayland ) + examples? ( eet svg ) + ibus? ( glib ) + opengl? ( X ) + pulseaudio? ( sound ) + xim? ( X ) + xpresent? ( X )" + +# Requires everything to be enabled unconditionally. +RESTRICT="test" + +RDEPEND="${LUA_DEPS} + !x11-themes/e-flat-theme + dev-libs/libinput:= + net-misc/curl + media-libs/giflib:= + media-libs/libpng:0= + sys-apps/dbus + sys-libs/zlib + virtual/jpeg + X? ( + !opengl? ( media-libs/mesa[egl(+),gles2] ) + media-libs/freetype + x11-libs/libX11 + x11-libs/libXScrnSaver + x11-libs/libXcomposite + x11-libs/libXcursor + x11-libs/libXdamage + x11-libs/libXext + x11-libs/libXfixes + x11-libs/libXi + x11-libs/libXinerama + x11-libs/libXrandr + x11-libs/libXrender + x11-libs/libXtst + x11-libs/libxkbcommon + 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 ) + glib? ( dev-libs/glib:2 ) + gnutls? ( net-libs/gnutls:= ) + !gnutls? ( dev-libs/openssl:0= ) + gstreamer? ( + media-libs/gstreamer:1.0 + media-libs/gst-plugins-base:1.0 + ) + harfbuzz? ( media-libs/harfbuzz:= ) + heif? ( media-libs/libheif:= ) + 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 ) + svg? ( gnome-base/librsvg:2 ) + system-lz4? ( app-arch/lz4:= ) + systemd? ( sys-apps/systemd:= ) + tiff? ( media-libs/tiff ) + 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 ) + wayland? ( dev-util/wayland-scanner )" + +pkg_setup() { + # Deprecated, provided for backward-compatibility. Everything is moved to libefreet.so. + QA_FLAGS_IGNORED="/usr/$(get_libdir)/libefreet_trash.so.${PV} + /usr/$(get_libdir)/libefreet_mime.so.${PV}" + + 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=plain + + -D buffer=false + -D build-tests=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 input=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 wayland; then + emesonargs+=( -D opengl=es-egl ) + elif ! use wayland && use opengl; then + emesonargs+=( -D opengl=full ) + elif ! use wayland && use X && ! use opengl; 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 heif && disabledEvasLoaders+="heif," + ! 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 +} |