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.

115 lines
3.1 KiB

  1. # HELLO 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. LVL_2 = 1
  11. !INCLUDE ..\..\makefile.inc
  12. AOBJ = -W2 -DSEGNAME=COMMAND $(INCS)
  13. !if !$(FREEBUILD)
  14. COBJ = -AS -G2s -Os -W2 -Zp -DDEBUG
  15. CW16 = -AS -G2sw -Os -W2 -Zp -DDEBUG
  16. !else
  17. COBJ = -AS -G2s -Os -W2 -Zp
  18. CW16 = -AS -G2sw -Os -W2 -Zp
  19. !endif
  20. CW16L = $(CW16) -B1 c1l.exe -B2 c2l.exe -B3 c3l.exe
  21. LINKOPTS = /map /stack:8192 /align:16
  22. !if !$(FREEBUILD)
  23. AOBJ = $(AOBJ) -Zd
  24. CW16 = $(CW16) /Od /Oi /Zd
  25. LINKOPTS = $(LINKOPTS) /LI
  26. RCFLAGS = -DDEBUG
  27. !endif
  28. W16LIBS = ..\..\lib\snocrt.lib ..\..\lib\$(ALT_PROJECT)\libw.lib
  29. CW16 =$(CW16) $(DBCS_FLAGS)
  30. AOBJ =$(AOBJ) $(DBCS_FLAGS)
  31. !if "$(ALT_PROJECT)" != "USA"
  32. W16LIBS =$(W16LIBS) ..\..\lib\$(DEST)\winnls.lib
  33. !endif
  34. .h.inc:
  35. h2inc -t $*.h -o $*.inc
  36. .asm.obj:
  37. $(ASM) $(AOBJ) $*;
  38. .asm.lst:
  39. $(ASM) $(AOBJ) -l $*,nul,$*.lst;
  40. .c.obj:
  41. $(CL) -c -nologo $(CW16) $*.c
  42. .c.lst:
  43. $(CL) -c -nologo $(CW16) -Fonul -Fc$*.lst $*.c
  44. .def.lib:
  45. implib $*.lib $*.def
  46. all: $(DEST)\hello.exe $(DEST)\hello.sym
  47. binplace -o $(ALT_PROJECT_TARGET) $(DEST)\hello.exe $(DEST)\hello.map $(DEST)\hello.sym
  48. clean: cleanup all
  49. cleanup:
  50. if exist *.def del *.def
  51. cd $(DEST)
  52. if exist *.lrf del *.lrf
  53. if exist *.def del *.def
  54. if exist *.obj del *.obj
  55. if exist *.exe del *.exe
  56. if exist *.map del *.map
  57. if exist *.sym del *.sym
  58. if exist *.res del *.res
  59. cd ..\..\..
  60. $(DEST)\hello.obj:hello.c ..\..\..\inc\wowinfo.h
  61. @set include=$(ENVINCS);$(INCLUDE)
  62. $(CL) -c -nologo $(CW16) -Fo$*.obj $(*F).c
  63. $(DEST)\hello.lrf: makefile.sub
  64. echo $(DEST)\hello.obj >$(DEST)\hello.lrf
  65. echo $(DEST)\hello $(LINKOPTS)>>$(DEST)\hello.lrf
  66. echo $(DEST)\hello>>$(DEST)\hello.lrf
  67. echo $(W16LIBS) /batch /nod>>$(DEST)\hello.lrf
  68. echo $(DEST)\hello.def;>>$(DEST)\hello.lrf
  69. $(DEST)\hello.def: makefile.sub
  70. echo name hello >$(DEST)\hello.def
  71. echo exetype windows >>$(DEST)\hello.def
  72. echo stub '..\..\bin\winstub.exe' >>$(DEST)\hello.def
  73. echo code preload moveable discardable >>$(DEST)\hello.def
  74. echo data preload moveable multiple >>$(DEST)\hello.def
  75. echo heapsize 512 >>$(DEST)\hello.def
  76. echo exports WndProc >>$(DEST)\hello.def
  77. echo imports >>$(DEST)\hello.def
  78. echo WOWQUERYDEBUG = KERNEL.512 >>$(DEST)\hello.def
  79. echo WOWWAITFORMSGANDEVENT = KERNEL.262>>$(DEST)\hello.def
  80. echo WOWMSGBOX = KERNEL.263>>$(DEST)\hello.def
  81. echo WOWPARTYBYNUMBER = KERNEL.273>>$(DEST)\hello.def
  82. !if "$(ALT_PROJECT)" != "USA"
  83. echo WOWNLSDUMMY = WINNLS.6 >>$(DEST)\hello.def
  84. !endif
  85. $(DEST)\hello.res: hello.rc hello.rcv
  86. @set include=$(ENVINCS);$(INCLUDE)
  87. $(RC) -r $(RCFLAGS) -fo $(DEST)\hello.res hello.rc
  88. $(DEST)\hello.exe: $(DEST)\hello.obj $(DEST)\hello.lrf $(DEST)\hello.def $(DEST)\hello.res
  89. $(LINK) @$(DEST)\hello.lrf;
  90. $(RC) -t -31 $(DEST)\hello.res $(DEST)\hello.exe