home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / VSCPPv8.zip / VACPP / IBMCPP / samples / VISBUILD / RAPSHEET / CPPOV23 / CPPOV23.MAK < prev    next >
Makefile  |  1995-05-25  |  9KB  |  214 lines

  1. ######################################
  2. # Make file (cppov23.MAK) to build a C++ DLL for the
  3. # sample Police Rap Sheet application.
  4. ##########################################################
  5.  
  6. ##############################################################################
  7. ## COPYRIGHT: Copyright (C) International Business Machines Corp., 1994,1995 *
  8. ##                                                                           *
  9. ## DISCLAIMER OF WARRANTIES:                                                 *
  10. ##   The following [enclosed] code is sample code created by IBM             *
  11. ##   Corporation.  This sample code is not part of any standard IBM product  *
  12. ##   and is provided to you solely for the purpose of assisting you in the   *
  13. ##   development of your applications.  The code is provided "AS IS",        *
  14. ##   without warranty of any kind.  IBM shall not be liable for any damages  *
  15. ##   arising out of your use of the sample code, even if they have been      *
  16. ##   advised of the possibility of such damages.                             *
  17. ##############################################################################
  18. ##NOTE: WE RECOMMEND USING A FIXED-SPACE FONT TO LOOK AT THE SOURCE.
  19. ##
  20.  
  21.  
  22. ##########################################################
  23. # Define variables for makefile
  24. ##########################################################
  25. GCPPFLAGS=/Ge- /Gd+ /Gm+ /Gn+ /Td /Ftcppov23 /I. -DIC_TRACE_DEVELOP
  26.  
  27. ##########################################################
  28. # Definitions for GCPPFLAGS (compile options):
  29. ##########################################################
  30. # /c   = perform compile only
  31. # /Ge- = create a DLL (/Ge+ to create an EXE)
  32. # /Ti+ = generate debugger information
  33. # /Gd+ = dynamically link runtime functions
  34. # /Gm+ = multi-thread capability
  35. # /Gn+ = not providing linker info about default libraries
  36. #        (in object).  All libraries must be explicitly
  37. #        specified at link time
  38. # /Tdp = consider all files to be C++ files
  39. # /Ft  = generate files for template resolution and put
  40. #        them in the specified directory
  41. # /I   = control which paths are searched when the
  42. #        compiler looks for user #include files.  These 
  43. #        paths are searched before those given in the 
  44. #        INCLUDE environment variable.  The format is:
  45. #             I  path[;path][;path]...
  46. ##########################################################
  47.  
  48. all:          main
  49.  
  50. main:         cppovo23.dll
  51.  
  52. ##########################################################
  53. # List of dependency files for the DLL.
  54. # NOTE:  the compilation order is determined by the
  55. #        dependency order.
  56. ##########################################################
  57. cppovo23.dll: cppov23.def \
  58.               querydb.obj \
  59.               dbquery.obj \
  60.               irsltrec.obj \
  61.               iaddrrec.obj \
  62.               ialsrec.obj \
  63.               iarstrec.obj \
  64.               ilsrec.obj \
  65.               isusrec.obj \
  66.               ialias.obj \
  67.               iarrest.obj \
  68.               ilstseen.obj \
  69.               iperson.obj \
  70.               isuspect.obj \
  71.               ialsrmgr.obj \
  72.               iarsrmgr.obj \
  73.               iadrrmgr.obj \
  74.               ilsrmgr.obj \
  75.               isusrmgr.obj 
  76. ##########################################################
  77. # When any of the DLL dependency files change, invoke the
  78. # linker to rebuild the DLL.
  79. ##########################################################
  80. # NOTE:  Dave said that the template code doesn't get compiled until
  81. #        the link, so need to include the /Gm+ and /Gn+ options on the
  82. #        link as well as the compile (otherwise, got link errors).
  83. ##########################################################
  84.               icc $(GCPPFLAGS) /Tdp /B"/NOE /NOI /MAP /DEBUG /NOP" \
  85. ##########################################################
  86. # List of .OBJ files
  87. ##########################################################
  88.                 querydb.obj \
  89.                 dbquery.obj \
  90.                 irsltrec.obj \
  91.                 iaddrrec.obj \
  92.                 ialsrec.obj \
  93.                 iarstrec.obj \
  94.                 ilsrec.obj \
  95.                 isusrec.obj \
  96.                 ialias.obj \
  97.                 iarrest.obj \
  98.                 ilstseen.obj \
  99.                 iperson.obj \
  100.                 isuspect.obj \
  101.                 ialsrmgr.obj \
  102.                 iarsrmgr.obj \
  103.                 iadrrmgr.obj \
  104.                 ilsrmgr.obj \
  105.                 isusrmgr.obj \
  106. ##########################################################
  107. # Name of the DLL being built and the MAP file to be 
  108. # created by the linker.
  109. ##########################################################
  110.                 /Fecppov23.dll /Fmcppov23.map \
  111. ##########################################################
  112. # List of standard or import libraries (not DLLs) to search
  113. ##########################################################
  114. # os2386   = for DOS and PM resolutions
  115. # cppom30i = compiler lib    
  116. # cppooc3i = open class lib
  117. # cppov03i = sample lib
  118. ##########################################################
  119.                 os2386.lib cppom30i.lib cppooc3i.lib cppov03i.lib sql_dyn.lib \
  120. ##########################################################
  121. # The module definition file (.DEF) for the DLL
  122. ##########################################################
  123.                 cppov23.def
  124.  
  125. ##########################################################
  126. # Generate an import library (.LIB) to allow DLLs to be 
  127. # linked with applications.  The DEF file is used as input.
  128. ##########################################################
  129.               implib cppov23i.lib cppov23.dll
  130.  
  131. ##########################################################
  132. # Bind the SQL code to the RAP database.
  133. ##########################################################
  134. bind:         dbquery.bnd
  135.  
  136.  
  137.  
  138. ##########################################################
  139. # Statements to pre-compile SQL code and bind it to the database
  140. ##########################################################
  141. dbquery.c:    dbquery.sqc dbquery.h rap.h
  142.               startdbm
  143.               sqlprep dbquery.sqc RAP /b
  144.               sqlbind dbquery.bnd RAP
  145.  
  146. ##########################################################
  147. # Statements to compile each non-visual C/C++ file for the Rap
  148. ##########################################################
  149. querydb.obj:  querydb.cpp  querydb.hpp irsltrec.hpp isusrec.hpp dbquery.h rap.h
  150.               icc -c $(GCPPFLAGS) querydb.cpp
  151.  
  152. dbquery.obj:  dbquery.c  rap.h dbquery.h
  153.               icc -c $(GCPPFLAGS) dbquery.c
  154.  
  155. irsltrec.obj: irsltrec.cpp  irsltrec.hpp
  156.               icc -c $(GCPPFLAGS) irsltrec.cpp
  157.  
  158. isusrec.obj:  isusrec.cpp  isusrec.hpp
  159.               icc -c $(GCPPFLAGS) isusrec.cpp
  160.  
  161. iaddrrec.obj: iaddrrec.cpp  iaddrrec.hpp
  162.               icc -c $(GCPPFLAGS) iaddrrec.cpp
  163.  
  164. ialsrec.obj:  ialsrec.cpp  ialsrec.hpp
  165.               icc -c $(GCPPFLAGS) ialsrec.cpp
  166.  
  167. iarstrec.obj: iarstrec.cpp  iarstrec.hpp
  168.               icc -c $(GCPPFLAGS) iarstrec.cpp
  169.  
  170. ilsrec.obj:   ilsrec.cpp  ilsrec.hpp
  171.               icc -c $(GCPPFLAGS) ilsrec.cpp
  172.  
  173. ialias.obj:   ialias.cpp {$(INCLUDE)}ialias.hpp
  174.               icc -c $(GCPPFLAGS) ialias.cpp
  175.  
  176. iarrest.obj:  iarrest.cpp {$(INCLUDE)}iarrest.hpp {$(INCLUDE)}rap.h
  177.               icc -c $(GCPPFLAGS) iarrest.cpp
  178.  
  179. ilstseen.obj: ilstseen.cpp {$(INCLUDE)}ilstseen.hpp {$(INCLUDE)}iadd.hpp
  180.               icc -c $(GCPPFLAGS) ilstseen.cpp
  181.  
  182. iperson.obj:  iperson.cpp {$(INCLUDE)}iperson.hpp {$(INCLUDE)}iadd.hpp \
  183.               {$(INCLUDE)}ialias.hpp {$(INCLUDE)}ivseq.h {$(INCLUDE)}rap.h
  184.               icc -c $(GCPPFLAGS) iperson.cpp
  185.  
  186. isuspect.obj: isuspect.cpp {$(INCLUDE)}isuspect.hpp {$(INCLUDE)}iarrest.hpp \
  187.               {$(INCLUDE)}ilstseen.hpp {$(INCLUDE)}ivseq.h
  188.               icc -c $(GCPPFLAGS) isuspect.cpp
  189.  
  190. ialsrmgr.obj: ialsrmgr.cpp {$(INCLUDE)}ialsrmgr.hpp {$(INCLUDE)}irsltrec.hpp \
  191.               {$(INCLUDE)}ialsrec.hpp {$(INCLUDE)}ialias.hpp {$(INCLUDE)}querydb.hpp \
  192.               {$(INCLUDE)}ivseq.h
  193.               icc -c $(GCPPFLAGS) ialsrmgr.cpp
  194.  
  195. iarsrmgr.obj: iarsrmgr.cpp {$(INCLUDE)}iarsrmgr.hpp {$(INCLUDE)}irsltrec.hpp \
  196.               {$(INCLUDE)}iarstrec.hpp {$(INCLUDE)}iarrest.hpp {$(INCLUDE)}querydb.hpp \
  197.               {$(INCLUDE)}ivseq.h
  198.               icc -c $(GCPPFLAGS) iarsrmgr.cpp
  199.  
  200. iadrrmgr.obj: iadrrmgr.cpp {$(INCLUDE)}iadrrmgr.hpp {$(INCLUDE)}irsltrec.hpp \
  201.               {$(INCLUDE)}iaddrrec.hpp {$(INCLUDE)}iadd.hpp {$(INCLUDE)}querydb.hpp \
  202.               {$(INCLUDE)}ivseq.h
  203.               icc -c $(GCPPFLAGS) iadrrmgr.cpp
  204.  
  205. ilsrmgr.obj:  ilsrmgr.cpp {$(INCLUDE)}ilsrmgr.hpp {$(INCLUDE)}irsltrec.hpp \
  206.               {$(INCLUDE)}ilsrec.hpp {$(INCLUDE)}ilstseen.hpp {$(INCLUDE)}querydb.hpp \
  207.               {$(INCLUDE)}ivseq.h
  208.               icc -c $(GCPPFLAGS) ilsrmgr.cpp
  209.  
  210. isusrmgr.obj: isusrmgr.cpp  {$(INCLUDE)}isusrmgr.hpp {$(INCLUDE)}irsltrec.hpp \
  211.               {$(INCLUDE)}isusrec.hpp {$(INCLUDE)}isuspect.hpp {$(INCLUDE)}querydb.hpp \
  212.               {$(INCLUDE)}iadd.hpp {$(INCLUDE)}ivseq.h
  213.               icc -c $(GCPPFLAGS) isusrmgr.cpp
  214.