2 LIBSROOT
= $.AcornC_C
++.Libraries
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
13 OBJSCAN
= $(DLKLIB
).objscan
14 MAKEDLK
= $(DLKLIB
).makedlk
16 # change from time to time (don't forget to change !Boot also)
22 # You shouldn't need to change anything below this line
25 DLKOBJS
= $(DLKLIB
).o.dlk_load @.o.linktab
27 HEADERS
= @
,$(TCPIPLIB
),@.^.Include
,@.^.Modules
,@.^.Objects
,@.^.Python
,$(CLIB
),$(OSLIB
),$(DLKLIB
)
29 CFLAGS
= -c
$(DLKFLAG
) -DRISCOS
-DHAVE_CONFIG_H
-wadP
-throwback
-APCS
3/32bit
/fpe3
31 CC
= cc $(CFLAGS
) -j
$(HEADERS
)
32 CCEXPAT
= cc $(CFLAGS
) -j
$(HEADERS
),$(EXPAT
) -DHAVE_EXPAT_H
35 LINKFLAGS
= -aif
#-NOUNUSED #-d
36 LOADLIBS
= $(TCPIPLIB
).o.unixlib
$(TCPIPLIB
).o.inetlib
$(TCPIPLIB
).o.socklib
$(CLIB
).o.Stubs
$(OSLIB
).o.OSLib32
$(DLKOBJS
)
50 # code for main Python binary
54 @.^.Modules.o.getbuildinfo\
55 @.Modules.o.getpath_riscos\
56 @.Modules.o.riscosmodule\
57 @.^.Modules.o.gcmodule
68 @.^.Lib.cStringIO
/pyd\
72 @.^.Lib.itertools
/pyd\
88 @.^.Lib._testcapi
/pyd\
89 @.^.Lib.unicodedata
/pyd\
91 @.^.Lib.plat-riscos.drawf
/pyd\
92 @.^.Lib.plat-riscos.swi
/pyd\
94 @.^.Lib.xxsubtype
/pyd\
95 @.^.Lib._symtable
/pyd\
97 @.^.Lib.zipimport
/pyd\
102 @.^.Python.o.traceback\
103 @.^.Python.o.sysmodule\
104 @.^.Python.o.structmember\
106 @.^.Python.o.sigcheck\
107 @.^.Python.o.pythonrun\
108 @.^.Python.o.pystate\
110 @.^.Python.o.mystrtoul\
111 @.^.Python.o.mysnprintf\
112 @.^.Python.o.modsupport\
113 @.^.Python.o.marshal\
114 @.^.Python.o.importdl\
116 @.^.Python.o.graminit\
117 @.^.Python.o.getversion\
118 @.^.Python.o.getplatform\
120 @.^.Python.o.getcopyright\
121 @.^.Python.o.getcompiler\
122 @.^.Python.o.getargs\
123 @.^.Python.o.frozenmain\
126 @.^.Python.o.compile\
128 @.^.Python.o.bltinmodule\
129 @.^.Python.o.exceptions\
131 @.^.Python.o.symtable\
136 @.Python.o.dynload_riscos\
137 @.Python.o.getcwd_riscos\
142 @.^.Objects.o.typeobject\
143 @.^.Objects.o.tupleobject\
144 @.^.Objects.o.stringobject\
145 @.^.Objects.o.sliceobject\
146 @.^.Objects.o.rangeobject\
147 @.^.Objects.o.object\
148 @.^.Objects.o.obmalloc\
149 @.^.Objects.o.moduleobject\
150 @.^.Objects.o.methodobject\
151 @.^.Objects.o.longobject\
152 @.^.Objects.o.listobject\
153 @.^.Objects.o.intobject\
154 @.^.Objects.o.boolobject\
155 @.^.Objects.o.iterobject\
156 @.^.Objects.o.funcobject\
157 @.^.Objects.o.frameobject\
158 @.^.Objects.o.floatobject\
159 @.^.Objects.o.fileobject\
160 @.^.Objects.o.enumobject\
161 @.^.Objects.o.dictobject\
162 @.^.Objects.o.complexobject\
163 @.^.Objects.o.cobject\
164 @.^.Objects.o.classobject\
165 @.^.Objects.o.cellobject\
166 @.^.Objects.o.bufferobject\
167 @.^.Objects.o.abstract\
168 @.^.Objects.o.unicodectype\
169 @.^.Objects.o.unicodeobject\
170 @.^.Objects.o.descrobject\
171 @.^.Objects.o.weakrefobject\
172 @.^.Objects.o.structseq
176 @.^.Parser.o.tokenizer\
177 @.^.Parser.o.printgrammar\
178 @.^.Parser.o.parsetok\
181 @.^.Parser.o.myreadline\
182 @.^.Parser.o.metagrammar\
183 @.^.Parser.o.listnode\
184 @.^.Parser.o.intrcheck\
185 @.^.Parser.o.grammar1\
186 @.^.Parser.o.grammar\
187 @.^.Parser.o.firstsets\
191 SUPPORT_FILES
= @.^.
!Boot @.^.
!Run @.^.
!Sprites @.^.
!Sprites22 @.^.AddToPath
193 OBJECTS
= $(OBJECTS_PYTHON
) $(OBJECTS_PARSER
) $(MODULES_STATIC
) $(OBJECTS_OBJECTS
) $(OBJECTS_RISCOS
)
196 all: @.^.
$(TARGET
) $(MODULES_DYNAMIC
) $(SUPPORT_FILES
)
198 @.^.Modules.o.getbuildinfo
: @.^.Modules.c.getbuildinfo
199 $(CC
) -DBUILD
=$(BUILD
) -o @.^.Modules.o.getbuildinfo @.^.Modules.c.getbuildinfo
202 $(LIB_PYTHON
): $(OBJECTS
)
203 $(LIBFILE
) $(LIB_PYTHON
) $(OBJECTS
)
205 @.^.
$(TARGET
): o.linktab
$(MAIN_PYTHON
) $(LIB_PYTHON
)
206 $(LINK
) -o @.^.
$(TARGET
) $(MAIN_PYTHON
) @.^.LibPython
$(LOADLIBS
)
209 #########################################################################
210 # RISC OS support files
212 @.^.
!Boot
: support.
!Boot
213 copy support.
!Boot @.^.
!Boot ~C~VF
214 settype @.^.
!Boot feb
215 @.^.
!Run
: support.
!Run
216 copy support.
!Run @.^.
!Run ~C~VF
218 @.^.
!Sprites
: support.
!Sprites
219 copy support.
!Sprites @.^.
!Sprites ~C~VF
220 settype @.^.
!Sprites ff9
221 @.^.
!Sprites22
: support.
!Sprites22
222 copy support.
!Sprites22 @.^.
!Sprites22 ~C~VF
223 settype @.^.
!Sprites22 ff9
224 @.^.AddToPath
: support.AddToPath
225 copy support.AddToPath @.^.AddToPath ~C~VF
226 settype @.^.AddToPath ffc
229 #########################################################################
232 @.^.Lib.array
/pyd
: @.^.Modules.o.arraymodule s.linktab
233 $(MAKEDLK
) -d @.^.Lib.array
/pyd
-s s.linktab
-o @.^.Modules.o.arraymodule
-e initarray
235 @.^.Lib.audioop
/pyd
: @.^.Modules.o.audioop
# s.linktab
236 $(MAKEDLK
) -d @.^.Lib.audioop
/pyd
-s s.linktab
-o @.^.Modules.o.audioop
-e initaudioop
238 @.^.Lib.binascii
/pyd
: @.^.Modules.o.binascii s.linktab
239 $(MAKEDLK
) -d @.^.Lib.binascii
/pyd
-s s.linktab
-o @.^.Modules.o.binascii
-e initbinascii
241 @.^.Lib.cmath
/pyd
: @.^.Modules.o.cmathmodule s.linktab
242 $(MAKEDLK
) -d @.^.Lib.cmath
/pyd
-s s.linktab
-o @.^.Modules.o.cmathmodule
-e initcmath
244 @.^.Lib.cPickle
/pyd
: @.^.Modules.o.cPickle s.linktab
245 $(MAKEDLK
) -d @.^.Lib.cPickle
/pyd
-s s.linktab
-o @.^.Modules.o.cPickle
-e initcPickle
247 @.^.Lib.cStringIO
/pyd
: @.^.Modules.o.cStringIO s.linktab
248 $(MAKEDLK
) -d @.^.Lib.cStringIO
/pyd
-s s.linktab
-o @.^.Modules.o.cStringIO
-e initcStringIO
250 @.^.Lib._csv
/pyd
: @.^.Modules.o._csv s.linktab
251 $(MAKEDLK
) -d @.^.Lib._csv
/pyd
-s s.linktab
-o @.^.Modules.o._csv
-e init_csv
253 @.^.Lib.plat-riscos.drawf
/pyd
: Modules.o.drawfmodule
#s.linktab
254 $(LINK
) -aof
-o Modules.o.drawflink Modules.o.drawfmodule
$(OSLIB
).o.OSLIB32
255 $(MAKEDLK
) -d @.^.Lib.plat-riscos.drawf
/pyd
-s s.linktab
-o Modules.o.drawflink
-e initdrawf
257 @.^.Lib.datetime
/pyd
: @.^.Modules.o.datetimemodule s.linktab
258 $(MAKEDLK
) -d @.^.Lib.datetime
/pyd
-s s.linktab
-o @.^.Modules.o.datetimemodule
-e initdatetime
260 @.^.Lib.errno
/pyd
: @.^.Modules.o.errnomodule
#s.linktab
261 $(MAKEDLK
) -d @.^.Lib.errno
/pyd
-s s.linktab
-o @.^.Modules.o.errnomodule
-e initerrno
263 @.^.Lib.imageop
/pyd
: @.^.Modules.o.imageop s.linktab
264 $(MAKEDLK
) -d @.^.Lib.imageop
/pyd
-s s.linktab
-o @.^.Modules.o.imageop
-e initimageop
266 @.^.Lib.itertools
/pyd
: @.^.Modules.o.itertoolsmodule s.linktab
267 $(MAKEDLK
) -d @.^.Lib.itertools
/pyd
-s s.linktab
-o @.^.Modules.o.itertoolsmodule
-e inititertools
269 @.^.Lib.math
/pyd
: @.^.Modules.o.mathmodule s.linktab
270 $(MAKEDLK
) -d @.^.Lib.math
/pyd
-s s.linktab
-o @.^.Modules.o.mathmodule
-e initmath
272 @.^.Lib.mmap
/pyd
: @.^.Modules.o.mmapmodule s.linktab
273 $(MAKEDLK
) -d @.^.Lib.mmap
/pyd
-s s.linktab
-o @.^.Modules.o.mmapmodule
-e initmmap
275 @.^.Lib.md5
/pyd
: @.^.Modules.o.md5c @.^.Modules.o.md5module s.linktab
276 $(LINK
) -aof
-o @.^.Modules.o.md5link @.^.Modules.o.md5c @.^.Modules.o.md5module
277 $(MAKEDLK
) -d @.^.Lib.md5
/pyd
-s s.linktab
-o @.^.Modules.o.md5link
-e initmd5
279 @.^.Lib.operator
/pyd
: @.^.Modules.o.operator s.linktab
280 $(MAKEDLK
) -d @.^.Lib.operator
/pyd
-s s.linktab
-o @.^.Modules.o.operator
-e initoperator
282 @.^.Lib.parser
/pyd
: @.^.Modules.o.parsermodule s.linktab
283 $(MAKEDLK
) -d @.^.Lib.parser
/pyd
-s s.linktab
-o @.^.Modules.o.parsermodule
-e initparser
285 @.^.Lib.rgbimg
/pyd
: @.^.Modules.o.rgbimgmodule s.linktab
286 $(MAKEDLK
) -d @.^.Lib.rgbimg
/pyd
-s s.linktab
-o @.^.Modules.o.rgbimgmodule
-e initrgbimg
288 @.^.Lib.sha
/pyd
: @.^.Modules.o.shamodule s.linktab
289 $(MAKEDLK
) -d @.^.Lib.sha
/pyd
-s s.linktab
-o @.^.Modules.o.shamodule
-e initsha
291 @.^.Lib.signal
/pyd
: @.^.Modules.o.signalmodule s.linktab
292 $(MAKEDLK
) -d @.^.Lib.signal
/pyd
-s s.linktab
-o @.^.Modules.o.signalmodule
-e initsignal
294 @.^.Lib.strop
/pyd
: @.^.Modules.o.stropmodule s.linktab
295 $(MAKEDLK
) -d @.^.Lib.strop
/pyd
-s s.linktab
-o @.^.Modules.o.stropmodule
-e initstrop
297 @.^.Lib.struct
/pyd
: @.^.Modules.o.structmodule s.linktab
298 $(MAKEDLK
) -d @.^.Lib.struct
/pyd
-s s.linktab
-o @.^.Modules.o.structmodule
-e initstruct
300 @.^.Lib.plat-riscos.swi
/pyd
: Modules.o.swimodule s.linktab
301 $(LINK
) -aof
-o Modules.o.swilink Modules.o.swimodule
$(OSLIB
).o.OSLIB32
302 $(MAKEDLK
) -d @.^.Lib.plat-riscos.swi
/pyd
-s s.linktab
-o Modules.o.swilink
-e initswi
304 @.^.Lib._locale
/pyd
: @.^.Modules.o._localemodule s.linktab
305 $(MAKEDLK
) -d @.^.Lib._locale
/pyd
-s s.linktab
-o @.^.Modules.o._localemodule
-e init_locale
307 @.^.Lib._sre
/pyd
: @.^.Modules.o._sre s.linktab
308 $(MAKEDLK
) -d @.^.Lib._sre
/pyd
-s s.linktab
-o @.^.Modules.o._sre
-e init_sre
310 @.^.Lib._codecs
/pyd
: @.^.Modules.o._codecsmodule s.linktab
311 $(MAKEDLK
) -d @.^.Lib._codecs
/pyd
-s s.linktab
-o @.^.Modules.o._codecsmodule
-e init_codecs
313 @.^.Lib._weakref
/pyd
: @.^.Modules.o._weakref s.linktab
314 $(MAKEDLK
) -d @.^.Lib._weakref
/pyd
-s s.linktab
-o @.^.Modules.o._weakref
-e init_weakref
316 @.^.Lib._testcapi
/pyd
: @.^.Modules.o._testcapimodule s.linktab
317 $(MAKEDLK
) -d @.^.Lib._testcapi
/pyd
-s s.linktab
-o @.^.Modules.o._testcapimodule
-e init_testcapi
319 @.^.Lib.unicodedata
/pyd
: @.^.Modules.o.unicodedata s.linktab
320 $(MAKEDLK
) -d @.^.Lib.unicodedata
/pyd
-s s.linktab
-o @.^.Modules.o.unicodedata
-e initunicodedata
322 @.^.Lib.xxsubtype
/pyd
: @.^.Modules.o.xxsubtype s.linktab
323 $(MAKEDLK
) -d @.^.Lib.xxsubtype
/pyd
-s s.linktab
-o @.^.Modules.o.xxsubtype
-e initxxsubtype
325 @.^.Lib._random
/pyd
: @.^.Modules.o._randommodule s.linktab
326 $(MAKEDLK
) -d @.^.Lib._random
/pyd
-s s.linktab
-o @.^.Modules.o._randommodule
-e init_random
328 @.^.Lib._symtable
/pyd
: @.^.Modules.o.symtablemodule s.linktab
329 $(MAKEDLK
) -d @.^.Lib._symtable
/pyd
-s s.linktab
-o @.^.Modules.o.symtablemodule
-e init_symtable
332 ############################################################################
333 # Dynamic Modules with other dependencies
335 @.^.Lib.select
/pyd
: @.^.Modules.o.selectmodule s.linktab
336 $(LINK
) -aof
-o @.^.Modules.o.selectlink @.^.Modules.o.selectmodule
$(TCPIPLIB
).o.socklib5
337 $(MAKEDLK
) -d @.^.Lib.select
/pyd
-s s.linktab
-o @.^.Modules.o.selectlink
-e initselect
339 @.^.Modules.o.selectmodule
: @.^.Modules.c.selectmodule
340 $(CC
) -I
$(TCPIPLIB
).
include -o
$@ @.^.Modules.c.selectmodule
342 @.^.Lib._socket
/pyd
: @.^.Modules.o.socketmodule s.linktab
343 $(LINK
) -aof
-o @.^.Modules.o._socketlink @.^.Modules.o.socketmodule
$(TCPIPLIB
).o.inetlib
$(TCPIPLIB
).o.unixlib
$(TCPIPLIB
).o.socklib5
344 $(MAKEDLK
) -d @.^.Lib._socket
/pyd
-s s.linktab
-o @.^.Modules.o._socketlink
-e init_socket
346 @.^.Modules.o.socketmodule
: @.^.Modules.c.socketmodule
347 $(CC
) -I
$(TCPIPLIB
).
include -o
$@ @.^.Modules.c.socketmodule
350 @.^.Lib.zlib
/pyd
: @.^.Modules.o.zlibmodule s.linktab
351 $(LINK
) -aof
-o @.^.Modules.o.zliblink @.^.Modules.o.zlibmodule
$(ZLIB
).zlib
352 $(MAKEDLK
) -d @.^.Lib.zlib
/pyd
-s s.linktab
-o @.^.Modules.o.zliblink
-e initzlib
354 @.^.Modules.o.zlibmodule
: @.^.Modules.c.zlibmodule
355 $(CC
) -I
$(ZLIB
) -o
$@ @.^.Modules.c.zlibmodule
357 @.^.Lib.bz2
/pyd
: @.^.Modules.o.bz2module s.linktab
358 $(LINK
) -aof
-o @.^.Modules.o.bz2link @.^.Modules.o.bz2module
$(BZLIB
).bzlib
359 $(MAKEDLK
) -d @.^.Lib.bz2
/pyd
-s s.linktab
-o @.^.Modules.o.bz2link
-e initbz2
361 @.^.Modules.o.bz2module
: @.^.Modules.c.bz2module
362 $(CC
) -I
$(BZLIB
) -o
$@ @.^.Modules.c.bz2module
364 @.^.Lib.time
/pyd
: @.^.Modules.o.timemodule s.linktab @.o.sleep
365 $(LINK
) -aof
-o @.^.Modules.o.timelink @.^.Modules.o.timemodule @.o.sleep
$(OSLIB
).o.OSLib32
366 $(MAKEDLK
) -d @.^.Lib.time
/pyd
-s s.linktab
-o @.^.Modules.o.timelink
-e inittime
368 #@.^.Lib.time/pyd: @.Modules.o.timemodule s.linktab
369 # $(LINK) -aof -o @.Modules.o.timelink @.Modules.o.timemodule $(OSLIB).o.OSLib32
370 # $(MAKEDLK) -d @.^.Lib.time/pyd -s s.linktab -o @.Modules.o.timelink -e inittime
373 @.^.Lib.pyexpat
/pyd
: @.^.Modules.o.pyexpat s.linktab
374 $(LINK
) -aof
-o @.^.Modules.o.pyexpatlink @.^.Modules.o.pyexpat
$(EXPAT
).expat_lib
375 $(MAKEDLK
) -d @.^.Lib.pyexpat
/pyd
-s s.linktab
-o @.^.Modules.o.pyexpatlink
-e initpyexpat
377 @.^.Modules.o.pyexpat
: @.^.Modules.c.pyexpat
378 $(CCEXPAT
) -o
$@ @.^.Modules.c.pyexpat
380 @.^.Lib.zipimport
/pyd
: @.^.Modules.o.zipimport s.linktab
381 $(LINK
) -aof
-o @.^.Modules.o.zipimportlink @.^.Modules.o.zipimport o.unixstuff
$(OSLIB
).o.OSLib32
382 $(MAKEDLK
) -d @.^.Lib.zipimport
/pyd
-s s.linktab
-o @.^.Modules.o.zipimportlink
-e initzipimport
385 ##########################################################################
386 # dynamic linking symbol table
389 ObjAsm
-APCS
3/32bit s.linktab o.linktab
391 s.linktab
: $(OBJECTS
)
392 $(OBJSCAN
) -s s.linktab
-o
$(OBJECTS
) $(clib
).o.stubs
394 ##########################################################################
398 -wipe @.^.Lib.
*/pyc ~C~V
399 -wipe @.^.Lib.
*/pyo ~C~V
400 -wipe @.^.Lib.plat-riscos.
*/pyc ~C~V
401 -wipe @.^.Lib.plat-riscos.
*/pyo ~C~V
402 -wipe @.^.Lib.
test.
*/pyc ~C~V
403 -wipe @.^.Lib.
test.
*/pyo ~C~V
404 -wipe @.^.Lib.encodings.
*/pyc ~C~V
405 -wipe @.^.Lib.encodings.
*/pyo ~C~V
406 -wipe @.^.Lib.curses.
*/pyc ~C~V
407 -wipe @.^.Lib.curses.
*/pyo ~C~V
408 -wipe @.^.Lib.xml.
*/pyc ~C~V
409 -wipe @.^.Lib.xml.
*/pyo ~C~V
410 -wipe @.^.Lib.xml.sax.
*/pyc ~C~V
411 -wipe @.^.Lib.xml.sax.
*/pyo ~C~V
412 -wipe @.^.Lib.xml.dom.
*/pyc ~C~V
413 -wipe @.^.Lib.xml.dom.
*/pyo ~C~V
414 -wipe @.^.Lib.xml.parsers.
*/pyc ~C~V
415 -wipe @.^.Lib.xml.parsers.
*/pyo ~C~V
418 -wipe @.^.Modules.o.
* ~C~V
419 -wipe @.^.Objects.o.
* ~C~V
420 -wipe @.^.Parser.o.
* ~C~V
421 -wipe @.^.Python.o.
* ~C~V
422 -wipe @.Modules.o.
* ~C~V
423 -wipe @.Python.o.
* ~C~V
426 rebuild
: clean clean-support
428 -wipe @.^.Lib.
*/pyd ~C ~V
429 -wipe @.^.Lib.plat-riscos.
*/pyd ~C~V
448 # Dynamic dependencies: