Source code of Windows XP (NT5)
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.

151 lines
3.3 KiB

  1. BASE =msvideo
  2. !if "$(WIN32)" == "TRUE"
  3. NAME =msvfw32
  4. !else
  5. NAME =$(BASE)
  6. !endif
  7. EXT =dll
  8. ROOT =..\..\..
  9. OBJ1 =video.obj init.obj debug.obj
  10. !if "$(WIN32)" == "TRUE"
  11. OBJS =$(OBJ1) profile.obj
  12. LIBS =kernel32.lib user32.lib crtdll.lib gdi32.lib comctl32.lib shell32.lib comdlg32.lib advapi32.lib winmmi.lib mpr.lib dciman32.lib version.lib
  13. !else
  14. OBJS =libentry.obj dpmipage.obj $(OBJ1)
  15. LIBS =libw mdllcew mmsystem shell commctrl dciman ver
  16. !endif
  17. LIBS =$(LIBS) compman.lib drawdib.lib mciwnd.lib
  18. GOALS =$(PBIN)\$(NAME).$(EXT) $(PBIN)\$(NAME).sym $(PLIB)\$(NAME).lib $(PINC)\$(BASE).h $(PINC)\msviddrv.h
  19. !if "$(DEBUG)" == "retail"
  20. DEF =
  21. CDEBUG =$(DEF)
  22. L16DEBUG=
  23. L32DEBUG=-debug:none
  24. RDEBUG =
  25. ADEBUG =
  26. !else
  27. !if "$(DEBUG)" == "debug"
  28. DEF =-DDEBUG_RETAIL
  29. CDEBUG =$(DEF)
  30. L16DEBUG=/LI
  31. L32DEBUG=-debug:none
  32. RDEBUG =-v $(DEF)
  33. ADEBUG =$(DEF)
  34. !else
  35. DEF =-DDEBUG
  36. CDEBUG =$(DEF)
  37. L16DEBUG=/CO/LI
  38. L32DEBUG=-debug:full -debugtype:cv
  39. RDEBUG =-v $(DEF)
  40. ADEBUG =-Zi $(DEF)
  41. !endif
  42. !endif
  43. !if "$(WIN32)" == "TRUE"
  44. CFLAGS =-Oxs -D_X86_ $(CDEBUG) -I$(PVER) -Fo$@
  45. IS_32 =TRUE
  46. WANT_C932=TRUE
  47. LB =lib # Don't want c816 lib
  48. RCFLAGS =$(RDEBUG)
  49. !else
  50. CFLAGS =-Fc -Oxwt -Alnw -DBUILDDLL -D_WINDLL -DWIN16 $(CDEBUG) -I$(PVER) -Fo$@
  51. AFLAGS =-D?MEDIUM -D?QUIET $(ADEBUG)
  52. L16FLAGS=/AL:16/ONERROR:NOEXE$(L16DEBUG)
  53. RCFLAGS =-z $(RDEBUG)
  54. IS_16 =TRUE
  55. !endif
  56. IS_OEM =TRUE
  57. !include $(ROOT)\build\project.mk
  58. !if "$(WIN32)" != "TRUE"
  59. INCLUDE =$(INCLUDE);$(DEVROOT)\ddk\inc
  60. libentry.obj: ..\..\$$(@B).asm
  61. $(ASM) $(AFLAGS) -DSEGNAME=INIT ..\..\$(@B),$@;
  62. dpmipage.obj: ..\..\$$(@B).asm
  63. $(ASM) $(AFLAGS) -DSEGNAME=$(BASE) ..\..\$(@B),$@;
  64. !endif
  65. init.obj: ..\..\$$(@B).c ..\..\$(BASE).h ..\..\msviddrv.h ..\..\$(BASE)i.h ..\..\debug.h $(PVER)\verinfo.h ..\..\profile.h
  66. !if "$(WIN32)" != "TRUE"
  67. $(CL) @<<
  68. $(CFLAGS) -NT INIT
  69. ..\..\$(@B).c
  70. <<
  71. !endif
  72. video.obj: ..\..\$$(@B).c ..\..\$(BASE).h ..\..\msviddrv.h ..\..\$(BASE)i.h ..\..\profile.h ..\..\debug.h
  73. !if "$(WIN32)" != "TRUE"
  74. $(CL) @<<
  75. $(CFLAGS) -NT $(BASE)
  76. ..\..\$(@B).c
  77. <<
  78. !endif
  79. profile.obj: ..\..\$$(@B).c ..\..\$(BASE).h ..\..\profile.h
  80. !if "$(WIN32)" != "TRUE"
  81. $(CL) @<<
  82. $(CFLAGS) -NT $(BASE)
  83. ..\..\$(@B).c
  84. <<
  85. !endif
  86. debug.obj: ..\..\$$(@B).c ..\..\debug.h
  87. !if "$(WIN32)" != "TRUE"
  88. $(CL) @<<
  89. $(CFLAGS) -NT $(BASE)
  90. ..\..\$(@B).c
  91. <<
  92. !endif
  93. $(BASE).res: \
  94. ..\..\$$(@B).rc \
  95. ..\..\$$(@B).rcv \
  96. ..\..\$(BASE).h \
  97. $(PVER)\verinfo.h \
  98. $(PVER)\verinfo.ver \
  99. $(PINC)\icm.rc
  100. $(RC) $(RCFLAGS) -fo$@ -I$(PVER) -I..\.. ..\..\$(@B).rc
  101. !if "$(WIN32)" == "TRUE"
  102. $(NAME).lib $(NAME).$(EXT) $(NAME).map: \
  103. $(OBJS) $(BASE).res ..\..\$(NAME)c.def \
  104. $(PLIB)\compman.lib \
  105. $(PLIB)\drawdib.lib \
  106. $(PLIB)\mciwnd.lib \
  107. $(PLIB)\dciman32.lib $(PINC)\coffbase.txt
  108. $(LINK32) $(L32FLAGS) $(L32DEBUG) @<<
  109. -out:$(@B).$(EXT)
  110. -machine:$(OS)
  111. -subsystem:windows,4.0
  112. -base:@$(PINC)\coffbase.txt,$(NAME)
  113. -map:$(@B).map
  114. -def:..\..\$(NAME)c.def
  115. -dll
  116. -entry:DLLEntryPoint@12
  117. -implib:$(@B).lib
  118. $(BASE).res
  119. $(OBJS)
  120. $(LIBS)
  121. <<
  122. !else
  123. $(NAME).$(EXT) $(NAME).map: \
  124. $(OBJS) ..\..\$$(@B)c.def $(BASE).res \
  125. $(PLIB)\compman.lib \
  126. $(PLIB)\drawdib.lib \
  127. $(PLIB)\mciwnd.lib \
  128. $(PLIB)\dciman.lib
  129. $(LINK16) $(L16FLAGS) @<<
  130. $(OBJS),
  131. $(@B).$(EXT),
  132. $(@B).map,
  133. $(LIBS),
  134. ..\..\$(@B)c.def
  135. <<
  136. $(RC) $(RESFLAGS) $(BASE).res $*.$(EXT)
  137. !endif