Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

115 lines
3.1 KiB

  1. #
  2. # Makefile for AVIFile
  3. #
  4. # This makefile requires the Win32 SDK on your path/inc/lib
  5. #
  6. !ifndef LANG
  7. LANG=usa
  8. !endif
  9. NAME = avifile
  10. DEFFILE = avifile.d32
  11. ROOT = ..
  12. LRES = res\$(LANG)
  13. LOBJ = $(CPU)\$(LANG)
  14. PBIN = $(ROOT)\bin
  15. PLIB = $(ROOT)\lib
  16. PINC = $(ROOT)\inc
  17. PVER = $(ROOT)\verinfo\$(LANG)
  18. INC = -I. -I..\sdk.vfw\inc -I\mstools\ole20\h -I..\mo\inc -I$(LRES)
  19. DEF = -D__RPC_H__ -D_INC_OLE
  20. LIBS = advapi32.lib winmm.lib ..\lib\compob32.lib ..\lib\msvfw32.lib
  21. OBJ1 =$(LOBJ)\avilib.obj $(LOBJ)\avilibcf.obj $(LOBJ)\classobj.obj $(LOBJ)\device.obj $(LOBJ)\avifile.obj $(LOBJ)\extra.obj $(LOBJ)\avirle.obj
  22. OBJ2 =$(LOBJ)\avisave.obj $(LOBJ)\aviopts.obj $(LOBJ)\avicmprs.obj $(LOBJ)\avifps.obj $(LOBJ)\avimem.obj
  23. OBJ3 =$(LOBJ)\buffer.obj $(LOBJ)\fakefile.obj $(LOBJ)\unmarsh.obj $(LOBJ)\afclip.obj $(LOBJ)\enumfetc.obj $(LOBJ)\editstrm.obj
  24. OBJ4 =$(LOBJ)\getframe.obj
  25. OBJS = $(OBJ1) $(OBJ2) $(OBJ3) $(OBJ4) $(OBJ5) $(OBJ6)
  26. !include <ntwin32.mak>
  27. .SUFFIXES: .cpp
  28. !ifndef NODEBUG
  29. cdebug = $(cdebug) -DDEBUG -Fc
  30. !endif
  31. cflags = $(cflags) $(INC) $(DEF)
  32. .c.obj:
  33. $(cc) $(cdebug) $(cflags) $(cvars) -Oxwt $*.c
  34. {$(LRES)}.rc{$(LOBJ)}.rbj:
  35. $(rc) $(INC) $(rcvars) -fo $(@R).res $(LRES)\$(@B).rc
  36. cvtres -$(CPU) $(@R).res -o $(@R).rbj
  37. {}.c{$(LOBJ)}.obj:
  38. $(cc) $(cdebug) $(cflags) $(cvars) -Oxwt $(@B).c -Fo$@
  39. {}.cpp{$(LOBJ)}.obj:
  40. $(cc) $(cdebug) $(cflags) $(cvars) -Oxwt $(@B).cpp -Fo$@
  41. goal: $(NAME).dll copy
  42. $(NAME).dll: $(OBJS) $(DEFFILE) $(LOBJ)\$(NAME).rbj $(NAME).exp
  43. $(link) $(linkdebug) \
  44. -align:4096 \
  45. -dll \
  46. -entry:DLLEntryPoint$(DLLENTRY) \
  47. -out:$(NAME).dll \
  48. $(NAME).exp \
  49. $(LOBJ)\$(NAME).rbj \
  50. $(OBJS) \
  51. $(LIBS) \
  52. $(guilibsdll)
  53. $(NAME).lib $(NAME).exp: $(OBJS) $(DEFFILE)
  54. $(implib) -machine:$(CPU) \
  55. -out:$(NAME).lib \
  56. -def:$(DEFFILE) \
  57. !IF "$(CPU)" == "i386"
  58. $(OBJS)
  59. !ENDIF
  60. copy:
  61. copy $(NAME).dll $(PBIN)
  62. copy $(NAME).lib $(PLIB)
  63. copy $(NAME).h $(PINC)
  64. #
  65. # file depends
  66. #
  67. $(LOBJ)\classobj.obj: $$(@B).cpp $(NAME).h
  68. $(LOBJ)\avilib.obj: $$(@B).cpp $(NAME).h avireg.h
  69. $(LOBJ)\avilibcf.obj: $$(@B).cpp $(NAME).h
  70. $(LOBJ)\device.obj: $$(@B).cpp $(NAME).h
  71. $(LOBJ)\avifile.obj: $$(@B).cpp $(NAME).h
  72. $(LOBJ)\extra.obj: $$(@B).cpp $(NAME).h
  73. $(LOBJ)\avirle.obj: $$(@B).c $(NAME).h
  74. $(LOBJ)\avisave.obj: $$(@B).c $(NAME).h
  75. $(LOBJ)\aviopts.obj: $$(@B).c $(NAME).h
  76. $(LOBJ)\avicmprs.obj: $$(@B).cpp $(NAME).h
  77. $(LOBJ)\avifps.obj: $$(@B).cpp $(NAME).h
  78. $(LOBJ)\buffer.obj: $$(@B).c $(NAME).h
  79. $(LOBJ)\fakefile.obj: $$(@B).cpp $(NAME).h
  80. $(LOBJ)\unmarsh.obj: $$(@B).cpp $(NAME).h
  81. $(LOBJ)\avimem.obj: $$(@B).cpp $(NAME).h
  82. clean:
  83. echo y | del $(LOBJ)\*.*
  84. del $(NAME).exe
  85. del $(NAME).dll
  86. del $(NAME).cpl
  87. del *.exe
  88. del *.rbj
  89. del *.res
  90. del *.obj
  91. del *.map
  92. del *.sym
  93. del *.cod
  94. del *.pdb
  95. del *.lib
  96. del *.exp