home *** CD-ROM | disk | FTP | other *** search
/ Sams Cobol 24 Hours / Sams_Cobol_24_Hours.iso / Cobol32 / PowerGEM / Powergem.z / MAKE3202.MAK < prev    next >
Text File  |  1995-09-28  |  2KB  |  80 lines

  1. # Sample Makefile for Dynamic link structure(32-bit)
  2.  
  3. # Dynamic link structure(32-bit)
  4. EXETYPE = 12
  5.  
  6. # Suffixes List
  7. SUFFIXES = .mak .exe .lib .dll .obj .def .cob .cbl  
  8. .SUFFIXES : $(SUFFIXES)
  9.  
  10. # Makefile Name
  11. MAKEFILE = make3202.mak
  12.  
  13. # Target File Name
  14. PROGRAM = prg.exe
  15.  
  16. # Dynamic Link Library
  17. SUB_PROGRAM = sub1.dll sub2.dll
  18.  
  19. # Command Name
  20. COMP = COBOL32.EXE
  21. LD = LINK.EXE
  22. IMPLIB = LIB.EXE
  23.  
  24. # Source File Name
  25. SRCS = sub1.cob sub2.cob
  26. OBJS = sub1.obj sub2.obj
  27.  
  28. # Dependency File Name
  29. INCS = prg.def sub1.def sub2.def
  30.  
  31. # Link Library Name
  32. LIBS = F3BICIMP.LIB LIBC.LIB KERNEL32.LIB USER32.LIB
  33.  
  34. # Import Library of Dynamic Link Library
  35. MAKELIBS = sub1.lib sub2.lib
  36.  
  37. # Main Source Program Name
  38. MAINSRC = prg.cob
  39. MAINOBJ = prg.obj
  40.  
  41. # COBOL Compiler Options
  42. COMPFLAGS =
  43. # Link Options
  44. LDFLAGS = /NODEFAULTLIB
  45.  
  46. # Making Rule
  47. .cob.obj:
  48.     $(COMP) $(COMPFLAGS) $*.cob
  49.  
  50. .cbl.obj:
  51.     $(COMP) $(COMPFLAGS) $*.cbl
  52.  
  53. .obj.exe:
  54.     $(LD) $(LDFLAGS) $*.obj $(LIBS) /OUT:$*.exe
  55.  
  56. .obj.dll:
  57.     $(IMPLIB) /DEF:$*.def /OUT:$*.lib /MACHINE:ix86 $*.obj
  58.     $(LD) /DLL /ENTRY:_DllMainCRTStartup@12 $(LDFLAGS) $*.obj $*.exp $(LIBS) /OUT:$*.dll
  59.  
  60. .cob.dll:
  61.     $(COMP) $(COMPFLAGS) $*.cob
  62.     $(IMPLIB) /DEF:$*.def /OUT:$*.lib /MACHINE:ix86 $*.obj
  63.     $(LD) /DLL /ENTRY:_DllMainCRTStartup@12 $(LDFLAGS) $*.obj $*.exp $(LIBS) /OUT:$*.dll
  64.  
  65. .cbl.dll:
  66.     $(COMP) $(COMPFLAGS) $*.cbl
  67.     $(IMPLIB) /DEF:$*.def /OUT:$*.lib /MACHINE:ix86 $*.obj
  68.     $(LD) /DLL /ENTRY:_DllMainCRTStartup@12 $(LDFLAGS) $*.obj $*.exp $(LIBS) /OUT:$*.dll
  69.  
  70. .def.lib:
  71.     $(IMPLIB) /DEF:$*.def /OUT:$*.lib /MACHINE:ix86 $*.obj
  72.  
  73. # Dependents Relationship
  74. all : $(SUB_PROGRAM) $(PROGRAM)
  75. $(MAINOBJ) : $(MAINSRC) $(INCS) $(MAKEFILE)
  76.     $(COMP) -M $(COMPFLAGS) $(MAINSRC)
  77. $(OBJS) : $(INCS) $(MAKEFILE)
  78. $(PROGRAM) : $(MAINOBJ) $(MAKEFILE)
  79.     $(LD) $(LDFLAGS) $(MAINOBJ) $(LIBS) $(MAKELIBS) /OUT:$(PROGRAM)
  80.