home *** CD-ROM | disk | FTP | other *** search
/ Liren Large Software Subsidy 7 / 07.iso / c / c004 / 3.ddi / OS2LAN / MAKEAPP.MAK < prev    next >
Encoding:
Text File  |  1989-04-18  |  5.5 KB  |  229 lines

  1. ######################################################################
  2. # Make applications library for c-tree application library
  3. # Invoke with MAKEAPPX.BAT
  4. #
  5. # For NET BIOS server version.
  6. #
  7. ######################################################################
  8.  
  9.  
  10. ##################
  11. # default macros #
  12. ##################
  13.  
  14. # rtree directory
  15. RTREE=..\..\rtree
  16.  
  17. # c compiler
  18. COMPILER=cl /c
  19.  
  20. # assembler
  21. ASM=masm
  22.  
  23. # c compiler model switch
  24. CM=/AS
  25.  
  26. # assemble model define
  27. AM=SMALL
  28.  
  29. # obj/exe/lib directory
  30. D=SAPP
  31.  
  32. #c compile include path
  33. P=/I .\ /I ..\ /I ..\msc /I $(RTREE)
  34.  
  35. #linker name
  36. LINK=link
  37.  
  38. #library names
  39. LN=ctalib
  40.  
  41. #OS/2 V1.1
  42. #OSLIB=OS2
  43. #OSNETAPI=netapi+netoem
  44. #OS/2 V1.0
  45. OSLIB=DOSCALLS
  46. OSNETAPI=nampipes+netapi+netoem
  47.  
  48. #full library name
  49. ALIB=$(LN).lib
  50. ALIBS=$(LN)+$(RUNT)+$(OSLIB)+$(OSNETAPI)
  51.  
  52. #linker object file list
  53. MSG=+ctamsg+ctapip+ctdosc+ctnetc/m
  54.  
  55. #make exe's dependency list
  56. DMSG=$(D)\ctamsg.obj $(D)\ctapip.obj $(D)\ctdosc.obj $(D)\ctnetc.obj
  57.  
  58. ################################
  59. # complile all library modules #
  60. ################################
  61.  
  62. # library modules
  63.  
  64. $(D)\ctappx.obj: ..\ctappx.c
  65.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  66.  
  67. $(D)\ctapx2.obj: ..\ctapx2.c
  68.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  69.  
  70. $(D)\ctapx3.obj: ..\ctapx3.c
  71.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  72.  
  73. $(D)\ctapx4.obj: ..\ctapx4.c
  74.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  75.  
  76. $(D)\ctsset.obj: ..\ctsset.c
  77.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  78.  
  79. $(D)\ctisam.obj: ..\ctisam.c
  80.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  81.  
  82. $(D)\ctvrec.obj: ..\ctvrec.c
  83.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  84.  
  85. $(D)\ctvrcu.obj: ..\ctvrcu.c
  86.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  87.  
  88. $(D)\ctism2.obj: ..\ctism2.c
  89.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  90.  
  91. $(D)\ctismc.obj: ..\ctismc.c
  92.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  93.  
  94. $(D)\ctismo.obj: ..\ctismo.c
  95.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  96.  
  97. $(D)\cticre.obj: ..\cticre.c
  98.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  99.  
  100. $(D)\ctiopn.obj: ..\ctiopn.c
  101.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  102.  
  103. $(D)\ctcomp.obj: ..\ctcomp.c
  104.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  105.  
  106. $(D)\cticls.obj: ..\cticls.c
  107.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  108.  
  109. $(D)\ctifil.obj: ..\ctifil.c
  110.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  111.  
  112. $(D)\ctismu.obj: ..\ctismu.c
  113.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  114.  
  115. $(D)\ctestm.obj: ..\ctestm.c
  116.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  117.  
  118. $(D)\ctclb2.obj: ..\ctclb2.c    # low level disk interface
  119.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  120.  
  121.  
  122. #####################
  123. # build the library #
  124. #####################
  125.  
  126. $(D)\$(ALIB): $(D)\ctappx.obj $(D)\ctapx2.obj $(D)\ctapx3.obj $(D)\ctapx4.obj \
  127.             $(D)\ctsset.obj $(D)\ctisam.obj $(D)\ctvrec.obj \
  128.             $(D)\ctvrcu.obj $(D)\ctism2.obj \
  129.             $(D)\ctismc.obj $(D)\ctismo.obj $(D)\cticre.obj \
  130.             $(D)\ctiopn.obj $(D)\ctcomp.obj \
  131.             $(D)\cticls.obj $(D)\ctifil.obj \
  132.             $(D)\ctismu.obj $(D)\ctestm.obj $(D)\ctclb2.obj
  133.     cd $(D)
  134.     if exist $(LN).bak del $(LN).bak
  135.     if exist $(ALIB) ren $(ALIB) $(LN).bak
  136.     echo $(ALIB) > lrsp
  137.     echo y >> lrsp
  138.     echo +ctappx+ctapx2 ^& >> lrsp
  139.     echo +ctsset+ctisam+ctvrec+ctvrcu+ctism2 ^& >> lrsp
  140.     echo +ctismc+ctismo+cticre ^& >> lrsp
  141.     echo +ctiopn+ctcomp ^& >> lrsp
  142.     echo +cticls+ctifil ^& >> lrsp
  143.     echo +ctismu+ctapx3+ctapx4 ^& >> lrsp
  144.     echo +ctestm+ctclb2 >> lrsp
  145.     echo $(LN).m >> lrsp
  146.     echo $(ALIB) >> lrsp
  147.     lib @lrsp
  148.     del lrsp
  149.     cd ..
  150.  
  151. #######################################
  152. # compile environment dependent files #
  153. #######################################
  154.  
  155. $(D)\ctamsg.obj: ctamsg.c 
  156.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) $*.c
  157.  
  158. $(D)\ctapip.obj: ctapip.c
  159.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) $*.c
  160.  
  161. $(D)\ctnetc.obj: ctnetc.c
  162.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) $*.c
  163.  
  164. $(D)\ctdosc.obj: ctdosc.c
  165.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) $*.c
  166.  
  167. ####################################
  168. # compile/link server stop utility #
  169. # CTSTOP                           #
  170. ####################################
  171.  
  172. $(D)\ctstop.obj: ..\ctstop.c
  173.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  174.  
  175. $(D)\ctstop.exe: $(D)\ctstop.obj $(DMSG) $(D)\ctclb2.obj
  176.     cd $(D)
  177.     $(LINK) ctstop$(MSG)+ctclb2,,,$(RUNT)+$(OSLIB)+$(OSNETAPI);
  178.     cd ..
  179.  
  180. ####################################
  181. # compile/link server stat utility #
  182. # CTSTAT                           #
  183. ####################################
  184.  
  185. $(D)\ctstat.obj: ..\ctstat.c
  186.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  187.  
  188. $(D)\ctstat.exe: $(D)\ctstat.obj $(DMSG) $(D)\ctclb2.obj
  189.     cd $(D)
  190.     $(LINK) ctstat$(MSG)+ctclb2,,,$(RUNT)+$(OSLIB)+$(OSNETAPI);
  191.     cd ..
  192.  
  193. ###################################
  194. # compile/link example programs   #
  195. # CTEXMC CTEXMG CTVXMG CTIXMG     #
  196. ###################################
  197.  
  198. $(D)\ctexmc.obj: ..\ctexmc.c
  199.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  200.  
  201. $(D)\ctexmc.exe: $(D)\ctexmc.obj $(DMSG) $(D)\$(ALIB)
  202.     cd $(D)
  203.     $(LINK) ctexmc$(MSG),,,$(ALIBS);
  204.     cd ..
  205.  
  206. $(D)\ctexmg.obj: ..\ctexmg.c
  207.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  208.  
  209. $(D)\ctexmg.exe: $(D)\ctexmg.obj $(DMSG) $(D)\$(ALIB)
  210.     cd $(D)
  211.     $(LINK) ctexmg$(MSG),,,$(ALIBS);
  212.     cd ..
  213.  
  214. $(D)\ctvxmg.obj: ..\ctvxmg.c
  215.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  216.  
  217. $(D)\ctvxmg.exe: $(D)\ctvxmg.obj $(DMSG) $(D)\$(ALIB)
  218.     cd $(D)
  219.     $(LINK) ctvxmg$(MSG),,,$(ALIBS);
  220.     cd ..
  221.  
  222. $(D)\ctixmg.obj: ..\ctixmg.c
  223.     $(COMPILER) $(P) /Fo$(D)\$*.obj $(CM) ..\$*.c
  224.  
  225. $(D)\ctixmg.exe: $(D)\ctixmg.obj $(DMSG) $(D)\$(ALIB)
  226.     cd $(D)
  227.     $(LINK) ctixmg$(MSG),,,$(ALIBS);
  228.     cd ..
  229.