home *** CD-ROM | disk | FTP | other *** search
/ Club Amiga de Montreal - CAM / CAM_CD_1.iso / files / 199.lha / GimmeLib / Makefile < prev    next >
Makefile  |  1988-12-27  |  4KB  |  130 lines

  1. #
  2. #   makefile for GIMME.LIB        latest: 31-Oct-88        (Manx version)
  3. #
  4. # NOTE: the default is to make a small code 16-bit int library gimme.lib
  5. #    and test program
  6. #
  7. # NOTE: you must run make once for each library version you want.
  8. #
  9. #   how to make different versions of gimmelib:
  10. #
  11. #    make            - gimme.lib    (small code, 16-bit)
  12. #    make T=32        - gimme32.lib    (small code, 32-bit)
  13. #    make T=l        - gimmel.lib    (large code, 16-bit)
  14. #    make T=l32        - gimmel32.lib    (large code, 32-bit)
  15. #
  16. # NOTE: the four versions above create object files with the following
  17. # extensions, respectively:    .o, .o32, .ol, .ol32
  18. #
  19. # you can specify where the gimmelib include files are (for purposes of
  20. # checking the date) by specifying  INCS=wherever  on the "make" command line
  21. # the default is "gimmelib/"
  22. # ie. in the gimmelib subdirectory of the current directory.
  23. # NOTE: your INCS specification must end with '/' or ':'
  24. #
  25. # NOTE: the desired library must exist in the current directory
  26. # (if it doesn't create an empty file with the appropriate name)
  27. #
  28.  
  29. # library type (default: "" ie gimme.lib : small code 16-bit int)
  30. T =
  31. # where the include files are (must end with '/' or ':') [to check date]
  32. INCS = gimmelib/
  33.  
  34.  
  35. LOBJS = communic.o$T dbuf.o$T dbufquick.o$T dbufvquick.o$T dualpf.o$T \
  36.     font.o$T graph.o$T inputhand.o$T \
  37.     keyboard.o$T menu.o$T menustuff.o$T picture.o$T \
  38.     postext.o$T requester.o$T screen.o$T \
  39.     scrollbar.o$T sound.o$T stdstuff.o$T subtask.o$T \
  40.     subtinit.o$T timerstuff.o$T timer.o$T window.o$T \
  41.     bitmap.o$T bitplane.o$T color.o$T gadget.o$T gadgstuff.o$T message.o$T \
  42.     intuistuff.o$T copystuff.o$T memchain.o$T globals.o$T
  43.  
  44. # NOTE: order is important because of inter-dependant routines
  45. # note: stdstuff must come before subtask, timer
  46. # note: communic,timerstuff must come before timer
  47. # note: postext must come after graph
  48. # note: color must come after picture
  49. # note: window must come after screen
  50. # note: bitmap must come after dbuf, dbufquick, dualpf, window
  51. # note: bitplane should come after bitmap, picture
  52. # note: message must come after subtinit
  53. # note: gadget must come after scrollbar
  54. # note: gadgstuff must come after gadget
  55. # note: intuistuff and copystuff must come near-last
  56. # note: memchain should come last, just before globals.o
  57.  
  58. DBGFLAG =
  59. #debug version
  60. #DBGFLAG = -DDEBUG -n
  61.  
  62. CFLAGS = +Irad:include/incall.pre $(DBGFLAG)
  63.  
  64. LFLAGS = -Lgimme$T -Lc$T
  65.  
  66. .c.o:
  67.     cc $(CFLAGS) $*.c -o $@
  68.     lb gimme$T.lib -r $* $*
  69. .c.o32:
  70.     cc $(CFLAGS) +L $*.c -o $@
  71.     lb gimme$T.lib -r $@ $@
  72. .c.ol:
  73.     cc $(CFLAGS) +C $*.c -o $@
  74.     lb gimme$T.lib -r $@ $@
  75. .c.ol32:
  76.     cc $(CFLAGS) +C +L $*.c -o $@
  77.     lb gimme$T.lib -r $@ $@
  78.  
  79. # all (default) causes modules to be updated in the libraries
  80. all: test
  81.  
  82. # rebuild causes the libraries to be remade from "scratch"
  83. rebuild: rebuild_library test.o$T rebuild_test
  84.  
  85.  
  86. gimme$T.lib: $(LOBJS)
  87.     copy gimme$T.lib rad:lib/gimme$T.lib
  88.  
  89. test: gimme$T.lib test.o$T
  90.     ln test.o$T -Lgimme$T -Lc$T
  91. test.o: test.c
  92.     cc $(CFLAGS) test.c -o $@
  93. test.o32: test.c
  94.     cc $(CFLAGS) +L test.c -o $@
  95. test.ol: test.c
  96.     cc $(CFLAGS) +C test.c -o $@
  97. test.ol32: test.c
  98.     cc $(CFLAGS) +C +L test.c -o $@
  99.  
  100.  
  101. bitplane.o$T:    $(INCS)bitplane.h
  102. color.o$T:    $(INCS)color.h
  103. communic.o$T:    $(INCS)communic.h
  104. copystuff.o$T:    $(INCS)copystuff.h $(INCS)intuistuff.h
  105. dbuf.o$T dbufquick.o$T dbufvquick.o$T:    $(INCS)minterm.h
  106. gadget.o$T:    $(INCS)gadget.h $(INCS)postext.h
  107. gadgstuff.o$T:    $(INCS)gadget.h
  108. globals.o$T:    $(INCS)globals.h $(INCS)requester.h $(INCS)scrollbar.h
  109. graph.o$T:    $(INCS)graph.h $(INCS)postext.h
  110. intuistuff.o$T: $(INCS)intuistuff.h
  111. menustuff.o$T:    $(INCS)menustuff.h
  112. picture.o$T:    $(INCS)picture.h $(INCS)bitplane.h $(INCS)postext.h \
  113.             $(INCS)minterm.h
  114. postext.o$T:    $(INCS)postext.h
  115. requester.o$T:    $(INCS)requester.h
  116. screen.o$T:    $(INCS)window.h $(INCS)globals.h
  117. scrollbar.o$T:    $(INCS)scrollbar.h
  118. sound.o$T:    $(INCS)sound.h
  119. stdstuff.o$T:    $(INCS)stdstuff.h
  120. window.o$T:    $(INCS)window.h
  121.  
  122.  
  123. rebuild_library: $(LOBJS)
  124.     lb rad:lib/gimme$T.lib $(LOBJS)
  125.     copy rad:lib/gimme$T.lib gimme$T.lib
  126.  
  127. rebuild_test:
  128.     ln test.o$T $(LFLAGS)
  129.  
  130.