* Re: emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses
[not found] ` <20230715081357.2B622C06C71@vcs2.savannah.gnu.org>
@ 2023-07-16 10:02 ` Po Lu
2023-07-16 10:31 ` Eli Zaretskii
0 siblings, 1 reply; 5+ messages in thread
From: Po Lu @ 2023-07-16 10:02 UTC (permalink / raw)
To: emacs-devel; +Cc: Valtteri Vuorikoski
Eli Zaretskii <eliz@gnu.org> writes:
> branch: emacs-29
> commit b54febef5d735efdc907c5e5cd016bed74e338a8
> Author: Valtteri Vuorikoski <vuori@notcom.org>
> Commit: Eli Zaretskii <eliz@gnu.org>
>
> Fix NetBSD build with and without ncurses
>
> * configure.ac (netbsd): Don't set TERMINFO=no unless the termcap
> library is either -ltermcap or -lcurses. This prevents aborts
> because on recent versions of NetBSD libtermcap is actually a
> symlink to libterminfo. (Bug#64577)
>
> Copyright-paperwork-exempt: yes
> ---
> configure.ac | 6 +++++-
> 1 file changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/configure.ac b/configure.ac
> index 19575e80cf4..df74f8cd2f8 100644
> --- a/configure.ac
> +++ b/configure.ac
> @@ -5212,7 +5212,11 @@ fail;
> ;;
>
> netbsd)
> - if test "x$LIBS_TERMCAP" != "x-lterminfo"; then
> + # NetBSD versions prior to 6.0 lack native terminfo, but have a
> + # tputs() built on top of termcap in these libraries. Use native
> + # termcap instead in this case. NetBSD >= 6.0 has native terminfo
> + # implementation in -lterminfo.
> + if test "x$LIBS_TERMCAP" = "x-ltermcap" -o "x$LIBS_TERMCAP" = "x-lcurses"; then
From (autoconf)Portable Shell:
The `-a', `-o', `(', and `)' operands are not present in all
implementations, and have been marked obsolete by Posix 2008. This
is because there are inherent ambiguities in using them. For
example, `test "$1" -a "$2"' looks like a binary operator to check
whether two strings are both non-empty, but if `$1' is the literal
`!', then some implementations of `test'' treat it as a negation of
the unary operator `-a'.
Will anyone object if I change this to:
AS_IF([test "x$LIBS_TERMCAP" != "x-lterminfo" \
|| test "x$LIBS_TERMCAP" = "x-lcurses"],
[...])
on the release branch?
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses
2023-07-16 10:02 ` emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses Po Lu
@ 2023-07-16 10:31 ` Eli Zaretskii
2023-07-16 11:55 ` Po Lu
0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2023-07-16 10:31 UTC (permalink / raw)
To: Po Lu; +Cc: emacs-devel, vuori
> From: Po Lu <luangruo@yahoo.com>
> Cc: Valtteri Vuorikoski <vuori@notcom.org>
> Date: Sun, 16 Jul 2023 18:02:44 +0800
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > - if test "x$LIBS_TERMCAP" != "x-lterminfo"; then
> > + # NetBSD versions prior to 6.0 lack native terminfo, but have a
> > + # tputs() built on top of termcap in these libraries. Use native
> > + # termcap instead in this case. NetBSD >= 6.0 has native terminfo
> > + # implementation in -lterminfo.
> > + if test "x$LIBS_TERMCAP" = "x-ltermcap" -o "x$LIBS_TERMCAP" = "x-lcurses"; then
>
> >From (autoconf)Portable Shell:
>
> The `-a', `-o', `(', and `)' operands are not present in all
> implementations, and have been marked obsolete by Posix 2008. This
> is because there are inherent ambiguities in using them. For
> example, `test "$1" -a "$2"' looks like a binary operator to check
> whether two strings are both non-empty, but if `$1' is the literal
> `!', then some implementations of `test'' treat it as a negation of
> the unary operator `-a'.
We use -o in other places with 'test'. So this is evidently not a
problem.
> Will anyone object if I change this to:
>
> AS_IF([test "x$LIBS_TERMCAP" != "x-lterminfo" \
> || test "x$LIBS_TERMCAP" = "x-lcurses"],
> [...])
>
> on the release branch?
Please don't.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses
2023-07-16 10:31 ` Eli Zaretskii
@ 2023-07-16 11:55 ` Po Lu
2023-07-16 12:56 ` Eli Zaretskii
0 siblings, 1 reply; 5+ messages in thread
From: Po Lu @ 2023-07-16 11:55 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel, vuori
Eli Zaretskii <eliz@gnu.org> writes:
> We use -o in other places with 'test'.
Not in Emacs 28.
configure.in only contains `test ... -o ...' in two places, both
additions in Emacs 29, which will also affect user's ability to
configure Emacs. So I would really prefer to have this fixed in the
release branch.
> So this is evidently not a problem.
Dozens of years of Autoconf developers' experience says otherwise.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses
2023-07-16 11:55 ` Po Lu
@ 2023-07-16 12:56 ` Eli Zaretskii
2023-07-16 13:44 ` Po Lu
0 siblings, 1 reply; 5+ messages in thread
From: Eli Zaretskii @ 2023-07-16 12:56 UTC (permalink / raw)
To: Po Lu; +Cc: emacs-devel, vuori
> From: Po Lu <luangruo@yahoo.com>
> Cc: emacs-devel@gnu.org, vuori@notcom.org
> Date: Sun, 16 Jul 2023 19:55:52 +0800
>
> Eli Zaretskii <eliz@gnu.org> writes:
>
> > We use -o in other places with 'test'.
>
> Not in Emacs 28.
We are not releasing Emacs 28 anymore.
> configure.in only contains `test ... -o ...' in two places, both
> additions in Emacs 29, which will also affect user's ability to
> configure Emacs. So I would really prefer to have this fixed in the
> release branch.
>
> > So this is evidently not a problem.
>
> Dozens of years of Autoconf developers' experience says otherwise.
Sorry, I'm not going to install unnecessary changes on emacs-29 at
this stage. It's too late for that. The change I installed was
tested on the only affected system, and any further changes mean more
delays and/or risk of introducing bugs.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses
2023-07-16 12:56 ` Eli Zaretskii
@ 2023-07-16 13:44 ` Po Lu
0 siblings, 0 replies; 5+ messages in thread
From: Po Lu @ 2023-07-16 13:44 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: emacs-devel, vuori
Eli Zaretskii <eliz@gnu.org> writes:
> Sorry, I'm not going to install unnecessary changes on emacs-29 at
> this stage. It's too late for that. The change I installed was
> tested on the only affected system, and any further changes mean more
> delays and/or risk of introducing bugs.
That change is to Shell syntax within configure.ac, which affects every
single system we support.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-07-16 13:44 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <168940883684.23439.12214259073355647832@vcs2.savannah.gnu.org>
[not found] ` <20230715081357.2B622C06C71@vcs2.savannah.gnu.org>
2023-07-16 10:02 ` emacs-29 b54febef5d7: Fix NetBSD build with and without ncurses Po Lu
2023-07-16 10:31 ` Eli Zaretskii
2023-07-16 11:55 ` Po Lu
2023-07-16 12:56 ` Eli Zaretskii
2023-07-16 13:44 ` Po Lu
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/emacs.git
https://git.savannah.gnu.org/cgit/emacs/org-mode.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.