GNU bug report logs -
#65142
30.0.50; configure --without-all does not disable some features
Previous Next
Reported by: Ulrich Müller <ulm <at> gentoo.org>
Date: Tue, 8 Aug 2023 07:55:02 UTC
Severity: normal
Found in version 30.0.50
Fixed in version 30.1
Done: Ulrich Mueller <ulm <at> gentoo.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 65142 in the body.
You can then email your comments to 65142 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65142
; Package
emacs
.
(Tue, 08 Aug 2023 07:55:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Ulrich Müller <ulm <at> gentoo.org>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Tue, 08 Aug 2023 07:55:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Ever since --with-json was changed from using OPTION_DEFAULT_ON to
OPTION_DEFAULT_IFAVAILABLE (commit 43091e6c5069), option --without-all
will no longer disable it. The same applies to --with-tree-sitter.
$ ./configure --without-all
[...]
Does Emacs use -ljansson? yes
Does Emacs use -ltree-sitter? yes
[...]
The following patch should fix the problem:
From b5ef99a3f06005524ab12a1bd6a2a6dfa7689ec2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Ulrich=20M=C3=BCller?= <ulm <at> gentoo.org>
Date: Tue, 8 Aug 2023 08:34:43 +0200
Subject: [PATCH] Disable json and tree-sitter with --without-all
* configure.ac (OPTION_DEFAULT_IFAVAILABLE): Disable the option if
--without-all was specified.
---
configure.ac | 9 ++++++---
1 file changed, 6 insertions(+), 3 deletions(-)
diff --git a/configure.ac b/configure.ac
index e01465c2af0..de602371f7b 100644
--- a/configure.ac
+++ b/configure.ac
@@ -305,7 +305,8 @@ AC_DEFUN
])dnl
dnl OPTION_DEFAULT_IFAVAILABLE(NAME, HELP-STRING)
-dnl Create a new --with option that defaults to 'ifavailable'.
+dnl Create a new --with option that defaults to 'ifavailable',
+dnl unless it is overriden by $with_features being equal to 'no'.
dnl NAME is the base name of the option. The shell variable with_NAME
dnl will be set to either the user's value (if the option is
dnl specified; 'yes' for a plain --with-NAME) or to 'ifavailable' (if the
@@ -315,10 +316,12 @@ AC_DEFUN
dnl HELP-STRING is the help text for the option.
AC_DEFUN([OPTION_DEFAULT_IFAVAILABLE], [dnl
AC_ARG_WITH([$1],[AS_HELP_STRING([--with-$1],[$2])],[],[dnl
- m4_bpatsubst([with_$1], [[^0-9a-z]], [_])=ifavailable])dnl
+ AS_IF([test "$with_features" != no],
+ [m4_bpatsubst([with_$1], [[^0-9a-z]], [_])=ifavailable],
+ [m4_bpatsubst([with_$1], [[^0-9a-z]], [_])=no])dnl
+ ])dnl
])dnl
-
dnl OPTION_DEFAULT_ON(NAME, HELP-STRING)
dnl Create a new --with option that defaults to $with_features.
dnl NAME is the base name of the option. The shell variable with_NAME
--
2.41.0
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65142
; Package
emacs
.
(Tue, 08 Aug 2023 12:14:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 65142 <at> debbugs.gnu.org (full text, mbox):
> From: Ulrich Müller <ulm <at> gentoo.org>
> Date: Tue, 08 Aug 2023 09:54:20 +0200
>
> Ever since --with-json was changed from using OPTION_DEFAULT_ON to
> OPTION_DEFAULT_IFAVAILABLE (commit 43091e6c5069), option --without-all
> will no longer disable it. The same applies to --with-tree-sitter.
>
> $ ./configure --without-all
> [...]
> Does Emacs use -ljansson? yes
> Does Emacs use -ltree-sitter? yes
> [...]
>
> The following patch should fix the problem:
Thanks, but the proposed patch affects any option that is by default
"ifavailable", doesn't it? If so, the patch is probably good for
master, but for the emacs-29 branch I'd prefer a safer change which
only affects the above two options. Is that possible?
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65142
; Package
emacs
.
(Tue, 08 Aug 2023 14:42:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 65142 <at> debbugs.gnu.org (full text, mbox):
>>>>> On Tue, 08 Aug 2023, Eli Zaretskii wrote:
> Thanks, but the proposed patch affects any option that is by default
> "ifavailable", doesn't it? If so, the patch is probably good for
> master, but for the emacs-29 branch I'd prefer a safer change which
> only affects the above two options. Is that possible?
I had aimed for the master branch. :) It should also be o.k. for
emacs-29, because json and tree-sitter are the only options that use
OPTION_DEFAULT_IFAVAILABLE:
$ grep OPTION_DEFAULT_IFAVAILABLE configure.ac
dnl OPTION_DEFAULT_IFAVAILABLE(NAME, HELP-STRING)
AC_DEFUN([OPTION_DEFAULT_IFAVAILABLE], [dnl
OPTION_DEFAULT_IFAVAILABLE([json], [compile with native JSON support])
OPTION_DEFAULT_IFAVAILABLE([tree-sitter], [compile with tree-sitter])
A diff of the generated configure file with and without the patch
confirms that no other option defaults are changed.
(There are other options that can have "ifavailable" as their value, but
none of them uses the macro that is patched.)
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#65142
; Package
emacs
.
(Tue, 08 Aug 2023 15:29:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 65142 <at> debbugs.gnu.org (full text, mbox):
> From: Ulrich Mueller <ulm <at> gentoo.org>
> Cc: 65142 <at> debbugs.gnu.org
> Date: Tue, 08 Aug 2023 16:41:40 +0200
>
> >>>>> On Tue, 08 Aug 2023, Eli Zaretskii wrote:
>
> > Thanks, but the proposed patch affects any option that is by default
> > "ifavailable", doesn't it? If so, the patch is probably good for
> > master, but for the emacs-29 branch I'd prefer a safer change which
> > only affects the above two options. Is that possible?
>
> I had aimed for the master branch. :) It should also be o.k. for
> emacs-29, because json and tree-sitter are the only options that use
> OPTION_DEFAULT_IFAVAILABLE:
>
> $ grep OPTION_DEFAULT_IFAVAILABLE configure.ac
> dnl OPTION_DEFAULT_IFAVAILABLE(NAME, HELP-STRING)
> AC_DEFUN([OPTION_DEFAULT_IFAVAILABLE], [dnl
> OPTION_DEFAULT_IFAVAILABLE([json], [compile with native JSON support])
> OPTION_DEFAULT_IFAVAILABLE([tree-sitter], [compile with tree-sitter])
>
> A diff of the generated configure file with and without the patch
> confirms that no other option defaults are changed.
>
> (There are other options that can have "ifavailable" as their value, but
> none of them uses the macro that is patched.)
OK, then please install this on master, and thanks.
bug marked as fixed in version 30.1, send any further explanations to
65142 <at> debbugs.gnu.org and Ulrich Müller <ulm <at> gentoo.org>
Request was from
Ulrich Mueller <ulm <at> gentoo.org>
to
control <at> debbugs.gnu.org
.
(Tue, 08 Aug 2023 15:44:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 06 Sep 2023 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 1 year and 292 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.