home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddkx86v5.zip / DDKX86 / SRC / PEN / PENTKT / UTIL / PENCAL / MAKEFILE < prev    next >
Text File  |  1995-04-14  |  4KB  |  135 lines

  1. #****************************************************************************
  2. #  Dot directive definition area (usually just suffixes)
  3. #****************************************************************************
  4.  
  5. .SUFFIXES: .c .obj .lib .dll .csc .sc .h .ih .ph .psc .rc .res
  6.  
  7.  
  8. !ifndef TOOLBASE
  9. TOOLBASE = ..\..\..\..\..\tools
  10. !endif
  11.  
  12. !ifndef BLDTOOLS
  13. BLDTOOLS = $(TOOLBASE)
  14. !endif
  15.  
  16. !ifndef CSET2
  17. CSET2    = $(TOOLBASE)\cset2
  18. !endif
  19.  
  20. !ifndef TOOLKT21
  21. TOOLKT21 = $(TOOLBASE)\toolkt20
  22. !endif
  23.  
  24. #****************************************************************************
  25. #  Environment Setup for the component(s).
  26. #****************************************************************************
  27. DDK      = ..\..\..\..\..
  28. IH       = ..\..\..\h
  29. TLKH     = ..\..\h;..\..\penbase\inc;
  30. PENH     = $(IH);$(TLKH)
  31. CSET2H   = $(CSET2)\include;$(CSET2)\include\sys
  32. CSET2L   = $(CSET2)\lib;
  33. CSET2B   = $(CSET2)\bin
  34. CSET2M   = $(CSET2)\locale;$(CSET2)\help
  35. OS2H     = $(TOOLKT21)\c\os2h;$(DDK)\ibmh;$(DDK)\inc
  36. PINCLUDE = -I. -I..\..\penbase\inc
  37. OS2L     = $(TOOLKT21)\os2lib;$(DDK)\lib
  38. PENL     = ..\..\lib
  39. OS2B     = $(TOOLKT21)\os2bin
  40.  
  41. !if [set INCLUDE=$(PENH);$(CSET2H);$(OS2H);$(PINCLUDE);%INCLUDE%]  ||  \
  42.     [set LIB=$(CSET2L);$(OS2L);$(PENL);%lib%]         ||  \
  43.     [set PATH=$(CSET2B);$(OS2B);$(BLDTOOLS);$(PATH);%path%]     ||  \
  44.     [set DPATH=$(CSET2M);$(DPATH);%dpath%]
  45. !endif
  46.  
  47. SOMTEMP= $(TMP)
  48.  
  49. !if [set SMTMP=$(SOMTEMP)] || \
  50.     [set SMEMIT=ih;h;ph;psc;sc;c]
  51. !endif
  52.  
  53. #
  54. # Compiler/tools Macros
  55. #
  56. !ifdef DEBUG
  57. CDBFLAG=/Ti+ /O-
  58. LDBFLAG=/DEBUG /BATCH
  59. !endif
  60.  
  61. CC       = icc /c /Gm /Ss $(CDBFLAG)
  62. # CC         = icc /c /Gm /Ss /Ti /Fa+
  63. LINK       = link386 $(LDBFLAG)
  64. LDFLAGS    = /noi /map /nol /nod /exepack /packcode /packdata /align:16
  65. # LIBS       = dbcsmbs.lib os2386.lib dde4mbs.lib
  66. LIBS       = os2386.lib dde4mbs.lib penpm.lib
  67.  
  68. #****************************************************************************
  69. # Set up Macros that will contain all the different dependencies for the
  70. # executables and dlls etc. that are generated.
  71. #****************************************************************************
  72.  
  73. OBJS = pmmain.obj pmalign.obj align.obj penpm.obj
  74.  
  75. #****************************************************************************
  76. #   Setup the inference rules for compiling source code to
  77. #   object code.
  78. #****************************************************************************
  79.  
  80. .c.obj:
  81.         $(CC) /fo$*.obj $(PINCLUDE) $<
  82.  
  83. .asm.obj:
  84.         $(MASM) $*.asm $*.obj
  85.  
  86. .csc.ih:
  87.         sc -v -r $*.csc
  88.  
  89. .csc.c:
  90.         sc $*.csc
  91.  
  92. #******************************************************************************
  93. #   Target Information
  94. #******************************************************************************
  95. #
  96. # This is a very important step. The following small amount of code MUST
  97. # NOT be removed from the program. The following directive will do
  98. # dependency checking every time this component is built UNLESS the
  99. # following is performed:
  100. #                    A specific tag is used -- ie. all
  101. #
  102. # This allows the developer as well as the B & I group to perform incremental
  103. # build with a degree of accuracy that has not been used before.
  104. # There are some instances where certain types of INCLUDE files must be
  105. # created first. This type of format will allow the developer to require
  106. # that file to be created first. In order to achive that, all that has to
  107. # be done is to make the DEPEND.MAK tag have your required target. Below is
  108. # an example:
  109. #
  110. #    depend.mak:   { your file(s) } dephold
  111. #
  112. # Please DON'T remove the following line
  113. #
  114.  
  115. all: cal.exe
  116.  
  117. #
  118. # Specific Process Tag
  119. #
  120.  
  121. cal.exe : $*.def $(OBJS) cal.res
  122.         $(LINK) /NOI /NOD @<<
  123.          $(OBJS)
  124.          $@
  125.          $*.map   /map
  126.          $(LIBS)
  127.          $*.def
  128. <<
  129.         rc $*.res $*.exe
  130.  
  131. cal.res  :  cal.rc calres.h cal.ico target.ico
  132.         rc -r $*.rc $*.res
  133.  
  134. #******************************************************************************
  135.