Leaked source code of windows server 2003
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.

124 lines
3.0 KiB

  1. !IFNDEF LANGUAGE
  2. LANGUAGE=usa
  3. !ENDIF
  4. !IF "$(BUILD_DEBUG_LOADER)" != ""
  5. DBG_LDR=_dbg
  6. !ELSE
  7. DBG_LDR=
  8. !ENDIF
  9. #
  10. # BOOT_LIB_DIR is the relative path to boot.lib.
  11. #
  12. !IFNDEF BOOT_LIB_DIR
  13. BOOT_LIB_DIR=daytona$(DBG_LDR)
  14. !ENDIF
  15. $(O)\msg.mc : ..\msg.$(LANGUAGE)
  16. copy $** $@
  17. !IF $(386)
  18. OSLOADER_LIBS=\
  19. $(O)\oscldr.lib \
  20. $(O)\oschoice.res \
  21. $(PROJECT_ROOT)\boot\lib\$(BOOT_LIB_DIR)\$(O)\boot.lib \
  22. $(PROJECT_ROOT)\boot\bd\daytona$(DBG_LDR)\$(O)\bd.lib \
  23. $(PROJECT_ROOT)\boot\tftplib\$(O)\tftplib.lib \
  24. $(PROJECT_ROOT)\boot\bootssp\boot\$(O)\bootssp.lib \
  25. $(PROJECT_ROOT)\ntos\ke\up\$(O)\ke.lib \
  26. $(PROJECT_ROOT)\ntos\rtl\boot$(DBG_LDR)\$(O)\bldrrtl$(DBG_LDR).lib \
  27. $(PROJECT_ROOT)\ntos\config\boot\$(O)\bconfig.lib \
  28. $(SDK_LIB_PATH)\libcntpr.lib \
  29. $(DS_LIB_PATH)\rsa32.lib
  30. $(O)\oschoice.res: $(O)\msg.mc
  31. OSLOADER_LIB_COMPONENTS = \
  32. $(PROJECT_ROOT)\boot\lib\$(BOOT_LIB_DIR)\$(O)\boot.lib \
  33. $(O)\oscldr.lib
  34. $(O)\link.rsp : ..\makefile.inc
  35. type << > $@
  36. -base:0x300000
  37. -debug
  38. -entry:NtProcessStartup@4
  39. -fixed
  40. -incremental:no
  41. -map
  42. -machine:ix86
  43. -opt:ref
  44. -opt:icf
  45. -subsystem:native
  46. $(LINK_LIB_IGNORE_FLAG)
  47. $(OSLOADER_LIBS)
  48. <<NOKEEP
  49. $(O)\oschoice.lib: $(OSLOADER_LIB_COMPONENTS)
  50. $(LIB_NAME) -machine:i386 -out:$(O)\oschoice.lib $(OSLOADER_LIB_COMPONENTS) -ignore:4001
  51. LDR_NAME=oschoice$(DBG_LDR).exe
  52. $(O)\$(LDR_NAME): $(OSLOADER_LIBS) makefile.inc $(O)\link.rsp
  53. -$(LINK_NAME) -out:$@ @$(O)\link.rsp
  54. !ELSE IF $(IA64)
  55. OSLOADER_LIBS=\
  56. $(O)\oscldr.lib \
  57. $(O)\oschoice.res \
  58. $(PROJECT_ROOT)\boot\lib\daytona$(DBG_LDR)\$(O)\boot.lib \
  59. $(PROJECT_ROOT)\boot\bd\daytona$(DBG_LDR)\$(O)\bd.lib \
  60. $(PROJECT_ROOT)\boot\efi\daytona$(DBG_LDR)\$(O)\efi.lib \
  61. $(PROJECT_ROOT)\boot\tftplib\$(O)\tftplib.lib \
  62. $(PROJECT_ROOT)\boot\bootssp\boot\$(O)\bootssp.lib \
  63. $(PROJECT_ROOT)\ntos\ke\up\$(O)\ke.lib \
  64. $(PROJECT_ROOT)\ntos\rtl\boot$(DBG_LDR)\$(O)\bldrrtl$(DBG_LDR).lib \
  65. $(PROJECT_ROOT)\ntos\config\boot\$(O)\bconfig.lib \
  66. $(SDK_LIB_PATH)\libcntpr.lib \
  67. $(DS_LIB_PATH)\rsa32.lib
  68. $(O)\link.rsp : ..\makefile.inc
  69. type << > $@
  70. -subsystem:EFI_APPLICATION
  71. -nodefaultlib
  72. -debug:full
  73. -last:.rdata
  74. -last:.pdata
  75. -last:.comment
  76. -machine:IA64
  77. -base:0x1040000
  78. !IF "$(BUILD_DEBUG_LOADER)" != ""
  79. -fixed
  80. !ENDIF
  81. -opt:ref
  82. -opt:icf
  83. -entry:main
  84. -map
  85. -ignore:4049,4001,4217
  86. $(LINK_LIB_IGNORE_FLAG)
  87. $(OSLOADER_LIBS)
  88. <<NOKEEP
  89. $(O)\oschoice.res: $(O)\msg.mc
  90. $(O)\oschoice$(DBG_LDR).efi: $(OSLOADER_LIBS) makefile.inc $(O)\link.rsp
  91. -$(LINK_NAME) -out:$@ @$(O)\link.rsp
  92. $(O)\oschoice.dbg: $(O)\oschoice.efi
  93. -pe2dbg $? $@
  94. OSLOADER_LIB_COMPONENTS = \
  95. $(PROJECT_ROOT)\boot\lib\daytona$(DBG_LDR)\$(O)\boot.lib \
  96. $(PROJECT_ROOT)\boot\efi\daytona$(DBG_LDR)\$(O)\efi.lib \
  97. $(O)\oscldr.lib
  98. $(O)\oschoice.lib: $(OSLOADER_LIB_COMPONENTS)
  99. $(LIB_NAME) -machine:ia64 -out:$(O)\oschoice.lib $(OSLOADER_LIB_COMPONENTS) -ignore:4001
  100. !ENDIF