OSDN Git Service

Initial revision
[pf3gnuchains/sourceware.git] / tcl / mac / README
1 Tcl 8.0.3 for Macintosh
2
3 by Ray Johnson
4 Scriptics Corporation
5 rjohnson@scriptics.com
6 with major help from
7 Jim Ingham
8 Cygnus Solutions
9 jingham@cygnus.com
10
11 RCS: @(#) $Id$
12
13 1. Introduction
14 ---------------
15
16 This is the README file for the Macintosh version of the Tcl
17 scripting language.  The file consists of information specific
18 to the Macintosh version of Tcl.  For more general information
19 please read the README file in the main Tcl directory.
20
21 2. What's new?
22 --------------
23
24 The main new feature is the Tcl compilier.  You should certainly
25 notice the speed improvements.  Any problems are probably
26 generic rather than Mac specific.  If you have questions or
27 comments about the compilier feel free to forward them to the
28 author of the compilier: Brian Lewis <btlewis@eng.sun.com>.
29 Several things were fixed/changed since the a1 release so be
30 sure to check this out.
31
32 The largest incompatible change on the Mac is the removal of the
33 following commands: "rm", "rmdir", "mkdir", "mv" and "cp".  These
34 commands were never really supported and their functionality is
35 superceded by the file command.
36
37 I've also added in a new "AppleScript" command.  This was contributed
38 by Jim Ingham who is a new member of the Tcl group.  It's very cool.
39 The command isn't actually in the core - you need to do a "package
40 require Tclapplescript" to get access to it.  This code is officially
41 unsupported and will change in the next release.  However, the core
42 functionality is there and is stable enough to use.  Documentation 
43 can be found in "AppleScript.html" in the mac subdirectory.
44
45 The resource command has also been rewacked.  You can now read and
46 write any Mac resource.  Tcl now has the new (and VERY COOL) binary
47 command that will allow you to pack and unpack the resources into
48 useful Tcl code. We will eventually provide Tcl libraries for
49 accessing the most common resources.
50
51 See the main Tcl README for other features new to Tcl 8.0.
52
53 3. Mac specific features
54 ------------------------
55
56 There are several features or enhancements in Tcl that are unique to 
57 the Macintosh version of Tcl.  Here is a list of those features and
58 pointers to where you can find more information about the feature.
59
60 * The "resource" command allows you manipulate Macintosh resources.
61   A complete man page is available for this command.
62
63 * The Mac version of the "source" command has an option to source from
64   a Macintosh resource.  Check the man page from the source command
65   for details.
66
67 * The only command NOT available on the Mac is the exec command.
68   However, we include a Mac only package called Tclapplescript that
69   provides access to Mac's AppleScript system.  This command is still
70   under design & construction.  Documentatin can be found in the mac
71   subdirectory in a file called "AppleScript.html".
72
73 * The env variable on the Macintosh works rather differently than on
74   Windows or UNIX platforms.  Check out the tclvars man page for
75   details.
76
77 * The command "file volumes" returns the available volumes on your
78   Macintosh.  Check out the file command for details.
79
80 * The command "file attributes" has the Mac specific options of
81   -creator and -type which allow you to query and set the Macintosh
82   creator and type codes for Mac files.  See file man page for details.
83
84 * We have added a template for creating a Background-only Tcl application.
85   So you can use Tcl as a faceless server process.  For more details, see 
86   the file background.doc.
87   
88 If you are writing cross platform code but would still like to use
89 some of these Mac specific commands, please remember to use the
90 tcl_platform variable to special case your code.
91
92 4. The Distribution
93 -------------------
94
95 Macintosh Tcl is distributed in three different forms.  This 
96 should make it easier to only download what you need.  The 
97 packages are as follows:
98
99 mactk8.0.3.sea.hqx
100
101     This distribution is a "binary" only release.  It contains an
102     installer program that will install a 68k, PowerPC, or Fat
103     version of the "Tcl Shell" and "Wish" applications.  In addition,
104     it installs the Tcl & Tk libraries in the Extensions folder inside
105     your System Folder.
106
107 mactcltk-full-8.0.3.sea.hqx
108
109     This release contains the full release of Tcl and Tk for the
110     Macintosh plus the More Files packages which Macintosh Tcl and Tk
111     rely on.
112
113 mactcl-source-8.0.3.sea.hqx
114
115     This release contains the complete source for Tcl 8.0.  In
116     addition, Metrowerks CodeWarrior libraries and project files
117     are included.  However, you must already have the More Files
118     package to compile this code.
119
120 5. Documentation
121 ----------------
122
123 The "html" subdirectory contains reference documentation in
124 in the HTML format.  You may also find these pages at:
125
126         http://www.scriptics.com/man/tcl8.0/contents.html
127
128 Other documentation and sample Tcl scripts can be found at
129 the Tcl archive site: 
130
131         ftp://ftp.neosoft.com/tcl/
132
133 and the Tcl resource center:
134
135         http://www.scriptics.com/resource/
136
137 The internet news group comp.lang.tcl is also a valuable
138 source of information about Tcl.  A mailing list is also
139 available (see below).
140
141 6. Compiling Tcl
142 ----------------
143
144 In order to compile Macintosh Tcl you must have the 
145 following items:
146
147         CodeWarrior Pro 2 or 3
148         Mac Tcl 8.0 (source)
149         More Files 1.4.3
150
151 There are two sets of project files included with the package. The ones
152 we use for the release are for CodeWarrior Pro 3, and are not compatible
153 with CodeWarrior Gold release 11 and earlier. We have included the files
154 for earlier versions of CodeWarrior in the folder tcl8.0:mac:CW11 Projects,
155 but they are unsupported, and a little out of date.
156
157 As of Tcl8.0p2, the code will also build under CW Pro 2.  The only
158 change that needs to be made is that float.mac.c should be replaced by
159 float.c in the MacTcl MSL project file.
160
161 However, there seems to be a bug in the CFM68K Linker in CW Pro 2,
162 which renders the CFM68K Version under CW Pro 2 very unstable.  I am
163 working with MetroWerks to resolve this issue.  The PPC version is
164 fine, as is the Traditional 68K Shell.  But if you need to use the
165 CFM68K, then you must stay with CW Pro 1 for now.
166
167 The project  files included with the Mac Tcl source should work 
168 fine.  The only thing you may need to update are the access paths.
169 Unfortunantly, it's somewhat common for the project files to become
170 slightly corrupted.  The most common problem is that the "Prefix file"
171 found in the "C/C++ Preference" panel is incorrect.  This should be
172 set to MW_TclHeaderPPC, MW_TclHeader68K or MW_TclHeaderCFM68K.
173
174 To build the fat version of TclShell, open the project file "TclShells.ΒΌ",
175 select the "TclShell" target, and build. All of the associated binaries will
176 be built automoatically. There are also targets for building static 68K
177 and Power PC builds, for building a CFM 68K build, and for building a
178 shared library Power PC only build.
179
180 Special notes:
181
182 * There is a small bug in More Files 1.4.3.  Also you should not use
183   MoreFiles 1.4.4 - 1.4.6.  Look in the file named morefiles.doc for
184   more details.
185
186 * You may not have the libmoto library which will cause a compile 
187   error.  You don't REALLY need it - it can be removed.  Look at the
188   file libmoto.doc for more details.
189
190 * Check out the file bugs.doc for information about known bugs.
191
192 If you have comments or Bug reports send them to:
193 Jim Ingham
194 jingham@cygnus.com
195