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.

304 lines
11 KiB

  1. !IF 0
  2. Copyright (c) Microsoft Corporation. All rights reserved.
  3. Module Name:
  4. sources.
  5. Abstract:
  6. This file specifies the target component being built and the list of
  7. sources files needed to build that component. Also specifies optional
  8. compiler switches and libraries that are unique for the component being
  9. built.
  10. History: 6-05-96 scousens (Scott Cousens) Created
  11. 2-25-98 scotth cleaned up and commented the heck out of it
  12. 1-21-00 reinerf moved to source depot
  13. !ENDIF
  14. TARGETPATH=obj
  15. TARGETTYPE=LIBRARY
  16. TARGETNAME=shlproxy
  17. PASS1_PUBLISH={$(O)\shlproxy.lib=$(PROJECT_LIB_PATH)\shlproxy.lib}
  18. PASS0_PUBLISH=\
  19. $(IDL_PUBLISH_TARGETS) \
  20. $(HEADER_PUBLISH_TARGETS)
  21. NO_BROWSER_FILE=1
  22. # These are used in makefile.def when building the idl files.
  23. PASS0_HEADERDIR=$(O)
  24. PASS0_SOURCEDIR=$(O)
  25. MIDL_UUIDDIR=$(O)
  26. MIDL_TLBDIR=$(O)
  27. MIDL_NO_ROBUST = 1
  28. # needs to run on Win95 and NT 3.51
  29. # specify -Oicf once
  30. MIDL_OPTIMIZATION=$(MIDL_OPTIMIZATION:-Oicf=) -Oicf
  31. C_DEFINES = -DWIN32=300 -D_CAIRO_=300 -DREGISTER_PROXY_DLL
  32. INCLUDES=.;$(INCLUDES);$(SDK_LIB_PATH)
  33. # HOW TO ADD A FILE:
  34. #
  35. # You should simply add your files to the lists below according
  36. # to these instructions. In most cases, you should not need to
  37. # add anything to makefile.inc. The inference rules there cover
  38. # almost everything but the hole in the ozone layer.
  39. #
  40. # IDL FILES
  41. #
  42. # To add foo.idl to the build (as an example):
  43. #
  44. # 1) add foo.idl to the IDL_SOURCES list. This will create foo.tlb and obj\*\foo.h.
  45. #
  46. # 2) ONLY IF NECESSARY should you publish foo.idl, $O\foo.tlb, or $O\foo.h to other directories so external
  47. # projects can use them. If only things in the shell project are using the interfaces then
  48. # you should publish the files in a private location (eg: $(PROJECT_INC_PATH) for .h's and .idl's or
  49. # $(PROJECT_ROOT)\lib\$(O) for .tlb's). Simply add the correct publish rule to IDL_PUBLISH_TARGETS to accomplish this.
  50. #
  51. # 3) Optional: to add your object library to ActxPrxy.dll, add an entries for the $(O)\foo_p.c file
  52. # to the PROXY_SOURCES list below and update $(BASEDIR)\MergedComponents\ActxPrxy\dlldatax.c as appropriate.
  53. #
  54. # 4) Optional: to add your GUIDs to shuuid.lib (and thus sdk\lib\uuid.lib), add an entry to
  55. # ..\uuid\makefile.inc and ..\uuid\sources
  56. #
  57. # (Notice this is in alphabetical order. Hint. Hint.)
  58. IDL_SOURCES= \
  59. accore.idl \
  60. brdispp.idl \
  61. chanmgr.idl \
  62. CommonControls.idl\
  63. emptyvc.idl \
  64. hliface.idl \
  65. iepriv.idl \
  66. imapi.idl \
  67. mlang.idl \
  68. msident.idl \
  69. msieftp.idl \
  70. opsprof.idl \
  71. shappmgr.idl \
  72. shgina.idl \
  73. shimgdata.idl \
  74. shimgvw.idl \
  75. shldisp.idl \
  76. shobjidl.idl \
  77. shpriv.idl \
  78. shtypes.idl \
  79. tlog.idl \
  80. tlogstg.idl \
  81. theme.idl \
  82. vrsscan.idl \
  83. webvw.idl
  84. # files generated from .idl's that are published
  85. #
  86. # NOTE: PUBLIC only files go here, if it is under $(PROJECT_ROOT) then
  87. # it belongs in the PRIVATE_TARGETS list
  88. IDL_PUBLISH_TARGETS= \
  89. {chanmgr.idl=$(SDK_INC_PATH)\chanmgr.idl} \
  90. {CommonControls.idl=$(SDK_INC_PATH)\CommonControls.idl} \
  91. {$O\CommonControls.h=$(SDK_INC_PATH)\CommonControls.h} \
  92. {$O\chanmgr.h=$(SDK_INC_PATH)\chanmgr.h} \
  93. {emptyvc.idl=$(SDK_INC_PATH)\emptyvc.idl} \
  94. {$O\emptyvc.h=$(SDK_INC_PATH)\emptyvc.h} \
  95. {hliface.idl=$(SDK_INC_PATH)\hliface.idl} \
  96. {$O\hliface.h=$(SDK_INC_PATH)\hliface.h} \
  97. {iepriv.idl=$(PROJECT_INC_PATH)\iepriv.idl} \
  98. {$O\iepriv.h=$(PROJECT_INC_PATH)\iepriv.h} \
  99. {$O\imapi.h=$(SDK_INC_PATH)\imapi.h} \
  100. {mlang.idl=$(SDK_INC_PATH)\mlang.idl} \
  101. {$O\mlang.h=$(SDK_INC_PATH)\mlang.h} \
  102. {$O\msident.h=$(SHELL_INC_PATH)\msident.h} \
  103. {shappmgr.idl=$(SDK_INC_PATH)\shappmgr.idl} \
  104. {$O\shappmgr.h=$(SDK_INC_PATH)\shappmgr.h} \
  105. {$O\shgina.h=$(PROJECT_INC_PATH)\shgina.h} \
  106. {shimgdata.idl=$(PROJECT_INC_PATH)\shimgdata.idl} \
  107. {$O\shimgdata.h=$(PROJECT_INC_PATH)\shimgdata.h} \
  108. {shldisp.idl=$(SDK_INC_PATH)\shldisp.idl} \
  109. {$O\shldisp.h=$(SDK_INC_PATH)\shldisp.h} \
  110. {$O\shobjidl_pub.idl=$(SDK_INC_PATH)\shobjidl.idl} \
  111. {$O\shobjidl_pub.h=$(SDK_INC_PATH)\shobjidl.h} \
  112. {shpriv.idl=$(PROJECT_INC_PATH)\shpriv.idl} \
  113. {$O\shpriv.h=$(PROJECT_INC_PATH)\shpriv.h} \
  114. {shtypes.idl=$(SDK_INC_PATH)\shtypes.idl} \
  115. {$O\shtypes.h=$(SDK_INC_PATH)\shtypes.h} \
  116. {tlog.idl=$(PROJECT_INC_PATH)\tlog.idl} \
  117. {$O\tlog.h=$(PROJECT_INC_PATH)\tlog.h} \
  118. {tlogstg.idl=$(PROJECT_INC_PATH)\tlogstg.idl} \
  119. {$O\tlogstg.h=$(PROJECT_INC_PATH)\tlogstg.h} \
  120. {$O\vrsscan.h=$(PROJECT_INC_PATH)\vrsscan.h}
  121. # proxy stubs that are part of ActxPrxy.dll
  122. PROXY_SOURCES= \
  123. $(O)\iepriv_p.c \
  124. $(O)\shpriv_p.c \
  125. $(O)\shldisp_p.c \
  126. $(O)\shobjidl_p.c \
  127. $(O)\imapi_p.c \
  128. wire_mar.c
  129. #
  130. # This list is used to publish all the non-idl generated PUBLIC header files.
  131. #
  132. # NOTE: If you want to add a header to this list and it is a generated
  133. # file, then you may have to add the file to the NTTARGETFILE0 list
  134. # as well as rules for its generation in makefile.inc.
  135. #
  136. HEADER_PUBLISH_TARGETS= \
  137. {aclui.h=$(SDK_INC_PATH)\aclui.h} \
  138. {badapps.h=$(PROJECT_INC_PATH)\badapps.h} \
  139. {$O\cmnquery.h=$(SDK_INC_PATH)\cmnquery.h} \
  140. {$O\cmnqueryp.h=$(PROJECT_INC_PATH)\cmnquryp.h} \
  141. {cleanoc.h=$(SHELL_INC_PATH)\cleanoc.h} \
  142. {color.dlg=$(SDK_INC_PATH)\color.dlg} \
  143. {$O\commctrl.h=$(SDK_INC_PATH)\commctrl.h} \
  144. {$O\commctrl.rh=$(SDK_INC_PATH)\commctrl.rh} \
  145. {$O\commctrlp.h=$(PROJECT_INC_PATH)\comctrlp.h} \
  146. {$O\commdlg.h=$(SDK_INC_PATH)\commdlg.h} \
  147. {$O\commdlgp.h=$(PROJECT_INC_PATH)\commdlgp.h} \
  148. {cplext.h=$(SDK_INC_PATH)\cplext.h} \
  149. {$O\cpl.h=$(SDK_INC_PATH)\cpl.h} \
  150. {$O\cplp.h=$(PROJECT_INC_PATH)\cplp.h} \
  151. {dlgs.h=$(SDK_INC_PATH)\dlgs.h} \
  152. {$O\dsclient.h=$(SDK_INC_PATH)\dsclient.h} \
  153. {$O\dsclientp.h=$(PROJECT_INC_PATH)\dsclintp.h} \
  154. {$O\dsquery.h=$(SDK_INC_PATH)\dsquery.h} \
  155. {$O\dsqueryp.h=$(PROJECT_INC_PATH)\dsqueryp.h} \
  156. {dssec.w=$(PROJECT_INC_PATH)\dssec.h} \
  157. {fileopen.dlg=$(SDK_INC_PATH)\fileopen.dlg} \
  158. {findtext.dlg=$(SDK_INC_PATH)\findtext.dlg} \
  159. {font.dlg=$(SDK_INC_PATH)\font.dlg} \
  160. {ginabmps.rc=$(PROJECT_INC_PATH)\ginabmps.rc} \
  161. {ginadlgs.rc=$(PROJECT_INC_PATH)\ginadlgs.rc} \
  162. {ginarcid.h=$(PROJECT_INC_PATH)\ginarcid.h} \
  163. {ginastrs.rc=$(PROJECT_INC_PATH)\ginastrs.rc} \
  164. {help.h=$(PROJECT_INC_PATH)\help.h} \
  165. {ieguidp.h=$(PROJECT_INC_PATH)\ieguidp.h} \
  166. {inetcpl.h=$(SHELL_INC_PATH)\inetcpl.h} \
  167. {$O\intshcut.h=$(SDK_INC_PATH)\intshcut.h} \
  168. {isguids.h=$(SDK_INC_PATH)\isguids.h} \
  169. {lpcfus.h=$(PROJECT_INC_PATH)\lpcfus.h} \
  170. {lpcgeneric.h=$(PROJECT_INC_PATH)\lpcgeneric.h} \
  171. {lpcthemes.h=$(PROJECT_INC_PATH)\lpcthemes.h} \
  172. {msluapi.h=$(SHELL_INC_PATH)\msluapi.h} \
  173. {msluguid.h=$(SHELL_INC_PATH)\msluguid.h} \
  174. {msprintx.h=$(PROJECT_INC_PATH)\msprintx.h} \
  175. {msshrui.h=$(PROJECT_INC_PATH)\msshrui.h} \
  176. {$O\multimon.h=$(SDK_INC_PATH)\multimon.h} \
  177. {$O\multimonp.h=$(PROJECT_INC_PATH)\multimop.h} \
  178. {pif.h=$(PROJECT_INC_PATH)\pif.h} \
  179. {$O\powrprof.h=$(SDK_INC_PATH)\powrprof.h} \
  180. {$O\powrprofp.h=$(PROJECT_INC_PATH)\powrprofp.h} \
  181. {prnsetup.dlg=$(SDK_INC_PATH)\prnsetup.dlg} \
  182. {$O\prsht.h=$(SDK_INC_PATH)\prsht.h} \
  183. {$O\prshtp.h=$(PROJECT_INC_PATH)\prshtp.h} \
  184. {ratings.h=$(SDK_INC_PATH)\ratings.h} \
  185. {schemadef.h=$(SDK_INC_PATH)\schemadef.h} \
  186. {shdispid.h=$(SDK_INC_PATH)\shdispid.h} \
  187. {$O\shellapi.h=$(SDK_INC_PATH)\shellapi.h} \
  188. {$O\shellapip.h=$(PROJECT_INC_PATH)\shlapip.h} \
  189. {shellids.h=$(PROJECT_INC_PATH)\shellids.h} \
  190. {shfolder.h=$(SDK_INC_PATH)\shfolder.h} \
  191. {shfusion.h=$(PROJECT_INC_PATH)\shfusion.h} \
  192. {$O\shlguid.h=$(SDK_INC_PATH)\shlguid.h} \
  193. {$O\shlguidp.h=$(PROJECT_INC_PATH)\shlguidp.h} \
  194. {$O\shlobj.h=$(SDK_INC_PATH)\shlobj.h} \
  195. {$O\shlobjp.h=$(PROJECT_INC_PATH)\shlobjp.h} \
  196. {$O\shlwapi.h=$(SDK_INC_PATH)\shlwapi.h} \
  197. {$O\shlwapip.h=$(PROJECT_INC_PATH)\shlwapip.h} \
  198. {systrayp.h=$(PROJECT_INC_PATH)\systrayp.h} \
  199. {tmschema.h=$(SDK_INC_PATH)\tmschema.h} \
  200. {uxtheme.h=$(SDK_INC_PATH)\uxtheme.h} \
  201. {uxthemep.h=$(PROJECT_INC_PATH)\uxthemep.h} \
  202. {uastrfnc.h=$(PROJECT_INC_PATH)\uastrfnc.h} \
  203. {webvwid.h=$(SDK_INC_PATH)\webvwid.h} \
  204. {winfoldr.w=$(PROJECT_INC_PATH)\winfoldr.h} \
  205. {$O\winver.h=$(SDK_INC_PATH)\winver.h} \
  206. {w95wraps.h=$(PROJECT_INC_PATH)\w95wraps.h} \
  207. {imapi\burnsys.w=$(PROJECT_INC_PATH)\imapi\burnsys.h} \
  208. {imapi\burnV.w=$(PROJECT_INC_PATH)\imapi\burnV.h} \
  209. {imapi\imagefile.w=$(PROJECT_INC_PATH)\imapi\imagefile.h} \
  210. {imapi\imapipub.w=$(PROJECT_INC_PATH)\imapi\imapipub.h} \
  211. {imapi\imapiRegistry.w=$(PROJECT_INC_PATH)\imapi\imapiRegistry.h} \
  212. {imapi\mmcThings.w=$(PROJECT_INC_PATH)\imapi\mmcThings.h} \
  213. {imapi\scsiThings.w=$(PROJECT_INC_PATH)\imapi\scsiThings.h} \
  214. {imapi\imapierror.w=$(SDK_INC_PATH)\imapierror.h}
  215. #
  216. # This list is used to copy all the PRIVATE shell files. You cannot use publishing
  217. # for private files since published files must be under \nt\public
  218. #
  219. # NOTE: If you want to add a file to this list and it is a generated
  220. # file, then you may have to add rules for its generation in makefile.inc.
  221. #
  222. PRIVATE_TARGETS= \
  223. $(PROJECT_ROOT)\lib\$(O)\brdispp.tlb \
  224. $(PROJECT_ROOT)\inc\$(O)\brdispp.h \
  225. $(PROJECT_ROOT)\lib\$(O)\brdispp_i.c \
  226. $(PROJECT_ROOT)\inc\$(O)\intshctp.h \
  227. $(PROJECT_ROOT)\lib\$(O)\iepriv_i.c \
  228. $(PROJECT_ROOT)\lib\$(O)\msieftp.tlb \
  229. $(PROJECT_ROOT)\inc\$(O)\msieftp.h \
  230. $(PROJECT_ROOT)\lib\$(O)\msieftp_i.c \
  231. $(PROJECT_ROOT)\lib\$(O)\shgina.tlb \
  232. $(PROJECT_ROOT)\lib\$(O)\shldisp.tlb \
  233. $(PROJECT_ROOT)\inc\$(O)\shobjidlp.h \
  234. $(PROJECT_ROOT)\lib\$(O)\shpriv_i.c \
  235. $(PROJECT_ROOT)\lib\$(O)\theme.tlb \
  236. $(PROJECT_ROOT)\inc\$(O)\theme.h \
  237. $(PROJECT_ROOT)\lib\$(O)\theme_i.c \
  238. $(PROJECT_ROOT)\lib\$(O)\webvw.tlb \
  239. $(PROJECT_ROOT)\inc\$(O)\webvw.h \
  240. $(PROJECT_ROOT)\lib\$(O)\webvw_i.c \
  241. $(PROJECT_ROOT)\lib\$(O)\shimgvw.tlb \
  242. $(PROJECT_ROOT)\inc\$(O)\shimgvw.h \
  243. $(PROJECT_ROOT)\lib\$(O)\shimgvw_i.c \
  244. $(PROJECT_ROOT)\inc\$(O)\opsprof.h
  245. SOURCES= \
  246. $(IDL_SOURCES) \
  247. $(PROXY_SOURCES)
  248. # Note: PRIVATE_TARGETS goes at the end because we want to build
  249. # shellapi.h *before* building the private targets (since some
  250. # private targets depend on shellapi.h)
  251. #
  252. # Note: shobjidl_priv.h comes after shobjidl_pub.h because it is
  253. # shobjidl_pub.h that triggers the creation of shobjidl_priv.h.
  254. # (We don't have a separate rule for shobjidl_priv.h because that
  255. # causes the rule to fire twice.)
  256. #
  257. NTTARGETFILE0=\
  258. $O\shobjidl_pub.h \
  259. $O\shobjidl_priv.h \
  260. $O\cmnquery.h \
  261. $O\commctrl.h \
  262. $O\commctrl.rh \
  263. $O\commdlg.h \
  264. $O\cpl.h \
  265. $O\dsclient.h \
  266. $O\dsquery.h \
  267. $O\dsqueryp.h \
  268. $O\intshcut.h \
  269. $O\intshcutp.h \
  270. $O\multimon.h \
  271. $O\powrprof.h \
  272. $O\prsht.h \
  273. $O\shellapi.h \
  274. $O\shlguid.h \
  275. $O\shlobj.h \
  276. $O\shlwapi.h \
  277. $O\winver.h \
  278. $(PRIVATE_TARGETS)