1# Makefile
2
3# RiscOS makefile for InterGif
4# (K) All Rites Reversed - Copy What You Like (see file Copying)
5#
6# Authors:
7#      Peter Hartley       <pdh@chaos.org.uk>
8#
9
10.SUFFIXES:   .c .o .s .oo
11CCFlags = -depend !Depend -c -Ospace -throwback -IC: -DRISCOS
12ASFlags = -throwback -quit
13LinkFlags = -aif -o $@ -map -xref
14
15Libraries = desklib:o.desklib c:o.stubs
16
17IGObjects = animlib.o cfsi.o colmatch.o commonpal.o count.o frame.o from.o \
18            fromfile.o gifdecode.o gifencode.o histogram.o intergif.o join.o \
19            loaddraw.o loadgif.o loadsprite.o loadtca.o main.o mediancut.o \
20            palettemap.o riemann.o riscos.o savegif.o savesprite.o split.o \
21            utilsro.o workspace.o
22
23WinObjects = o.resources o.window
24
25all: ^.!InterGif.intergif ^.!InterGif.!RunImage Lib
26    @Echo
27
28^.!InterGif.intergif: Lib $(Libraries)
29    Link $(LinkFlags) Lib $(Libraries) -list o.LinkMap -symbols o.Symbols
30    Squeeze -v $@
31
32^.!InterGif.!RunImage: $(WinObjects) $(Libraries)
33    Link $(LinkFlags) $(WinObjects) $(Libraries) -list o.LinkMapW -symbols o.SymbolsW
34    Squeeze -v $@
35
36Lib: $(IGObjects)
37    libfile -c -o Lib $(IGObjects)
38
39autotest: all
40    Copy @.^.!InterGif.intergif @.^.autotest.intergif f~c~v
41    dir @.^.autotest
42    amu -desktop
43
44enla: $(IGObjects)
45    enla o.animlib o.cfsi o.colmatch o.commonpal o.count o.frame o.from \
46            o.fromfile o.gifdecode o.gifencode o.histogram o.intergif o.join \
47            o.loaddraw o.loadgif o.loadsprite o.loadtca o.main o.mediancut \
48            o.palettemap o.riemann o.riscos o.savegif o.savesprite o.split \
49            o.utilsro o.workspace
50
51
52o.resources: Templates Menus Sprites
53    ResCompile -t Templates -m Menus -s Sprites -o s.resources
54    objasm $(ASflags) -to o.resources -from s.resources
55    delete s.resources
56
57.c.o:;	cc $(CCflags) -o $@ $<
58
59.c.oo:;	cc $(CCflags) -o $@ $< -DNO_WINDOWS=1
60
61.s.o:;	objasm $(ASflags) -to $@ -from $<
62
63# Dynamic dependencies:
64o.compress:	c.compress
65o.compress:	DeskLib:h.Sprite
66o.compress:	DeskLib:h.Core
67o.compress:	DeskLib:h.Wimp
68o.compress:	DeskLib:h.Coord
69o.compress:	Extras:h.Extras
70o.compress:	h.bitmap
71o.test:	c.test
72o.test:	h.animlib
73o.test:	h.utils
74o.fromfiles:	c.fromfiles
75o.fromfiles:	h.animlib
76o.fromfiles:	h.utils
77o.memflex:	c.memflex
78o.memflex:	C:h.kernel
79o.memflex:	DeskLib:h.Wimp
80o.memflex:	DeskLib:h.Core
81o.memflex:	DeskLib:h.WimpSWIs
82o.memflex:	h.memflex
83o.memflex:	h.dynamic
84o.window:	c.window
85o.window:	C:h.kernel
86o.window:	DeskLib:h.Wimp
87o.window:	DeskLib:h.Core
88o.window:	DeskLib:h.WimpSWIs
89o.window:	DeskLib:h.GFX
90o.window:	DeskLib:h.Menu
91o.window:	DeskLib:h.Event
92o.window:	DeskLib:h.Screen
93o.window:	DeskLib:h.Template
94o.window:	DeskLib:h.Sprite
95o.window:	DeskLib:h.Coord
96o.window:	DeskLib:h.LinkList
97o.window:	DeskLib:h.DragASpr
98o.window:	DeskLib:h.Window
99o.window:	DeskLib:h.Pointer
100o.window:	DeskLib:h.Core
101o.window:	DeskLib:h.Icon
102o.window:	DeskLib:h.Window
103o.window:	DeskLib:h.Error
104o.window:	DeskLib:h.Icon
105o.window:	DeskLib:h.Sprite
106o.window:	DeskLib:h.Hourglass
107o.window:	DeskLib:h.Str
108o.animlib:	c.animlib
109o.animlib:	h.utils
110o.animlib:	h.animlib
111o.animlib:	h.gifdecode
112o.animlib:	h.gifencode
113o.animlib:	h.animlib
114o.cfsi:	c.cfsi
115o.cfsi:	C:h.kernel
116o.cfsi:	DeskLib:h.Wimp
117o.cfsi:	DeskLib:h.Core
118o.cfsi:	DeskLib:h.WimpSWIs
119o.cfsi:	h.utils
120o.cfsi:	h.animlib
121o.cfsi:	h.animlib
122o.cfsi:	h.cfsi
123o.colmatch:	c.colmatch
124o.colmatch:	h.animlib
125o.colmatch:	h.utils
126o.commonpal:	c.commonpal
127o.commonpal:	h.animlib
128o.commonpal:	h.utils
129o.commonpal:	h.gifencode
130o.commonpal:	h.workspace
131o.commonpal:	h.frame
132o.count:	c.count
133o.count:	h.animlib
134o.count:	h.count
135o.frame:	c.frame
136o.frame:	h.animlib
137o.frame:	h.utils
138o.frame:	h.frame
139o.from:	c.from
140o.from:	h.animlib
141o.from:	h.utils
142o.fromfile:	c.fromfile
143o.fromfile:	h.utils
144o.fromfile:	h.animlib
145o.fromfile:	h.animlib
146o.gifdecode:	c.gifdecode
147o.gifdecode:	h.gifdecode
148o.gifdecode:	h.workspace
149o.gifdecode:	h.utils
150o.gifdecode:	h.animlib
151o.gifencode:	c.gifencode
152o.gifencode:	h.gifencode
153o.gifencode:	h.workspace
154o.gifencode:	h.utils
155o.gifencode:	h.animlib
156o.histogram:	c.histogram
157o.histogram:	h.animlib
158o.histogram:	h.utils
159o.intergif:	c.intergif
160o.intergif:	h.animlib
161o.intergif:	h.utils
162o.intergif:	h.split
163o.intergif:	h.cfsi
164o.intergif:	h.intergif
165o.join:	c.join
166o.join:	h.animlib
167o.join:	h.cfsi
168o.join:	h.utils
169o.loaddraw:	c.loaddraw
170o.loaddraw:	DeskLib:h.Sprite
171o.loaddraw:	DeskLib:h.Core
172o.loaddraw:	DeskLib:h.Wimp
173o.loaddraw:	DeskLib:h.Coord
174o.loaddraw:	DeskLib:h.Str
175o.loaddraw:	DeskLib:h.GFX
176o.loaddraw:	DeskLib:h.Wimp
177o.loaddraw:	DeskLib:h.WimpSWIs
178o.loaddraw:	DeskLib:h.SWI
179o.loaddraw:	DeskLib:h.ColourTran
180o.loaddraw:	h.utils
181o.loaddraw:	h.animlib
182o.loaddraw:	h.animlib
183o.loaddraw:	h.antialias
184o.loadgif:	c.loadgif
185o.loadgif:	h.animlib
186o.loadgif:	h.utils
187o.loadgif:	h.gifdecode
188o.loadgif:	h.gifencode
189o.loadgif:	h.workspace
190o.loadsprite:	c.loadsprite
191o.loadsprite:	h.utils
192o.loadsprite:	h.animlib
193o.loadsprite:	h.animlib
194o.loadsprite:	h.sprite
195o.loadtca:	c.loadtca
196o.loadtca:	h.animlib
197o.loadtca:	h.utils
198o.loadtca:	h.riemann
199o.loadtca:	h.workspace
200o.main:	c.main
201o.main:	C:h.kernel
202o.main:	DeskLib:h.Core
203o.main:	h.memflex
204o.main:	h.version
205o.main:	h.animlib
206o.main:	h.count
207o.main:	h.split
208o.main:	h.intergif
209o.mediancut:	c.mediancut
210o.mediancut:	h.animlib
211o.mediancut:	h.utils
212o.palettemap:	c.palettemap
213o.palettemap:	h.animlib
214o.palettemap:	h.utils
215o.riemann:	c.riemann
216o.riemann:	h.riemann
217o.savegif:	c.savegif
218o.savegif:	h.animlib
219o.savegif:	h.gifencode
220o.savegif:	h.frame
221o.savegif:	h.count
222o.savegif:	h.utils
223o.savegif:	h.workspace
224o.savesprite:	c.savesprite
225o.savesprite:	h.animlib
226o.savesprite:	h.utils
227o.savesprite:	h.workspace
228o.savesprite:	h.sprite
229o.split:	c.split
230o.split:	h.utils
231o.split:	h.animlib
232o.utilsro:	c.utilsro
233o.utilsro:	C:h.kernel
234o.utilsro:	DeskLib:h.File
235o.utilsro:	DeskLib:h.Core
236o.utilsro:	DeskLib:h.SWI
237o.utilsro:	DeskLib:h.Hourglass
238o.utilsro:	h.utils
239o.utilsro:	h.animlib
240o.workspace:	c.workspace
241o.workspace:	h.utils
242o.workspace:	h.animlib
243o.workspace:	h.workspace
244