commit:     031730462aad0a547bd1fc1a2561ad576801c32c
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 15 17:37:53 2022 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sat Jan 15 17:46:47 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=03173046

app-editors/emacs: Add webp flag for libwebp support

Refactor dependencies and logic for image format USE flags, because they
apply to all GUIs.

Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 app-editors/emacs/emacs-29.0.9999.ebuild | 114 +++++++++++++++++--------------
 1 file changed, 61 insertions(+), 53 deletions(-)

diff --git a/app-editors/emacs/emacs-29.0.9999.ebuild 
b/app-editors/emacs/emacs-29.0.9999.ebuild
index 1a8fed50e60a..d1f2256d067f 100644
--- a/app-editors/emacs/emacs-29.0.9999.ebuild
+++ b/app-editors/emacs/emacs-29.0.9999.ebuild
@@ -40,7 +40,7 @@ DESCRIPTION="The extensible, customizable, self-documenting 
real-time display ed
 HOMEPAGE="https://www.gnu.org/software/emacs/";
 
 LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif 
+gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json 
kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source 
ssl svg systemd +threads tiff toolkit-scroll-bars wide-int Xaw3d xft +xpm 
xwidgets zlib"
+IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gconf gfile gif 
+gmp gpm gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jit jpeg json 
kerberos lcms libxml2 livecd m17n-lib mailutils motif png selinux sound source 
ssl svg systemd +threads tiff toolkit-scroll-bars webp wide-int Xaw3d xft +xpm 
xwidgets zlib"
 RESTRICT="test"
 
 RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
@@ -63,65 +63,68 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
        zlib? ( sys-libs/zlib )
-       gui? ( !aqua? (
-               x11-libs/libICE
-               x11-libs/libSM
-               x11-libs/libX11
-               x11-libs/libXext
-               x11-libs/libXfixes
-               x11-libs/libXinerama
-               x11-libs/libXrandr
-               x11-libs/libxcb
-               x11-misc/xbitmaps
-               gconf? ( >=gnome-base/gconf-2.26.2 )
-               gsettings? ( >=dev-libs/glib-2.28.6 )
+       gui? (
                gif? ( media-libs/giflib:0= )
                jpeg? ( virtual/jpeg:0= )
                png? ( >=media-libs/libpng-1.4:0= )
                svg? ( >=gnome-base/librsvg-2.0 )
                tiff? ( media-libs/tiff:0 )
-               xpm? ( x11-libs/libXpm )
+               webp? ( media-libs/libwebp:0= )
                imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= )
-               xft? (
-                       media-libs/fontconfig
-                       media-libs/freetype
-                       x11-libs/libXft
-                       x11-libs/libXrender
-                       cairo? ( >=x11-libs/cairo-1.12.18 )
-                       harfbuzz? ( media-libs/harfbuzz:0= )
-                       m17n-lib? (
-                               >=dev-libs/libotf-0.9.4
-                               >=dev-libs/m17n-lib-1.5.1
-                       )
-               )
-               gtk? (
-                       x11-libs/gtk+:3
-                       xwidgets? (
-                               net-libs/webkit-gtk:4=
-                               x11-libs/libXcomposite
+               !aqua? (
+                       x11-libs/libICE
+                       x11-libs/libSM
+                       x11-libs/libX11
+                       x11-libs/libXext
+                       x11-libs/libXfixes
+                       x11-libs/libXinerama
+                       x11-libs/libXrandr
+                       x11-libs/libxcb
+                       x11-misc/xbitmaps
+                       gconf? ( >=gnome-base/gconf-2.26.2 )
+                       gsettings? ( >=dev-libs/glib-2.28.6 )
+                       xpm? ( x11-libs/libXpm )
+                       xft? (
+                               media-libs/fontconfig
+                               media-libs/freetype
+                               x11-libs/libXft
+                               x11-libs/libXrender
+                               cairo? ( >=x11-libs/cairo-1.12.18 )
+                               harfbuzz? ( media-libs/harfbuzz:0= )
+                               m17n-lib? (
+                                       >=dev-libs/libotf-0.9.4
+                                       >=dev-libs/m17n-lib-1.5.1
+                               )
                        )
-               )
-               !gtk? (
-                       motif? (
-                               >=x11-libs/motif-2.3:0
-                               x11-libs/libXpm
-                               x11-libs/libXmu
-                               x11-libs/libXt
+                       gtk? (
+                               x11-libs/gtk+:3
+                               xwidgets? (
+                                       net-libs/webkit-gtk:4=
+                                       x11-libs/libXcomposite
+                               )
                        )
-                       !motif? (
-                               Xaw3d? (
-                                       x11-libs/libXaw3d
+                       !gtk? (
+                               motif? (
+                                       >=x11-libs/motif-2.3:0
+                                       x11-libs/libXpm
                                        x11-libs/libXmu
                                        x11-libs/libXt
                                )
-                               !Xaw3d? ( athena? (
-                                       x11-libs/libXaw
-                                       x11-libs/libXmu
-                                       x11-libs/libXt
-                               ) )
+                               !motif? (
+                                       Xaw3d? (
+                                               x11-libs/libXaw3d
+                                               x11-libs/libXmu
+                                               x11-libs/libXt
+                                       )
+                                       !Xaw3d? ( athena? (
+                                               x11-libs/libXaw
+                                               x11-libs/libXmu
+                                               x11-libs/libXt
+                                       ) )
+                               )
                        )
                )
-       ) )"
+       )"
 
 DEPEND="${RDEPEND}
        gui? ( !aqua? ( x11-base/xorg-proto ) )"
@@ -201,13 +204,7 @@ src_configure() {
                myconf+=" $(use_with gconf)"
                myconf+=" $(use_with gsettings)"
                myconf+=" $(use_with toolkit-scroll-bars)"
-               myconf+=" $(use_with gif)"
-               myconf+=" $(use_with jpeg)"
-               myconf+=" $(use_with png)"
-               myconf+=" $(use_with svg rsvg)"
-               myconf+=" $(use_with tiff)"
                myconf+=" $(use_with xpm)"
-               myconf+=" $(use_with imagemagick)"
 
                if use xft; then
                        myconf+=" --with-xft"
@@ -261,6 +258,17 @@ src_configure() {
                        "USE flag \"xwidgets\" has no effect if \"gtk\" is not 
set."
        fi
 
+       if use gui; then
+               # Common flags recognised for all GUIs
+               myconf+=" $(use_with gif)"
+               myconf+=" $(use_with jpeg)"
+               myconf+=" $(use_with png)"
+               myconf+=" $(use_with svg rsvg)"
+               myconf+=" $(use_with tiff)"
+               myconf+=" $(use_with webp)"
+               myconf+=" $(use_with imagemagick)"
+       fi
+
        if tc-is-cross-compiler; then
                # Configure a CBUILD directory when cross-compiling to make 
tools
                mkdir "${S}-build" && pushd "${S}-build" >/dev/null || die

Reply via email to