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.

165 lines
5.1 KiB

  1. # TOOLHELP.DLL for WOW makefile
  2. #
  3. # Copyright (c) 1992, Microsoft Corporation
  4. #
  5. # History:
  6. # 4-Nov-1992 Dave Hart (davehart)
  7. # Created.
  8. #
  9. !INCLUDE ..\makefile.inc
  10. #
  11. # Macros for build utilities
  12. #
  13. #
  14. # Command line options common to C compiler and assembler
  15. #
  16. INCLUDES = $(INCS) -I..\kernel31
  17. .SUFFIXES: .asm
  18. #
  19. # C, MASM, Link16, and RC16 options
  20. #
  21. !if !$(FREEBUILD)
  22. ADEBUG = -Zd
  23. CDEBUG = /Od /Oi /Zd
  24. LDEBUG = /LI
  25. !endif
  26. !if "$(ALT_PROJECT)" == "NEC_98"
  27. DEFINES=$(DEFINES) -DNEC_98
  28. !endif
  29. CFLAGS = -c -ASw -G2s -Oas -W3 -Zpe $(DEFINES) $(CDEBUG)
  30. AFLAGS = -DmemS=1 -w2 $(DEFINES) $(INCLUDES) $(ADEBUG)
  31. LFLAGS = /ALIGN:16 $(LDEBUG)
  32. RFLAGS = $(INCLUDES)
  33. #
  34. # Libraries to link with.
  35. #
  36. W16LIBS = ..\lib\sdllcew.LIB ..\lib\$(ALT_PROJECT)\LIBW.LIB
  37. #
  38. # Target objects (keep in sync with dependencies below)
  39. #
  40. OBJS = $(DEST)\toolhelp.obj $(DEST)\dllentry.obj $(DEST)\global.obj $(DEST)\krnlpeek.obj \
  41. $(DEST)\walk386.obj $(DEST)\local.obj $(DEST)\module.obj $(DEST)\task1.obj $(DEST)\task2.obj $(DEST)\stack1.obj \
  42. $(DEST)\stack2.obj $(DEST)\usergdi1.obj $(DEST)\usergdi2.obj $(DEST)\memman.obj $(DEST)\helper.obj \
  43. $(DEST)\walk286.obj $(DEST)\notify1.obj $(DEST)\notify2.obj $(DEST)\int1.obj $(DEST)\int2.obj $(DEST)\terminat.obj \
  44. $(DEST)\signal.obj $(DEST)\memory.obj $(DEST)\timer.obj $(DEST)\ththunks.obj
  45. #
  46. # Common build pseudotargets:
  47. # all builds everything - must be be first target in file
  48. # cleanup deletes everything
  49. # clean deletes & then builds everything
  50. #
  51. all: $(DEST)\toolhelp.dll $(DEST)\toolhelp.sym $(DEST)\toolhelp.map $(DEST)\toolhelp.lib
  52. -binplace -o $(ALT_PROJECT_TARGET) $(DEST)\toolhelp.dll
  53. -binplace -o $(ALT_PROJECT_TARGET) $(DEST)\toolhelp.map
  54. -binplace -o $(ALT_PROJECT_TARGET) $(DEST)\toolhelp.sym
  55. clean: cleanup all
  56. cleanup:
  57. if exist $(DEST)\*.obj del $(DEST)\*.obj
  58. if exist $(DEST)\*.dll del $(DEST)\*.dll
  59. if exist $(DEST)\*.map del $(DEST)\*.map
  60. if exist $(DEST)\*.sym del $(DEST)\*.sym
  61. if exist $(DEST)\*.res del $(DEST)\*.res
  62. if exist $(DEST)\*.lib del $(DEST)\*.lib
  63. if exist $(DEST)\stripped.def del $(DEST)\stripped.def
  64. #
  65. # Default build rules.
  66. #
  67. .c{$(DEST)}.obj:
  68. @set include=$(ENVINCS);$(INCLUDE);..\kernel31
  69. $(CL) $(CFLAGS) /Fo$* $(*F).c
  70. .asm{$(DEST)}.obj:
  71. $(ASM) $(AFLAGS) $(@B).asm, $*.obj;
  72. .asm{$(DEST)}.lst:
  73. $(ASM) $(AFLAGS) -l $(@B).asm,nul,$*.lst;
  74. .rc{$(DEST)}.res:
  75. $(RC) $(RFLAGS) -r -fo $*.res $(*F).rc
  76. .def{$(DEST)}.lib:
  77. $(IMPLIB) $@ $**
  78. #
  79. # Dependencies that use default build rules.
  80. #
  81. # NOTE: Class1.c and Class2.asm are checked in for reference but are not
  82. # ---- built for WOW. Instead THTHUNKS.ASM contains thunks to WOW32.
  83. #
  84. # class1.obj: class1.c toolpriv.h toolhelp.h
  85. # class2.obj: class2.asm toolpriv.inc toolhelp.inc
  86. $(DEST)\dllentry.obj: dllentry.asm
  87. $(DEST)\global.obj: global.c toolpriv.h toolhelp.h string.h
  88. $(DEST)\helper.obj: helper.asm toolpriv.inc toolhelp.inc
  89. $(DEST)\int1.obj: int1.c toolpriv.h toolhelp.h string.h
  90. $(DEST)\int2.obj: int2.asm toolpriv.inc toolhelp.inc
  91. $(DEST)\krnlpeek.obj: krnlpeek.asm toolpriv.inc toolhelp.inc
  92. $(DEST)\local.obj: local.c toolpriv.h toolhelp.h
  93. $(DEST)\memman.obj: memman.asm toolpriv.inc toolhelp.inc
  94. $(DEST)\memory.obj: memory.asm toolpriv.inc toolhelp.inc
  95. $(DEST)\module.obj: module.c toolpriv.h toolhelp.h string.h
  96. $(DEST)\notify1.obj: notify1.c toolpriv.h toolhelp.h string.h
  97. $(DEST)\notify2.obj: notify2.asm toolpriv.inc toolhelp.inc
  98. $(DEST)\signal.obj: signal.c toolpriv.h toolhelp.h string.h
  99. $(DEST)\stack1.obj: stack1.c toolpriv.h toolhelp.h string.h
  100. $(DEST)\stack2.obj: stack2.asm toolpriv.inc toolhelp.inc
  101. $(DEST)\task1.obj: task1.c toolpriv.h toolhelp.h string.h
  102. $(DEST)\task2.obj: task2.asm toolpriv.inc toolhelp.inc
  103. $(DEST)\terminat.obj: terminat.asm toolpriv.inc toolhelp.inc
  104. $(DEST)\ththunks.obj: ththunks.asm ..\..\inc\wow.inc ..\..\inc\wowth.inc
  105. $(DEST)\timer.obj: timer.asm toolpriv.inc toolhelp.inc
  106. $(DEST)\toolhelp.obj: toolhelp.c toolpriv.h toolhelp.h
  107. $(DEST)\usergdi1.obj: usergdi1.c toolpriv.h toolhelp.h
  108. $(DEST)\usergdi2.obj: usergdi2.asm toolpriv.inc toolhelp.inc
  109. $(DEST)\walk286.obj: walk286.asm toolpriv.inc toolhelp.inc
  110. $(DEST)\walk386.obj: walk386.asm toolpriv.inc toolhelp.inc
  111. #
  112. # Targets with specialized build rules
  113. #
  114. $(DEST)\toolhelp.dll: $(OBJS) toolhelp.def
  115. $(LINK) $(LFLAGS) @<<
  116. $(DEST)\toolhelp + $(DEST)\dllentry + $(DEST)\krnlpeek + $(DEST)\global + $(DEST)\walk386 +
  117. $(DEST)\local + $(DEST)\module + $(DEST)\task1 + $(DEST)\task2 + $(DEST)\stack1 + $(DEST)\stack2 +
  118. $(DEST)\usergdi1 + $(DEST)\usergdi2 + $(DEST)\memman + $(DEST)\helper + $(DEST)\walk286 +
  119. $(DEST)\notify1 + $(DEST)\notify2 + $(DEST)\int1 + $(DEST)\int2 + $(DEST)\terminat + $(DEST)\signal +
  120. $(DEST)\memory + $(DEST)\timer + $(DEST)\ththunks
  121. $(DEST)\toolhelp.dll
  122. $(DEST)\toolhelp.map/map
  123. $(W16LIBS) /NOE/NOD
  124. toolhelp.def;
  125. <<
  126. $(MAPSYM) -o $*.sym $(DEST)\toolhelp.map
  127. cd $(DEST)
  128. $(RC) /I..\..\..\..\inc -t -30 -fotoolhelp.res ..\..\..\toolhelp.rcv toolhelp.dll
  129. cd $(MAKEDIR)
  130. $(DEST)\toolhelp.lib: toolhelp.def
  131. $(MKPUB) toolhelp.def $(DEST)\stripped.def
  132. $(IMPLIB) $(DEST)\toolhelp.lib $(DEST)\stripped.def