commit:     937aee1b335b4cc58d2d2da130f6200b68299a39
Author:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
AuthorDate: Sun May 14 09:28:25 2023 +0000
Commit:     Ulrich Müller <ulm <AT> gentoo <DOT> org>
CommitDate: Sun May 14 09:31:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=937aee1b

app-editors/emacs: Add valgrind support

Closes: https://bugs.gentoo.org/906315
Signed-off-by: Ulrich Müller <ulm <AT> gentoo.org>

 app-editors/emacs/emacs-25.3-r18.ebuild     | 5 ++++-
 app-editors/emacs/emacs-26.3-r15.ebuild     | 5 ++++-
 app-editors/emacs/emacs-27.2-r13.ebuild     | 5 ++++-
 app-editors/emacs/emacs-28.2-r8.ebuild      | 8 ++++++--
 app-editors/emacs/emacs-28.3_rc1-r2.ebuild  | 8 ++++++--
 app-editors/emacs/emacs-29.0.90.ebuild      | 8 ++++++--
 app-editors/emacs/emacs-29.0.9999-r1.ebuild | 8 ++++++--
 app-editors/emacs/emacs-30.0.9999.ebuild    | 8 ++++++--
 app-editors/emacs/metadata.xml              | 2 ++
 9 files changed, 44 insertions(+), 13 deletions(-)

diff --git a/app-editors/emacs/emacs-25.3-r18.ebuild 
b/app-editors/emacs/emacs-25.3-r18.ebuild
index 9ef093a00061..cc776e3971a1 100644
--- a/app-editors/emacs/emacs-25.3-r18.ebuild
+++ b/app-editors/emacs/emacs-25.3-r18.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://gnu/emacs/${P}.tar.xz
 LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
 SLOT="25"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~sparc 
~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm 
gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd 
m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars 
wide-int Xaw3d xft +xpm zlib"
+IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm 
gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos libxml2 livecd 
m17n-lib motif png selinux sound source ssl svg tiff toolkit-scroll-bars 
valgrind wide-int Xaw3d xft +xpm zlib"
 
 RDEPEND="acct-group/mail
        app-emacs/emacs-common[games?,gui(-)?]
@@ -29,6 +29,7 @@ RDEPEND="acct-group/mail
        libxml2? ( >=dev-libs/libxml2-2.2.0 )
        selinux? ( sys-libs/libselinux )
        ssl? ( net-libs/gnutls:0= )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? ( !aqua? (
                x11-libs/libICE
@@ -228,6 +229,8 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+
        # Disable sandbox when dumping. For the unbelievers, see bug #131505
        emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
 }

diff --git a/app-editors/emacs/emacs-26.3-r15.ebuild 
b/app-editors/emacs/emacs-26.3-r15.ebuild
index 318b29e758af..139bb9118e16 100644
--- a/app-editors/emacs/emacs-26.3-r15.ebuild
+++ b/app-editors/emacs/emacs-26.3-r15.ebuild
@@ -13,7 +13,7 @@ SRC_URI="mirror://gnu/emacs/${P}.tar.xz
 LICENSE="GPL-3+ FDL-1.3+ BSD HPND MIT W3C unicode PSF-2"
 SLOT="26"
 KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~riscv 
~sparc ~x86 ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos"
-IUSE="acl alsa aqua athena cairo dbus dynamic-loading games gfile gif gpm 
gsettings gtk gui gzip-el imagemagick +inotify jpeg 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 gfile gif gpm 
gsettings gtk gui gzip-el imagemagick +inotify jpeg kerberos lcms libxml2 
livecd m17n-lib mailutils motif png selinux sound source ssl svg systemd 
+threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm xwidgets 
zlib"
 
 RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        sys-libs/ncurses:0=
@@ -31,6 +31,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        selinux? ( sys-libs/libselinux )
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? ( !aqua? (
                x11-libs/libICE
@@ -238,6 +239,8 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+
        # Disable sandbox when dumping. For the unbelievers, see bug #131505
        emake RUN_TEMACS="SANDBOX_ON=0 LD_PRELOAD= env ./temacs"
 }

diff --git a/app-editors/emacs/emacs-27.2-r13.ebuild 
b/app-editors/emacs/emacs-27.2-r13.ebuild
index ef2604780cb9..447f92392f49 100644
--- a/app-editors/emacs/emacs-27.2-r13.ebuild
+++ b/app-editors/emacs/emacs-27.2-r13.ebuild
@@ -43,7 +43,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 gfile gif +gmp gpm 
gsettings gtk gui gzip-el harfbuzz imagemagick +inotify 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 gfile gif +gmp gpm 
gsettings gtk gui gzip-el harfbuzz imagemagick +inotify jpeg json kerberos lcms 
libxml2 livecd m17n-lib mailutils motif png selinux sound source ssl svg 
systemd +threads tiff toolkit-scroll-bars valgrind wide-int Xaw3d xft +xpm 
xwidgets zlib"
 RESTRICT="test"
 
 RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
@@ -64,6 +64,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        selinux? ( sys-libs/libselinux )
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? ( !aqua? (
                x11-libs/libICE
@@ -287,6 +288,8 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/emacs-28.2-r8.ebuild 
b/app-editors/emacs/emacs-28.2-r8.ebuild
index c24ba748a523..68984dfbd9d1 100644
--- a/app-editors/emacs/emacs-28.2-r8.ebuild
+++ b/app-editors/emacs/emacs-28.2-r8.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
+inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
 
 if [[ ${PV##*.} = 9999 ]]; then
        inherit git-r3
@@ -43,7 +43,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 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 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 valgrind wide-int Xaw3d xft +xpm 
xwidgets zlib"
 
 RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        sys-libs/ncurses:0=
@@ -67,6 +67,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        selinux? ( sys-libs/libselinux )
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? ( !aqua? (
                x11-libs/libICE
@@ -316,6 +317,9 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+       append-cppflags -DUSE_VALGRIND=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/emacs-28.3_rc1-r2.ebuild 
b/app-editors/emacs/emacs-28.3_rc1-r2.ebuild
index ab904936acb6..42b641e992ba 100644
--- a/app-editors/emacs/emacs-28.3_rc1-r2.ebuild
+++ b/app-editors/emacs/emacs-28.3_rc1-r2.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
+inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
 
 if [[ ${PV##*.} = 9999 ]]; then
        inherit git-r3
@@ -48,7 +48,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 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 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 valgrind wide-int Xaw3d xft +xpm 
xwidgets zlib"
 
 RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        sys-libs/ncurses:0=
@@ -72,6 +72,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        selinux? ( sys-libs/libselinux )
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? ( !aqua? (
                x11-libs/libICE
@@ -321,6 +322,9 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+       append-cppflags -DUSE_VALGRIND=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/emacs-29.0.90.ebuild 
b/app-editors/emacs/emacs-29.0.90.ebuild
index 4b9556db2893..d47ea6f5e379 100644
--- a/app-editors/emacs/emacs-29.0.90.ebuild
+++ b/app-editors/emacs/emacs-29.0.90.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
+inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
 
 if [[ ${PV##*.} = 9999 ]]; then
        inherit git-r3
@@ -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 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter webp wide-int +X 
Xaw3d xft +xpm xwidgets zlib"
+IUSE="acl alsa aqua athena cairo dbus dynamic-loading games 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp 
wide-int +X Xaw3d xft +xpm xwidgets zlib"
 
 X_DEPEND="x11-libs/libICE
        x11-libs/libSM
@@ -116,6 +116,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
        tree-sitter? ( dev-libs/tree-sitter )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? (
                gif? ( media-libs/giflib:0= )
@@ -369,6 +370,9 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+       append-cppflags -DUSE_VALGRIND=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/emacs-29.0.9999-r1.ebuild 
b/app-editors/emacs/emacs-29.0.9999-r1.ebuild
index 4b9556db2893..d47ea6f5e379 100644
--- a/app-editors/emacs/emacs-29.0.9999-r1.ebuild
+++ b/app-editors/emacs/emacs-29.0.9999-r1.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
+inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
 
 if [[ ${PV##*.} = 9999 ]]; then
        inherit git-r3
@@ -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 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter webp wide-int +X 
Xaw3d xft +xpm xwidgets zlib"
+IUSE="acl alsa aqua athena cairo dbus dynamic-loading games 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp 
wide-int +X Xaw3d xft +xpm xwidgets zlib"
 
 X_DEPEND="x11-libs/libICE
        x11-libs/libSM
@@ -116,6 +116,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
        tree-sitter? ( dev-libs/tree-sitter )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? (
                gif? ( media-libs/giflib:0= )
@@ -369,6 +370,9 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+       append-cppflags -DUSE_VALGRIND=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/emacs-30.0.9999.ebuild 
b/app-editors/emacs/emacs-30.0.9999.ebuild
index 6b5a455c09ea..1bb789044d24 100644
--- a/app-editors/emacs/emacs-30.0.9999.ebuild
+++ b/app-editors/emacs/emacs-30.0.9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=8
 
-inherit autotools elisp-common readme.gentoo-r1 toolchain-funcs
+inherit autotools elisp-common flag-o-matic readme.gentoo-r1 toolchain-funcs
 
 if [[ ${PV##*.} = 9999 ]]; then
        inherit git-r3
@@ -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 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter webp wide-int +X 
Xaw3d xft +xpm xwidgets zlib"
+IUSE="acl alsa aqua athena cairo dbus dynamic-loading games 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 sqlite 
ssl svg systemd +threads tiff toolkit-scroll-bars tree-sitter valgrind webp 
wide-int +X Xaw3d xft +xpm xwidgets zlib"
 
 X_DEPEND="x11-libs/libICE
        x11-libs/libSM
@@ -116,6 +116,7 @@ RDEPEND="app-emacs/emacs-common[games?,gui(-)?]
        ssl? ( net-libs/gnutls:0= )
        systemd? ( sys-apps/systemd )
        tree-sitter? ( dev-libs/tree-sitter )
+       valgrind? ( dev-util/valgrind )
        zlib? ( sys-libs/zlib )
        gui? (
                gif? ( media-libs/giflib:0= )
@@ -369,6 +370,9 @@ src_configure() {
 }
 
 src_compile() {
+       export ac_cv_header_valgrind_valgrind_h=$(usex valgrind)
+       append-cppflags -DUSE_VALGRIND=$(usex valgrind)
+
        if tc-is-cross-compiler; then
                # Build native tools for compiling lisp etc.
                emake -C "${S}-build" src

diff --git a/app-editors/emacs/metadata.xml b/app-editors/emacs/metadata.xml
index 95c39fd0d0a7..7d8baeaeb306 100644
--- a/app-editors/emacs/metadata.xml
+++ b/app-editors/emacs/metadata.xml
@@ -51,6 +51,8 @@
     preference to Emacs' own scrollbars</flag>
     <flag name="tree-sitter">Support the <pkg>dev-libs/tree-sitter</pkg>
     parsing library</flag>
+    <flag name="valgrind">Compile in <pkg>dev-util/valgrind</pkg> memory
+    hints</flag>
     <flag name="wide-int">Prefer wide Emacs integers (typically 62-bit).
     This option has an effect only on architectures where "long" and
     "long long" types have different size.</flag>

Reply via email to