On Wed, Mar 27, 2019 at 3:32 AM Nicolas Mailhot
<nicolas.mailhot(a)gmail.com> wrote:
Le 2019-03-27 03:46, Nico Kadel-Garcia a écrit :
> On Tue, Mar 26, 2019 at 3:44 AM Nicolas Mailhot
> <nicolas.mailhot(a)laposte.net> wrote:
>> POSIX is dead as a shell compatibility target. You want to replace
>> bash
>> with something faster, by all means do it. With something that
>> includes
>> the GNU extensions like pushd/popd that most packagers expect today.
>
> Is there any reason to *ever* use pushd or popd in %build or %install
> today?
That is totally the wrong attitude when you want to replace an
implementation used for years by thousands of volunteer people in tens
of thousands of interdependent files.
*I* wasn't suggesting altering the files. I'm merely startled by the
use of "pushd" and "popd" in build tools, especially within %build or
%install.
It is used now, ergo packagers (the people who did the work) find it
useful and convenient. You want them to do something else, you need to
make it worth their effort to something else. Winning 10 minutes of CPU
time in a single pathological spec like gcc isn't it.
Looking at
https://src.fedoraproject.org/cgit/rpms/gcc.git/tree/gcc.spec
..... *ouch*. Yeah, that is a good example. I disagree with that part
of the .spec file's logic, but wouldn't want to take on testing and
debugging something that takes this long to compile.
Yet another is to propose a syntax with is clearly simpler, more
expressive, more productive and better documented for humans (Not CPUs.
CPUs do not get to vote). But, that solves "new spec and macro code"
problem, not the "existing code" problem.
Hazing people with negative terms like bashism never convinced anyone.
Especially when others are doing the work, not you. In my language, that
is called “arriving after the battle”: complaining loudly at the people
who sweated and blooded doing some work, that they didn't do it well
enough, when you were safely somewhere else, at the time help was
needed.
That wasn't me. I was just asking about whether using pushd and popd
in a .spec file made sense. I think it does not, it's safer to specify
the target directory explicitly rather than rely on these tools. But
that's a matter of policy and best practices.
> Sincerely,
>
> --
> Nicolas Mailhot