1994.01.10 14:04 "libtiff 3.3 for mac THINK 6.01, PC MSC7.0 & Borland 3.x", by Alen Shapiro
A port of libtiff 3.3 for Apple Macintosh under THINK C 6.01 and for PC under MSC7.0 is available at crash.cts.com in /pub/alen. All features compile (large arrays used to be a problem). Borland is being worked on but, using the included project, features that will not compile are disabled.
2 files are in crash.cts.com:/pub/alen
- tiff3.3+.sea.bin a macbinary, self-extracting cpt archive of the sources and projects needed to build the 2 libtiff libraries (libtiff1 & libtiff2). Lines of source files in here are mac <CR> terminated. All files from the distribution are present.
- tiff3.3+.tar.Z a Unix-compressed tar archive of the sources, again, all files from the distribution are present, however source lines are Unix <NL> terminated and any mac binary files are in MacBinary format.
PC/MSC users please note the warning at the end of the file CHANGES-v3.3+ which is included in this posting.
Any bug fixes, please email me at email@example.com
I'll try to incorporate them. Rather than start another libtiff source branch. If the "libtiff-guardians" would like to merge these changes with the REAL distribution, the modifications are all marked with #ifdefs. (HEAP_ARRAYS, CCITT_SUPPORT (in files that Borland cannot yet compile) and __BORLANDC__ to auto switch the non-compilable borland features (in tiffconf.h)). Makefile.msc is included for PC MSC7.0 but does not yet automatically build the g3states.h file.
_____CHANGES-v3.3+ follows here_____
TIFF Software "Release" 3.30+ (UNOFFICIAL) (changes since 3.30)
- Not a release, just modifications to be more portable. Would someone official like to integrate this with a release?
mac o Now compiles and runs under THINK 6.01. Large compile-time arrays are not generated or used. Portability to DOS has been improved. To build the libraries, use "build library" from within THINK C projects libtiff1 and libtiff2. The resulting libraries should be linked with user-projects that have far-heap, far-code and seperate strings project options enabled. If you want to use the tiff_fax3 module facilities you will need to run mkg3state with the -a option to generate g3states.h (on its standard output). Then run mkg3res and direct its output to res.r. Do not include res.r in the libtiff2 project directly since it crashes the compiler. Use sarez (from THINK 5.1) to create a res.rsrc from res.r. The res.rsrc file is already placed in the libtiff2 project.
You don't have to do this if you have the res.rsrc file shipped
with this archive. It was produced by mkg3res and has been converted
pc o Use makefile.msc to build a 32-bit libtiff.lib. Will be non 32-bit (but windoze dependent) when I get the mac-like resource code working under Borland C 3.x. The borland defines are configured to leave out the CCITT/fax code and no 32 bit or Windoze dependency is present. The configuring for Borland is automatically enabled in the file tiffconf.h. Complete Borland functionality is being worked on.
Changes in libtiff:
- tiff_fax3.c #ifdef HEAP_ARRAYS code added to use data resources instead of expecting compile-time initialized arrays. Added #if defined(CCITT_SUPPORT) to auto ignore this file if necessary (so it can be left in a Borland project but not compiled)
- tiff_ccitt.c Added #if defined(CCITT_SUPPORT)
- tiff_fax4.c Added #if defined(CCITT_SUPPORT)
- tiff_apple.c #ifdef HEAP_ARRAYS code added to read data resources
- tiff_apple.h introduced resource name and numbers as #defines (used by both mkg3res and the tiff_apple.c)
- tiffconf.h introduced #if defined(__BORLAND__) to automatically disable modules needing large arrays. Mac-like resource approach is being developed.
Changes in the tools:
- changed mkg3state.c to optionally use and generate arrays smaller than 32k. Use with the -a option and compile mkg3states.c with #define HEAP_ARRAYS enabled.
- converted mkg3state.c to generate mac resource source, called the conversion mkg3res.c.
Changes in the contrib software:
- the fax2ps program is now more robust in decoding images with errors in the encoded data
BEWARE...I have noticed that tiff-rgb in the contrib/dbs directory produced different results when compiled in MSC7.0 (PC) when compared to THINK C (mac) and Borland C (PC). THINK & Borland produced identical size files, MSC produced file is 728 bytes short and when, viewed, presents a small black blemish on the output. I do not know why this happens and suspect a casting/conversion problem in the tiff library.
alen shapiro 1/7/94
--alen... trying to turn a SPARC into a FLAME