symbian-qemu-0.9.1-12/python-2.6.1/RISCOS/Makefile
changeset 1 2fb8b9db1c86
equal deleted inserted replaced
0:ffa851df0825 1:2fb8b9db1c86
       
     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: