home *** CD-ROM | disk | FTP | other *** search
/ Microsoft Internet Business Development Kit / PRODUCT_CD.iso / sqlsvr / odbcsdk / samples / crsrdemo / makefile < prev    next >
Encoding:
Makefile  |  1994-12-07  |  4.8 KB  |  171 lines

  1. ##########################################################################
  2. #
  3. # Makefile -- Build ODBC Cursor Library Demo Application
  4. #
  5. #
  6. ##########################################################################
  7.  
  8. ##########################################################################
  9. #
  10. # Constants
  11. #
  12. ##########################################################################
  13. APP        = crsrdemo
  14. ODBCINC    =   ..\..\include
  15.  
  16. !if "$(WIN32)" == "YES"     
  17. !include <ntwin32.mak>      # use the WIN32 makefile template
  18. ODBCLIB    =   ..\..\lib32
  19. !else # $(WIN32) != YES
  20. cc      = cl
  21. ODBCLIB    =   ..\..\lib
  22. !endif # $(WIN32)
  23.  
  24. INCLUDE     =   $(ODBCINC);$(INCLUDE)
  25. LIB         =   $(ODBCLIB);$(LIB)
  26.  
  27. !IF "$(DEBUG)" == "YES"
  28. !if "$(WIN32)" == "YES"
  29. CFLAGS        =   /c /nologo $(cflags) $(cvarsdll) $(cdebug) /DDEBUG /Ze
  30. !if "$(THREAD)" == "YES"
  31. CFLAGS        = $(CFLAGS) -DTHREAD
  32. !endif
  33. OBJECT        =   debug32
  34. !else # $(WIN32) != YES
  35. CFLAGS        =   /c /nologo /AL /GA /DDEBUG /Od /W3 /Zipe /Fr
  36. LFLAGS        =   /NOLOGO /NOD /CO
  37. OBJECT        =   debug16
  38. !endif # $(WIN32)
  39. RCFLAGS    =   /dDEBUG
  40. !else # $(DEBUG) != YES
  41. !if "$(WIN32)" == "YES"
  42. CFLAGS        =   /c /nologo $(cflags) $(cvarsdll) /Gs /Oxw /Ze
  43. !if "$(THREAD)" == "YES"
  44. CFLAGS        = $(CFLAGS) -DTHREAD
  45. !endif
  46. OBJECT        =   ndebug32
  47. !else # $(WIN32) != YES
  48. CFLAGS        =   /c /nologo /AL /GAs2 /Oxw /W3 /Zpe
  49. LFLAGS        =   /NOLOGO /NOD
  50. OBJECT        =   ndebug16
  51. !endif # $(WIN32)
  52. RCFLAGS =
  53. !endif # $(DEBUG)
  54.  
  55. LFLAGS  = /ALIGN:16 $(LFLAGS)
  56.  
  57. APPDEP      =        headers.h                \
  58.                 codbc.h                    \
  59.                 codbc.inl                \
  60.                 $(ODBCINC)\odbcinst.h    \
  61.                 $(ODBCINC)\sql.h        \
  62.                 $(ODBCINC)\sqlext.h        \
  63.                 $(ODBCINC)\ctl3d.h        \
  64.                 $(ODBCINC)\w16macro.h
  65.  
  66. APPOBJ        =    $(OBJECT)\headers.obj    \
  67.                 $(OBJECT)\$(APP).obj    \
  68.                 $(OBJECT)\frame.obj        \
  69.                 $(OBJECT)\child.obj        \
  70.                 $(OBJECT)\dialogs.obj
  71.  
  72. !if "$(WIN32)" == "YES"
  73. APPLIB        =    $(guilibsdll)    \
  74.                 ctl3d32.lib        \
  75.                 odbc32.lib        \
  76.                 odbccp32.lib
  77. !else # $(WIN32) != YES
  78. APPLIB        =    llibcew        \
  79.                 libw        \
  80.                 ctl3dv2        \
  81.                 odbc        \
  82.                 odbcinst
  83. !endif # $(WIN32)
  84.  
  85. APPLNK        =    $(APP).lnk
  86.  
  87.  
  88. ##########################################################################
  89. #
  90. #   Make rules
  91. #
  92. ##########################################################################
  93.  
  94. all:    setenv $(OBJECT)\$(APP).exe
  95.         
  96. setenv:
  97.         set CL=$(CFLAGS)
  98.         set INCLUDE=$(INCLUDE)
  99.         set LIB=$(LIB)
  100.  
  101. $(OBJECT)\$(APP).exe:    $(APP).def                \
  102.                         $(OBJECT)\$(APP).res    \
  103.                         $(APPOBJ)
  104. !if "$(WIN32)" == "YES"
  105.             @echo $(guiflags)            > $(APPLNK)
  106. !if "$(DEBUG)" == "YES"
  107.             @echo $(linkdebug)            >> $(APPLNK)
  108. !endif # $(DEBUG)
  109.             @echo $(OBJECT)\headers.obj    >> $(APPLNK)
  110.             @echo $(OBJECT)\$(APP).obj    >> $(APPLNK)
  111.             @echo $(OBJECT)\child.obj    >> $(APPLNK)
  112.             @echo $(OBJECT)\dialogs.obj    >> $(APPLNK)
  113.             @echo $(OBJECT)\frame.obj    >> $(APPLNK)
  114.             @echo $(OBJECT)\$(APP).res    >> $(APPLNK)
  115.             @echo /out:$@                >> $(APPLNK)
  116.             @echo /machine:$(CPU)        >> $(APPLNK)
  117.             @echo /map:$*.map            >> $(APPLNK)
  118.             @echo $(APPLIB)                >> $(APPLNK)
  119.             $(link) @$(APPLNK)
  120. #            @del $(APPLNK)
  121. !else # $(WIN32) != YES
  122.             @echo $(LFLAGS)                +    > $(APPLNK)
  123.             @echo $(OBJECT)\headers.obj    +    >> $(APPLNK)
  124.             @echo $(OBJECT)\child.obj    +    >> $(APPLNK)
  125.             @echo $(OBJECT)\dialogs.obj    +    >> $(APPLNK)
  126.             @echo $(OBJECT)\frame.obj    +    >> $(APPLNK)
  127.             @echo $(OBJECT)\$(APP).obj        >> $(APPLNK)
  128.             @echo $@                        >> $(APPLNK)
  129.             @echo $*.map                    >> $(APPLNK)
  130.             @echo $(APPLIB)                    >> $(APPLNK)
  131.             @echo $(APP).def;                >> $(APPLNK)
  132.             link @$(APPLNK)
  133. #            @del $(APPLNK)
  134.             rc $(OBJECT)\$(APP).res $@
  135. !endif # $(DEBUG)
  136.  
  137. $(OBJECT)\$(APP).res:       $(APP).rc resource.h
  138. !if "$(WIN32)" == "YES"
  139.             rc $(RCFLAGS) -r -DWIN32 -Fo $(APP).tmp $(APP).rc
  140.             cvtres -$(CPU) $(APP).tmp -o $@
  141.             del $(APP).tmp
  142. !else # $(WIN32) != YES
  143.             rc $(RCFLAGS) /r /fo$@ $(APP).rc
  144. !endif # $(WIN32)
  145.  
  146. clean:
  147.     -@del $(OBJECT)\*.obj
  148.     -@del $(OBJECT)\*.pch
  149.     -@del $(OBJECT)\*.res
  150.     -@del $(OBJECT)\*.exe
  151.     -@del $(OBJECT)\*.dll
  152.     -@del $(OBJECT)\*.map
  153.     -@del $(OBJECT)\*.sbr
  154.  
  155. ##########################################################################
  156. #
  157. # Dependencies
  158. #
  159. ##########################################################################
  160.  
  161. $(OBJECT)\headers.obj    : headers.c  headers.h ..\..\include\sql.h ..\..\include\sqlext.h ..\..\include\odbcinst.h
  162.     $(cc) /Ycheaders.h /Fp$(OBJECT)\headers.pch /Fo$*.obj $(@B).c
  163. $(OBJECT)\child.obj    : child.c    $(OBJECT)\headers.obj resource.h $(APP).h
  164.     $(cc) /Ycheaders.h /Fp$(OBJECT)\headers.pch /Fo$*.obj $(@B).c
  165. $(OBJECT)\dialogs.obj    : dialogs.c    $(OBJECT)\headers.obj resource.h $(APP).h
  166.     $(cc) /Ycheaders.h /Fp$(OBJECT)\headers.pch /Fo$*.obj $(@B).c
  167. $(OBJECT)\frame.obj    : frame.c    $(OBJECT)\headers.obj resource.h $(APP).h
  168.     $(cc) /Ycheaders.h /Fp$(OBJECT)\headers.pch /Fo$*.obj $(@B).c
  169. $(OBJECT)\$(APP).obj    : $(APP).c    $(OBJECT)\headers.obj resource.h $(APP).h
  170.     $(cc) /Ycheaders.h /Fp$(OBJECT)\headers.pch /Fo$*.obj $(@B).c
  171.