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.

109 lines
2.4 KiB

  1. # KillWOW makefile
  2. #
  3. # Copyright (c) 1991, Microsoft Corporation
  4. #
  5. # History:
  6. # 26-Jan-1991 Matt Felton (mattfe)
  7. # 21-Mar-1992 Matt Felton Code from win 3.1 progman
  8. # Created.
  9. #
  10. !INCLUDE ..\makefile.inc
  11. AOBJ = -W2 -DSEGNAME=COMMAND $(INCS)
  12. !if !$(FREEBUILD)
  13. COBJ = -AS -G2s -Os -W2 -Zp -DDEBUG
  14. !IF "$(OLD_WOW_BUILD)" != ""
  15. CW16 = -AS -G2sw -Os -W2 -Zp -DDEBUG -DOLD_WOW_BUILD
  16. !ELSE
  17. CW16 = -AS -G2sw -Os -W2 -Zp -DDEBUG
  18. !ENDIF
  19. !else
  20. COBJ = -AS -G2s -Os -W2 -Zp
  21. !IF "$(OLD_WOW_BUILD)" != ""
  22. CW16 = -AS -G2sw -Os -W2 -Zp -DOLD_WOW_BUILD
  23. !ELSE
  24. CW16 = -AS -G2sw -Os -W2 -Zp
  25. !ENDIF
  26. !endif
  27. CW16L = $(CW16) -B1 c1l.exe -B2 c2l.exe -B3 c3l.exe
  28. LINKOPTS = /map /stack:8192 /align:16
  29. !if !$(FREEBUILD)
  30. AOBJ = $(AOBJ) -Zd
  31. CW16 = $(CW16) /Od /Oi /Zd
  32. LINK = $(LINK) /LI
  33. !endif
  34. W16LIBS = ..\lib\snocrt.lib ..\lib\$(ALT_PROJECT)\libw.lib
  35. .h.inc:
  36. h2inc -t $*.h -o $*.inc
  37. .asm{$(DEST)}.obj:
  38. $(ASM) $(AOBJ) $*;
  39. .asm{$(DEST)}.lst:
  40. $(ASM) $(AOBJ) -l $*,nul,$*.lst;
  41. .c{$(DEST)}.obj:
  42. @set include=$(ENVINCS);$(INCLUDES)
  43. $(CL) -c -nologo $(CW16) -Fo$* $(*F).c
  44. .c{$(DEST)}.lst:
  45. @set include=$(ENVINCS);$(INCLUDES)
  46. $(CL) -c -nologo $(CW16) -Fonul -Fc$*.lst $(*F).c
  47. .def.lib:
  48. implib $*.lib $*.def
  49. .rc{$(DEST)}.res:
  50. @set include=$(ENVINCS);$(INCLUDE)
  51. $(RC) -r -fo $@ $(*F).rc
  52. all: $(DEST)\KillWOW.exe $(DEST)\KillWOW.sym
  53. -binplace -o $(ALT_PROJECT_TARGET) $(DEST)\killwow.exe $(DEST)\killwow.sym
  54. clean: cleanup all
  55. cleanup:
  56. cd $(DEST)
  57. if exist *.lrf del *.lrf
  58. if exist *.def del *.def
  59. if exist *.obj del *.obj
  60. if exist *.exe del *.exe
  61. if exist *.map del *.map
  62. if exist *.sym del *.sym
  63. if exist *.res del *.res
  64. cd ..\..\..
  65. $(DEST)\KillWOW.lrf: makefile.sub
  66. echo $(DEST)\killwow.obj >$@
  67. echo $(DEST)\KillWOW $(LINKOPTS)>>$@
  68. echo $(DEST)\KillWOW>>$@
  69. echo $(W16LIBS) /nod>>$@
  70. echo $(DEST)\KillWOW;>>$@
  71. $(DEST)\KillWOW.def: makefile.sub
  72. echo name KillWOW>$@
  73. echo exetype windows>>$@
  74. echo stub '..\bin\winstub.exe'>>$@
  75. echo code preload moveable discardable>>$@
  76. echo data preload moveable multiple>>$@
  77. echo heapsize 4096>>$@
  78. echo imports>>$@
  79. echo WOWQUERYDEBUG = KERNEL.512>>$@
  80. $(DEST)\KillWOW.res: $(*F).rc $(*F).rcv ..\inc\common.ver
  81. $(DEST)\KillWOW.exe: $(DEST)\KillWOW.obj $(DEST)\KillWOW.lrf $(DEST)\KillWOW.def $(DEST)\KillWOW.res
  82. $(LINK) @$(DEST)\KillWOW.lrf;
  83. $(RC) -t $(DEST)\KillWOW.res $(DEST)\KillWOW.exe