OSDN Git Service

2010-01-06 Tristan Gingold <gingold@adacore.com>
[pf3gnuchains/pf3gnuchains3x.git] / tcl / mac / morefiles.doc
1 Notes about MoreFiles, dnr.c & other non-Tcl source files
2 ---------------------------------------------------------
3
4 RCS: @(#) $Id$
5
6 The Macintosh distribution uses several source files that don't
7 actually ship with Tcl.  This sometimes causes problems or confusion
8 to developers.  This document should help clear up a few things.
9
10 dnr.c
11 -----
12
13 We have found a way to work around some bugs in dnr.c that 
14 Apple has never fixed even though we sent in numerous bug reports.
15 The file tclMacDNR.c simply set's some #pragma's and the includes
16 the Apple dnr.c file.  This should work the problems that many of
17 you have reported with dnr.c.
18
19 More Files
20 ----------
21
22 Macintosh Tcl/Tk also uses Jim Luther's very useful package called
23 More Files.  More Files fixes many of the broken or underfunctional
24 parts of the file system.
25
26 More Files can be found on the MetroWerks CD and Developer CD from
27 Apple.  You can also down load the latest version from:
28
29         ftp://members.aol.com/JumpLong/
30
31 The package can also be found at the home of Tcl/Tk for the mac:
32
33         ftp://ftp.sunlabs.com/pub/tcl/mac/
34
35 I used to just link the More Files library in the Tcl projects.  
36 However, this caused problems when libraries wern't matched correctly.
37 I'm now including the files in the Tcl project directly.  This
38 solves the problem of missmatched libraries - but may not always
39 compile.
40
41 If you get a compiliation error in MoreFiles you need to contact
42 Jim Luther.  His email address:
43
44         JumpLong@aol.com
45
46 The version of More Files that we use with Tcl/Tk is 1.4.3.  Early
47 version may work as well..
48
49 Unfortunantly, there is one bug in his library (in 1.4.3).  The bug is
50 in the function FSpGetFullPath found in the file FullPath.c.  After
51 the call to PBGetCatInfoSync you need to change the line:
52
53     if ( result == noErr )
54
55         to:
56
57     if ( (result == noErr) || (result == fnfErr) )
58
59
60 The latest version of More Files is 1.4.6.  Unfortunantly, this
61 version has a bug that keeps it from working with shared libraries
62 right out of the box.  If you want to use 1.4.6 you can but you will
63 need to make the following fix:
64
65         In the file "Opimization.h" in the More Files package you
66         need to remove the line "#pragma internal on".  And in the
67         file "OptimazationEnd.h" you need to remove the line
68         "#pragma internal reset".
69
70 Note: the version of MoreFile downloaded from the Sun Tcl/Tk site
71 will have the fix included.  (If you want you can send email to
72 Jim Luther suggesting that he use Tcl for regression testing!)
73
74 Ray Johnson