home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: InfoMgt / InfoMgt.zip / shr93.zip / SHARE.MAK < prev    next >
Text File  |  1993-04-12  |  4KB  |  139 lines

  1. #****************************************************************************
  2. #  Dot directive definition area (usually just suffixes)
  3. #****************************************************************************
  4.  
  5. .SUFFIXES:
  6. .SUFFIXES: .c .obj .dll .csc .sc .h .ih .ph .psc .rc .res
  7.  
  8. #****************************************************************************
  9. #  Environment Setup for the component(s).
  10. #****************************************************************************
  11.  
  12. SOMTEMP = .\somtemp
  13. SCPATH  = \toolkt20\sc
  14. HPATH   = \toolkt20\c\os2h
  15. LIBPATH = \toolkt20\os2lib
  16.  
  17. !if [set SMINCLUDE=.;$(SCPATH);] || \
  18.     [set SMTMP=$(SOMTEMP)] || \
  19.     [set SMEMIT=ih;h;ph;psc;sc;c]
  20. !endif
  21.  
  22. !if [cd $(SOMTEMP)]
  23. !  if [md $(SOMTEMP)]
  24. !    error error creating $(SOMTEMP) directory
  25. !  endif
  26. !else
  27. !  if [cd ..]
  28. !    error - Couldn't cd .. from $(SOMTEMP) directory
  29. !  endif
  30. !endif
  31.  
  32. #
  33. # Compiler/tools Macros
  34. #
  35. # /Kt+ tells which include files were included.
  36.  
  37. CC      = icc /c /Gd- /Se /Re /ss /Ms /Gm+ /Kb+ /N100
  38.  
  39. AFLAGS  = /Mx -t -z
  40. ASM     = ml /c /Zm
  41. LINK    = LINK386  $(LFLAGS)
  42. LIBS    = DDE4MBS + OS2386
  43. STLIBS  = DDE4SBS + OS2386
  44. MTLIBS  = DDE4MBS + os2386
  45. DLLLIBS = DDE4NBS + os2386
  46. VLIBS   = DDE4SBS + vdh + os2386
  47.  
  48. CC      = $(CC) /Ge-
  49. LINK    = LINK386
  50. LDFLAGS = /noe /noi /map /nol /nod /exepack /packcode /packdata /align:16
  51. DLLLIBS = $(MTLIBS) som.lib
  52.  
  53. #****************************************************************************
  54. # Set up Macros that will contain all the different dependencies for the
  55. # executables and dlls etc. that are generated.
  56. #****************************************************************************
  57.  
  58. OBJS = list.obj somlist.obj notify.obj shrfoldr.obj \
  59.        person.obj personv.obj addrbk.obj addrbkv.obj share.obj
  60.  
  61. #****************************************************************************
  62. #   Setup the inference rules for compiling source code to
  63. #   object code.
  64. #****************************************************************************
  65.  
  66. .c.obj:
  67.         $(CC) -I$(HPATH) -c $<
  68.  
  69. .csc.ih:
  70.         sc -v $*.csc
  71.  
  72. .c.lst:
  73.     $(CC) -Fc$*.lst -Fo$*.obj $*.c
  74.  
  75. .c.obj:
  76.     $(CC) -Fo$*.obj $*.c
  77.  
  78. .asm.obj:
  79.     $(ASM)   $*.asm
  80.  
  81. .ipf.hlp:
  82.         ipfc $*.ipf /W3
  83.  
  84. .itl.hlp:
  85.         cc  -P $*.itl
  86.         ipfc $*.i
  87.         del $*.i
  88.  
  89. .rc.res:
  90.         rc -r -p -x $*.rc
  91.  
  92. all: share.dll shrinst.exe
  93.  
  94. #
  95. # Specific Process Tag
  96. #
  97.  
  98. list.obj: $$(@B).c $$(@B).h
  99.  
  100. somlist.ih:  $$(@B).csc
  101.  
  102. somlist.obj: $$(@B).c $$(@B).ih $$(@B).h  $$(@B).sc
  103.  
  104. notify.ih:  $$(@B).csc
  105.  
  106. notify.obj: $$(@B).c $$(@B).ih $$(@B).h  $$(@B).sc
  107.  
  108. person.ih:  $$(@B).csc
  109.  
  110. person.obj: $$(@B).c $$(@B).ih $$(@B).h  $$(@B).sc
  111.  
  112. personv.obj: $$(@B).c $$(@B).h
  113.  
  114. addrbk.ih:  $$(@B).csc
  115.  
  116. addrbk.obj: $$(@B).c $$(@B).ih $$(@B).h  $$(@B).sc
  117.  
  118. addrbkv.obj: $$(@B).c $$(@B).h
  119.  
  120. share.obj: $$(@B).c $$(@B).h  
  121.  
  122. share.res: share.rc share.dlg 
  123.          rc -r $*.rc $*.res
  124.  
  125. share.dll: share.res $(OBJS)
  126.          $(LINK) $(LDFLAGS) $(OBJS),$@,,$(DLLLIBS),share.def;
  127.          mapsym share.map
  128.          rc share.res $*.dll
  129.  
  130. shrinst.res: shrinst.dlg
  131.          rc -r $*.dlg $*.res
  132.  
  133. shrinst.obj: shrinst.c
  134.          icc /Ti+ /c /Ge+ /Gd- /Se /Sp2 /Re /Kb /ss /Ms /Gm+ shrinst.c
  135.  
  136. shrinst.exe: shrinst.obj shrinst.res
  137.          link386 /st:40000 /noi /map /nol /nod /exepack /packcode /packdata /align:16 shrinst,shrinst,,som.lib os2386.lib dde4mbs.lib,shrinst.def
  138.          rc shrinst.res shrinst.exe
  139.