]>
Commit | Line | Data |
---|---|---|
c1f0ee65 JR |
1 | The following patch should allow you to compile XV 3.10a against the latest |
2 | version of Sam Leffler's TIFF Library (libtiff 3.4). | |
3 | ||
4 | You do *not* need to apply this patch to compile XV 3.10a against the | |
5 | older version of the TIFF library (3.3) that is included in the XV | |
6 | 3.10a distribution. This is only necessary if you wish to upgrade to | |
7 | the newer version of the TIFF library. | |
8 | ||
9 | You can get the latest version of the TIFF library via anonymous ftp on | |
10 | ftp.sgi.com, in 'graphics/tiff'. | |
11 | ||
12 | Thanks to Dan McCoy (mccoy@pixar.com) for supplying this patch! | |
13 | ||
14 | John Bradley | |
15 | ----------------------------------------------------------------------- | |
16 | ||
17 | ||
18 | *** xvtiff.c.orig Fri Jan 13 14:53:34 1995 | |
19 | --- xvtiff.c Thu Sep 5 16:55:46 1996 | |
20 | *************** | |
21 | *** 301,306 **** | |
22 | --- 301,310 ---- | |
23 | static byte **BWmap; | |
24 | static byte **PALmap; | |
25 | ||
26 | + /* XXXX Work around some collisions with the new library. */ | |
27 | + #define tileContigRoutine _tileContigRoutine | |
28 | + #define tileSeparateRoutine _tileSeparateRoutine | |
29 | + | |
30 | typedef void (*tileContigRoutine) PARM((byte*, u_char*, RGBvalue*, | |
31 | uint32, uint32, int, int)); | |
32 | ||
33 | *************** | |
34 | *** 340,346 **** | |
35 | uint32, uint32, int, int)); | |
36 | static void put4bitbwtile PARM((byte *, u_char *, RGBvalue *, | |
37 | uint32, uint32, int, int)); | |
38 | ! static void put16bitbwtile PARM((byte *, u_char *, RGBvalue *, | |
39 | uint32, uint32, int, int)); | |
40 | ||
41 | static void putRGBcontig8bittile PARM((byte *, u_char *, RGBvalue *, | |
42 | --- 344,350 ---- | |
43 | uint32, uint32, int, int)); | |
44 | static void put4bitbwtile PARM((byte *, u_char *, RGBvalue *, | |
45 | uint32, uint32, int, int)); | |
46 | ! static void put16bitbwtile PARM((byte *, u_short *, RGBvalue *, | |
47 | uint32, uint32, int, int)); | |
48 | ||
49 | static void putRGBcontig8bittile PARM((byte *, u_char *, RGBvalue *, | |
50 | *************** | |
51 | *** 1218,1224 **** | |
52 | */ | |
53 | static void put16bitbwtile(cp, pp, Map, w, h, fromskew, toskew) | |
54 | byte *cp; | |
55 | ! u_char *pp; | |
56 | RGBvalue *Map; | |
57 | uint32 w, h; | |
58 | int fromskew, toskew; | |
59 | --- 1222,1228 ---- | |
60 | */ | |
61 | static void put16bitbwtile(cp, pp, Map, w, h, fromskew, toskew) | |
62 | byte *cp; | |
63 | ! u_short *pp; | |
64 | RGBvalue *Map; | |
65 | uint32 w, h; | |
66 | int fromskew, toskew; | |
67 | *************** | |
68 | *** 1227,1234 **** | |
69 | ||
70 | while (h-- > 0) { | |
71 | for (x=w; x>0; x--) { | |
72 | ! *cp++ = Map[(pp[0] << 8) + pp[1]]; | |
73 | ! pp += 2; | |
74 | } | |
75 | cp += toskew; | |
76 | pp += fromskew; | |
77 | --- 1231,1237 ---- | |
78 | ||
79 | while (h-- > 0) { | |
80 | for (x=w; x>0; x--) { | |
81 | ! *cp++ = Map[*pp++]; | |
82 | } | |
83 | cp += toskew; | |
84 | pp += fromskew; | |
85 | *************** | |
86 | *** 1514,1520 **** | |
87 | case PHOTOMETRIC_MINISWHITE: | |
88 | case PHOTOMETRIC_MINISBLACK: | |
89 | switch (bitspersample) { | |
90 | ! case 16: put = put16bitbwtile; break; | |
91 | case 8: put = putgreytile; break; | |
92 | case 4: put = put4bitbwtile; break; | |
93 | case 2: put = put2bitbwtile; break; | |
94 | --- 1517,1523 ---- | |
95 | case PHOTOMETRIC_MINISWHITE: | |
96 | case PHOTOMETRIC_MINISBLACK: | |
97 | switch (bitspersample) { | |
98 | ! case 16: put = (tileContigRoutine) put16bitbwtile; break; | |
99 | case 8: put = putgreytile; break; | |
100 | case 4: put = put4bitbwtile; break; | |
101 | case 2: put = put2bitbwtile; break; |