Re: [PATCH v2] sha256: add support for Nettle
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Jul 10, 2022, 20:37 UTC
- Message-ID
- <xmqqa69gr9ei.fsf@gitster.g>
- In-Reply-To
- <Yssyt40xrxjtaL6m@tapette.crustytoothpaste.net>
"brian m. carlson" <sandals@crustytoothpaste.net> writes:
> Yeah, I think given the fact that many folks use autoconf, it's > beneficial to allow multiple options and just choose the one we like the > most.
Not that we any of *_SHA256 set in the configure script ;-) It still is worth noting that the Makefile is prepared to deal with configure scripts written in the most simple way, i.e. test for any backend independent of other possible backends.
There can be at least three possible arrangements, and I think the current one is the most sensible.
(1) We can allow multiple to be set and let Makefile define
precedence. "If you do not choose any, then we fall back to
..." will fall out as a natural consequence. If somebody wants to write autoconf support, they do not have
to reinvent the precedence order. They can just check for the
presence of individual libraries independently from each other.This is what we have today.
(2) We can allow multiple to be set and let Makefile define
precedence. But a misguided autoconf author can invent their
own precedence order that may not be compatible with what the
Makefile has. This allows the autoconf author weird satisifaction for being
different from what Makefile already decided for the sake of
being different. This would be unfortunate, and we should watch out when we
review patches to add autoconf support for *_SHA256 variables.(3) We can allow only one to be set and otherwise error out.
If somebody wants to write autoconf support, they have to come
up with the precedence order, or support the "--with[out]-X"
thing to customize, in order to ensure that the configure
script picks exactly one. Because not everybody has nor need to have enough knowledge to
choose one among the multiple choices available to them, this
is hostile to those who do not use configure.Not an improvement over what we have today.