mirror of https://github.com/lianthony/NT4.0
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.
195 lines
4.8 KiB
195 lines
4.8 KiB
##########################################################################
|
|
#
|
|
# Shell DLL Makefile
|
|
# Microsoft Confidential
|
|
# Copyright (C) Microsoft Corporation 1991
|
|
# All Rights Reserved.
|
|
#
|
|
##########################################################################
|
|
|
|
!ifdef NTMAKEENV
|
|
|
|
#
|
|
# Build using BUILD.EXE (Do not edit this section of this file, edit SOURCES)
|
|
#
|
|
!INCLUDE $(NTMAKEENV)\makefile.def
|
|
|
|
!else # NTMAKEENV
|
|
|
|
#
|
|
# Build using NMAKE.EXE
|
|
#
|
|
|
|
RES_DIR=..
|
|
PRIVINC=shellprv
|
|
ROOT=..\..\..\..
|
|
DLLBASE=PREFBASE
|
|
|
|
!ifdef VERDIR
|
|
ROOT=..\$(ROOT)
|
|
WIN32=TRUE
|
|
!else
|
|
VERSIONLIST=debug retail
|
|
!endif
|
|
|
|
NAME=shell32
|
|
RESNAME=shell2.res
|
|
DEFNAME=shell232.def
|
|
RCNAME=shell232.rc
|
|
RCVNAME=shell2.rcv
|
|
RCFLAGS=$(RCFLAGS) -DWIN32
|
|
###############################
|
|
###############################L32FLAGS=$(L32FLAGS) /FIXED
|
|
###############################
|
|
!ifndef ILINK
|
|
!if "$(VERDIR)" == "retail"
|
|
L32FLAGS=$(L32FLAGS) /ORDER:@..\shelldll.ord
|
|
!endif
|
|
!endif
|
|
CFLAGS=$(CFLAGS) -Gy
|
|
|
|
DLLENTRY = LibMain
|
|
|
|
## MYWIN32S=1
|
|
!IFDEF MYWIN32S
|
|
CFLAGS = $(CFLAGS) -DWIN32S
|
|
W32SYS = w32sysh
|
|
!ENDIF
|
|
|
|
WATSON=1
|
|
!IFDEF WATSON
|
|
CFLAGS = $(CFLAGS) -DWATSON
|
|
RFLAGS = -DWATSON
|
|
!ENDIF
|
|
|
|
!ifndef NOFILESYNC
|
|
# By default, the briefcase is enabled now
|
|
CFLAGS=$(CFLAGS) -DSYNC_BRIEFCASE
|
|
RCFLAGS=$(RCFLAGS) -DSYNC_BRIEFCASE
|
|
!endif
|
|
|
|
# Note that no segment is specified; each object will go in its own segment
|
|
|
|
#-------------------------------------------------------------------------
|
|
# WIN32 object files and libraries
|
|
#-------------------------------------------------------------------------
|
|
#CFLAGS=$(CFLAGS)
|
|
#RCFLAGS=$(RCFLAGS)
|
|
|
|
#
|
|
# list all .cpp files here, they will use a different precompiled header
|
|
# file than all the .c files.
|
|
#
|
|
#CPPOBJS=fstream.obj
|
|
MISCOBJ0=fstream.obj shlunimp.obj
|
|
|
|
PCHOBJ0=defxicon.obj newmenu.obj defcm.obj fsmenu.obj defviewx.obj idmk.obj idlist.obj idldata.obj rdrag.obj
|
|
|
|
PCHOBJ1= \
|
|
binder.obj link.obj exec.obj ole2dup.obj version.obj \
|
|
fileop.obj \
|
|
shlexec.obj shlexec2.obj shlink.obj lnktrack.obj \
|
|
path.obj debug.obj \
|
|
cstrings.obj shguid.obj
|
|
|
|
MISCOBJ2=shl1632.obj shl3216.obj
|
|
|
|
PCHOBJ2=init.obj
|
|
|
|
PCHOBJ3=restart.obj mulprsht.obj fileicon.obj rundlg.obj filetbl.obj \
|
|
smrttile.obj proxypg.obj psxa.obj \
|
|
pickicon.obj expenv.obj extract.obj
|
|
|
|
PCHOBJ4=msgbox.obj commobj.obj \
|
|
stream.obj fsnotify.obj \
|
|
futil.obj os.obj util.obj
|
|
|
|
PCHOBJ5=copy.obj copyhook.obj dragdrop.obj lvutil.obj undo.obj bitbuck.obj \
|
|
reglist.obj
|
|
|
|
PCHOBJ6=control.obj control1.obj cplobj.obj \
|
|
printer.obj printer1.obj printobj.obj prqwnd.obj prtprop.obj \
|
|
prcache.obj wcommobj.obj commui.obj
|
|
|
|
PCHOBJ7=drivesx.obj idldrop.obj \
|
|
ultrootx.obj netviewx.obj shitemid.obj fstreex.obj fsassoc.obj\
|
|
shlnot.obj shprsht.obj drawpie.obj regitms.obj viewcomm.obj
|
|
|
|
PCHOBJ8=docfindx.obj docfind2.obj netfind.obj \
|
|
grepfind.obj grepqmt.obj grepsrch.obj grepstrs.obj
|
|
|
|
PCHOBJ9=rundll32.obj defclsf.obj help.obj \
|
|
clsobj.obj defext.obj shlobjs.obj ole2dup2.obj malloc.obj \
|
|
oledrag.obj viewer.obj about.obj ole2def.obj bookmk.obj hash.obj
|
|
|
|
STATOBJ0=shlguid.obj
|
|
|
|
# Note that VERSION needs to come before KERNEL32 because VerLanguageName is
|
|
# also exported from KERNEL32, but is not implemented
|
|
# WARNING:: Dont blindly add libs here as every ... app will pull those in!
|
|
LIB0= user32.lib kernel32.lib gdi32.lib comctl32.lib advapi32.lib libcmt.lib
|
|
LIB1= uuid.lib
|
|
#-------------------------------------------------------------------------
|
|
|
|
BUILDDLL=TRUE
|
|
|
|
!include $(ROOT)\win\core\shell\common.mk
|
|
|
|
!ifdef VERDIR
|
|
|
|
!include $(SRCDIR)\depend.mk
|
|
|
|
$(RESNAME): $(SRCDIR)\defview.h $(SRCDIR)\ids.h
|
|
|
|
THUNKDIR=$(ROOT)\win\core\thunk
|
|
|
|
shlguid.obj: $(PRIVINC).pch
|
|
set OLDCL=%CL%
|
|
set CL=$(CL:-Zi =)
|
|
$(CC) -Yu$(PRIVINC).h -Fo$*.obj $(SRCDIR)\shguid.c
|
|
set CL=%OLDCL%
|
|
|
|
shl1632.obj: $(THUNKDIR)\$(VERDIR)\$(@B).asm $(THUNKDIR)\$(@B).inc $(THUNKDIR)\fltthk.inc
|
|
set OLDML=%ML%
|
|
set OLDINCLUDE=%INCLUDE%
|
|
set ML=$(AFLAGS) -DIS_32 -nologo -W2 -Zd -c -Cx -DMASM6 -DDEBLEVEL=1 $(DDEBUG) -Gc
|
|
set INCLUDE=$(THUNKDIR);$(INCLUDE)
|
|
mlx -Fo$@ $(THUNKDIR)\$(VERDIR)\$(@B).asm
|
|
set ML=%OLDML%
|
|
set INCLUDE=%OLDINCLUDE%
|
|
|
|
shl3216.obj: $(THUNKDIR)\$(VERDIR)\$(@B).asm
|
|
set OLDML=%ML%
|
|
set OLDINCLUDE=%INCLUDE%
|
|
set ML=$(AFLAGS) -DIS_32 -nologo -W2 -Zd -c -Cx -DMASM6 -Gc
|
|
set INCLUDE=$(THUNKDIR);$(INCLUDE)
|
|
mlx -Fo$@ $(THUNKDIR)\$(VERDIR)\$(@B).asm
|
|
set ML=%OLDML%
|
|
set INCLUDE=%OLDINCLUDE%
|
|
|
|
|
|
AFLAGS32 = -Gz -Zp4 -DSTD_CALL -DM4
|
|
|
|
init32.obj: ..\$(@B).asm
|
|
set OLDML=%ML%
|
|
set ML=$(AFLAGS) $(AFLAGS32)
|
|
set INCLUDE=$(THUNKDIR);$(INCLUDE)
|
|
mlx -Fo$@ ..\$(@B).asm
|
|
set ML=%OLDML%
|
|
|
|
!else #VERDIR
|
|
|
|
!if "$(BUILD)" != "clean"
|
|
all: rundll
|
|
|
|
|
|
rundll:
|
|
cd rundll
|
|
nmake BUILD="$(BUILD)"
|
|
cd ..
|
|
|
|
!endif
|
|
|
|
!endif # !VERDIR
|
|
|
|
!endif # NTMAKEENV
|