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.

102 lines
2.3 KiB

  1. BASE =avicap
  2. NAME =$(BASE)32
  3. EXT =dll
  4. ROOT =..\..\..
  5. OBJS =$(BASE)f.obj capinit.obj capavi.obj capdib.obj cappal.obj \
  6. capmisc.obj capwin.obj capmci.obj capframe.obj \
  7. capfile.obj dibmap.obj iaverage.obj capio.obj
  8. LIBS =kernel32.lib \
  9. user32.lib \
  10. gdi32.lib \
  11. winmm.lib \
  12. msvfw32.lib \
  13. msvcrt.lib
  14. GOALS =$(PBIN)\$(NAME).$(EXT) $(PBIN)\$(NAME).sym $(PLIB)\$(NAME).lib $(PINC)\$(BASE)f.asm $(PINC)\$(BASE).h
  15. !if "$(DEBUG)" == "retail"
  16. DEF =
  17. TDEBUG =
  18. ADEBUG =
  19. L32DEBUG=-debug:none
  20. CDEBUG =$(DEF) -DCHICAGO
  21. RDEBUG = -DCHICAGO
  22. !else
  23. !if "$(DEBUG)" == "debug"
  24. DEF =-DDEBUG_RETAIL
  25. TDEBUG =
  26. ADEBUG =
  27. L32DEBUG=-debug:none
  28. CDEBUG =$(DEF) -DCHICAGO
  29. RDEBUG = -DCHICAGO
  30. !else
  31. DEF =-DDEBUG
  32. TDEBUG =
  33. #ADEBUG =-Zi $(DEF)
  34. ADEBUG =
  35. L32DEBUG=-debug:full -debugtype:cv
  36. CDEBUG =$(DEF) -DCHICAGO
  37. RDEBUG = -DCHICAGO
  38. !endif
  39. !endif
  40. CFLAGS =-Oxs -W3 -D_X86_ $(CDEBUG) -I$(PVER) -Fo$@
  41. AFLAGS =-Zp4 -DSTD_CALL -DBLD_COFF -coff $(ADEBUG)
  42. L32FLAGS=$(L32DEBUG)
  43. RCFLAGS =$(RDEBUG)
  44. IS_32 =TRUE
  45. IS_OEM =TRUE
  46. WANT_MASM61=TRUE
  47. !include $(ROOT)\build\project.mk
  48. capinit.obj : ..\..\$$(@B).c
  49. capavi.obj : ..\..\$$(@B).c ..\..\mmtimers.h
  50. capdib.obj : ..\..\$$(@B).c
  51. cappal.obj : ..\..\$$(@B).c
  52. capmisc.obj : ..\..\$$(@B).c
  53. capwin.obj : ..\..\$$(@B).c
  54. capmci.obj : ..\..\$$(@B).c
  55. capframe.obj: ..\..\$$(@B).c
  56. capfile.obj : ..\..\$$(@B).c
  57. capio.obj : ..\..\$$(@B).c
  58. dibmap.obj : ..\..\$$(@B).c
  59. iaverage.obj: ..\..\$$(@B).c
  60. $(BASE)f.asm: $$(@B).thk
  61. @thunk $(TDEBUG) -P2 -NC $(BASE) -t $(BASE)f $(@B).thk -o $@
  62. $(BASE)f.thk: ..\..\$$(@B).pre
  63. @$(CL) -nologo $(CDEBUG) /E ..\..\$(@B).pre >$(@B).thk
  64. $(BASE)f.obj: $$(@R).asm ..\..\$$(@B).inc
  65. @$(ASM) $(AFLAGS) -I..\.. /Fo$@ $(@B).asm
  66. $(PINC)\$(BASE)f.asm: $$(@F)
  67. @copy %s $@
  68. $(NAME).res: ..\..\$$(@B).rc ..\..\$$(@B).rcv \
  69. $(PVER)\verinfo.h $(PVER)\verinfo.ver ..\..\$(BASE)i.h
  70. @$(RC) $(RCFLAGS) -fo$@ -I$(PVER) -I..\.. ..\..\$(@B).rc
  71. $(NAME).map $(NAME).lib: $(@B).$(EXT)
  72. $(NAME).$(EXT): \
  73. $(OBJS) $(NAME).res ..\..\$$(@B).def $(PINC)\coffbase.txt
  74. @$(LINK32) $(L32FLAGS) @<<
  75. -base:@$(PINC)\coffbase.txt,$(NAME)
  76. -merge:.rdata=.text
  77. -merge:.bss=.data
  78. -out:$(@B).$(EXT)
  79. -map:$(@B).map
  80. -dll
  81. -machine:$(OS)
  82. -subsystem:windows,4.0
  83. -entry:_DllMainCRTStartup@12
  84. -implib:$(@B).lib
  85. -def:..\..\$(NAME).def
  86. $(@B).res
  87. $(LIBS)
  88. $(OBJS)
  89. <<