1 |
27 |
unneback |
--
|
2 |
|
|
-- makeproj.mac
|
3 |
|
|
--
|
4 |
|
|
-- This AppleScript builds Code Warrior PRO Release 2 project files for the
|
5 |
|
|
-- libjpeg library as well as the test programs 'cjpeg', 'djpeg', 'jpegtran'.
|
6 |
|
|
-- (We'd distribute real project files, except they're not text
|
7 |
|
|
-- and would create maintenance headaches.)
|
8 |
|
|
--
|
9 |
|
|
-- The script then compiles and links the library and the test programs.
|
10 |
|
|
-- NOTE: if you haven't already created a 'jconfig.h' file, the script
|
11 |
|
|
-- automatically copies 'jconfig.mac' to 'jconfig.h'.
|
12 |
|
|
--
|
13 |
|
|
-- To use this script, you must have AppleScript 1.1 or later installed
|
14 |
|
|
-- and a suitable AppleScript editor like Script Editor or Script Debugger
|
15 |
|
|
-- (http://www.latenightsw.com). Open this file with your AppleScript
|
16 |
|
|
-- editor and execute the "run" command to build the projects.
|
17 |
|
|
--
|
18 |
|
|
-- Thanks to Dan Sears and Don Agro for this script.
|
19 |
|
|
-- Questions about this script can be addressed to dogpark@interlog.com
|
20 |
|
|
--
|
21 |
|
|
|
22 |
|
|
on run
|
23 |
|
|
|
24 |
|
|
choose folder with prompt ">>> Select IJG source folder <<<"
|
25 |
|
|
set ijg_folder to result
|
26 |
|
|
|
27 |
|
|
choose folder with prompt ">>> Select MetroWerks folder <<<"
|
28 |
|
|
set cw_folder to result
|
29 |
|
|
|
30 |
|
|
-- if jconfig.h doesn't already exist, copy jconfig.mac
|
31 |
|
|
|
32 |
|
|
tell application "Finder"
|
33 |
|
|
if not (exists file "jconfig.h" of ijg_folder) then
|
34 |
|
|
duplicate {file "jconfig.mac" of folder ijg_folder}
|
35 |
|
|
select file "jconfig.mac copy" of folder ijg_folder
|
36 |
|
|
set name of selection to "jconfig.h"
|
37 |
|
|
end if
|
38 |
|
|
end tell
|
39 |
|
|
|
40 |
|
|
tell application "CodeWarrior IDE 2.1"
|
41 |
|
|
with timeout of 10000 seconds
|
42 |
|
|
|
43 |
|
|
-- create libjpeg project
|
44 |
|
|
|
45 |
|
|
activate
|
46 |
|
|
Create Project (ijg_folder as string) & "libjpeg.proj"
|
47 |
|
|
Set Preferences of panel "Target Settings" to {Target Name:"libjpeg"}
|
48 |
|
|
Set Preferences of panel "PPC Project" to {File Name:"libjpeg"}
|
49 |
|
|
Set Preferences of panel "Target Settings" to {Linker:"MacOS PPC Linker"}
|
50 |
|
|
Set Preferences of panel "PPC Project" to {Project Type:library}
|
51 |
|
|
Set Preferences of panel "C/C++ Compiler" to {ANSI Strict:true}
|
52 |
|
|
Set Preferences of panel "C/C++ Compiler" to {Enums Always Ints:true}
|
53 |
|
|
Set Preferences of panel "PPC Codegen" to {Struct Alignment:PowerPC}
|
54 |
|
|
Set Preferences of panel "PPC Linker" to {Generate SYM File:false}
|
55 |
|
|
|
56 |
|
|
Add Files (ijg_folder as string) & "jcapimin.c" To Segment 1
|
57 |
|
|
Add Files (ijg_folder as string) & "jcapistd.c" To Segment 1
|
58 |
|
|
Add Files (ijg_folder as string) & "jctrans.c" To Segment 1
|
59 |
|
|
Add Files (ijg_folder as string) & "jcparam.c" To Segment 1
|
60 |
|
|
Add Files (ijg_folder as string) & "jdatadst.c" To Segment 1
|
61 |
|
|
Add Files (ijg_folder as string) & "jcinit.c" To Segment 1
|
62 |
|
|
Add Files (ijg_folder as string) & "jcmaster.c" To Segment 1
|
63 |
|
|
Add Files (ijg_folder as string) & "jcmarker.c" To Segment 1
|
64 |
|
|
Add Files (ijg_folder as string) & "jcmainct.c" To Segment 1
|
65 |
|
|
Add Files (ijg_folder as string) & "jcprepct.c" To Segment 1
|
66 |
|
|
Add Files (ijg_folder as string) & "jccoefct.c" To Segment 1
|
67 |
|
|
Add Files (ijg_folder as string) & "jccolor.c" To Segment 1
|
68 |
|
|
Add Files (ijg_folder as string) & "jcsample.c" To Segment 1
|
69 |
|
|
Add Files (ijg_folder as string) & "jchuff.c" To Segment 1
|
70 |
|
|
Add Files (ijg_folder as string) & "jcphuff.c" To Segment 1
|
71 |
|
|
Add Files (ijg_folder as string) & "jcdctmgr.c" To Segment 1
|
72 |
|
|
Add Files (ijg_folder as string) & "jfdctfst.c" To Segment 1
|
73 |
|
|
Add Files (ijg_folder as string) & "jfdctflt.c" To Segment 1
|
74 |
|
|
Add Files (ijg_folder as string) & "jfdctint.c" To Segment 1
|
75 |
|
|
Add Files (ijg_folder as string) & "jdapimin.c" To Segment 1
|
76 |
|
|
Add Files (ijg_folder as string) & "jdapistd.c" To Segment 1
|
77 |
|
|
Add Files (ijg_folder as string) & "jdtrans.c" To Segment 1
|
78 |
|
|
Add Files (ijg_folder as string) & "jdatasrc.c" To Segment 1
|
79 |
|
|
Add Files (ijg_folder as string) & "jdmaster.c" To Segment 1
|
80 |
|
|
Add Files (ijg_folder as string) & "jdinput.c" To Segment 1
|
81 |
|
|
Add Files (ijg_folder as string) & "jdmarker.c" To Segment 1
|
82 |
|
|
Add Files (ijg_folder as string) & "jdhuff.c" To Segment 1
|
83 |
|
|
Add Files (ijg_folder as string) & "jdphuff.c" To Segment 1
|
84 |
|
|
Add Files (ijg_folder as string) & "jdmainct.c" To Segment 1
|
85 |
|
|
Add Files (ijg_folder as string) & "jdcoefct.c" To Segment 1
|
86 |
|
|
Add Files (ijg_folder as string) & "jdpostct.c" To Segment 1
|
87 |
|
|
Add Files (ijg_folder as string) & "jddctmgr.c" To Segment 1
|
88 |
|
|
Add Files (ijg_folder as string) & "jidctfst.c" To Segment 1
|
89 |
|
|
Add Files (ijg_folder as string) & "jidctflt.c" To Segment 1
|
90 |
|
|
Add Files (ijg_folder as string) & "jidctint.c" To Segment 1
|
91 |
|
|
Add Files (ijg_folder as string) & "jidctred.c" To Segment 1
|
92 |
|
|
Add Files (ijg_folder as string) & "jdsample.c" To Segment 1
|
93 |
|
|
Add Files (ijg_folder as string) & "jdcolor.c" To Segment 1
|
94 |
|
|
Add Files (ijg_folder as string) & "jquant1.c" To Segment 1
|
95 |
|
|
Add Files (ijg_folder as string) & "jquant2.c" To Segment 1
|
96 |
|
|
Add Files (ijg_folder as string) & "jdmerge.c" To Segment 1
|
97 |
|
|
Add Files (ijg_folder as string) & "jcomapi.c" To Segment 1
|
98 |
|
|
Add Files (ijg_folder as string) & "jutils.c" To Segment 1
|
99 |
|
|
Add Files (ijg_folder as string) & "jerror.c" To Segment 1
|
100 |
|
|
Add Files (ijg_folder as string) & "jmemmgr.c" To Segment 1
|
101 |
|
|
Add Files (ijg_folder as string) & "jmemmac.c" To Segment 1
|
102 |
|
|
|
103 |
|
|
-- compile and link the library
|
104 |
|
|
|
105 |
|
|
Make Project
|
106 |
|
|
Close Project
|
107 |
|
|
|
108 |
|
|
-- create cjpeg project
|
109 |
|
|
|
110 |
|
|
activate
|
111 |
|
|
Create Project (ijg_folder as string) & "cjpeg.proj"
|
112 |
|
|
Set Preferences of panel "Target Settings" to {Target Name:"cjpeg"}
|
113 |
|
|
Set Preferences of panel "PPC Project" to {File Name:"cjpeg"}
|
114 |
|
|
Set Preferences of panel "Target Settings" to {Linker:"MacOS PPC Linker"}
|
115 |
|
|
Set Preferences of panel "C/C++ Compiler" to {ANSI Strict:true}
|
116 |
|
|
Set Preferences of panel "C/C++ Compiler" to {Enums Always Ints:true}
|
117 |
|
|
Set Preferences of panel "PPC Codegen" to {Struct Alignment:PowerPC}
|
118 |
|
|
Set Preferences of panel "PPC Linker" to {Generate SYM File:false}
|
119 |
|
|
|
120 |
|
|
Add Files (ijg_folder as string) & "cjpeg.c" To Segment 1
|
121 |
|
|
Add Files (ijg_folder as string) & "rdppm.c" To Segment 1
|
122 |
|
|
Add Files (ijg_folder as string) & "rdgif.c" To Segment 1
|
123 |
|
|
Add Files (ijg_folder as string) & "rdtarga.c" To Segment 1
|
124 |
|
|
Add Files (ijg_folder as string) & "rdrle.c" To Segment 1
|
125 |
|
|
Add Files (ijg_folder as string) & "rdbmp.c" To Segment 1
|
126 |
|
|
Add Files (ijg_folder as string) & "rdswitch.c" To Segment 1
|
127 |
|
|
Add Files (ijg_folder as string) & "cdjpeg.c" To Segment 1
|
128 |
|
|
|
129 |
|
|
Add Files (ijg_folder as string) & "libjpeg" To Segment 2
|
130 |
|
|
|
131 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL C.PPC.Lib" To Segment 3
|
132 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL SIOUX.PPC.Lib" To Segment 3
|
133 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.Lib" To Segment 3
|
134 |
|
|
|
135 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:InterfaceLib" To Segment 4
|
136 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:MathLib" To Segment 4
|
137 |
|
|
|
138 |
|
|
-- compile and link cjpeg
|
139 |
|
|
|
140 |
|
|
Make Project
|
141 |
|
|
Close Project
|
142 |
|
|
|
143 |
|
|
-- create djpeg project
|
144 |
|
|
|
145 |
|
|
activate
|
146 |
|
|
Create Project (ijg_folder as string) & "djpeg.proj"
|
147 |
|
|
Set Preferences of panel "Target Settings" to {Target Name:"djpeg"}
|
148 |
|
|
Set Preferences of panel "PPC Project" to {File Name:"djpeg"}
|
149 |
|
|
Set Preferences of panel "Target Settings" to {Linker:"MacOS PPC Linker"}
|
150 |
|
|
Set Preferences of panel "C/C++ Compiler" to {ANSI Strict:true}
|
151 |
|
|
Set Preferences of panel "C/C++ Compiler" to {Enums Always Ints:true}
|
152 |
|
|
Set Preferences of panel "PPC Codegen" to {Struct Alignment:PowerPC}
|
153 |
|
|
Set Preferences of panel "PPC Linker" to {Generate SYM File:false}
|
154 |
|
|
|
155 |
|
|
Add Files (ijg_folder as string) & "djpeg.c" To Segment 1
|
156 |
|
|
Add Files (ijg_folder as string) & "wrppm.c" To Segment 1
|
157 |
|
|
Add Files (ijg_folder as string) & "wrgif.c" To Segment 1
|
158 |
|
|
Add Files (ijg_folder as string) & "wrtarga.c" To Segment 1
|
159 |
|
|
Add Files (ijg_folder as string) & "wrrle.c" To Segment 1
|
160 |
|
|
Add Files (ijg_folder as string) & "wrbmp.c" To Segment 1
|
161 |
|
|
Add Files (ijg_folder as string) & "rdcolmap.c" To Segment 1
|
162 |
|
|
Add Files (ijg_folder as string) & "cdjpeg.c" To Segment 1
|
163 |
|
|
|
164 |
|
|
Add Files (ijg_folder as string) & "libjpeg" To Segment 2
|
165 |
|
|
|
166 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL C.PPC.Lib" To Segment 3
|
167 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL SIOUX.PPC.Lib" To Segment 3
|
168 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.Lib" To Segment 3
|
169 |
|
|
|
170 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:InterfaceLib" To Segment 4
|
171 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:MathLib" To Segment 4
|
172 |
|
|
|
173 |
|
|
-- compile and link djpeg
|
174 |
|
|
|
175 |
|
|
Make Project
|
176 |
|
|
Close Project
|
177 |
|
|
|
178 |
|
|
-- create jpegtran project
|
179 |
|
|
|
180 |
|
|
activate
|
181 |
|
|
Create Project (ijg_folder as string) & "jpegtran.proj"
|
182 |
|
|
Set Preferences of panel "Target Settings" to {Target Name:"jpegtran"}
|
183 |
|
|
Set Preferences of panel "PPC Project" to {File Name:"jpegtran"}
|
184 |
|
|
Set Preferences of panel "Target Settings" to {Linker:"MacOS PPC Linker"}
|
185 |
|
|
Set Preferences of panel "C/C++ Compiler" to {ANSI Strict:true}
|
186 |
|
|
Set Preferences of panel "C/C++ Compiler" to {Enums Always Ints:true}
|
187 |
|
|
Set Preferences of panel "PPC Codegen" to {Struct Alignment:PowerPC}
|
188 |
|
|
Set Preferences of panel "PPC Linker" to {Generate SYM File:false}
|
189 |
|
|
|
190 |
|
|
Add Files (ijg_folder as string) & "jpegtran.c" To Segment 1
|
191 |
|
|
Add Files (ijg_folder as string) & "rdswitch.c" To Segment 1
|
192 |
|
|
Add Files (ijg_folder as string) & "cdjpeg.c" To Segment 1
|
193 |
|
|
Add Files (ijg_folder as string) & "transupp.c" To Segment 1
|
194 |
|
|
|
195 |
|
|
Add Files (ijg_folder as string) & "libjpeg" To Segment 2
|
196 |
|
|
|
197 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL C.PPC.Lib" To Segment 3
|
198 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:Metrowerks Standard Library:MSL C:Bin:MSL SIOUX.PPC.Lib" To Segment 3
|
199 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:Runtime:Runtime PPC:MSL RuntimePPC.Lib" To Segment 3
|
200 |
|
|
|
201 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:InterfaceLib" To Segment 4
|
202 |
|
|
Add Files (cw_folder as string) & "Metrowerks CodeWarrior:MacOS Support:Libraries:MacOS Common:MathLib" To Segment 4
|
203 |
|
|
|
204 |
|
|
-- compile and link jpegtran
|
205 |
|
|
|
206 |
|
|
Make Project
|
207 |
|
|
Close Project
|
208 |
|
|
|
209 |
|
|
quit
|
210 |
|
|
|
211 |
|
|
end timeout
|
212 |
|
|
end tell
|
213 |
|
|
end run
|