From 82bf7f585821b3e2ce15cc15525df456a7281b18 Mon Sep 17 00:00:00 2001 From: DRC Date: Thu, 1 Dec 2016 18:23:32 -0600 Subject: [PATCH] Fix md5cmp on AmigaOS 4 (PowerPC big-endian) + Document AmigaOS support in the change log. Based on: https://github.com/chris-y/libjpeg-turbo/commit/b4f3b757970cd9dd448af9d2713b6bcdd9929147 Closes #119 --- ChangeLog.md | 3 +++ md5/md5.c | 9 +++++++++ 2 files changed, 12 insertions(+) diff --git a/ChangeLog.md b/ChangeLog.md index 75bb04039..2740c8186 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -13,6 +13,9 @@ code in libjpeg-turbo from building. version of TJBench from outputting any reference images (the `-nowrite` switch was accidentally enabled by default.) +4. libjpeg-turbo should now build and run on AmigaOS 4 (with full AltiVec +SIMD acceleration.) + 1.5.1 ===== diff --git a/md5/md5.c b/md5/md5.c index 087f4b02a..4b5ba5ecb 100644 --- a/md5/md5.c +++ b/md5/md5.c @@ -31,6 +31,15 @@ #include "./md5.h" +#ifdef __amigaos4__ +#include +#define le32toh(x) (((x & 0xff) << 24) | \ + ((x & 0xff00) << 8) | \ + ((x & 0xff0000) >> 8) | \ + ((x & 0xff000000) >> 24)) +#define htole32(x) le32toh(x) +#endif + static void MD5Transform(unsigned int [4], const unsigned char [64]); #if (BYTE_ORDER == LITTLE_ENDIAN)