Re: x86 SHA1: Faster than OpenSSL
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 4, 2009, 20:41 UTC
- Message-ID
- <7vljlzjorh.fsf@alter.siamese.dyndns.org>
- In-Reply-To
- <20090804080147.15201.qmail@science.horizon.com>
"George Spelvin" <linux@horizon.com> writes:
> The one question I have is that currently perl is not a critical > compile-time dependency; it's needed for some extra stuff, but AFAIK you > can get most of git working without it. Whether to add that dependency > or what is a Junio question.
I am actually feel a lot more uneasy to apply a patch signed of by somebody who calls himself George Spelvin, though.
Three classes of people compile git from the source:
* People who want to be on the bleeding edge and compile git for themselves, even though they are on mainstream platforms where they could choose distro-packaged one;
* People who produce binary packages for distribution.
* People who are on minority platforms and have no other way to get git than compiling for themselves;
We do not have to worry about the first two groups of people. It won't be too involved for them to install Perl on their system; after all they are already coping with asciidoc and xmlto ;-)
We can continue shipping mozilla one to help the last group.
In the Makefile, we say:
# Define NO_OPENSSL environment variable if you do not have OpenSSL.
# This also implies MOZILLA_SHA1.and with your change, we would start implying STANDALONE_OPENSSL_SHA1 instead. But if MOZILLA_SHA1 was given explicitly, we could use that.
If they really really really want the extra performance out of statically linked OpenSSL derivative, they could prepare a preprocessed assmebly on some other machine and use it as the last resort if they do not have/want Perl. The situation is exactly the same as the documentation set. They are using HTML/man prepared on another machine (namely, mine) as the last resort if they do not have/want AsciiDoc toolchain.