Annotation of OpenXM_contrib/gmp/macos/README, Revision 1.1.1.1
1.1 maekawa 1: ===========================================================================
2:
3: GMP port to Power Macintosh and MacOS
4:
5: Kent Boortz <kent@swox.se>
6:
7: ===========================================================================
8:
9:
10:
11: This is an unsupported port of GMP to Power Macintosh and MacOS. It
12: will use the optimized 'mpn' assembler routines written for 32 bit
13: PowerPC to gain speed. The BSD MP compatible library is not built.
14:
15: The output is a library
16:
17: $GMP_SOURCE_DIR/macos/libgmp.$GMP_VERSION
18:
19: Not all tests pass
20:
21: We never run the 'io' test the source don't compile
22:
23: If using Apple's compilers we never run the mpz t-mul, mpf t-add
24: and mpf t-sub because they don't compile with MrC 4.1
25:
26:
27:
28: REQUIREMENTS
29: ============
30:
31: To compile into the library you need
32:
33: Apple MPW (free) or CodeWarrior MPW
34: MacPerl 5 for MPW
35:
36: GMP build was tested with CodeWarrior Pro 5 and MPW Shell 3.5.
37:
38: For compiling with the free Apple MPW development system you need a
39: 68K Macintosh with a 68020 or higher microprocessor, or any Power
40: Macintosh with at least 8 Mb of memory and MacOS 7.5 or later.
41:
42: See the CodeWarrior documentation for the CodeWarrior MPW requirements.
43:
44: MacPerl is free, download and install the MPW tool version from
45:
46: http://www.macperl.com
47:
48: You need the "Appl" and "Tool" archive, for example
49:
50: http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_appl.bin
51: http://www.perl.com/CPAN-local/ports/mac/Mac_Perl_520r4_tool.bin
52:
53: See the file "Install.MPW_Perl" for MPW Perl installation instructions.
54:
55:
56:
57: APPLE MPW INSTALLATION
58: ======================
59:
60: The MPW development system can be found on February 2000 Apple developer
61: "tool chest" CD or be downloaded from
62:
63: http://developer.apple.com/tools/mpw-tools/
64:
65: You need "StuffIt Expander" to unpack the source. You can download
66: "StuffIt Expander" for free from
67:
68: http://www.aladdinsys.com/expander/expander_mac_login.html
69:
70: Unpack the installation instructions
71:
72: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./About_MPW_etc.sit.hqx
73:
74: This result is a PDF file that can be read with the free Acrobat Reader
75:
76: http://www.adobe.com/products/acrobat/readstep.html
77:
78: From the MPW development environment you need at least
79:
80: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/MPW_Shell.sit.hqx
81: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Scripts.sit.hqx
82: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Tools/GetFileName.sit.hqx
83: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Tools/Make.sit.hqx
84: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Tools/MrC.sit.hqx
85: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Tools/PPCAsm.sit.hqx
86: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/MPW/Tools/PPCLink.sit.hqx
87: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/Interfaces&Libraries/Libraries.sit.hqx
88: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/Interfaces&Libraries/RuntimeLibraries.sit.hqx
89: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./MPW-GM/Interfaces&Libraries/Interfaces/CIncludes.sit.hqx
90:
91: Put these into a folder and drag the whole folder to the "StuffIt
92: Expander" icon to unpack them.
93:
94: Move "Scripts" folder down into the "MPW_Shell Folder".
95:
96: Create a folder "Tools" inside the "MPW_Shell Folder" and move "Make",
97: "PPCAsm", "MrC", "PPCLink" and "GetFileName" down into the "Tools"
98: folder.
99:
100: Create a folder "Interfaces&Libraries" at the same level as the
101: "MPW_Shell Folder". Put Put "RuntimeLibraries", "Libraries" into
102: the "Interfaces&Libraries" folder. Inside the "Interfaces&Libraries" folder
103: create a new folder "Interfaces" and put "CInlcudes" into it.
104:
105: In summary, the manually moved files/folders should be located at
106:
107: :MPW_Shell Folder:Tools:Make
108: :MPW_Shell Folder:Tools:PPCAsm
109: :MPW_Shell Folder:Tools:MrC
110: :MPW_Shell Folder:Tools:PPCLink
111: :MPW_Shell Folder:Tools:GetFileName
112: :Interfaces&Libraries:RuntimeLibraries:
113: :Interfaces&Libraries:Libraries:
114: :Interfaces&Libraries:Interfaces:CInlcudes:
115:
116: You can see the expected file structure in
117:
118: ftp://ftp.apple.com/developer/Tool_Chest/Core_Mac_OS_Tools/MPW_etc./FileList.txt
119:
120: Follow the rest of the installation instructions in "About MPW etc.".
121:
122:
123:
124: CODEWARRIOR MPW INSTALLATION
125: ============================
126:
127: The CodeWarrior installer should install everything for you.
128:
129: The CodeWarrior compiler search for headers in the directory
130: "MWCInclude" (located inside the "Interfaces" folder, inside the
131: "Interfaces&Libraries" folder inside the "CodeWarrior MPW" folder, if
132: it doesn't exist you have to create it)
133:
134: Copy the content of the following folders inside the "MWCInclude" folder:
135:
136: - "CIncludes" (path: Metrowerks CodeWarrior: MacOS Support:
137: Universal: Interfaces: CIncludes)
138:
139: - "Include" (path: Metrowerks CodeWarrior: MSL: MSL_C:
140: MSL_Common: Include)
141:
142: Copy the file "ansi_prefix.mac.h" inside the "MWCInclude" folder
143: (path: Metrowerks CodeWarrior: MSL: MSL_C: MSL_MacOS: Include:
144: ansi_prefix.mac.h)
145:
146:
147:
148: BUILD PROCESS
149: =============
150:
151: The "macos" folder/directory should be inside the top directory in the
152: GMP source tree and should contain four files
153:
154: README This file.
155: configure Create files and directories needed.
156: unix2mac Used to convert "configure" end-of-line chars.
157: Makefile.in Source for the final "Makefile".
158:
159: Double click on the "MPW Shell" icon and set the directory using the
160: "Directory" menu to the "$GMP_SOURCE_DIR:macos:" folder/directory.
161:
162: You run "configure" in a two step process
163:
164: % perl unix2mac configure > configure.mac
165: % perl configure.mac
166: or % perl configure.mac cw
167:
168: If you use CodeWarrior MPW you need to add the argument "cw" to the
169: configure script.
170:
171: Then run "Make"
172:
173: % make
174: or % make -f Makefile.cw
175:
176: This will not execute the commands. It is like "make -n" on Unix, it
177: will display the commands to execute. You select the commands and
178: hit "enter" to actually execute the commands.
179:
180: To test the code you execute the output from
181:
182: % Make check
183: or % make check -f Makefile.cw
184:
185: If there is an error the test program will complain. Note that the
186: test programs can contain errors so a test failure doesn't always
187: mean that the library is broken.
188:
189: To cleanup to the state before configure you execute the output from
190:
191: % Make clean
192:
193: To remove the the resulting library as well you do
194:
195: % Make distclean
196:
197:
198:
199: PROBLEMS
200: ========
201:
202: Bug reports should be sent directly to Kent Boortz <kent@swox.se> and
203: *not* to "bug-gmp@gnu.org".
204:
205: There may be problems if the program you use for unpacking the source
206: use automatic conversion of end-of-line characters.
207:
208: This port may be out of sync with minor GMP releases or patches.
209: The MacOS build is very different from the Unix build process and
210: for some changes in the Unix build the build process for MacOS has
211: to be changed manually. Swox has no build or test machine for this
212: port.
213:
214: The library uses stream I/O operations for some of the GMP functions
215: and maybe for some error messages. This means that to link this
216: library to form a normal Mac application you may get link problems,
217: i.e. a Mac normally has no console/shell to write to.
218:
219: If you are unfamiliar with MPW note that the "return" key and the
220: "enter" key mean different things to MPW. The first just add a line
221: break, the second send the line your pointer is at or the selection
222: you have to the MPW command interpreter.
223:
224: If you mount the GMP source from a Unix netatalk server don't move or
225: remove files from the Unix side while MPW is running. MPW cache
226: information about what the file system looks like and gets very
227: confused or crash.
228:
229: If you really need a MacOS m68k version of GMP let me know and we may
230: take the time to do the port.
231:
232:
233: Kent Boortz <kent@swox.se>
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>