Don't call InvertPixelArray with negative width and/or height.
[tangerine.git] / workbench / libs / muimaster / smakefile
blobf10599712931c9ab561c32dfec9128b608d5497b
1 CFLAGS = NOVERS gst=all.gst idlen=40 IDIR=include
2 LIBCODE =
4 SUPPORTOBJS = \
5   objs/datatypescache.o \
6   objs/dragndrop.o \
7   objs/font.o \
8   objs/frame.o \
9   objs/imspec.o \
10   objs/imspec_vector.o \
11   objs/imspec_gradient.o \
12   objs/menu.o \
13   objs/penspec.o \
14   objs/support.o \
15   objs/support_amigaos.o \
16   objs/support_classes.o \
17   objs/textengine.o \
18   objs/bubbleengine.o \
19   objs/clipboard.o
21 LIBOBJS = \
22   objs/mui_addclipping.o\
23   objs/mui_addclipregion.o\
24   objs/mui_allocaslrequest.o\
25   objs/mui_aslrequest.o\
26   objs/mui_beginrefresh.o\
27   objs/mui_createcustomclass.o\
28   objs/mui_deletecustomclass.o\
29   objs/mui_disposeobject.o\
30   objs/mui_endrefresh.o\
31   objs/mui_error.o\
32   objs/mui_freeaslrequest.o\
33   objs/mui_freeclass.o\
34   objs/mui_getclass.o\
35   objs/mui_layout.o\
36   objs/mui_makeobject.o\
37   objs/mui_newobject.o\
38   objs/mui_obtainpen.o\
39   objs/mui_redraw.o\
40   objs/mui_rejectidcmp.o\
41   objs/mui_releasepen.o\
42   objs/mui_removeclipping.o\
43   objs/mui_removeclipregion.o\
44   objs/mui_request.o\
45   objs/mui_requestidcmp.o\
46   objs/mui_seterror.o
48 CLASSESOBJS= \
49   objs/classes/aboutmui.o \
50   objs/classes/application.o \
51   objs/classes/area.o \
52   objs/classes/balance.o \
53   objs/classes/bitmap.o \
54   objs/classes/bodychunk.o \
55   objs/classes/boopsi.o \
56   objs/classes/chunkyimage.o \
57   objs/classes/configdata.o \
58   objs/classes/coloradjust.o \
59   objs/classes/colorfield.o \
60   objs/classes/crawling.o \
61   objs/classes/cycle.o \
62   objs/classes/dataspace.o \
63   objs/classes/dirlist.o \
64   objs/classes/family.o \
65   objs/classes/frameadjust.o \
66   objs/classes/framedisplay.o \
67   objs/classes/gauge.o \
68   objs/classes/group.o \
69   objs/classes/iconlist.o \
70   objs/classes/iconlistview.o \
71   objs/classes/image.o \
72   objs/classes/imageadjust.o \
73   objs/classes/imagedisplay.o \
74   objs/classes/knob.o \
75   objs/classes/levelmeter.o \
76   objs/classes/list.o \
77   objs/classes/listview.o \
78   objs/classes/mccprefs.o \
79   objs/classes/menuitem.o \
80   objs/classes/notify.o \
81   objs/classes/numeric.o \
82   objs/classes/numericbutton.o \
83   objs/classes/penadjust.o \
84   objs/classes/pendisplay.o \
85   objs/classes/poppen.o \
86   objs/classes/popasl.o \
87   objs/classes/popframe.o \
88   objs/classes/popimage.o \
89   objs/classes/poplist.o \
90   objs/classes/popobject.o \
91   objs/classes/popscreen.o \
92   objs/classes/popstring.o \
93   objs/classes/prop.o \
94   objs/classes/radio.o \
95   objs/classes/rectangle.o \
96   objs/classes/register.o \
97   objs/classes/semaphore.o \
98   objs/classes/scale.o \
99   objs/classes/scrollbar.o \
100   objs/classes/scrollbutton.o \
101   objs/classes/scrollgroup.o \
102   objs/classes/settings.o \
103   objs/classes/settingsgroup.o \
104   objs/classes/slider.o \
105   objs/classes/string.o \
106   objs/classes/text.o \
107   objs/classes/virtgroup.o \
108   objs/classes/volumelist.o \
109   objs/classes/window.o
111 NLISTOBJS= \
112   //classes/nlist/NList_mcc/NList_mcc.o \
113   //classes/nlist/NList_mcc/NList_mcc0.o \
114   //classes/nlist/NList_mcc/NList_mcc1.o \
115   //classes/nlist/NList_mcc/NList_mcc2.o \
116   //classes/nlist/NList_mcc/NList_mcc3.o \
117   //classes/nlist/NList_mcc/NList_mcc4.o \
118   //classes/nlist/NList_mcc/NList_mcc5.o \
119   //classes/nlist/NList_mcc/NList_mcc6.o \
120   //classes/nlist/NList_mcc/move.o \
121   //classes/nlist/NList_mcc/cbio.o \
122   //classes/nlist/NList_mcc/NList_func.o \
123   //classes/nlist/NList_mcc/NList_func2.o \
124   //classes/nlist/NList_mcc/NList_func3.o \
125   //classes/nlist/NList_mcc/NList_func4.o \
126   //classes/nlist/NList_mcc/NList_grp.o \
127   //classes/nlist/NList_mcc/NList_img.o \
128   //classes/nlist/NList_mcc/NList_img2.o
130 NLISTVIEWOBJS= \
131   //classes/nlist/NListview_mcc/NListview.o
133 all: dirs all.gst include zunemaster.library test wb
135 dirs:
136   execute  <<
137     if not exists objs
138       makedir objs
139     endif
141     if not exists objs/classes
142       makedir objs/classes
143     endif
145     if not exists objs/demos
146       makedir objs/demos
147     endif
150 all.gst: headers.c
151   sc headers.c noobjname makegst all.gst
153 zunemaster.library: objs/zunemaster_lib.o objs/muimaster_init.o $(LIBOBJS) $(SUPPORTOBJS) $(CLASSESOBJS)
154   sc to zunemaster.library nostartup link with <<
155 lib:debug.lib
156 objs/zunemaster_lib.o
157 objs/muimaster_init.o
158 $(LIBOBJS) $(SUPPORTOBJS) $(CLASSESOBJS)
159 nocheckabort
162 objs/zunemaster_lib.o: zunemaster_lib.c
163   sc $(CFLAGS) stringmerge zunemaster_lib.c objname=$@
165 objs/muimaster_init.o: muimaster_init.c
166   sc $(CFLAGS) muimaster_init.c objname=$@
168 objs/datatypescache.o: datatypescache.c
169   sc $(CFLAGS) datatypescache.c objname=$@
171 objs/dragndrop.o: dragndrop.c
172   sc $(CFLAGS) dragndrop.c objname=$@
174 objs/font.o: frame.c
175   sc $(CFLAGS) font.c objname=$@
177 objs/frame.o: frame.c
178   sc $(CFLAGS) frame.c objname=$@
180 objs/imspec.o: imspec.c
181   sc $(CFLAGS) imspec.c objname=$@
183 objs/imspec_vector.o: imspec_vector.c
184   sc $(CFLAGS) imspec_vector.c objname=$@
186 objs/imspec_gradient.o: imspec_gradient.c
187   sc $(CFLAGS) imspec_gradient.c objname=$@
189 objs/menu.o: menu.c
190   sc $(CFLAGS) menu.c objname=$@
192 objs/support.o: support.c
193   sc $(CFLAGS) support.c objname=$@
195 objs/support_amigaos.o: support_amigaos.c
196   sc $(CFLAGS) support_amigaos.c objname=$@
198 objs/support_classes.o: support_classes.c
199   sc $(CFLAGS) support_classes.c objname=$@
201 objs/textengine.o: textengine.c
202   sc $(CFLAGS) textengine.c objname=$@
204 objs/bubbleengine.o: bubbleengine.c
205   sc $(CFLAGS) bubbleengine.c objname=$@
207 objs/clipboard.o: clipboard.c
208   sc $(CFLAGS) clipboard.c objname=$@
210 objs/penspec.o: penspec.c
211   sc $(CFLAGS) penspec.c objname=$@
213 objs/prefs.o: prefs.c
214   sc $(CFLAGS) prefs.c objname=$@
217 objs/mui_addclipping.o: mui_addclipping.c
218   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_addclipping.c objname=$@
220 objs/mui_addclipregion.o: mui_addclipregion.c
221   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_addclipregion.c objname=$@
223 objs/mui_allocaslrequest.o: mui_allocaslrequest.c
224   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_allocaslrequest.c objname=$@
226 objs/mui_aslrequest.o: mui_aslrequest.c
227   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_aslrequest.c objname=$@
229 objs/mui_beginrefresh.o: mui_beginrefresh.c
230   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_beginrefresh.c objname=$@
232 objs/mui_createcustomclass.o: mui_createcustomclass.c
233   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_createcustomclass.c objname=$@
235 objs/mui_deletecustomclass.o: mui_deletecustomclass.c
236   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_deletecustomclass.c objname=$@
238 objs/mui_disposeobject.o: mui_disposeobject.c
239   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_disposeobject.c objname=$@
241 objs/mui_endrefresh.o: mui_endrefresh.c
242   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_endrefresh.c objname=$@
244 objs/mui_error.o: mui_error.c
245   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_error.c objname=$@
247 objs/mui_freeaslrequest.o: mui_freeaslrequest.c
248   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_freeaslrequest.c objname=$@
250 objs/mui_freeclass.o: mui_freeclass.c
251   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_freeclass.c objname=$@
253 objs/mui_getclass.o: mui_getclass.c
254   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_getclass.c objname=$@
256 objs/mui_layout.o: mui_layout.c
257   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_layout.c objname=$@
259 objs/mui_makeobject.o: mui_makeobject.c
260   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_makeobject.c objname=$@
262 objs/mui_newobject.o: mui_newobject.c
263   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_newobject.c objname=$@
265 objs/mui_obtainpen.o: mui_obtainpen.c
266   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_obtainpen.c objname=$@
268 objs/mui_redraw.o: mui_redraw.c
269   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_redraw.c objname=$@
271 objs/mui_rejectidcmp.o: mui_rejectidcmp.c
272   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_rejectidcmp.c objname=$@
274 objs/mui_releasepen.o: mui_releasepen.c
275   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_releasepen.c objname=$@
277 objs/mui_removeclipping.o: mui_removeclipping.c
278   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_removeclipping.c objname=$@
280 objs/mui_removeclipregion.o: mui_removeclipregion.c
281   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_removeclipregion.c objname=$@
283 objs/mui_request.o: mui_request.c
284   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_request.c objname=$@
286 objs/mui_requestidcmp.o: mui_requestidcmp.c
287   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_requestidcmp.c objname=$@
289 objs/mui_seterror.o: mui_seterror.c
290   sc $(CFLAGS) $(LIBSDIRS) $(LIBCODE) mui_seterror.c objname=$@
293 objs/classes/aboutmui.o: classes/aboutmui.c
294   sc $(CFLAGS) $(CLASSESDIRS) classes/aboutmui.c objname=$@
296 objs/classes/application.o: classes/application.c
297   sc $(CFLAGS) $(CLASSESDIRS) classes/application.c objname=$@
299 objs/classes/area.o: classes/area.c
300   sc $(CFLAGS) $(CLASSESDIRS) classes/area.c objname=$@
302 objs/classes/balance.o: classes/balance.c
303   sc $(CFLAGS) $(CLASSESDIRS) classes/balance.c objname=$@
305 objs/classes/bitmap.o: classes/bitmap.c
306   sc $(CFLAGS) $(CLASSESDIRS) classes/bitmap.c objname=$@
308 objs/classes/bodychunk.o: classes/bodychunk.c
309   sc $(CFLAGS) $(CLASSESDIRS) classes/bodychunk.c objname=$@
311 objs/classes/boopsi.o: classes/boopsi.c
312   sc $(CFLAGS) $(CLASSESDIRS) classes/boopsi.c objname=$@
314 objs/classes/chunkyimage.o: classes/chunkyimage.c
315   sc $(CFLAGS) $(CLASSESDIRS) classes/chunkyimage.c objname=$@
317 objs/classes/coloradjust.o: classes/coloradjust.c
318   sc $(CFLAGS) $(CLASSESDIRS) classes/coloradjust.c objname=$@
320 objs/classes/colorfield.o: classes/colorfield.c
321   sc $(CFLAGS) $(CLASSESDIRS) classes/colorfield.c objname=$@
323 objs/classes/configdata.o: classes/configdata.c
324   sc $(CFLAGS) $(CLASSESDIRS) classes/configdata.c objname=$@
326 objs/classes/crawling.o: classes/crawling.c
327   sc $(CFLAGS) $(CLASSESDIRS) classes/crawling.c objname=$@
329 objs/classes/cycle.o: classes/cycle.c
330   sc $(CFLAGS) $(CLASSESDIRS) classes/cycle.c objname=$@
332 objs/classes/dataspace.o: classes/dataspace.c
333   sc $(CFLAGS) $(CLASSESDIRS) classes/dataspace.c objname=$@
335 objs/classes/dirlist.o: classes/dirlist.c
336   sc $(CFLAGS) $(CLASSESDIRS) classes/dirlist.c objname=$@
338 objs/classes/family.o: classes/family.c
339   sc $(CFLAGS) $(CLASSESDIRS) classes/family.c objname=$@
341 objs/classes/frameadjust.o: classes/frameadjust.c
342   sc $(CFLAGS) $(CLASSESDIRS) classes/frameadjust.c objname=$@
344 objs/classes/framedisplay.o: classes/framedisplay.c
345   sc $(CFLAGS) $(CLASSESDIRS) classes/framedisplay.c objname=$@
347 objs/classes/gauge.o: classes/gauge.c
348   sc $(CFLAGS) $(CLASSESDIRS) classes/gauge.c objname=$@
350 objs/classes/group.o: classes/group.c
351   sc $(CFLAGS) $(CLASSESDIRS) classes/group.c objname=$@
353 objs/classes/iconlist.o: classes/iconlist.c
354   sc $(CFLAGS) $(CLASSESDIRS) classes/iconlist.c objname=$@
356 objs/classes/iconlistview.o: classes/iconlistview.c
357   sc $(CFLAGS) $(CLASSESDIRS) classes/iconlistview.c objname=$@
359 objs/classes/image.o: classes/image.c
360   sc $(CFLAGS) $(CLASSESDIRS) classes/image.c objname=$@
362 objs/classes/imageadjust.o: classes/imageadjust.c
363   sc $(CFLAGS) $(CLASSESDIRS) classes/imageadjust.c objname=$@
365 objs/classes/imagedisplay.o: classes/imagedisplay.c
366   sc $(CFLAGS) $(CLASSESDIRS) classes/imagedisplay.c objname=$@
368 objs/classes/knob.o: classes/knob.c
369   sc $(CFLAGS) $(CLASSESDIRS) classes/knob.c objname=$@
371 objs/classes/levelmeter.o: classes/levelmeter.c
372   sc $(CFLAGS) $(CLASSESDIRS) classes/levelmeter.c objname=$@
374 objs/classes/list.o: classes/list.c
375   sc $(CFLAGS) $(CLASSESDIRS) classes/list.c objname=$@
377 objs/classes/listview.o: classes/listview.c
378   sc $(CFLAGS) $(CLASSESDIRS) classes/listview.c objname=$@
380 objs/classes/notify.o: classes/notify.c
381   sc $(CFLAGS) $(CLASSESDIRS) classes/notify.c objname=$@
383 objs/classes/mccprefs.o: classes/mccprefs.c
384   sc $(CFLAGS) $(CLASSESDIRS) classes/mccprefs.c objname=$@
386 objs/classes/menuitem.o: classes/menuitem.c
387   sc $(CFLAGS) $(CLASSESDIRS) classes/menuitem.c objname=$@
389 objs/classes/numeric.o: classes/numeric.c
390   sc $(CFLAGS) $(CLASSESDIRS) classes/numeric.c objname=$@
392 objs/classes/numericbutton.o: classes/numericbutton.c
393   sc $(CFLAGS) $(CLASSESDIRS) classes/numericbutton.c objname=$@
395 objs/classes/penadjust.o: classes/penadjust.c
396   sc $(CFLAGS) $(CLASSESDIRS) classes/penadjust.c objname=$@
398 objs/classes/pendisplay.o: classes/pendisplay.c
399   sc $(CFLAGS) $(CLASSESDIRS) classes/pendisplay.c objname=$@
401 objs/classes/popasl.o: classes/popasl.c
402   sc $(CFLAGS) $(CLASSESDIRS) classes/popasl.c objname=$@ nostackcheck
404 objs/classes/popimage.o: classes/popimage.c
405   sc $(CFLAGS) $(CLASSESDIRS) classes/popimage.c objname=$@
407 objs/classes/poplist.o: classes/poplist.c
408   sc $(CFLAGS) $(CLASSESDIRS) classes/poplist.c objname=$@
410 objs/classes/popobject.o: classes/popobject.c
411   sc $(CFLAGS) $(CLASSESDIRS) classes/popobject.c objname=$@
413 objs/classes/poppen.o: classes/poppen.c
414   sc $(CFLAGS) $(CLASSESDIRS) classes/poppen.c objname=$@
416 objs/classes/popscreen.o: classes/popscreen.c
417   sc $(CFLAGS) $(CLASSESDIRS) classes/popscreen.c objname=$@
419 objs/classes/popstring.o: classes/popstring.c
420   sc $(CFLAGS) $(CLASSESDIRS) classes/popstring.c objname=$@
422 objs/classes/popframe.o: classes/popframe.c
423   sc $(CFLAGS) $(CLASSESDIRS) classes/popframe.c objname=$@
425 objs/classes/radio.o: classes/radio.c
426   sc $(CFLAGS) $(CLASSESDIRS) classes/radio.c objname=$@
428 objs/classes/slider.o: classes/slider.c
429   sc $(CFLAGS) $(CLASSESDIRS) classes/slider.c objname=$@
431 objs/classes/scale.o: classes/scale.c
432   sc $(CFLAGS) $(CLASSESDIRS) classes/scale.c objname=$@
434 objs/classes/semaphore.o: classes/semaphore.c
435   sc $(CFLAGS) $(CLASSESDIRS) classes/semaphore.c objname=$@
437 objs/classes/settings.o: classes/settings.c
438   sc $(CFLAGS) $(CLASSESDIRS) classes/settings.c objname=$@
440 objs/classes/scrollbar.o: classes/scrollbar.c
441   sc $(CFLAGS) $(CLASSESDIRS) classes/scrollbar.c objname=$@
443 objs/classes/scrollbutton.o: classes/scrollbutton.c
444   sc $(CFLAGS) $(CLASSESDIRS) classes/scrollbutton.c objname=$@
446 objs/classes/scrollgroup.o: classes/scrollgroup.c
447   sc $(CFLAGS) $(CLASSESDIRS) classes/scrollgroup.c objname=$@
449 objs/classes/settingsgroup.o: classes/settingsgroup.c
450   sc $(CFLAGS) $(CLASSESDIRS) classes/settingsgroup.c objname=$@
452 objs/classes/string.o: classes/string.c
453   sc $(CFLAGS) $(CLASSESDIRS) classes/string.c objname=$@
455 objs/classes/text.o: classes/text.c
456   sc $(CFLAGS) $(CLASSESDIRS) classes/text.c objname=$@
458 objs/classes/virtgroup.o: classes/virtgroup.c
459   sc $(CFLAGS) $(CLASSESDIRS) classes/virtgroup.c objname=$@
461 objs/classes/volumelist.o: classes/volumelist.c
462   sc $(CFLAGS) $(CLASSESDIRS) classes/volumelist.c objname=$@
464 objs/classes/window.o: classes/window.c
465   sc $(CFLAGS) $(CLASSESDIRS) classes/window.c objname=$@
467 objs/classes/rectangle.o: classes/rectangle.c
468   sc $(CFLAGS) $(CLASSESDIRS) classes/rectangle.c objname=$@
470 objs/classes/register.o: classes/register.c
471   sc $(CFLAGS) $(CLASSESDIRS) classes/register.c objname=$@
473 objs/classes/prop.o: classes/prop.c
474   sc $(CFLAGS) $(CLASSESDIRS) classes/prop.c objname=$@
476 objs/test.o: test.c
477   sc $(CFLAGS) $(CLASSESDIRS) test.c objname=$@
479 objs/wanderer.o: //wanderer/wanderer.c
480   sc $(CFLAGS) $(CLASSESDIRS) //wanderer/wanderer.c objname=$@
482 muimaster.lib: $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS)
483   -delete muimaster.lib
484   oml muimaster.lib A $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS) #$(NLISTOBJS) ${NLISTVIEWOBJS)
486 test: objs/test.o $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS)
487   sc link lib lib:debug.lib to test with <<
488 objs/test.o $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS)
489 #//classes/nlist/NListview_mcc/nlistview.mcc.lib
490 #//classes/nlist/NList_mcc/nlist.mcc.lib
493 wb: objs/wanderer.o  $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS)
494   sc link lib lib:debug.lib to wb with <<
495 objs/wanderer.o $(SUPPORTOBJS) $(LIBOBJS) $(CLASSESOBJS)
498 demos: muimaster.lib
499   smake -f //demos/smakefile
501 include: buildincludes zunemaster_lib.sfd
502   -delete include all
503   -makedir include
504   -makedir include/libraries include/clib include/proto include/pragma
505   buildincludes >include/libraries/mui.h
506   -makedir t:zunemaster
507   copy zunemaster_lib.sfd t:zunemaster
508   execute <<
509     cd t:zunemaster
510     sfd zunemaster_lib.sfd
512   fd2pragma t:zunemaster/fd/zunemaster_lib.fd to include/pragma
513   copy t:zunemaster/protos/zunemaster_protos.h to include/clib
514   fd2pragma t:zunemaster/fd/zunemaster_lib.fd special=35 to include/proto
515   delete t:zunemaster all
516   execute <<
517     echo "\#ifndef PROTO_MUIMASTER_H" >include/proto/muimaster.h
518     echo "\#define PROTO_MUIMASTER_H" >>include/proto/muimaster.h
519     echo "\#endif" >>include/proto/muimaster.h
522 buildincludes: buildincludes.c
523   sc link buildincludes.c
525 clean:
526   -delete objs all
527   -delete test