<pre style='margin:0'>
Perry E. Metzger (pmetzger) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0d0fdfc08c59b65400de981ee5447dfac6fc4233">https://github.com/macports/macports-ports/commit/0d0fdfc08c59b65400de981ee5447dfac6fc4233</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'> new 0d0fdfc08c5 freeimage: fix Big-endian build
</span>0d0fdfc08c5 is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 0d0fdfc08c59b65400de981ee5447dfac6fc4233
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Tue Jan 30 03:00:23 2024 +0800
<span style='display:block; white-space:pre;color:#404040;'> freeimage: fix Big-endian build
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/69232
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/67489
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> See also:
</span><span style='display:block; white-space:pre;color:#404040;'> https://sourceforge.net/p/freeimage/patches/153
</span><span style='display:block; white-space:pre;color:#404040;'> https://github.com/AcademySoftwareFoundation/openexr/pull/126
</span>---
graphics/freeimage/Portfile | 5 +++
graphics/freeimage/files/patch-fix-ImfFastHuf.diff | 47 ++++++++++++++++++++++
graphics/freeimage/files/patch-fix-PluginBMP.diff | 29 +++++++++++++
graphics/freeimage/files/patch-fix-PluginDDS.diff | 25 ++++++++++++
4 files changed, 106 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/freeimage/Portfile b/graphics/freeimage/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 65d9b1dc147..374d1080ca8 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/graphics/freeimage/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/freeimage/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,6 +31,11 @@ use_zip yes
</span> worksrcdir FreeImage
patchfiles patch-c99-fixes.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://github.com/AcademySoftwareFoundation/openexr/pull/126
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-fix-ImfFastHuf.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://sourceforge.net/p/freeimage/patches/153
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append patch-fix-PluginBMP.diff \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patch-fix-PluginDDS.diff
</span>
post-patch {
set makefiles "${worksrcpath}/Makefile.fip ${worksrcpath}/Makefile.gnu"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/freeimage/files/patch-fix-ImfFastHuf.diff b/graphics/freeimage/files/patch-fix-ImfFastHuf.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..7525f2bdc9e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/freeimage/files/patch-fix-ImfFastHuf.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,47 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/OpenEXR/IlmImf/ImfFastHuf.cpp.orig 2017-11-18 15:00:24.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/OpenEXR/IlmImf/ImfFastHuf.cpp 2024-01-30 02:54:44.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -107,7 +107,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int i = 0; i <= MAX_CODE_LEN; ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ codeCount[i] = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- base[i] = 0xffffffffffffffffL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ base[i] = 0xffffffffffffffffULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ offset[i] = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -352,7 +352,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for (int i = 0; i <= MAX_CODE_LEN; ++i)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- if (base[i] != 0xffffffffffffffffL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ if (base[i] != 0xffffffffffffffffULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ _ljBase[i] = base[i] << (64 - i);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -362,7 +362,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Unused code length - insert dummy values
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- _ljBase[i] = 0xffffffffffffffffL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ _ljBase[i] = 0xffffffffffffffffULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -417,7 +417,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int minIdx = TABLE_LOOKUP_BITS;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ while (minIdx > 0 && _ljBase[minIdx] == 0xffffffffffffffffULL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ minIdx--;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (minIdx < 0)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -427,7 +427,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Set the min value such that the table is never tested.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ //
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- _tableMin = 0xffffffffffffffffL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ _tableMin = 0xffffffffffffffffULL;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ {
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/freeimage/files/patch-fix-PluginBMP.diff b/graphics/freeimage/files/patch-fix-PluginBMP.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..5282f9d214e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/freeimage/files/patch-fix-PluginBMP.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,29 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/FreeImage/PluginBMP.cpp.orig 2016-06-15 12:35:30.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/FreeImage/PluginBMP.cpp 2024-01-30 02:26:59.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1419,7 +1419,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ free(buffer);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifdef FREEIMAGE_BIGENDIAN
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else if (bpp == 16) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (dst_bpp == 16) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int padding = dst_pitch - dst_width * sizeof(WORD);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WORD pad = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ WORD pixel;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1440,7 +1440,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if FREEIMAGE_COLORORDER == FREEIMAGE_COLORORDER_RGB
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else if (bpp == 24) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (dst_bpp == 24) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ int padding = dst_pitch - dst_width * sizeof(FILE_BGR);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ DWORD pad = 0;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FILE_BGR bgr;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -1461,7 +1461,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else if (bpp == 32) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (dst_bpp == 32) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ FILE_BGRA bgra;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for(unsigned y = 0; y < dst_height; y++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ BYTE *line = FreeImage_GetScanLine(dib, y);
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/graphics/freeimage/files/patch-fix-PluginDDS.diff b/graphics/freeimage/files/patch-fix-PluginDDS.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..aa59d3a4f19
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/graphics/freeimage/files/patch-fix-PluginDDS.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,25 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- Source/FreeImage/PluginDDS.cpp.orig 2018-07-31 17:04:58.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ Source/FreeImage/PluginDDS.cpp 2024-01-30 02:43:14.000000000 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -356,14 +356,14 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ for(int i=0; i<11; i++) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SwapLong(&header->surfaceDesc.dwReserved1[i]);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwSize);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwFlags);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwFourCC);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwRGBBitCount);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwRBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwGBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwBBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- SwapLong(&header->surfaceDesc.ddpfPixelFormat.dwRGBAlphaBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwSize);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwFlags);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwFourCC);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwRGBBitCount);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwRBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwGBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwBBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ SwapLong(&header->surfaceDesc.ddspf.dwRGBAlphaBitMask);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SwapLong(&header->surfaceDesc.ddsCaps.dwCaps1);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SwapLong(&header->surfaceDesc.ddsCaps.dwCaps2);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ SwapLong(&header->surfaceDesc.ddsCaps.dwReserved[0]);
</span></pre><pre style='margin:0'>
</pre>