home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 15 / AACD15.ISO / AACD / Programming / Python2 / Python20_source / SMAKEFILE < prev   
Encoding:
Text File  |  2000-10-28  |  4.5 KB  |  190 lines

  1.  
  2. #
  3. #    Toplevel SMakefile for AmigaPython.
  4. #
  5. #    Made by Irmen de Jong, 10 nov. 1995.
  6. #        updated: 25 march 1996 for use with AmiTCP
  7. #        updated: 7 may 1996, now uses 4 intermediate link libs 
  8. #        updated: 27 aug 1996, AMITCP and AMITCP_NET defines
  9. #        updated: 8 dec 1996, for Python 1.4
  10. #        updated: 12 jan 1998, for Python 1.5
  11. #              (partitioned into 5 parts)
  12. #        updated: 25 dec 1998, added support for I-Net 225
  13. #        updated: 10 sep 2000, Python 1.6
  14. #        updated: 23 okt 2000, Python 2.0
  15. #
  16. #    
  17. #
  18. #    THIS IS THE MAKEFILE FOR AMITCP !!!!
  19. #
  20. #
  21.  
  22.  
  23. # ye old progname:
  24. PROGRAM = Python20
  25.  
  26.  
  27. all: $(PROGRAM)
  28.  
  29.  
  30. #
  31. # define to use mempools library
  32. # (use mempools39 to link with V39+ only pools lib => shorter & faster)
  33. #
  34. MEMPOOLSLIB=LIB:mempoolsnb.lib
  35. STARTUP=LIB:c_mempools.o
  36.  
  37. #
  38. # define if NOT using mempools library
  39. #
  40. #MEMPOOLSLIB=
  41. #STARTUP=LIB:c.o
  42. #
  43.  
  44. #
  45. # AMIGA EXTENSIONS defines
  46. # AmiTCP uses 'amigapythonamitcp.lib'
  47. # I-Net225 uses 'amigapythoninet225.lib'
  48. # Not using one of them? Choose 'amigapython.lib'
  49. #
  50. ## AMIGAPYTHONLIBNAM=amigapython.lib
  51. AMIGAPYTHONLIBNAM=amigapythonamitcp.lib
  52. ## AMIGAPYTHONLIBNAM=amigapythoninet225.lib
  53. AMIGAPYTHONLIB=Amiga/$(AMIGAPYTHONLIBNAM)
  54.  
  55. #
  56. # define if developing new module -> faster turnarounds
  57. # (add it to the module list if it's finished)
  58. #
  59. NEWMODULES =
  60.  
  61. #
  62. # Network Protocol Stack link library
  63. # (AmiTCP needs nothing, I-Net225 needs INET:lib/unixS.lib)
  64. #
  65. TCPSTACKLIB=
  66. ## TCPSTACKLIB=INET:lib/unixS.lib
  67.  
  68. #
  69. # Expat XML parser lib
  70. #
  71. EXPATLIB = expat/lib/expat.lib
  72.  
  73. #
  74. # Link library configuration. Change to reflect correct math options etc.
  75. #
  76. CLIBS = $(AMIGAPYTHONLIB) $(MEMPOOLSLIB) $(TCPSTACKLIB) LIB:scm881nb.lib LIB:scnb.lib
  77.  
  78. # Set link options to thy likes.
  79. # (compiler options can be changed using scopts)
  80. LINKOPTS = SC BATCH NOICONS
  81.  
  82. LIBS = Modules/Modules.lib Parser/Parser.lib Python/Python.lib Objects/Objects.lib Expat/lib/expat.lib $(CLIBS)
  83.  
  84. OBJECTS=Modules/python.o Modules/main.o $(NEWMODULES)
  85.  
  86. Python.GST: amiga/make_gst.c Include/Python.h Include/config.h Include/protos.h SCOPTIONS
  87.     -delete >NIL: Python.GST
  88.     -GST >NIL: Python.GST unload
  89.     -SC amiga/make_gst.c MKGST Python.GST NOOBJNAME DEFINE=PROTO_TIMER_H
  90.  
  91. newbuild:
  92.     @eval `type buildno` + 1 >buildno1
  93.     -@delete >NIL: buildno
  94.     -@rename buildno1 buildno
  95.     @echo "Build number is now `type buildno`"
  96.         
  97. #$(PROGRAM): Python.GST $(OBJECTS) $(LIBS) buildno
  98. #    @echo "Build number is `type buildno` (use 'make newbuild' to increase)"
  99. #    @SC Modules/getbuildinfo.c DEFINE=BUILD=`type buildno`
  100. #    phxlnk FROM $(STARTUP) @objects.txt TO $(PROGRAM) $(CLIBS) NODEBUG SMALLCODE 
  101. #delete >NIL: \#?.tmp 
  102.  
  103. $(PROGRAM): Python.GST $(OBJECTS) $(LIBS) buildno
  104.     @echo "Build number is `type buildno` (use 'make newbuild' to increase)"
  105.     @SC Modules/getbuildinfo.c DEFINE=BUILD=`type buildno`
  106.     SLINK WITH <<
  107. TO $(PROGRAM)
  108. FROM $(STARTUP)
  109. Modules/getbuildinfo.o
  110. $(OBJECTS)
  111. $(LINKOPTS)
  112. STRIPDEBUG
  113. LIB $(LIBS)
  114. <<
  115. #    -delete >NIL: \#?.tmp 
  116.  
  117.  
  118. buildno:
  119.     echo 0 >buildno
  120.  
  121. debug:
  122.     SLINK WITH <<
  123.     TO $(PROGRAM)_debug
  124.     FROM $(STARTUP)
  125.     Modules/getbuildinfo.o
  126.     $(OBJECTS)
  127.     $(LINKOPTS)
  128.     LIB $(LIBS)
  129.     <<
  130.     -delete >NIL: \#?.tmp 
  131.     
  132. clean:
  133.     -delete Parser/\#?.(o|lib) quiet
  134.     -delete Objects/\#?.(o|lib) quiet
  135.     -delete Modules/\#?.(o|lib) quiet
  136.     -delete Python/\#?.(o|lib) quiet
  137.     -delete $(PROGRAM) \#?.tmp QUIET
  138.     -delete $(AMIGAPYTHONLIB)
  139.     -delete $(EXPATLIB) Expat/\#?/\#?.o 
  140.     -delete Amiga/\#?.(o|lib)
  141.     -delete Python.GST >NIL:
  142.  
  143.  
  144. Modules/Modules.lib: Modules
  145.     @echo "******************** ENTERING MODULES/ *********************N"
  146.     execute <<
  147. cd Modules
  148. smake Modules.lib
  149. <<
  150.     @echo "******************** LEAVING MODULES/  *********************N"
  151.  
  152. Parser/Parser.lib: Parser
  153.     @echo "******************** ENTERING PARSER/ *********************N"
  154.     execute <<
  155. cd Parser
  156. smake Parser.lib
  157. <<
  158.     @echo "******************** LEAVING PARSER/  *********************N"
  159. Python/Python.lib: Python
  160.     @echo "******************** ENTERING PYTHON/ *********************N"
  161.     execute <<
  162. cd Python
  163. smake Python.lib
  164. <<
  165.     @echo "******************** LEAVING PYTHON/  *********************N"
  166. Objects/Objects.lib: Objects
  167.     @echo "******************** ENTERING OBJECTS/ *********************N"
  168.     execute <<
  169. cd Objects
  170. smake Objects.lib
  171. <<
  172.     @echo "******************** LEAVING OBJECTS/  *********************N"
  173.  
  174. $(AMIGAPYTHONLIB): Amiga
  175.     @echo "******************** ENTERING Amiga/ *********************N"
  176.     execute <<
  177. cd Amiga
  178. smake $(AMIGAPYTHONLIBNAM)
  179. <<
  180.     @echo "******************** LEAVING Amiga/  *********************N"
  181.  
  182. $(EXPATLIB): Expat
  183.     @echo "******************** ENTERING Expat/ *********************N"
  184.     execute <<
  185. cd Expat
  186. smake
  187. <<
  188.     @echo "******************** LEAVING Expat/  *********************N"
  189.  
  190.