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.

225 lines
9.2 KiB

  1. CCSHELL_DIR = $(PROJECT_ROOT)
  2. BUILD_PRIVLIB = 1
  3. SELFREGNAME = $(O)\selfreg_shell32.inf
  4. MISCFILES = $(MISCFILES) $(SELFREGNAME)
  5. MSC_WARNING_LEVEL=/W4
  6. !include $(CCSHELL_DIR)\shell32\shell32.inc
  7. SOURCES_USED = $(SOURCES_USED) $(CCSHELL_DIR)\shell32\shell32.inc
  8. SYNCHRONIZE_DRAIN=1
  9. TARGETNAME = shell32
  10. TARGETPATH = obj
  11. TARGETTYPE = DYNLINK
  12. PASS1_PUBLISH= \
  13. {$(O)\shell32.lib=$(SDK_LIB_PATH)\shell32.lib} \
  14. {$(O)\shell32p.lib=$(SHELL_LIB_PATH)\shell32p.lib}
  15. TARGETLIBS = $(LIBRARY_PLATFORM_PATH)\*\gdi32.lib \
  16. $(LIBRARY_PLATFORM_PATH)\*\user32.lib \
  17. $(LIBRARY_PLATFORM_PATH)\*\kernel32.lib \
  18. ..\sdspatch\$(O)\sdspatch.lib \
  19. ..\tngen\$(O)\tngen.lib \
  20. ..\menuband\$(O)\menuband.lib \
  21. $(SDK_LIB_PATH)\advapip.lib \
  22. $(SDK_LIB_PATH)\adsiid.lib \
  23. $(SHELL_LIB_PATH)\shlwapip.lib \
  24. $(SDK_LIB_PATH)\winmm.lib \
  25. $(SDK_LIB_PATH)\msi.lib \
  26. $(SDK_LIB_PATH)\devmgr.lib \
  27. $(SDK_LIB_PATH)\urlmon.lib \
  28. $(SDK_LIB_PATH)\wininet.lib \
  29. $(SDK_LIB_PATH)\secur32.lib \
  30. $(SDK_LIB_PATH)\winspool.lib \
  31. $(SDK_LIB_PATH)\userenv.lib \
  32. $(SDK_LIB_PATH)\ole32.lib \
  33. $(SDK_LIB_PATH)\oleaut32.lib \
  34. $(SDK_LIB_PATH)\oleacc.lib \
  35. $(SDK_LIB_PATH)\version.lib \
  36. $(NET_LIB_PATH)\mprp.lib \
  37. $(SDK_LIB_PATH)\mprapi.lib \
  38. $(SDK_LIB_PATH)\netapi32.lib \
  39. $(SDK_LIB_PATH)\cscdll.lib \
  40. $(SDK_LIB_PATH)\ntdsapi.lib \
  41. $(SDK_LIB_PATH)\activeds.lib \
  42. $(SDK_LIB_PATH)\msdasc.lib \
  43. $(SHELL_LIB_PATH)\uxthemep.lib \
  44. $(DS_LIB_PATH)\creduip.lib \
  45. $(SDK_LIB_PATH)\rasapi32.lib \
  46. $(DS_LIB_PATH)\msgina.lib \
  47. $(CCSHELL_DIR)\lib\$(O)\shguid.lib \
  48. $(CCSHELL_DIR)\lib\$(O)\shguidp.lib \
  49. $(CCSHELL_DIR)\lib\$(O)\ieguidp.lib \
  50. $(SDK_LIB_PATH)\uuid.lib \
  51. $(SDK_LIB_PATH)\wiaguid.lib \
  52. $(SDK_LIB_PATH)\powrprof.lib \
  53. $(PROJECT_ROOT)\lib\$(O)\shdocvwp.lib \
  54. $(PROJECT_ROOT)\lib\$(O)\browseui.lib \
  55. $(PROJECT_LIB_PATH)\shdocvw.lib \
  56. $(PROJECT_ROOT)\lib\$(O)\secutil.lib \
  57. $(SHELL_LIB_PATH)\efsadu.lib \
  58. $(SHELL_LIB_PATH)\linkinfo.lib \
  59. $(CCSHELL_DIR)\lib\$(O)\xml.lib \
  60. $(CCSHELL_DIR)\lib\$(O)\inetutil.lib \
  61. $(CCSHELL_DIR)\lib\$(O)\shfusion.lib \
  62. $(SDK_LIB_PATH)\msimg32.lib \
  63. $(WINDOWS_LIB_PATH)\obj\duser.lib \
  64. !if $(FREEBUILD)
  65. $(WINDOWS_LIB_PATH)\directui.lib \
  66. !else
  67. $(WINDOWS_LIB_PATH)\directuid.lib \
  68. !endif
  69. $(PRINTSCAN_LIB_PATH)\printui.lib \
  70. $(SDK_LIB_PATH)\htmlhelp.lib \
  71. $(CCSHELL_DIR)\ext\cdfview\dll\$(O)\cdfview.lib \
  72. $(SDK_LIB_PATH)\setupapi.lib \
  73. $(SDK_LIB_PATH)\d3dx.lib
  74. # Remember - only things that are listed in the DEF file go into LINKLIBS
  75. LINKLIBS = ..\ntcpp\$(O)\srccpp.lib \
  76. ..\unicpp\ntcpp\$(O)\unicpp.lib \
  77. $(PROJECT_ROOT)\lib\$(O)\stock.lib
  78. TARGETLIBS = $(TARGETLIBS) \
  79. $(SDK_LIB_PATH)\ntdll.lib \
  80. $(SDK_LIB_PATH)\rpcrt4.lib \
  81. $(SDK_LIB_PATH)\query.lib \
  82. $(WINDOWS_LIB_PATH)\user32p.lib \
  83. $(CCSHELL_DIR)\lib\$(O)\badappsu.lib \
  84. $(SDK_LIB_PATH)\imm32.lib
  85. # shlwapip.lib is weird.
  86. #
  87. # We want to put shlwapip.lib into the LINKLIBS because we have old
  88. # exports from shell32.lib that have moved to shlwapi (which we forward to)
  89. # and we can't remove them since people link to them by ordinal.
  90. #
  91. # However, LINKLIBS are linked before TARGETLIBS, which is a problem
  92. # because shlwapip contains overrides for standard Win32 functions
  93. # which we do not want to use. (The overrides come from the Trident
  94. # people, who apparently rely on them.)
  95. #
  96. # The secret is IMPLIB_OBJS. We list shlwapip.lib there to indicate
  97. # that we need it built in order to link, and also list it in TARGETLIBS
  98. # to indicate the link order.
  99. IMPLIB_OBJS = $(IMPLIB_OBJS) \
  100. $(SHELL_LIB_PATH)\shlwapip.lib
  101. DELAYLOAD = query.dll;winmm.dll;msi.dll;\
  102. urlmon.dll;wininet.dll;devmgr.dll;winspool.drv;userenv.dll;\
  103. ole32.dll;oleaut32.dll;secur32.dll;oleacc.dll;\
  104. version.dll;mpr.dll;netapi32.dll;cscdll.dll;linkinfo.dll;\
  105. shdocvw.dll;browseui.dll;uxtheme.dll;\
  106. credui.dll;msgina.dll;efsadu.dll;powrprof.dll;rasapi32.dll;\
  107. printui.dll;cdfview.dll;msimg32.dll;duser.dll;setupapi.dll;\
  108. imm32.dll
  109. DLOAD_ERROR_HANDLER = kernel32
  110. DLLDEF = $(O)\shell32.def
  111. PRIVDEFSRC = ..\shell32.src
  112. PRIVDEF = $(O)\shell32p.def
  113. PRIVLIB = shell32p.lib
  114. INCLUDES = $(INCLUDES);$(PROJECT_ROOT)\lib\$(O);$(O);$(TERMSRV_INC_PATH)
  115. USE_MSVCRT = 1
  116. DLLENTRY = _DllMainCRTStartup
  117. NTTARGETFILES =
  118. # for historical reasons we include some GUIDs in the shell32 import library
  119. DLLLIBOBJECTS = $(CCSHELL_DIR)\lib\$(O)\shguid.lib
  120. SOURCES = \
  121. ..\shell32.rc \
  122. ..\about.c \
  123. ..\bitbuck.c \
  124. ..\bookmk.c \
  125. ..\cabstate.c \
  126. ..\clsobj.c \
  127. ..\control1.c \
  128. ..\copy.c \
  129. ..\copyhook.c \
  130. ..\cplobj.c \
  131. ..\cstrings.c \
  132. ..\debug.c \
  133. ..\defclsf.c \
  134. ..\drawpie.c \
  135. ..\exec.c \
  136. ..\extract.c \
  137. ..\expenv.c \
  138. ..\futil.c \
  139. ..\hash.c \
  140. ..\help.c \
  141. ..\init.c \
  142. ..\lvutil.c \
  143. ..\malloc.c \
  144. ..\msgbox.c \
  145. ..\ole2def.c \
  146. ..\ole2dup.c \
  147. ..\ole2dup2.c \
  148. ..\os.c \
  149. ..\path.c \
  150. ..\fldsets.c \
  151. ..\pickicon.c \
  152. ..\printer1.c \
  153. ..\prtprop.c \
  154. ..\psxa.c \
  155. ..\rdrag.c \
  156. ..\reglist.c \
  157. ..\restart.c \
  158. ..\rundll32.c \
  159. ..\shared.c \
  160. ..\shlexec2.c \
  161. ..\shprsht.c \
  162. ..\shtdndlg.c \
  163. ..\stream.c \
  164. ..\undo.c \
  165. ..\version.c \
  166. ..\viewcomm.c \
  167. ..\ynlist.c \
  168. ..\exec2nt.c \
  169. ..\argvw.c \
  170. ..\lstrfns.c \
  171. ..\psdocurd.c \
  172. ..\regenv.c \
  173. ..\nothunk.c \
  174. ..\thunktxt.c \
  175. ..\pifdat.c \
  176. ..\piffnt.c \
  177. ..\pifhot.c \
  178. ..\pifinf.c \
  179. ..\piflib.c \
  180. ..\pifmem.c \
  181. ..\pifmgr.c \
  182. ..\pifmsc.c \
  183. ..\pifprg.c \
  184. ..\pifsub.c \
  185. ..\pifvid.c \
  186. ..\lnkcon.c \
  187. ..\lnkfnt.c \
  188. ..\lnkprev.c \
  189. ..\lnkmisc.c \
  190. ..\dbcs.c \
  191. ..\proxynt.c \
  192. ..\apithk.c \
  193. ..\utilnt.c
  194. PRECOMPILED_INCLUDE = ..\shellprv.h
  195. #
  196. #
  197. # Con-fusion
  198. #
  199. # we can't use 123 because rundll32 will activate it, rendering all CPLs manifested
  200. SXS_MANIFEST_RESOURCE_ID=124
  201. SXS_APPLICATION_MANIFEST=WindowsShell.Manifest