]> rtime.felk.cvut.cz Git - l4.git/blob - l4/pkg/python/contrib/RISCOS/Makefile
Inital import
[l4.git] / l4 / pkg / python / contrib / RISCOS / Makefile
1 # RISC OS Python
2 LIBSROOT = $.AcornC_C++.Libraries
3
4 # You may need to change some of the following
5 OSLIB = $(LIBSROOT).OSLib
6 CLIB = $(LIBSROOT).clib
7 TCPIPLIB = $(LIBSROOT).TCPIPLibs
8 DLKLIB = $(LIBSROOT).dlk
9 ZLIB = $(LIBSROOT).zlib
10 BZLIB = $(LIBSROOT).bzlib
11 EXPAT = $(LIBSROOT).expat.lib
12
13 OBJSCAN = $(DLKLIB).objscan
14 MAKEDLK = $(DLKLIB).makedlk
15
16 # change from time to time (don't forget to change !Boot also)
17 TARGET=Python23
18 BUILD=40
19
20
21 #
22 # You shouldn't need to change anything below this line
23 #
24 DLKFLAG= -DDLK
25 DLKOBJS = $(DLKLIB).o.dlk_load @.o.linktab
26
27 HEADERS = @,$(TCPIPLIB),@.^.Include,@.^.Modules,@.^.Objects,@.^.Python,$(CLIB),$(OSLIB),$(DLKLIB)
28
29 CFLAGS = -c  $(DLKFLAG) -DRISCOS -DHAVE_CONFIG_H -wadP -throwback -APCS 3/32bit/fpe3
30
31 CC = cc $(CFLAGS) -j$(HEADERS)
32 CCEXPAT = cc $(CFLAGS) -j$(HEADERS),$(EXPAT) -DHAVE_EXPAT_H
33
34 LINK = link
35 LINKFLAGS = -aif #-NOUNUSED #-d
36 LOADLIBS = $(TCPIPLIB).o.unixlib $(TCPIPLIB).o.inetlib $(TCPIPLIB).o.socklib $(CLIB).o.Stubs $(OSLIB).o.OSLib32 $(DLKOBJS)
37
38 LIBFILE = libfile -c 
39
40
41 .c.o  :
42        $(CC) -o $@ $*.c
43
44 MAIN_PYTHON =\
45         @.^.Modules.o.python
46
47 LIB_PYTHON =\
48         @.^.LibPython
49
50 # code for main Python binary
51 MODULES_STATIC =\
52         @.^.Modules.o.main\
53         @.Modules.o.config\
54         @.^.Modules.o.getbuildinfo\
55         @.Modules.o.getpath_riscos\
56         @.Modules.o.riscosmodule\
57         @.^.Modules.o.gcmodule
58
59
60 # dynamic Modules
61 MODULES_DYNAMIC =\
62         @.^.Lib.array/pyd\
63         @.^.Lib.audioop/pyd\
64         @.^.Lib.binascii/pyd\
65         @.^.Lib.bz2/pyd\
66         @.^.Lib.cmath/pyd\
67         @.^.Lib.cPickle/pyd\
68         @.^.Lib.cStringIO/pyd\
69         @.^.Lib.datetime/pyd\
70         @.^.Lib.errno/pyd\
71         @.^.Lib.imageop/pyd\
72         @.^.Lib.itertools/pyd\
73         @.^.Lib.math/pyd\
74         @.^.Lib.md5/pyd\
75         @.^.Lib.operator/pyd\
76         @.^.Lib.parser/pyd\
77         @.^.Lib.rgbimg/pyd\
78         @.^.Lib.sha/pyd\
79         @.^.Lib.signal/pyd\
80         @.^.Lib.struct/pyd\
81         @.^.Lib.time/pyd\
82         @.^.Lib._locale/pyd\
83         @.^.Lib.zlib/pyd\
84         @.^.Lib.select/pyd\
85         @.^.Lib._socket/pyd\
86         @.^.Lib._codecs/pyd\
87         @.^.Lib._weakref/pyd\
88         @.^.Lib._testcapi/pyd\
89         @.^.Lib.unicodedata/pyd\
90         @.^.Lib.pyexpat/pyd\
91         @.^.Lib.plat-riscos.drawf/pyd\
92         @.^.Lib.plat-riscos.swi/pyd\
93         @.^.Lib._sre/pyd\
94         @.^.Lib.xxsubtype/pyd\
95         @.^.Lib._symtable/pyd\
96         @.^.Lib._random/pyd\
97         @.^.Lib.zipimport/pyd\
98         @.^.Lib._csv/pyd
99
100
101 OBJECTS_PYTHON =\
102         @.^.Python.o.traceback\
103         @.^.Python.o.sysmodule\
104         @.^.Python.o.structmember\
105         @.^.Python.o.strdup\
106         @.^.Python.o.sigcheck\
107         @.^.Python.o.pythonrun\
108         @.^.Python.o.pystate\
109         @.^.Python.o.pyfpe\
110         @.^.Python.o.mystrtoul\
111         @.^.Python.o.mysnprintf\
112         @.^.Python.o.modsupport\
113         @.^.Python.o.marshal\
114         @.^.Python.o.importdl\
115         @.^.Python.o.import\
116         @.^.Python.o.graminit\
117         @.^.Python.o.getversion\
118         @.^.Python.o.getplatform\
119         @.^.Python.o.getopt\
120         @.^.Python.o.getcopyright\
121         @.^.Python.o.getcompiler\
122         @.^.Python.o.getargs\
123         @.^.Python.o.frozenmain\
124         @.^.Python.o.frozen\
125         @.^.Python.o.errors\
126         @.^.Python.o.compile\
127         @.^.Python.o.ceval\
128         @.^.Python.o.bltinmodule\
129         @.^.Python.o.exceptions\
130         @.^.Python.o.codecs\
131         @.^.Python.o.symtable\
132         @.^.Python.o.future
133
134
135 OBJECTS_RISCOS = \
136         @.Python.o.dynload_riscos\
137         @.Python.o.getcwd_riscos\
138         @.Python.o.getmtime_riscos\
139         @.o.unixstuff
140
141
142 OBJECTS_OBJECTS =\
143         @.^.Objects.o.typeobject\
144         @.^.Objects.o.tupleobject\
145         @.^.Objects.o.stringobject\
146         @.^.Objects.o.sliceobject\
147         @.^.Objects.o.rangeobject\
148         @.^.Objects.o.object\
149         @.^.Objects.o.obmalloc\
150         @.^.Objects.o.moduleobject\
151         @.^.Objects.o.methodobject\
152         @.^.Objects.o.longobject\
153         @.^.Objects.o.listobject\
154         @.^.Objects.o.intobject\
155         @.^.Objects.o.boolobject\
156         @.^.Objects.o.iterobject\
157         @.^.Objects.o.funcobject\
158         @.^.Objects.o.frameobject\
159         @.^.Objects.o.floatobject\
160         @.^.Objects.o.fileobject\
161         @.^.Objects.o.enumobject\
162         @.^.Objects.o.dictobject\
163         @.^.Objects.o.complexobject\
164         @.^.Objects.o.cobject\
165         @.^.Objects.o.classobject\
166         @.^.Objects.o.cellobject\
167         @.^.Objects.o.bufferobject\
168         @.^.Objects.o.abstract\
169         @.^.Objects.o.unicodectype\
170         @.^.Objects.o.unicodeobject\
171         @.^.Objects.o.descrobject\
172         @.^.Objects.o.weakrefobject\
173         @.^.Objects.o.structseq
174
175
176 OBJECTS_PARSER =\
177         @.^.Parser.o.tokenizer\
178         @.^.Parser.o.printgrammar\
179         @.^.Parser.o.parsetok\
180         @.^.Parser.o.parser\
181         @.^.Parser.o.node\
182         @.^.Parser.o.myreadline\
183         @.^.Parser.o.metagrammar\
184         @.^.Parser.o.listnode\
185         @.^.Parser.o.intrcheck\
186         @.^.Parser.o.grammar1\
187         @.^.Parser.o.grammar\
188         @.^.Parser.o.firstsets\
189         @.^.Parser.o.bitset\
190         @.^.Parser.o.acceler
191
192 SUPPORT_FILES = @.^.!Boot @.^.!Run @.^.!Sprites @.^.!Sprites22 @.^.AddToPath
193
194 OBJECTS = $(OBJECTS_PYTHON) $(OBJECTS_PARSER) $(MODULES_STATIC) $(OBJECTS_OBJECTS) $(OBJECTS_RISCOS)
195
196
197 all: @.^.$(TARGET) $(MODULES_DYNAMIC) $(SUPPORT_FILES)
198
199 @.^.Modules.o.getbuildinfo: @.^.Modules.c.getbuildinfo
200        $(CC) -DBUILD=$(BUILD) -o @.^.Modules.o.getbuildinfo @.^.Modules.c.getbuildinfo
201
202
203 $(LIB_PYTHON):  $(OBJECTS)
204         $(LIBFILE) $(LIB_PYTHON) $(OBJECTS)
205
206 @.^.$(TARGET):  o.linktab $(MAIN_PYTHON) $(LIB_PYTHON)
207         $(LINK) -o @.^.$(TARGET) $(MAIN_PYTHON) @.^.LibPython $(LOADLIBS)
208
209
210 #########################################################################
211 # RISC OS support files
212 #
213 @.^.!Boot: support.!Boot
214         copy support.!Boot @.^.!Boot ~C~VF
215         settype @.^.!Boot feb
216 @.^.!Run:  support.!Run
217         copy support.!Run @.^.!Run ~C~VF
218         settype @.^.!Run feb
219 @.^.!Sprites: support.!Sprites
220         copy support.!Sprites @.^.!Sprites ~C~VF
221         settype @.^.!Sprites ff9
222 @.^.!Sprites22: support.!Sprites22
223         copy support.!Sprites22 @.^.!Sprites22 ~C~VF
224         settype @.^.!Sprites22 ff9
225 @.^.AddToPath: support.AddToPath
226         copy support.AddToPath @.^.AddToPath ~C~VF
227         settype @.^.AddToPath ffc
228
229
230 #########################################################################
231 # Dynamic Modules
232 #
233 @.^.Lib.array/pyd: @.^.Modules.o.arraymodule s.linktab
234         $(MAKEDLK) -d @.^.Lib.array/pyd -s s.linktab -o @.^.Modules.o.arraymodule -e initarray
235
236 @.^.Lib.audioop/pyd: @.^.Modules.o.audioop # s.linktab
237         $(MAKEDLK) -d @.^.Lib.audioop/pyd -s s.linktab -o @.^.Modules.o.audioop -e initaudioop
238
239 @.^.Lib.binascii/pyd: @.^.Modules.o.binascii s.linktab
240         $(MAKEDLK) -d @.^.Lib.binascii/pyd -s s.linktab -o @.^.Modules.o.binascii -e initbinascii
241
242 @.^.Lib.cmath/pyd: @.^.Modules.o.cmathmodule s.linktab
243         $(MAKEDLK) -d @.^.Lib.cmath/pyd -s s.linktab -o @.^.Modules.o.cmathmodule -e initcmath
244
245 @.^.Lib.cPickle/pyd: @.^.Modules.o.cPickle s.linktab
246         $(MAKEDLK) -d @.^.Lib.cPickle/pyd -s s.linktab -o @.^.Modules.o.cPickle -e initcPickle
247
248 @.^.Lib.cStringIO/pyd: @.^.Modules.o.cStringIO s.linktab
249         $(MAKEDLK) -d @.^.Lib.cStringIO/pyd -s s.linktab -o @.^.Modules.o.cStringIO -e initcStringIO
250
251 @.^.Lib._csv/pyd: @.^.Modules.o._csv s.linktab
252         $(MAKEDLK) -d @.^.Lib._csv/pyd -s s.linktab -o @.^.Modules.o._csv -e init_csv
253
254 @.^.Lib.plat-riscos.drawf/pyd: Modules.o.drawfmodule #s.linktab
255         $(LINK) -aof -o Modules.o.drawflink Modules.o.drawfmodule $(OSLIB).o.OSLIB32
256         $(MAKEDLK) -d @.^.Lib.plat-riscos.drawf/pyd -s s.linktab -o Modules.o.drawflink -e initdrawf
257
258 @.^.Lib.datetime/pyd: @.^.Modules.o.datetimemodule s.linktab
259         $(MAKEDLK) -d @.^.Lib.datetime/pyd -s s.linktab -o @.^.Modules.o.datetimemodule -e initdatetime
260
261 @.^.Lib.errno/pyd: @.^.Modules.o.errnomodule #s.linktab
262         $(MAKEDLK) -d @.^.Lib.errno/pyd -s s.linktab -o @.^.Modules.o.errnomodule -e initerrno
263
264 @.^.Lib.imageop/pyd: @.^.Modules.o.imageop s.linktab
265         $(MAKEDLK) -d @.^.Lib.imageop/pyd -s s.linktab -o @.^.Modules.o.imageop -e initimageop
266
267 @.^.Lib.itertools/pyd: @.^.Modules.o.itertoolsmodule s.linktab
268         $(MAKEDLK) -d @.^.Lib.itertools/pyd -s s.linktab -o @.^.Modules.o.itertoolsmodule -e inititertools
269
270 @.^.Lib.math/pyd: @.^.Modules.o.mathmodule s.linktab
271         $(MAKEDLK) -d @.^.Lib.math/pyd -s s.linktab -o @.^.Modules.o.mathmodule -e initmath
272
273 @.^.Lib.mmap/pyd: @.^.Modules.o.mmapmodule s.linktab
274         $(MAKEDLK) -d @.^.Lib.mmap/pyd -s s.linktab -o @.^.Modules.o.mmapmodule -e initmmap
275
276 @.^.Lib.md5/pyd: @.^.Modules.o.md5c @.^.Modules.o.md5module s.linktab
277         $(LINK) -aof -o @.^.Modules.o.md5link @.^.Modules.o.md5c @.^.Modules.o.md5module
278         $(MAKEDLK) -d @.^.Lib.md5/pyd -s s.linktab -o @.^.Modules.o.md5link -e initmd5
279
280 @.^.Lib.operator/pyd: @.^.Modules.o.operator s.linktab
281         $(MAKEDLK) -d @.^.Lib.operator/pyd -s s.linktab -o @.^.Modules.o.operator -e initoperator
282
283 @.^.Lib.parser/pyd: @.^.Modules.o.parsermodule s.linktab
284         $(MAKEDLK) -d @.^.Lib.parser/pyd -s s.linktab -o @.^.Modules.o.parsermodule -e initparser
285
286 @.^.Lib.rgbimg/pyd: @.^.Modules.o.rgbimgmodule s.linktab
287         $(MAKEDLK) -d @.^.Lib.rgbimg/pyd -s s.linktab -o @.^.Modules.o.rgbimgmodule -e initrgbimg
288
289 @.^.Lib.sha/pyd: @.^.Modules.o.shamodule s.linktab
290         $(MAKEDLK) -d @.^.Lib.sha/pyd -s s.linktab -o @.^.Modules.o.shamodule -e initsha
291
292 @.^.Lib.signal/pyd: @.^.Modules.o.signalmodule s.linktab
293         $(MAKEDLK) -d @.^.Lib.signal/pyd -s s.linktab -o @.^.Modules.o.signalmodule -e initsignal
294
295 @.^.Lib.strop/pyd: @.^.Modules.o.stropmodule s.linktab
296         $(MAKEDLK) -d @.^.Lib.strop/pyd -s s.linktab -o @.^.Modules.o.stropmodule -e initstrop
297
298 @.^.Lib.struct/pyd: @.^.Modules.o.structmodule s.linktab
299         $(MAKEDLK) -d @.^.Lib.struct/pyd -s s.linktab -o @.^.Modules.o.structmodule -e initstruct
300
301 @.^.Lib.plat-riscos.swi/pyd: Modules.o.swimodule s.linktab
302         $(LINK) -aof -o Modules.o.swilink Modules.o.swimodule $(OSLIB).o.OSLIB32
303         $(MAKEDLK) -d @.^.Lib.plat-riscos.swi/pyd -s s.linktab -o Modules.o.swilink -e initswi
304
305 @.^.Lib._locale/pyd: @.^.Modules.o._localemodule s.linktab
306         $(MAKEDLK) -d @.^.Lib._locale/pyd -s s.linktab -o @.^.Modules.o._localemodule -e init_locale
307
308 @.^.Lib._sre/pyd: @.^.Modules.o._sre s.linktab
309         $(MAKEDLK) -d @.^.Lib._sre/pyd -s s.linktab -o @.^.Modules.o._sre -e init_sre
310
311 @.^.Lib._codecs/pyd: @.^.Modules.o._codecsmodule s.linktab
312         $(MAKEDLK) -d @.^.Lib._codecs/pyd -s s.linktab -o @.^.Modules.o._codecsmodule -e init_codecs
313
314 @.^.Lib._weakref/pyd: @.^.Modules.o._weakref s.linktab
315         $(MAKEDLK) -d @.^.Lib._weakref/pyd -s s.linktab -o @.^.Modules.o._weakref -e init_weakref
316
317 @.^.Lib._testcapi/pyd: @.^.Modules.o._testcapimodule s.linktab
318         $(MAKEDLK) -d @.^.Lib._testcapi/pyd -s s.linktab -o @.^.Modules.o._testcapimodule -e init_testcapi
319
320 @.^.Lib.unicodedata/pyd: @.^.Modules.o.unicodedata s.linktab
321         $(MAKEDLK) -d @.^.Lib.unicodedata/pyd -s s.linktab -o @.^.Modules.o.unicodedata -e initunicodedata
322
323 @.^.Lib.xxsubtype/pyd: @.^.Modules.o.xxsubtype s.linktab
324         $(MAKEDLK) -d @.^.Lib.xxsubtype/pyd -s s.linktab -o @.^.Modules.o.xxsubtype -e initxxsubtype
325
326 @.^.Lib._random/pyd: @.^.Modules.o._randommodule s.linktab
327         $(MAKEDLK) -d @.^.Lib._random/pyd -s s.linktab -o @.^.Modules.o._randommodule -e init_random
328
329 @.^.Lib._symtable/pyd: @.^.Modules.o.symtablemodule s.linktab
330         $(MAKEDLK) -d @.^.Lib._symtable/pyd -s s.linktab -o @.^.Modules.o.symtablemodule -e init_symtable
331
332
333 ############################################################################
334 # Dynamic Modules with other dependencies
335 #
336 @.^.Lib.select/pyd:  @.^.Modules.o.selectmodule s.linktab
337         $(LINK) -aof -o @.^.Modules.o.selectlink @.^.Modules.o.selectmodule $(TCPIPLIB).o.socklib5
338         $(MAKEDLK) -d @.^.Lib.select/pyd -s s.linktab -o @.^.Modules.o.selectlink -e initselect
339
340 @.^.Modules.o.selectmodule: @.^.Modules.c.selectmodule
341         $(CC) -I$(TCPIPLIB).include -o $@ @.^.Modules.c.selectmodule
342
343 @.^.Lib._socket/pyd: @.^.Modules.o.socketmodule s.linktab 
344         $(LINK) -aof -o @.^.Modules.o._socketlink @.^.Modules.o.socketmodule $(TCPIPLIB).o.inetlib $(TCPIPLIB).o.unixlib $(TCPIPLIB).o.socklib5
345         $(MAKEDLK) -d @.^.Lib._socket/pyd -s s.linktab -o @.^.Modules.o._socketlink -e init_socket
346
347 @.^.Modules.o.socketmodule: @.^.Modules.c.socketmodule
348         $(CC) -I$(TCPIPLIB).include -o $@ @.^.Modules.c.socketmodule
349
350
351 @.^.Lib.zlib/pyd: @.^.Modules.o.zlibmodule s.linktab
352         $(LINK) -aof -o @.^.Modules.o.zliblink @.^.Modules.o.zlibmodule $(ZLIB).zlib
353         $(MAKEDLK) -d @.^.Lib.zlib/pyd -s s.linktab -o @.^.Modules.o.zliblink -e initzlib
354
355 @.^.Modules.o.zlibmodule: @.^.Modules.c.zlibmodule
356         $(CC) -I$(ZLIB) -o $@ @.^.Modules.c.zlibmodule
357
358 @.^.Lib.bz2/pyd: @.^.Modules.o.bz2module s.linktab
359         $(LINK) -aof -o @.^.Modules.o.bz2link @.^.Modules.o.bz2module $(BZLIB).bzlib
360         $(MAKEDLK) -d @.^.Lib.bz2/pyd -s s.linktab -o @.^.Modules.o.bz2link -e initbz2
361
362 @.^.Modules.o.bz2module: @.^.Modules.c.bz2module
363         $(CC) -I$(BZLIB) -o $@ @.^.Modules.c.bz2module
364
365 @.^.Lib.time/pyd: @.^.Modules.o.timemodule s.linktab @.o.sleep
366         $(LINK) -aof -o @.^.Modules.o.timelink @.^.Modules.o.timemodule @.o.sleep $(OSLIB).o.OSLib32
367         $(MAKEDLK) -d @.^.Lib.time/pyd -s s.linktab -o @.^.Modules.o.timelink -e inittime
368
369 #@.^.Lib.time/pyd: @.Modules.o.timemodule s.linktab
370 #       $(LINK) -aof -o @.Modules.o.timelink @.Modules.o.timemodule $(OSLIB).o.OSLib32
371 #       $(MAKEDLK) -d @.^.Lib.time/pyd -s s.linktab -o @.Modules.o.timelink -e inittime
372
373
374 @.^.Lib.pyexpat/pyd: @.^.Modules.o.pyexpat s.linktab
375         $(LINK) -aof -o @.^.Modules.o.pyexpatlink @.^.Modules.o.pyexpat $(EXPAT).expat_lib
376         $(MAKEDLK) -d @.^.Lib.pyexpat/pyd -s s.linktab -o @.^.Modules.o.pyexpatlink -e initpyexpat
377
378 @.^.Modules.o.pyexpat: @.^.Modules.c.pyexpat
379         $(CCEXPAT) -o $@ @.^.Modules.c.pyexpat
380
381 @.^.Lib.zipimport/pyd: @.^.Modules.o.zipimport s.linktab
382         $(LINK) -aof -o @.^.Modules.o.zipimportlink @.^.Modules.o.zipimport o.unixstuff $(OSLIB).o.OSLib32
383         $(MAKEDLK) -d @.^.Lib.zipimport/pyd -s s.linktab -o @.^.Modules.o.zipimportlink -e initzipimport
384
385
386 ##########################################################################
387 # dynamic linking symbol table
388 #
389 o.linktab: s.linktab
390         ObjAsm -APCS 3/32bit s.linktab o.linktab
391
392 s.linktab: $(OBJECTS)
393         $(OBJSCAN) -s s.linktab -o $(OBJECTS) $(clib).o.stubs
394
395 ##########################################################################
396 # special targets
397 #
398 libclean:
399         -wipe @.^.Lib.*/pyc ~C~V
400         -wipe @.^.Lib.*/pyo ~C~V
401         -wipe @.^.Lib.plat-riscos.*/pyc ~C~V
402         -wipe @.^.Lib.plat-riscos.*/pyo ~C~V
403         -wipe @.^.Lib.test.*/pyc ~C~V
404         -wipe @.^.Lib.test.*/pyo ~C~V
405         -wipe @.^.Lib.encodings.*/pyc ~C~V
406         -wipe @.^.Lib.encodings.*/pyo ~C~V
407         -wipe @.^.Lib.curses.*/pyc ~C~V
408         -wipe @.^.Lib.curses.*/pyo ~C~V
409         -wipe @.^.Lib.xml.*/pyc ~C~V
410         -wipe @.^.Lib.xml.*/pyo ~C~V
411         -wipe @.^.Lib.xml.sax.*/pyc ~C~V
412         -wipe @.^.Lib.xml.sax.*/pyo ~C~V
413         -wipe @.^.Lib.xml.dom.*/pyc ~C~V
414         -wipe @.^.Lib.xml.dom.*/pyo ~C~V
415         -wipe @.^.Lib.xml.parsers.*/pyc ~C~V
416         -wipe @.^.Lib.xml.parsers.*/pyo ~C~V
417
418 clean: libclean
419         -wipe @.^.Modules.o.* ~C~V
420         -wipe @.^.Objects.o.* ~C~V
421         -wipe @.^.Parser.o.* ~C~V
422         -wipe @.^.Python.o.* ~C~V
423         -wipe @.Modules.o.* ~C~V
424         -wipe @.Python.o.* ~C~V
425         -wipe @.o.* ~C ~V
426
427 rebuild: clean clean-support
428         remove @.^.$(TARGET)
429         -wipe @.^.Lib.*/pyd ~C ~V
430         -wipe @.^.Lib.plat-riscos.*/pyd ~C~V
431         remove s.linktab
432         remove @.^.LibPython
433
434 clean-support:
435         -wipe @.^.!* ~C~V
436         remove @.^.AddToPath
437
438 cdirs:
439         cdir @.Modules.o
440         cdir @.Python.o
441         cdir @.s
442         cdir @.o
443         cdir @.^.Python.o
444         cdir @.^.Parser.o
445         cdir @.^.Objects.o
446         cdir @.^.Modules.o
447
448
449 # Dynamic dependencies: