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.

128 lines
4.8 KiB

  1. CCSHELL_DIR = $(PROJECT_ROOT)
  2. TARGET_BOTH = 1
  3. NOT_UNICODE = 1
  4. BUILD_PRIVLIB = 1
  5. # This directory needs to be build last
  6. SYNCHRONIZE_DRAIN=1
  7. !include $(CCSHELL_DIR)\shlwapi\shlwapi.inc
  8. SOURCES_USED = $(SOURCES_USED) $(CCSHELL_DIR)\shlwapi\shlwapi.inc
  9. TARGETNAME = shlwapi
  10. TARGETPATH = obj
  11. TARGETTYPE = DYNLINK
  12. USE_MSVCRT = 1
  13. #VERIFY_LC = 1
  14. LC_PATH = $(PROJECT_ROOT)\lcinf
  15. LINKER_FLAGS = $(LINKER_FLAGS) -ignore:4217
  16. PASS1_PUBLISH= \
  17. {$(O)\shlwapi.lib=$(SDK_LIB_PATH)\shlwapi.lib} \
  18. {$(O)\shlwapip.lib=$(SHELL_LIB_PATH)\shlwapip.lib}
  19. TARGETLIBS = \
  20. $(SDK_LIB_PATH)\uuid.lib \
  21. $(SDK_LIB_PATH)\htmlhelp.lib \
  22. $(CCSHELL_DIR)\lib\$(O)\shguid.lib \
  23. $(CCSHELL_DIR)\lib\$(O)\shguidp.lib \
  24. $(DS_LIB_PATH)\rsa32.lib \
  25. $(SDK_LIB_PATH)\ole32.lib \
  26. $(WINDOWS_LIB_PATH)\apphelp.lib \
  27. $(CCSHELL_DIR)\ext\mlang\dll\$(O)\mlang.lib \
  28. $(SHELL_LIB_PATH)\comctlp.lib \
  29. $(SDK_LIB_PATH)\comctl32.lib \
  30. !if $(386)
  31. $(SDK_LIB_DEST)\chicago\i386\mpr.lib \
  32. !endif
  33. $(SDK_LIB_PATH)\oleaut32.lib \
  34. $(SDK_LIB_PATH)\msi.lib \
  35. $(SDK_LIB_PATH)\setupapi.lib \
  36. $(SDK_LIB_PATH)\userenv.lib
  37. # Kernel32, Gdi32, User32, and Advapi32 go here because we forward to them.
  38. LINKLIBS = ..\srca\$(O)\shlwansi.lib \
  39. ..\srcw\$(O)\shlwuni.lib \
  40. ..\srccpp\$(O)\srccpp.lib \
  41. ..\nt5api\$(O)\apithk.lib \
  42. $(CCSHELL_DIR)\lib\$(O)\stock4.lib \
  43. $(BASE_LIB_PATH)\dload.lib
  44. #
  45. # Since we use linker-forwarding for wrappers on IA64, we need the modules
  46. # as LINKLIBS. On i386 we implement them, so we can get away with using TARGETLIBS.
  47. #
  48. # for DOJ compliance, don't link to private shell libs (shell32p.lib, comctlp.lib)
  49. #
  50. !if $(386)
  51. TARGETLIBS = $(TARGETLIBS) \
  52. $(SDK_LIB_PATH)\gdi32.lib \
  53. $(SDK_LIB_PATH)\kernel32.lib \
  54. $(SDK_LIB_PATH)\user32.lib \
  55. $(SDK_LIB_PATH)\advapi32.lib \
  56. $(SDK_LIB_PATH)\shell32.lib \
  57. $(SHELL_LIB_PATH)\ieguidp.lib \
  58. $(SDK_LIB_PATH)\winmm.lib \
  59. $(SDK_LIB_PATH)\mpr.lib \
  60. $(SDK_LIB_PATH)\version.lib \
  61. $(SDK_LIB_PATH)\comdlg32.lib
  62. !else
  63. LINKLIBS = $(LINKLIBS) \
  64. $(SDK_LIB_PATH)\gdi32.lib \
  65. $(SDK_LIB_PATH)\kernel32.lib \
  66. $(SDK_LIB_PATH)\user32.lib \
  67. $(SDK_LIB_PATH)\advapi32.lib \
  68. $(SDK_LIB_PATH)\shell32.lib \
  69. $(SHELL_LIB_PATH)\ieguidp.lib \
  70. $(SDK_LIB_PATH)\winmm.lib \
  71. $(NET_LIB_PATH)\mprp.lib \
  72. $(SDK_LIB_PATH)\version.lib \
  73. $(SDK_LIB_PATH)\comdlg32.lib
  74. !endif
  75. # be careful here-- shlwapi has to run downlevel. Don't add anything to
  76. # the delayload line that you absolutely depend on having downlevel!
  77. DELAYLOAD = ole32.dll;oleaut32.dll;mlang.dll;comctl32.dll;shell32.dll;\
  78. winmm.dll;mpr.dll;version.dll;msi.dll;comdlg32.dll;\
  79. userenv.dll;setupapi.dll;apphelp.dll
  80. DLOAD_ERROR_HANDLER = shlwapi
  81. # we want to force dlcheck.exe to run on shlwapi even though we don't use kerne32
  82. # as our delayload handler
  83. DLOAD_FORCE_ERROR_CHECK = 1
  84. DLLDEF = $(O)\shlwapi.def
  85. DLLENTRY = DllMain
  86. PRIVDEF = $(O)\shlwapip.def
  87. PRIVDEFSRC = ..\shlwapi.src
  88. PRIVLIB = shlwapip.lib
  89. # Sort files alphabetically
  90. SOURCES = \
  91. ..\shlwapi.rc \
  92. ..\color.c \
  93. ..\debug.c \
  94. ..\dll.c \
  95. ..\fda.c \
  96. ..\menu.c \
  97. ..\ole2dup.c \
  98. ..\palette.c \
  99. ..\reg.c \
  100. ..\shared.c \
  101. ..\shellacl.c \
  102. ..\shperf.c \
  103. ..\strings.c \
  104. ..\strtype.c \
  105. ..\uastrfnc.c \
  106. ..\uniansi.c \
  107. ..\wsprintf.c \
  108. ..\mirror.c
  109. PRECOMPILED_INCLUDE = ..\priv.h