windows-nt/Source/XPSP1/NT/shell/shlwapi/dll/sources
2020-09-26 16:20:57 +08:00

129 lines
4.8 KiB
Plaintext

CCSHELL_DIR = $(PROJECT_ROOT)
TARGET_BOTH = 1
NOT_UNICODE = 1
BUILD_PRIVLIB = 1
# This directory needs to be build last
SYNCHRONIZE_DRAIN=1
!include $(CCSHELL_DIR)\shlwapi\shlwapi.inc
SOURCES_USED = $(SOURCES_USED) $(CCSHELL_DIR)\shlwapi\shlwapi.inc
TARGETNAME = shlwapi
TARGETPATH = obj
TARGETTYPE = DYNLINK
USE_MSVCRT = 1
#VERIFY_LC = 1
LC_PATH = $(PROJECT_ROOT)\lcinf
LINKER_FLAGS = $(LINKER_FLAGS) -ignore:4217
PASS1_PUBLISH= \
{$(O)\shlwapi.lib=$(SDK_LIB_PATH)\shlwapi.lib} \
{$(O)\shlwapip.lib=$(SHELL_LIB_PATH)\shlwapip.lib}
TARGETLIBS = \
$(SDK_LIB_PATH)\uuid.lib \
$(SDK_LIB_PATH)\htmlhelp.lib \
$(CCSHELL_DIR)\lib\$(O)\shguid.lib \
$(CCSHELL_DIR)\lib\$(O)\shguidp.lib \
$(DS_LIB_PATH)\rsa32.lib \
$(SDK_LIB_PATH)\ole32.lib \
$(WINDOWS_LIB_PATH)\apphelp.lib \
$(CCSHELL_DIR)\ext\mlang\dll\$(O)\mlang.lib \
$(SHELL_LIB_PATH)\comctlp.lib \
$(SDK_LIB_PATH)\comctl32.lib \
!if $(386)
$(SDK_LIB_DEST)\chicago\i386\mpr.lib \
!endif
$(SDK_LIB_PATH)\oleaut32.lib \
$(SDK_LIB_PATH)\msi.lib \
$(SDK_LIB_PATH)\setupapi.lib \
$(SDK_LIB_PATH)\userenv.lib
# Kernel32, Gdi32, User32, and Advapi32 go here because we forward to them.
LINKLIBS = ..\srca\$(O)\shlwansi.lib \
..\srcw\$(O)\shlwuni.lib \
..\srccpp\$(O)\srccpp.lib \
..\nt5api\$(O)\apithk.lib \
$(CCSHELL_DIR)\lib\$(O)\stock4.lib \
$(BASE_LIB_PATH)\dload.lib
#
# Since we use linker-forwarding for wrappers on IA64, we need the modules
# as LINKLIBS. On i386 we implement them, so we can get away with using TARGETLIBS.
#
# for DOJ compliance, don't link to private shell libs (shell32p.lib, comctlp.lib)
#
!if $(386)
TARGETLIBS = $(TARGETLIBS) \
$(SDK_LIB_PATH)\gdi32.lib \
$(SDK_LIB_PATH)\kernel32.lib \
$(SDK_LIB_PATH)\user32.lib \
$(SDK_LIB_PATH)\advapi32.lib \
$(SDK_LIB_PATH)\shell32.lib \
$(SHELL_LIB_PATH)\ieguidp.lib \
$(SDK_LIB_PATH)\winmm.lib \
$(SDK_LIB_PATH)\mpr.lib \
$(SDK_LIB_PATH)\version.lib \
$(SDK_LIB_PATH)\comdlg32.lib
!else
LINKLIBS = $(LINKLIBS) \
$(SDK_LIB_PATH)\gdi32.lib \
$(SDK_LIB_PATH)\kernel32.lib \
$(SDK_LIB_PATH)\user32.lib \
$(SDK_LIB_PATH)\advapi32.lib \
$(SDK_LIB_PATH)\shell32.lib \
$(SHELL_LIB_PATH)\ieguidp.lib \
$(SDK_LIB_PATH)\winmm.lib \
$(NET_LIB_PATH)\mprp.lib \
$(SDK_LIB_PATH)\version.lib \
$(SDK_LIB_PATH)\comdlg32.lib
!endif
# be careful here-- shlwapi has to run downlevel. Don't add anything to
# the delayload line that you absolutely depend on having downlevel!
DELAYLOAD = ole32.dll;oleaut32.dll;mlang.dll;comctl32.dll;shell32.dll;\
winmm.dll;mpr.dll;version.dll;msi.dll;comdlg32.dll;\
userenv.dll;setupapi.dll;apphelp.dll
DLOAD_ERROR_HANDLER = shlwapi
# we want to force dlcheck.exe to run on shlwapi even though we don't use kerne32
# as our delayload handler
DLOAD_FORCE_ERROR_CHECK = 1
DLLDEF = $(O)\shlwapi.def
DLLENTRY = DllMain
PRIVDEF = $(O)\shlwapip.def
PRIVDEFSRC = ..\shlwapi.src
PRIVLIB = shlwapip.lib
# Sort files alphabetically
SOURCES = \
..\shlwapi.rc \
..\color.c \
..\debug.c \
..\dll.c \
..\fda.c \
..\menu.c \
..\ole2dup.c \
..\palette.c \
..\reg.c \
..\shared.c \
..\shellacl.c \
..\shperf.c \
..\strings.c \
..\strtype.c \
..\uastrfnc.c \
..\uniansi.c \
..\wsprintf.c \
..\mirror.c
PRECOMPILED_INCLUDE = ..\priv.h