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.

192 lines
4.9 KiB

  1. !ifdef NTMAKEENV
  2. #
  3. # DO NOT EDIT THIS SECTION!!! Edit .\sources. if you want to add a new source
  4. # file to this component. This section merely indirects to the real make file
  5. # that is shared by all the components of WINDOWS NT
  6. #
  7. !include $(NTMAKEENV)\makefile.def
  8. !else
  9. ### MAKEFILE -- Makefile for Microsoft NMAKE #################################
  10. #
  11. # Copyright (c) 1988-1991, Microsoft Corporation. All rights reserved.
  12. #
  13. # Notes:
  14. # See def.mak for version and os dependent stuff
  15. #
  16. # Revision History:
  17. # 02-Oct-1996 DS Move messages to resource, cleanup.
  18. # 01-Feb-1994 HV Move messages to external file.
  19. # 02-Aug-1993 HV Change tools directory from \tools to \t-ikura
  20. # 14-Jun-1993 HV Add ?supnec.lib for NEC machines.
  21. # 19-May-1993 HV fixed directory structure problem.
  22. # 19-May-1993 HV add a drive to rebind.
  23. # 19-May-1993 HV Remove the ikura target, add LANG={US,JAPAN}, restructure
  24. # the output directories.
  25. # 30-Apr-1993 HV Add Ikura target for TNT Japanese version.
  26. # 08-Jun-1992 SS Port to DOSX32
  27. # 01-Oct-1991 SB Link fileinfo.obj for DOS to get inheritance of handles
  28. # 11-Mar-1991 SB Modified to account for os and version systematically
  29. #
  30. ###############################################################################
  31. !include "def.mak"
  32. OBJS = \
  33. $(OBJDIR)\action.obj \
  34. $(OBJDIR)\build.obj \
  35. $(OBJDIR)\charmap.obj \
  36. $(OBJDIR)\command.obj \
  37. $(OBJDIR)\error.obj \
  38. $(OBJDIR)\exec.obj \
  39. $(OBJDIR)\file.obj \
  40. $(OBJDIR)\getrcmsg.obj \
  41. $(OBJDIR)\globals.obj \
  42. $(OBJDIR)\ifexpr.obj \
  43. $(OBJDIR)\init.obj \
  44. $(OBJDIR)\inline.obj \
  45. $(OBJDIR)\lexer.obj \
  46. $(OBJDIR)\macro.obj \
  47. $(OBJDIR)\nmake.obj \
  48. $(OBJDIR)\parser.obj \
  49. $(OBJDIR)\print.obj \
  50. $(OBJDIR)\rpn.obj \
  51. $(OBJDIR)\rule.obj \
  52. $(OBJDIR)\util.obj \
  53. $(OBJDIR)\utilp.obj \
  54. $(OBJDIR)\win32.obj
  55. RES = $(OBJDIR)\nmake.res
  56. VERFILES = $(LANGAPI)\include\version.h \
  57. $(LANGAPI)\include\bld_version.h \
  58. $(LANGAPI)\include\verstamp.h \
  59. $(LANGAPI)\include\common.ver
  60. SBRS = $(OBJS:.obj=.sbr)
  61. !ifdef BROWSE
  62. BROWSE_TARGET = $(VER)$(_OD_EXT)\nmake.bsc
  63. !endif
  64. # The default target
  65. all: $(VER)$(_OD_EXT)\nmake.exe
  66. # Cleans up the directory
  67. cleanos:
  68. del $(VER)$(_OD_EXT)\nmake.exe
  69. !if "$(VER)" == "debug"
  70. del debug$(_OD_EXT)\*.obj
  71. !else
  72. del retail$(_OD_EXT)\*.obj
  73. !endif
  74. clean:
  75. -@echo deleting $(VER)$(_OD_EXT)\*& del /q $(VER)$(_OD_EXT)\*
  76. -@echo deleting message file 'nmmsg.h'& del nmmsg.h
  77. ####################################################################
  78. #
  79. # LANG=US
  80. #
  81. ####################################################################
  82. $(VER)$(_OD_EXT)\nmake.exe: $(OBJS) $(RES) makefile
  83. @echo $@
  84. $(LINKER) @<<$(VER)$(_OD_EXT)\nmake.lrf
  85. -debug
  86. -map:$(@R).map
  87. -opt:win98
  88. -out:$@
  89. !if "$(VER)" != "debug"
  90. -incremental:no -opt:ref,icf -merge:.rdata=.text -ignore:4078
  91. !endif
  92. $(OBJS: =^
  93. )
  94. $(RES)
  95. <<
  96. !ifdef BROWSE
  97. bscmake /nologo /o $(BROWSE_TARGET) @<<$(VER)$(_OD_EXT)\browse.rsp
  98. $(SBRS: =^
  99. )
  100. <<$(KEEP)
  101. !endif
  102. $(RES) : nmake.rc $(OBJDIR)\errstr.rc $(VERFILES)
  103. #
  104. # String resource for errors/warnings/messages.
  105. #
  106. $(OBJDIR)\errstr.rc : $(MESSAGE_FILE)
  107. mkmsg -rc $@ $?
  108. nmmsg.h : $(MESSAGE_FILE)
  109. mkmsg -h $@ $?
  110. # .h Dependencies
  111. nmake.h : nmmsg.h charmap.h
  112. # .obj & .deb Dependencies follow
  113. $(OBJDIR)\action.obj : nmake.h nmmsg.h proto.h globals.h
  114. $(OBJDIR)\build.obj : nmake.h nmmsg.h proto.h globals.h
  115. $(OBJDIR)\command.obj : nmake.h nmmsg.h proto.h globals.h
  116. #near padding insufficient because of changes due to sedscrpt
  117. # This module adds padding
  118. $(OBJDIR)\nearpad.obj : nearpad.asm
  119. d_getdbc.obj :
  120. $(OBJDIR)\error.obj : nmake.h nmmsg.h proto.h globals.h $(LANGAPI)\include\version.h
  121. $(OBJDIR)\exec.obj : nmake.h proto.h nmmsg.h globals.h
  122. $(OBJDIR)\file.obj : nmake.h proto.h
  123. $(OBJDIR)\globals.obj : nmake.h globals.h
  124. $(OBJDIR)\ifexpr.obj : nmake.h nmmsg.h grammar.h proto.h globals.h
  125. $(OBJDIR)\init.obj : nmake.h nmmsg.h proto.h grammar.h globals.h
  126. $(OBJDIR)\inline.obj : nmake.h nmmsg.h proto.h globals.h
  127. $(OBJDIR)\lexer.obj : nmake.h nmmsg.h grammar.h proto.h globals.h
  128. $(OBJDIR)\macro.obj: nmake.h proto.h
  129. $(OBJDIR)\nmake.obj : nmake.h nmmsg.h proto.h globals.h
  130. $(OBJDIR)\parser.obj : nmake.h nmmsg.h grammar.h table.h proto.h globals.h
  131. $(OBJDIR)\print.obj : nmake.h proto.h globals.h nmmsg.h nmtime.h
  132. $(OBJDIR)\rpn.obj : nmake.h nmmsg.h grammar.h proto.h rpn.h globals.h
  133. $(OBJDIR)\rule.obj : nmake.h nmmsg.h proto.h globals.h
  134. $(OBJDIR)\charmap.obj : nmake.h nmmsg.h proto.h globals.h
  135. $(OBJDIR)\shell.obj : nmake.h nmmsg.h proto.h globals.h
  136. $(OBJDIR)\super.obj : dosuper.h nmake.h nmmsg.h proto.h globals.h
  137. $(OBJDIR)\util.obj : nmake.h nmmsg.h proto.h globals.h
  138. $(OBJDIR)\utilp.obj : nmake.h nmmsg.h proto.h globals.h
  139. $(OBJDIR)\getrcmsg.obj : $(LANGAPI)\include\getmsg.h $(LANGAPI)\getmsg\getrcmsg.c
  140. $(CC) $(CFLAGS) -c -Fo$(OBJDIR)\ $(LANGAPI)\getmsg\getrcmsg.c
  141. !endif