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.

105 lines
2.6 KiB

  1. NT_UP=0
  2. !include $(PROJECT_ROOT)\ntdll\ntdll.inc
  3. MAJORCOMP=ntos
  4. MINORCOMP=dll_
  5. TARGETNAME=ntdll
  6. TARGETPATH=obj
  7. TARGETTYPE=DYNLINK
  8. DLLDEF=$(O)\$(TARGETNAME).def
  9. LINKLIBS= \
  10. $(PROJECT_ROOT)\ntos\rtl\user\$(O)\rtl.lib \
  11. $(SDK_LIB_PATH)\libcntpr.lib \
  12. $(SDK_LIB_PATH)\uuid.lib \
  13. $(PROJECT_ROOT)\wmi\ntdll\$(O)\etwclnt.lib \
  14. $(DS_LIB_PATH)\rsa32.lib
  15. !if $(386)
  16. DLLLIBOBJECTS= \
  17. $(PROJECT_LIB_PATH)\sehprolg.obj
  18. !endif
  19. INCLUDES=..;\
  20. $(PROJECT_ROOT)\ntos\inc;\
  21. $(PROJECT_ROOT)\published\$(O);\
  22. ..\i386;\
  23. $(SDKTOOLS_INC_PATH);\
  24. $(WINDOWS_INC_PATH);\
  25. $(COM_INC_PATH)
  26. WIMPMASM=1
  27. C_DEFINES=$(C_DEFINES) -D_NTSYSTEM_ -D_NTDLLBUILD_ -DLITTLEENDIAN=1
  28. MSC_WARNING_LEVEL=/W3 /WX
  29. DLLORDER=..\ntdll.prf
  30. SOURCES=\
  31. ..\buffer.c \
  32. ..\curdir.c \
  33. ..\csrinit.c \
  34. ..\csrtask.c \
  35. ..\csrutil.c \
  36. ..\dllssstb.c \
  37. ..\dlluistb.c \
  38. ..\filestm.c \
  39. ..\frame.c \
  40. ..\ldrapi.c \
  41. ..\ldrinit.c \
  42. ..\ldrsnap.c \
  43. ..\ldrutil.c \
  44. ..\memstm.c \
  45. ..\ntdll.rc \
  46. ..\resource.c \
  47. ..\seurtl.c \
  48. ..\uilist.c \
  49. ..\propfwd.cxx \
  50. ..\query.c \
  51. ..\heaptag.c \
  52. ..\ldrwx86.c \
  53. ..\vectxcpt.c \
  54. ..\verifier.c \
  55. ..\wow64apc.c \
  56. ..\sxsactctx.c \
  57. ..\sxsctxact.c \
  58. ..\sxsctxsrch.c \
  59. ..\sxsquery.c \
  60. ..\sxsstorage.c \
  61. ..\sxsstoragemap.c \
  62. ..\ImportTableHash.c \
  63. PRECOMPILED_INCLUDE=..\pch.cxx
  64. NTTARGETFILE0=$(DLLDEF)
  65. #
  66. # To test RTL stuff on your development machine:
  67. #
  68. # Allowing for new exports to have been added, so you need a new .lib.
  69. # Besides, you can't call the .dll ntdll.
  70. # Build and nmake don't agree on stuff, like if TARGETNAME=ntdll2 from the command line
  71. # is overridable (build thinks it is, nmake does not), so you must build the regular ntdll.dll
  72. # first, then the alternately named one, so like
  73. # cd daytona
  74. # build -cZ
  75. # build -Z -nmake UMTEST=tpath -nmake TARGETNAME=ntdll2
  76. # if you don't, build/nmake complain "don't know how to make $(O)\ntdll.def" even though
  77. # it isn't supposed to try for the second case.
  78. #
  79. # Either make sure the syscall tables are compatible, or don't call them.
  80. # Be sure to link to kernel32 somehow (like via msvcrt for printf).
  81. #
  82. # You can futz with syscalls, but I don't presently need to.
  83. #
  84. #!if 0
  85. !if 1
  86. UMTYPE=console
  87. UMTEST=tpath
  88. C_DEFINES=$(C_DEFINES) -D_CRTIMP=
  89. #UMLIBS=$(O)\$(TARGETNAME).lib $(SDK_LIB_PATH)\msvcrt.lib $(PROJECT_ROOT)\ntos\rtl\user\$(O)\rtl.lib
  90. UMLIBS=$(OBJECTS) $(PROJECT_ROOT)\ntos\rtl\user\$(O)\rtl.lib
  91. USE_MSVCRT=1
  92. !endif
  93. PASS1_PUBLISH=\
  94. {$(O)\$(TARGETNAME).lib=$(SDK_LIB_PATH)\$(TARGETNAME).lib}