[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20231229113632.45c70893@hermes.local>
Date: Fri, 29 Dec 2023 11:36:32 -0800
From: Stephen Hemminger <stephen@...workplumber.org>
To: Eli Schwartz <eschwartz93@...il.com>, David Ahern <dsahern@...il.com>
Cc: netdev@...r.kernel.org
Subject: Re: [PATCH iproute2 1/2] configure: avoid un-recommended command
substitution form
On Wed, 27 Dec 2023 22:57:10 -0500
Eli Schwartz <eschwartz93@...il.com> wrote:
> On 12/27/23 7:46 PM, Stephen Hemminger wrote:
> > On Sun, 17 Dec 2023 22:30:52 -0500
> > Eli Schwartz <eschwartz93@...il.com> wrote:
> >
> >> The use of backticks to surround commands instead of "$(cmd)" is a
> >> legacy of the oldest pre-POSIX shells. It is confusing, unreliable, and
> >> hard to read. Its use is not recommended in new programs.
> >>
> >> See: http://mywiki.wooledge.org/BashFAQ/082
> >> ---
> >
> > This is needless churn, it works now, and bash is never going
> > to drop the syntax.
>
>
> Per the patch message, the reason to avoid the syntax is because it is
> confusing, unreliable, and hard to read.
>
> It was deprecated for good reason, and those reasons are relevant to
> people writing shell scripts! Regardless of whether it is removed, it
> has several very sharp edges and the modern alternative was designed
> specifically because the legacy syntax is bad to use *even in bash*.
>
> (bash has nothing to do with it. But also, again, this is not about bash
> because the configure script shebang is *not* /bin/bash.)
The existing configuration was built incrementally over time.
Mostly as a reaction to the issues with autoconf.
Perhaps it is time to consider updating iproute2 to a modern build
environment like meson that has better config support.
Powered by blists - more mailing lists