A v2 addressing comments to the v1, tbdiff below. Just fixes the subject line on 1/3 & gets rid of the redundant _BIG_ENDIAN detection for Solaris, we can just use __sparc (and indeed we did before this). Junio C Hamano (1): sha1collisiondetection: automatically enable when submodule is populated Ævar Arnfjörð Bjarmason (2): sha1dc: correct endian detection for Solaris (and others?) sha1dc: optionally use sha1collisiondetection as a submodule .gitmodules | 4 +++ Makefile | 16 +++++++++++ hash.h | 4 +++ sha1collisiondetection | 1 + sha1dc/sha1.c | 73 +++++++++++++++++++++++++++++++++++++------------- 5 files changed, 79 insertions(+), 19 deletions(-) create mode 100644 .gitmodules create mode 160000 sha1collisiondetection @@ -1,6 +1,6 @@ Author: Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> - sha1dc: update from my PR #36 + sha1dc: correct endian detection for Solaris (and others?) Update sha1dc from my PR #36[1] which'll hopefully be integrated by upstream soon. @@ -96,22 +96,15 @@ + +#if defined(SHA1DC_ON_INTEL_LIKE_PROCESSOR) +/* -+ * As a last resort before we fall back on _BIG_ENDIAN or whatever -+ * else we're not 100% sure about below, we blacklist specific -+ * processors here. We could add more, see -+ * e.g. https://wiki.debian.org/ArchitectureSpecificsMemo ++ * As a last resort before we do anything else we're not 100% sure ++ * about below, we blacklist specific processors here. We could add ++ * more, see e.g. https://wiki.debian.org/ArchitectureSpecificsMemo + */ +#else /* Not under GCC-alike or glibc or <processor whitelist> or <processor blacklist> */ + -+#ifdef _BIG_ENDIAN -+/* -+ * Solaris / illumos defines either _LITTLE_ENDIAN or _BIG_ENDIAN in -+ * <sys/isa_defs.h>. -+ */ -+#define SHA1DC_BIGENDIAN -+#else ++/* We do nothing more here for now */ +/*#error "Uncomment this to see if you fall through all the detection"*/ -+#endif /* Big Endian because of _BIG_ENDIAN (Solaris)*/ ++ +#endif /* !SHA1DC_ON_INTEL_LIKE_PROCESSOR */ +#endif /* Big Endian under whitelist of processors */ +#endif /* Big Endian under glibc */ 2: 63a5d0cb2a ! 2: 28750d3c24 sha1dc: optionally use sha1collisiondetection as a submodule @@ -79,4 +79,4 @@ --- /dev/null +++ b/sha1collisiondetection @@ -+Subproject commit 56ab30c4c998e1e7f3075705087a2f0c4c4202d7 ++Subproject commit 9d3a0b3783afab335a1819543d039cf2980577bb -- 2.13.1.611.g7e3b11ae1