diff options
author | Junio C Hamano <gitster@pobox.com> | 2015-12-08 14:05:03 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2015-12-08 14:05:03 -0800 |
commit | b5d2d8eef0ad08022a3f635c0bc292eb2cc5aefc (patch) | |
tree | 591e520fa223ef9294eb0fe50b7868023f3262a3 /Makefile | |
parent | e6ed5a438c7a5436a08c08e269174d9975f8dc1d (diff) | |
parent | 001fd7a90b5851f62e700510729a5e09706f9b63 (diff) | |
download | git-b5d2d8eef0ad08022a3f635c0bc292eb2cc5aefc.tar.gz git-b5d2d8eef0ad08022a3f635c0bc292eb2cc5aefc.tar.xz |
Merge branch 'ad/sha1-update-chunked' into maint
Apple's common crypto implementation of SHA1_Update() does not take
more than 4GB at a time, and we now have a compile-time workaround
for it.
* ad/sha1-update-chunked:
sha1: allow limiting the size of the data passed to SHA1_Update()
sha1: provide another level of indirection for the SHA-1 functions
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -144,6 +144,10 @@ all:: # Define PPC_SHA1 environment variable when running make to make use of # a bundled SHA1 routine optimized for PowerPC. # +# Define SHA1_MAX_BLOCK_SIZE to limit the amount of data that will be hashed +# in one call to the platform's SHA1_Update(). e.g. APPLE_COMMON_CRYPTO +# wants 'SHA1_MAX_BLOCK_SIZE=1024L*1024L*1024L' defined. +# # Define NEEDS_CRYPTO_WITH_SSL if you need -lcrypto when using -lssl (Darwin). # # Define NEEDS_SSL_WITH_CRYPTO if you need -lssl when using -lcrypto (Darwin). @@ -1340,6 +1344,11 @@ ifdef NO_POSIX_GOODIES BASIC_CFLAGS += -DNO_POSIX_GOODIES endif +ifdef APPLE_COMMON_CRYPTO + # Apple CommonCrypto requires chunking + SHA1_MAX_BLOCK_SIZE = 1024L*1024L*1024L +endif + ifdef BLK_SHA1 SHA1_HEADER = "block-sha1/sha1.h" LIB_OBJS += block-sha1/sha1.o @@ -1358,6 +1367,10 @@ endif endif endif +ifdef SHA1_MAX_BLOCK_SIZE + LIB_OBJS += compat/sha1-chunked.o + BASIC_CFLAGS += -DSHA1_MAX_BLOCK_SIZE="$(SHA1_MAX_BLOCK_SIZE)" +endif ifdef NO_PERL_MAKEMAKER export NO_PERL_MAKEMAKER endif |