Uh, actually commit the patches described in my previous commit.
The primary purpose is to fix the port on Alphas.
This commit is contained in:
parent
c4c453cbc5
commit
e61d8fd851
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=47456
3 changed files with 151 additions and 0 deletions
127
graphics/lcms/files/patch-32bit
Normal file
127
graphics/lcms/files/patch-32bit
Normal file
|
@ -0,0 +1,127 @@
|
|||
This patch fixes assumptions made in different parts of the code
|
||||
regarding the sizeof long and int. The original code appears to use them
|
||||
interchangeably, even though it expects them to be 32 bit wide.
|
||||
--- cmsio1.c Tue Feb 13 12:08:06 2001
|
||||
+++ cmsio1.c Wed Sep 5 10:20:58 2001
|
||||
@@ -96,5 +96,5 @@
|
||||
/* Dictionary */
|
||||
|
||||
- int TagCount;
|
||||
+ icInt32Number TagCount;
|
||||
icTagSignature TagNames[MAX_TABLE_TAG];
|
||||
size_t TagSizes[MAX_TABLE_TAG];
|
||||
@@ -194,5 +194,5 @@
|
||||
icTag Tag;
|
||||
icHeader Header;
|
||||
- long TagCount, i;
|
||||
+ icInt32Number TagCount, i;
|
||||
|
||||
fread(&Header, sizeof(icHeader), 1, ICCfile);
|
||||
@@ -230,5 +230,5 @@
|
||||
Icc -> stream = ICCfile;
|
||||
|
||||
- if (fread(&TagCount, sizeof(long), 1, ICCfile) != 1)
|
||||
+ if (fread(&TagCount, sizeof(TagCount), 1, ICCfile) != 1)
|
||||
goto ErrorCleanup;
|
||||
|
||||
@@ -276,7 +276,7 @@
|
||||
|
||||
static
|
||||
-int SearchTag(LPICCPROFILE Profile, icTagSignature sig)
|
||||
+icInt32Number SearchTag(LPICCPROFILE Profile, icTagSignature sig)
|
||||
{
|
||||
- int i;
|
||||
+ icInt32Number i;
|
||||
|
||||
for (i=0; i < Profile -> TagCount; i++)
|
||||
@@ -297,5 +297,5 @@
|
||||
{
|
||||
LPVOID Ptr;
|
||||
- int i;
|
||||
+ icInt32Number i;
|
||||
|
||||
i = SearchTag(Icc, sig);
|
||||
@@ -525,5 +525,5 @@
|
||||
if (!file)
|
||||
{
|
||||
- int i;
|
||||
+ icInt32Number i;
|
||||
|
||||
for (i=0; i < icco -> TagCount; i++)
|
||||
@@ -1383,7 +1383,7 @@
|
||||
|
||||
static
|
||||
-long TransportValue32(long Value)
|
||||
+icInt32Number TransportValue32(icInt32Number Value)
|
||||
{
|
||||
- long Temp = Value;
|
||||
+ icInt32Number Temp = Value;
|
||||
|
||||
AdjustEndianess32((LPBYTE) &Temp);
|
||||
@@ -1520,5 +1520,5 @@
|
||||
BOOL SaveGamma(FILE *OutStream, LPGAMMATABLE Gamma)
|
||||
{
|
||||
- long Count;
|
||||
+ icInt32Number Count;
|
||||
int i;
|
||||
|
||||
@@ -1528,5 +1528,5 @@
|
||||
Count = TransportValue32(Gamma->nEntries);
|
||||
|
||||
- if (!DoWrite(OutStream, sizeof(long), &Count)) return FALSE;
|
||||
+ if (!DoWrite(OutStream, sizeof(Count), &Count)) return FALSE;
|
||||
|
||||
for (i=0; i < Gamma->nEntries; i++)
|
||||
@@ -1549,5 +1549,5 @@
|
||||
|
||||
|
||||
-/* Save an ASCII Tag (long) */
|
||||
+/* Save an ASCII Tag (icInt32Number) */
|
||||
|
||||
static
|
||||
@@ -1644,9 +1644,9 @@
|
||||
BOOL SaveTagDirectory(FILE *OutStream, LPICCPROFILE Icc)
|
||||
{
|
||||
- int i;
|
||||
+ icInt32Number i;
|
||||
icTag Tag;
|
||||
- long TagCount = TransportValue32(Icc -> TagCount);
|
||||
+ icInt32Number TagCount = TransportValue32(Icc -> TagCount);
|
||||
|
||||
- if (!DoWrite(OutStream, sizeof(long) , &TagCount)) return FALSE;
|
||||
+ if (!DoWrite(OutStream, sizeof(TagCount) , &TagCount)) return FALSE;
|
||||
|
||||
for (i=0; i < Icc -> TagCount; i++) {
|
||||
@@ -1670,5 +1670,5 @@
|
||||
|
||||
LPBYTE Data;
|
||||
- int i;
|
||||
+ icInt32Number i;
|
||||
size_t Begin;
|
||||
|
||||
--- cmsmtrx.c Tue Feb 13 12:08:06 2001
|
||||
+++ cmsmtrx.c Wed Sep 5 10:28:02 2001
|
||||
@@ -705,6 +705,6 @@
|
||||
void VEC3scaleAndCut(LPWVEC3 r, LPVEC3 v, double d)
|
||||
{
|
||||
- r -> n[VX] = (long) floor(v -> n[VX] * d + .5);
|
||||
- r -> n[VY] = (long) floor(v -> n[VY] * d + .5);
|
||||
- r -> n[VZ] = (long) floor(v -> n[VZ] * d + .5);
|
||||
+ r -> n[VX] = (icInt32Number) floor(v -> n[VX] * d + .5);
|
||||
+ r -> n[VY] = (icInt32Number) floor(v -> n[VY] * d + .5);
|
||||
+ r -> n[VZ] = (icInt32Number) floor(v -> n[VZ] * d + .5);
|
||||
}
|
||||
--- lcms.h Mon Feb 19 04:55:06 2001
|
||||
+++ lcms.h Wed Sep 5 10:31:08 2001
|
||||
@@ -621,9 +621,9 @@
|
||||
/* Fixed point */
|
||||
|
||||
-typedef long Fixed32; /* Fixed 15.16 whith sign */
|
||||
+typedef icInt32Number Fixed32; /* Fixed 15.16 whith sign */
|
||||
|
||||
|
||||
#define INT_TO_FIXED(x) ((x)<<16)
|
||||
-#define DOUBLE_TO_FIXED(x) ((long)((x)*65536.0+.5))
|
||||
+#define DOUBLE_TO_FIXED(x) ((icInt32Number)((x)*65536.0+.5))
|
||||
#define FIXED_TO_INT(x) ((x)>>16)
|
||||
#define FIXED_REST_TO_INT(x) ((x)&0xFFFFU)
|
14
graphics/lcms/files/patch-icc34
Normal file
14
graphics/lcms/files/patch-icc34
Normal file
|
@ -0,0 +1,14 @@
|
|||
Try to use the int32 and friends on all Unixes -- not just SGI's Irix.
|
||||
--- icc34.h Tue Feb 13 12:08:06 2001
|
||||
+++ icc34.h Wed Sep 5 10:08:42 2001
|
||||
@@ -141,8 +141,10 @@
|
||||
* etc into icXXX form. The rest of the header uses the icXXX
|
||||
* typedefs. Signatures are 4 byte quantities.
|
||||
*/
|
||||
+#ifdef __unix__
|
||||
#ifdef __sgi
|
||||
#include "sgidefs.h"
|
||||
+#endif
|
||||
|
||||
typedef __int32_t icSignature;
|
||||
|
10
graphics/lcms/files/patch-test
Normal file
10
graphics/lcms/files/patch-test
Normal file
|
@ -0,0 +1,10 @@
|
|||
Inititialize/clear more variables. Now this test works on Alphas too.
|
||||
--- ../testbed/testcms.c Tue Feb 13 12:08:32 2001
|
||||
+++ ../testbed/testcms.c Wed Sep 5 10:04:07 2001
|
||||
@@ -582,5 +582,5 @@
|
||||
static void ClearStats(LPSTATS p)
|
||||
{
|
||||
- p -> x = p -> y = p -> x2 = p -> y2 = p -> xy
|
||||
+ p -> n = p -> x = p -> y = p -> x2 = p -> y2 = p -> xy
|
||||
= p -> Peak = 0.0;
|
||||
}
|
Loading…
Reference in a new issue