From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 4B686158087 for ; Sat, 15 Jan 2022 17:46:58 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 00C7BE07DF; Sat, 15 Jan 2022 17:46:56 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 89C332BC00B for ; Sat, 15 Jan 2022 17:46:56 +0000 (UTC) Received: from oystercatcher.gentoo.org (oystercatcher.gentoo.org [148.251.78.52]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by smtp.gentoo.org (Postfix) with ESMTPS id B8AB3342DEF for ; Sat, 15 Jan 2022 17:46:54 +0000 (UTC) Received: from localhost.localdomain (localhost [IPv6:::1]) by oystercatcher.gentoo.org (Postfix) with ESMTP id E59AF261 for ; Sat, 15 Jan 2022 17:46:52 +0000 (UTC) From: "Ulrich Müller" To: gentoo-commits@lists.gentoo.org Content-Transfer-Encoding: 8bit Content-type: text/plain; charset=UTF-8 Reply-To: gentoo-dev@lists.gentoo.org, "Ulrich Müller" Message-ID: <1642268807.9be8b8749d0f24885ab167cef881dba5b885a233.ulm@gentoo> Subject: [gentoo-commits] repo/gentoo:master commit in: app-editors/emacs/ X-VCS-Repository: repo/gentoo X-VCS-Files: app-editors/emacs/emacs-29.0.9999.ebuild X-VCS-Directories: app-editors/emacs/ X-VCS-Committer: ulm X-VCS-Committer-Name: Ulrich Müller X-VCS-Revision: 9be8b8749d0f24885ab167cef881dba5b885a233 X-VCS-Branch: master Date: Sat, 15 Jan 2022 17:46:52 +0000 (UTC) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-commits@lists.gentoo.org X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply X-Archives-Salt: 23fa274c-881a-4c43-bfce-bb5156a77776 X-Archives-Hash: 870924e72c4c818b059b3dbf81bc084a commit: 9be8b8749d0f24885ab167cef881dba5b885a233 Author: Ulrich Müller gentoo org> AuthorDate: Sat Jan 15 17:45:55 2022 +0000 Commit: Ulrich Müller gentoo org> CommitDate: Sat Jan 15 17:46:47 2022 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9be8b874 app-editors/emacs: Support pure GTK Emacs 29 will support window systems X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa). The ebuild selects these as follows: "aqua" -> Nextstep "gtk -X" -> pure GTK otherwise -> X11 Closes: https://bugs.gentoo.org/831154 Package-Manager: Portage-3.0.30, Repoman-3.0.3 Signed-off-by: Ulrich Müller gentoo.org> app-editors/emacs/emacs-29.0.9999.ebuild | 134 ++++++++++++++++++++----------- 1 file changed, 87 insertions(+), 47 deletions(-) diff --git a/app-editors/emacs/emacs-29.0.9999.ebuild b/app-editors/emacs/emacs-29.0.9999.ebuild index d1f2256d067f..69582b7f2ff4 100644 --- a/app-editors/emacs/emacs-29.0.9999.ebuild +++ b/app-editors/emacs/emacs-29.0.9999.ebuild @@ -40,9 +40,59 @@ 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 webp 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 +X Xaw3d xft +xpm xwidgets zlib" RESTRICT="test" +X_DEPEND="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 + 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? ( + x11-libs/gtk+:3 + xwidgets? ( + net-libs/webkit-gtk:4= + x11-libs/libXcomposite + ) + ) + !gtk? ( + motif? ( + >=x11-libs/motif-2.3:0 + x11-libs/libXpm + 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 + ) ) + ) + )" + RDEPEND="app-emacs/emacs-common[games?,gui(-)?] sys-libs/ncurses:0= acl? ( virtual/acl ) @@ -72,62 +122,30 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?] webp? ( media-libs/libwebp:0= ) imagemagick? ( >=media-gfx/imagemagick-6.6.2:0= ) !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? ( + gtk? ( !X? ( media-libs/fontconfig media-libs/freetype - x11-libs/libXft - x11-libs/libXrender - cairo? ( >=x11-libs/cairo-1.12.18 ) + >=x11-libs/cairo-1.12.18 + x11-libs/gtk+:3 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 - ) - ) - !gtk? ( - motif? ( - >=x11-libs/motif-2.3:0 - x11-libs/libXpm - 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 - ) ) - ) - ) + xwidgets? ( net-libs/webkit-gtk:4= ) + ) ) + !gtk? ( ${X_DEPEND} ) + X? ( ${X_DEPEND} ) ) )" DEPEND="${RDEPEND} - gui? ( !aqua? ( x11-base/xorg-proto ) )" + gui? ( !aqua? ( + !gtk? ( x11-base/xorg-proto ) + X? ( x11-base/xorg-proto ) + ) )" BDEPEND="sys-apps/texinfo virtual/pkgconfig @@ -192,15 +210,37 @@ src_configure() { myconf+=" --with-sound=$(usex sound oss)" fi + # Emacs supports these window systems: + # X11, pure GTK (without X11), or Nextstep (Aqua/Cocoa). + # General GUI support is enabled by the "gui" USE flag, then + # the window system is selected as follows: + # "aqua" -> Nextstep + # "gtk -X" -> pure GTK + # otherwise -> X11 + # For X11 there is the further choice of toolkits GTK, Motif, + # Athena (Lucid), or no toolkit. They are enabled (in order of + # preference) with the "gtk", "motif", "Xaw3d", and "athena" flags. + if ! use gui; then einfo "Configuring to build without window system support" - myconf+=" --without-x --without-ns" + myconf+=" --without-x --without-pgtk --without-ns" elif use aqua; then einfo "Configuring to build with Nextstep (Macintosh Cocoa) support" myconf+=" --with-ns --disable-ns-self-contained" - myconf+=" --without-x" + myconf+=" --without-x --without-pgtk" + elif use gtk || ! use X; then + einfo "Configuring to build with pure GTK (without X11) support" + myconf+=" --with-pgtk --without-x --without-ns" + myconf+=" $(use_with gconf)" + myconf+=" $(use_with gsettings)" + myconf+=" $(use_with toolkit-scroll-bars)" + myconf+=" $(use_with harfbuzz)" + myconf+=" $(use_with m17n-lib libotf)" + myconf+=" $(use_with m17n-lib m17n-flt)" + myconf+=" $(use_with xwidgets)" else - myconf+=" --with-x --without-ns" + # X11 + myconf+=" --with-x --without-pgtk --without-ns" myconf+=" $(use_with gconf)" myconf+=" $(use_with gsettings)" myconf+=" $(use_with toolkit-scroll-bars)"