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.

118 lines
3.3 KiB

  1. !IF 0
  2. Copyright (c) Microsoft Corporation
  3. !ENDIF
  4. !include $(PROJECT_ROOT)\ntos\ntoskrnl.inc
  5. MAJORCOMP=ntos
  6. MINORCOMP=init
  7. TARGETNAME=init
  8. TARGETTYPE=LIBRARY
  9. TARGETPATH=obj
  10. INCLUDES=..;..\..\inc;..\..\nls\$(O);$(HALKIT_INC_PATH)
  11. !IF $(AMD64) || $(IA64)
  12. C_DEFINES=$(C_DEFINES) -DNO_LEGACY_DRIVERS
  13. !ENDIF
  14. !ifndef TARGET1
  15. TARGET1=up
  16. !endif
  17. !ifndef TARGET2
  18. TARGET2=up
  19. !endif
  20. SOURCES=\
  21. ..\init.c \
  22. ..\anim.c \
  23. ..\port.c \
  24. ..\bootvid.c \
  25. ..\ntoskrnl.rc
  26. !IF "$(NTTEST)"==""
  27. NTTEST=ntoskrnl
  28. !endif
  29. LINK_LIB_IGNORE=4087,4001
  30. !ifndef NOLIB
  31. !if "$(NTTEST)" == "ntoskrnl"
  32. NTTARGETFILE1=$(DDK_LIB_PATH)\ntoskrnl.lib
  33. EXPORT_FILE=$(O)\ntoskrnl.exp
  34. !else
  35. NTTARGETFILE1=$(O)\$(NTTEST).lib
  36. EXPORT_FILE=..\up\$(O)\ntoskrnl.exp
  37. !ENDIF
  38. !endif
  39. C_DEFINES=$(C_DEFINES) /DKERNEL_NAME=^"$(NTTEST).exe^"
  40. !ifdef TEST_BUILD_EXPONENT
  41. ! if "$(TEST_BUILD_EXPONENT)" == "$(TEST_BUILD_EXPONENT:0x=)"
  42. ! error TEST_BUILD_EXPONENT value must start with 0x
  43. ! endif
  44. C_DEFINES=$(C_DEFINES) -DTEST_BUILD_EXPONENT=$(TEST_BUILD_EXPONENT)
  45. !endif
  46. NTRES=$(O)\ntoskrnl.res
  47. UMRES=$(O)\ntoskrnl.res
  48. LINKLIBS = \
  49. $(DDK_LIB_PATH)\hal.lib \
  50. $(EXPORT_FILE) \
  51. $(PROJECT_ROOT)\boot\bootvid\daytona\$(O)\bootvid.lib \
  52. $(WINDOWS_LIB_PATH)\sdbapint.lib \
  53. $(PROJECT_ROOT)\boot\kdcom\$(O)\kdcom.lib
  54. !IF $(IA64)
  55. LINKER_FLAGS =$(LINKER_FLAGS) -IGNORE:4226
  56. !ENDIF
  57. LINKER_FLAGS =$(LINKER_FLAGS) -map -merge:PAGECONST=PAGE -merge:INITCONST=INIT -merge:INITDATA=INIT -merge:PAGELKCONST=PAGELK -merge:PAGEVRFY_CONST=PAGEVRFY
  58. POST_BUILD_CMD=link -edit -nologo -section:.rsrc,!d $(O)\$(NTTEST).exe
  59. !ifndef TARGETPATH2
  60. TARGETPATH2=$(TARGETPATH)
  61. !endif
  62. KERNEL_LIBS = \
  63. $(PROJECT_ROOT)\ntos\arb\$(TARGET2)\$(O)\arb.lib \
  64. $(PROJECT_ROOT)\ntos\cache\$(TARGET2)\$(O)\cache.lib \
  65. $(PROJECT_ROOT)\ntos\config\$(TARGET2)\$(O)\config.lib \
  66. $(PROJECT_ROOT)\ntos\dbgk\$(TARGET2)\$(O)\dbgk.lib \
  67. $(PROJECT_ROOT)\ntos\FsRtl\$(TARGET2)\$(O)\FsRtl.lib \
  68. $(PROJECT_ROOT)\ntos\FStub\$(TARGET2)\$(O)\FStub.lib \
  69. $(PROJECT_ROOT)\ntos\init\$(TARGET1)\$(O)\init.lib \
  70. $(PROJECT_ROOT)\ntos\io\$(TARGET2)\$(O)\io.lib \
  71. $(PROJECT_ROOT)\ntos\io\iomgr\$(TARGET2)\$(O)\iomgr.lib \
  72. $(PROJECT_ROOT)\ntos\io\pnpmgr\$(TARGET2)\$(O)\pnpmgr.lib \
  73. $(PROJECT_ROOT)\ntos\kd64\$(TARGET1)\$(O)\kd.lib \
  74. $(PROJECT_ROOT)\ntos\ke\$(TARGET1)\$(O)\ke.lib \
  75. $(PROJECT_ROOT)\ntos\lpc\$(TARGET2)\$(O)\lpc.lib \
  76. $(PROJECT_ROOT)\ntos\mm\$(TARGET1)\$(O)\mm.lib \
  77. $(PROJECT_ROOT)\ntos\ob\$(TARGET2)\$(O)\ob.lib \
  78. $(PROJECT_ROOT)\ntos\po\$(TARGET2)\$(O)\po.lib \
  79. $(PROJECT_ROOT)\ntos\ps\$(TARGET2)\$(O)\ps.lib \
  80. $(PROJECT_ROOT)\ntos\raw\$(TARGET2)\$(O)\raw.lib \
  81. $(PROJECT_ROOT)\ntos\rtl\$(TARGET2)\$(O)\ntosrtl.lib\
  82. $(PROJECT_ROOT)\ntos\se\$(TARGET2)\$(O)\se.lib \
  83. $(PROJECT_ROOT)\ntos\vdm\$(TARGET2)\$(O)\vdm.lib \
  84. $(PROJECT_ROOT)\ntos\verifier\$(TARGET2)\$(O)\verifier.lib \
  85. $(PROJECT_ROOT)\ntos\wmi\$(TARGET2)\$(O)\wmi.lib \
  86. $(PROJECT_ROOT)\ntos\perf\$(TARGET2)\$(O)\perf.lib \
  87. $(PROJECT_ROOT)\ntos\ex\$(TARGET2)\$(O)\ex.lib \
  88. $(DS_LIB_PATH)\lsakrnlp.lib \
  89. !if $(IA64)
  90. $(PROJECT_ROOT)\crts\libw32\lib\nt\ia64\libcntpr.lib \
  91. !else
  92. $(SDK_LIB_PATH)\libcntpr.lib \
  93. !endif
  94. !if !$(FREEBUILD) && $(386)
  95. KERNEL_ALIGNMENT=0x1000
  96. !endif