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

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