Subversion Repositories planix.SVN

Rev

Rev 2 | Details | Compare with Previous | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
--
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