home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 4 / AACD04.ISO / AACD / Programming / Python / Source / SMAKEFILE < prev   
Encoding:
Text File  |  1999-10-20  |  4.2 KB  |  176 lines

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