home *** CD-ROM | disk | FTP | other *** search
/ Program Metropolis - Software Boutique 95 / SOFTWARECD.iso / visio3 / disk4 / cppexe.ma_ / cppexe.bin
Encoding:
Text File  |  1994-08-09  |  2.1 KB  |  101 lines

  1. # MAKEFILE
  2. #
  3. # Builds the Visio GENERIC add-on in EXE form.
  4. #
  5. # Usage : NMAKE [DEBUG={0|1}]
  6. #
  7. # Defaults to DEBUG=0
  8. #
  9.  
  10. # First we check if any command line parameters were passed
  11. #
  12.  
  13. !ifndef DEBUG
  14. DEBUG=0
  15. !endif
  16.  
  17. !if "$(DEBUG)" != "0"
  18. DEBUG = 1
  19. !endif
  20.  
  21. # Now we have some general defines
  22. #
  23.  
  24. PROJ = GENERIC
  25. D_RCDEFINES = -d_DEBUG
  26. R_RCDEFINES = -dNDEBUG
  27. CC = cl
  28. CPP = cl
  29. CXX = cl
  30. RC = rc
  31.  
  32. # The minimum flags are used for nondebug builds so that this MAK
  33. # can work across most compilers.  However, for debug builds, the
  34. # standard Microsoft debug flags were left.
  35. #
  36. # Note for differnt compilers, the /AM switch is required for the
  37. # Microsoft C/C++ 8.00c compiler for Medium memory model.
  38. #
  39.  
  40. CFLAGS_D_WEXE = /Zi /AM /Od /D "_DEBUG" /GA
  41. CFLAGS_R_WEXE = /AM /GA
  42. LFLAGS_D_WEXE = /NOD /PACKC:61440 /STACK:10240 /ALIGN:16 /ONERROR:NOEXE /CO  
  43. LFLAGS_R_WEXE = /NOD /PACKC:61440 /STACK:10240 /ALIGN:16 /ONERROR:NOEXE  
  44. LIBS_D_WEXE = oldnames libw mlibcew ole2 ole2disp
  45. LIBS_R_WEXE = oldnames libw mlibcew ole2 ole2disp
  46.  
  47. RCFLAGS =
  48. RESFLAGS = -t
  49. DEFFILE = EXE.DEF
  50.  
  51.  
  52. # Set the compile flags depending on whether or not we are
  53. # DEBUG/RELEASE and whether or not we are VSL/EXE.
  54. #
  55.  
  56. !if "$(DEBUG)" == "1"
  57. CFLAGS = $(CFLAGS_D_WEXE)
  58. LFLAGS = $(LFLAGS_D_WEXE)
  59. LIBS = $(LIBS_D_WEXE)
  60. MAPFILE = nul
  61. RCDEFINES = $(D_RCDEFINES)
  62. !else
  63. CFLAGS = $(CFLAGS_R_WEXE)
  64. LFLAGS = $(LFLAGS_R_WEXE)
  65. LIBS = $(LIBS_R_WEXE)
  66. MAPFILE = nul
  67. RCDEFINES = $(R_RCDEFINES)
  68. !endif
  69.  
  70. # Object dependencies
  71. #
  72.  
  73. all : $(PROJ).EXE
  74.  
  75. IVISREG.OBJ : IVISREG.CPP IVISAUTO.H IVISREG.H
  76.     $(CC) $(CFLAGS) /c IVISREG.CPP
  77.  
  78. GENERIC.OBJ : GENERIC.CPP IVISPROX.H IVISAUTO.H
  79.     $(CC) $(CFLAGS) /c GENERIC.CPP
  80.  
  81. MAIN.OBJ : MAIN.C RESOURCE.H
  82.     $(CC) $(CFLAGS) /c MAIN.C
  83.  
  84. GENERIC.RES : GENERIC.RC RESOURCE.H GENERIC.ICO
  85.     $(RC) $(RCFLAGS) $(RCDEFINES) -r GENERIC.RC
  86.     
  87. $(PROJ).EXE : MAIN.OBJ GENERIC.RES GENERIC.OBJ IVISREG.OBJ\
  88.         $(DEFFILE)
  89.     echo >NUL @<<$(PROJ).CRF
  90. GENERIC.OBJ +
  91. IVISREG.OBJ +
  92. MAIN.OBJ
  93. $(PROJ).EXE
  94. $(MAPFILE)
  95. $(LIBS)
  96. $(DEFFILE);
  97. <<
  98.     link $(LFLAGS) @$(PROJ).CRF
  99.     $(RC) $(RESFLAGS) $(PROJ).RES $@
  100.  
  101.