226 lines
9.2 KiB
PHP
226 lines
9.2 KiB
PHP
CCSHELL_DIR = $(PROJECT_ROOT)
|
|
|
|
BUILD_PRIVLIB = 1
|
|
SELFREGNAME = $(O)\selfreg_shell32.inf
|
|
MISCFILES = $(MISCFILES) $(SELFREGNAME)
|
|
|
|
MSC_WARNING_LEVEL=/W4
|
|
|
|
!include $(CCSHELL_DIR)\shell32\shell32.inc
|
|
SOURCES_USED = $(SOURCES_USED) $(CCSHELL_DIR)\shell32\shell32.inc
|
|
|
|
SYNCHRONIZE_DRAIN=1
|
|
|
|
TARGETNAME = shell32
|
|
TARGETPATH = obj
|
|
TARGETTYPE = DYNLINK
|
|
|
|
PASS1_PUBLISH= \
|
|
{$(O)\shell32.lib=$(SDK_LIB_PATH)\shell32.lib} \
|
|
{$(O)\shell32p.lib=$(SHELL_LIB_PATH)\shell32p.lib}
|
|
|
|
TARGETLIBS = $(LIBRARY_PLATFORM_PATH)\*\gdi32.lib \
|
|
$(LIBRARY_PLATFORM_PATH)\*\user32.lib \
|
|
$(LIBRARY_PLATFORM_PATH)\*\kernel32.lib \
|
|
..\sdspatch\$(O)\sdspatch.lib \
|
|
..\tngen\$(O)\tngen.lib \
|
|
..\menuband\$(O)\menuband.lib \
|
|
$(SDK_LIB_PATH)\advapip.lib \
|
|
$(SDK_LIB_PATH)\adsiid.lib \
|
|
$(SHELL_LIB_PATH)\shlwapip.lib \
|
|
$(SDK_LIB_PATH)\winmm.lib \
|
|
$(SDK_LIB_PATH)\msi.lib \
|
|
$(SDK_LIB_PATH)\devmgr.lib \
|
|
$(SDK_LIB_PATH)\urlmon.lib \
|
|
$(SDK_LIB_PATH)\wininet.lib \
|
|
$(SDK_LIB_PATH)\secur32.lib \
|
|
$(SDK_LIB_PATH)\winspool.lib \
|
|
$(SDK_LIB_PATH)\userenv.lib \
|
|
$(SDK_LIB_PATH)\ole32.lib \
|
|
$(SDK_LIB_PATH)\oleaut32.lib \
|
|
$(SDK_LIB_PATH)\oleacc.lib \
|
|
$(SDK_LIB_PATH)\version.lib \
|
|
$(NET_LIB_PATH)\mprp.lib \
|
|
$(SDK_LIB_PATH)\mprapi.lib \
|
|
$(SDK_LIB_PATH)\netapi32.lib \
|
|
$(SDK_LIB_PATH)\cscdll.lib \
|
|
$(SDK_LIB_PATH)\ntdsapi.lib \
|
|
$(SDK_LIB_PATH)\activeds.lib \
|
|
$(SDK_LIB_PATH)\msdasc.lib \
|
|
$(SHELL_LIB_PATH)\uxthemep.lib \
|
|
$(DS_LIB_PATH)\creduip.lib \
|
|
$(SDK_LIB_PATH)\rasapi32.lib \
|
|
$(DS_LIB_PATH)\msgina.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\shguid.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\shguidp.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\ieguidp.lib \
|
|
$(SDK_LIB_PATH)\uuid.lib \
|
|
$(SDK_LIB_PATH)\wiaguid.lib \
|
|
$(SDK_LIB_PATH)\powrprof.lib \
|
|
$(PROJECT_ROOT)\lib\$(O)\shdocvwp.lib \
|
|
$(PROJECT_ROOT)\lib\$(O)\browseui.lib \
|
|
$(PROJECT_LIB_PATH)\shdocvw.lib \
|
|
$(PROJECT_ROOT)\lib\$(O)\secutil.lib \
|
|
$(SHELL_LIB_PATH)\efsadu.lib \
|
|
$(SHELL_LIB_PATH)\linkinfo.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\xml.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\inetutil.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\shfusion.lib \
|
|
$(SDK_LIB_PATH)\msimg32.lib \
|
|
$(WINDOWS_LIB_PATH)\obj\duser.lib \
|
|
!if $(FREEBUILD)
|
|
$(WINDOWS_LIB_PATH)\directui.lib \
|
|
!else
|
|
$(WINDOWS_LIB_PATH)\directuid.lib \
|
|
!endif
|
|
$(PRINTSCAN_LIB_PATH)\printui.lib \
|
|
$(SDK_LIB_PATH)\htmlhelp.lib \
|
|
$(CCSHELL_DIR)\ext\cdfview\dll\$(O)\cdfview.lib \
|
|
$(SDK_LIB_PATH)\setupapi.lib \
|
|
$(SDK_LIB_PATH)\d3dx.lib
|
|
|
|
# Remember - only things that are listed in the DEF file go into LINKLIBS
|
|
LINKLIBS = ..\ntcpp\$(O)\srccpp.lib \
|
|
..\unicpp\ntcpp\$(O)\unicpp.lib \
|
|
$(PROJECT_ROOT)\lib\$(O)\stock.lib
|
|
|
|
TARGETLIBS = $(TARGETLIBS) \
|
|
$(SDK_LIB_PATH)\ntdll.lib \
|
|
$(SDK_LIB_PATH)\rpcrt4.lib \
|
|
$(SDK_LIB_PATH)\query.lib \
|
|
$(WINDOWS_LIB_PATH)\user32p.lib \
|
|
$(CCSHELL_DIR)\lib\$(O)\badappsu.lib \
|
|
$(SDK_LIB_PATH)\imm32.lib
|
|
|
|
# shlwapip.lib is weird.
|
|
#
|
|
# We want to put shlwapip.lib into the LINKLIBS because we have old
|
|
# exports from shell32.lib that have moved to shlwapi (which we forward to)
|
|
# and we can't remove them since people link to them by ordinal.
|
|
#
|
|
# However, LINKLIBS are linked before TARGETLIBS, which is a problem
|
|
# because shlwapip contains overrides for standard Win32 functions
|
|
# which we do not want to use. (The overrides come from the Trident
|
|
# people, who apparently rely on them.)
|
|
#
|
|
# The secret is IMPLIB_OBJS. We list shlwapip.lib there to indicate
|
|
# that we need it built in order to link, and also list it in TARGETLIBS
|
|
# to indicate the link order.
|
|
|
|
IMPLIB_OBJS = $(IMPLIB_OBJS) \
|
|
$(SHELL_LIB_PATH)\shlwapip.lib
|
|
|
|
|
|
DELAYLOAD = query.dll;winmm.dll;msi.dll;\
|
|
urlmon.dll;wininet.dll;devmgr.dll;winspool.drv;userenv.dll;\
|
|
ole32.dll;oleaut32.dll;secur32.dll;oleacc.dll;\
|
|
version.dll;mpr.dll;netapi32.dll;cscdll.dll;linkinfo.dll;\
|
|
shdocvw.dll;browseui.dll;uxtheme.dll;\
|
|
credui.dll;msgina.dll;efsadu.dll;powrprof.dll;rasapi32.dll;\
|
|
printui.dll;cdfview.dll;msimg32.dll;duser.dll;setupapi.dll;\
|
|
imm32.dll
|
|
|
|
DLOAD_ERROR_HANDLER = kernel32
|
|
|
|
DLLDEF = $(O)\shell32.def
|
|
|
|
PRIVDEFSRC = ..\shell32.src
|
|
PRIVDEF = $(O)\shell32p.def
|
|
PRIVLIB = shell32p.lib
|
|
|
|
INCLUDES = $(INCLUDES);$(PROJECT_ROOT)\lib\$(O);$(O);$(TERMSRV_INC_PATH)
|
|
|
|
USE_MSVCRT = 1
|
|
|
|
DLLENTRY = _DllMainCRTStartup
|
|
|
|
NTTARGETFILES =
|
|
|
|
# for historical reasons we include some GUIDs in the shell32 import library
|
|
DLLLIBOBJECTS = $(CCSHELL_DIR)\lib\$(O)\shguid.lib
|
|
|
|
SOURCES = \
|
|
..\shell32.rc \
|
|
..\about.c \
|
|
..\bitbuck.c \
|
|
..\bookmk.c \
|
|
..\cabstate.c \
|
|
..\clsobj.c \
|
|
..\control1.c \
|
|
..\copy.c \
|
|
..\copyhook.c \
|
|
..\cplobj.c \
|
|
..\cstrings.c \
|
|
..\debug.c \
|
|
..\defclsf.c \
|
|
..\drawpie.c \
|
|
..\exec.c \
|
|
..\extract.c \
|
|
..\expenv.c \
|
|
..\futil.c \
|
|
..\hash.c \
|
|
..\help.c \
|
|
..\init.c \
|
|
..\lvutil.c \
|
|
..\malloc.c \
|
|
..\msgbox.c \
|
|
..\ole2def.c \
|
|
..\ole2dup.c \
|
|
..\ole2dup2.c \
|
|
..\os.c \
|
|
..\path.c \
|
|
..\fldsets.c \
|
|
..\pickicon.c \
|
|
..\printer1.c \
|
|
..\prtprop.c \
|
|
..\psxa.c \
|
|
..\rdrag.c \
|
|
..\reglist.c \
|
|
..\restart.c \
|
|
..\rundll32.c \
|
|
..\shared.c \
|
|
..\shlexec2.c \
|
|
..\shprsht.c \
|
|
..\shtdndlg.c \
|
|
..\stream.c \
|
|
..\undo.c \
|
|
..\version.c \
|
|
..\viewcomm.c \
|
|
..\ynlist.c \
|
|
..\exec2nt.c \
|
|
..\argvw.c \
|
|
..\lstrfns.c \
|
|
..\psdocurd.c \
|
|
..\regenv.c \
|
|
..\nothunk.c \
|
|
..\thunktxt.c \
|
|
..\pifdat.c \
|
|
..\piffnt.c \
|
|
..\pifhot.c \
|
|
..\pifinf.c \
|
|
..\piflib.c \
|
|
..\pifmem.c \
|
|
..\pifmgr.c \
|
|
..\pifmsc.c \
|
|
..\pifprg.c \
|
|
..\pifsub.c \
|
|
..\pifvid.c \
|
|
..\lnkcon.c \
|
|
..\lnkfnt.c \
|
|
..\lnkprev.c \
|
|
..\lnkmisc.c \
|
|
..\dbcs.c \
|
|
..\proxynt.c \
|
|
..\apithk.c \
|
|
..\utilnt.c
|
|
|
|
PRECOMPILED_INCLUDE = ..\shellprv.h
|
|
|
|
#
|
|
#
|
|
# Con-fusion
|
|
#
|
|
# we can't use 123 because rundll32 will activate it, rendering all CPLs manifested
|
|
SXS_MANIFEST_RESOURCE_ID=124
|
|
SXS_APPLICATION_MANIFEST=WindowsShell.Manifest
|