Windows NT 4.0 source code leak
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.

127 lines
2.3 KiB

4 years ago
  1. #***
  2. #
  3. # common.mak
  4. #
  5. # This makefile defines the build environments for link.exe. It is
  6. # included by other makefiles.
  7. #
  8. #****************************************************************************
  9. !ifndef ODIR
  10. !if "$(DEBUG)" != "1"
  11. ODIR = ..\release
  12. !else
  13. ODIR = ..\debug
  14. !endif
  15. !endif
  16. !if !exist($(ODIR))
  17. !if [md $(ODIR)] != 0
  18. !error unable to create directory "$(ODIR)"
  19. !endif
  20. !endif
  21. #***
  22. #
  23. # Build environment
  24. #
  25. #****************************************************************************
  26. !ifndef LANGAPI
  27. LANGAPI=\langapi
  28. !endif
  29. !if "$(LANG)"=="JAPAN"
  30. CUSTOM = /DJAPAN $(CUSTOM)
  31. !endif
  32. !if "$(TIMEBOMB)"=="1"
  33. CUSTOM = /DTIMEBOMB $(CUSTOM)
  34. !endif
  35. !if "$(ILINKLOG)"=="1"
  36. CUSTOM = /DILINKLOG $(CUSTOM)
  37. !endif
  38. !if "$(PROCESSOR_ARCHITECTURE)" == "ALPHA"
  39. LINKER = link
  40. LIBER = link -lib
  41. OPTIONS = /GFy /W3 $(CUSTOM)
  42. !if "$(DEBUG)" != "1"
  43. CFLAGS = $(OPTIONS) /MD /O2 /DDBG=0 /DNDEBUG
  44. LFLAGS =
  45. !else
  46. CFLAGS = $(OPTIONS) /MDd /Od /Zi /DDBG=1
  47. LFLAGS = /debug
  48. !endif
  49. !elseif "$(PROCESSOR_ARCHITECTURE)" == "MIPS"
  50. LINKER = link
  51. LIBER = link -lib
  52. OPTIONS = /GFy /W3 $(CUSTOM)
  53. !if "$(DEBUG)" != "1"
  54. CFLAGS = $(OPTIONS) /MD /O2 /DDBG=0 /DNDEBUG
  55. LFLAGS =
  56. !else
  57. CFLAGS = $(OPTIONS) /MDd /Od /Zi /DDBG=1
  58. LFLAGS = /debug
  59. !endif
  60. !elseif "$(PROCESSOR_ARCHITECTURE)" == "PPC"
  61. LINKER = link
  62. LIBER = link -lib
  63. OPTIONS = /GFy /W3 $(CUSTOM)
  64. !if "$(DEBUG)" != "1"
  65. CFLAGS = $(OPTIONS) /MD /O2 /DDBG=0 /DNDEBUG
  66. LFLAGS =
  67. !else
  68. CFLAGS = $(OPTIONS) /MDd /Od /Zi /DDBG=1
  69. LFLAGS = /debug
  70. !endif
  71. !elseif "$(PROCESSOR_ARCHITECTURE)" == "x86"
  72. LINKER = link
  73. LIBER = link -lib
  74. OPTIONS = /GFyz /W3 $(CUSTOM)
  75. !if "$(DEBUG)" != "1"
  76. CFLAGS = $(OPTIONS) /MD /O2 /DDBG=0 /DNDEBUG
  77. LFLAGS =
  78. !else
  79. CFLAGS = $(OPTIONS) /MDd /Od /Zi /DDBG=1
  80. LFLAGS = /debug
  81. !endif
  82. !else
  83. !error Unknown PROCESSOR_ARCHITECTURE=$(PROCESSOR_ARCHITECTURE)
  84. !endif
  85. #***
  86. #
  87. #object build rules
  88. #
  89. #****************************************************************************
  90. CFLAGS = -c $(CFLAGS) -Fo$(ODIR)\ -FR$(ODIR)\ -Fd$(ODIR)\link.pdb -I$(LANGAPI)\include \
  91. -I$(LANGAPI)\undname
  92. !if "$(PCH_HDR)" != ""
  93. CFLAGS = $(CFLAGS) -Fp$(ODIR)\ -Yu$(PCH_HDR)
  94. $(PCH_OBJ):
  95. if exist $@ del $@
  96. $(CC) $(CFLAGS) -Yc$(PCH_HDR) $(PCH_SRC)
  97. !endif #"$(PCH_HDR)" != ""
  98. .cpp{$(ODIR)}.obj:
  99. $(CC) $(CFLAGS) $(MAKEDIR)\$<
  100. .rc{$(ODIR)}.res:
  101. if exist $@ del $@
  102. rc -I$(LANGAPI)\include -r -Fo$@ $<