windows-nt/Source/XPSP1/NT/com/ole32/stg/ref/makefile.msc

186 lines
4 KiB
Plaintext
Raw Normal View History

2020-09-26 03:20:57 -05:00
#********************************************************************
#** Microsoft Windows **
#** Copyright(c) Microsoft Corp., 1992 - 1996 **
#********************************************************************
!INCLUDE commk.msc
# default to compiling property set support
POPTS=
# include property code only for non-ASCII and when NOPROPS is defined
!IF "$(NOPROPS)" == ""
POPTS=-DNEWPROPS
!ENDIF
# Put compiler specific flags on the first line
CFLAGS = -c -nologo $(DBG_FLAGS) -Zle -W4 \
-D_MT $(POPTS) $(U_OPTS) $(BYTE_ORDER) $(ADD_CFLAGS)
# Put linker specific flags here.
LFLAGS = /nologo /dll $(LDBG_FLAGS)
# The reference implementation needs a C runtime library
# for DEBUG, use msvcrtd.lib , for retail, use msvcrt.dll
# $(LIBC) is defined in commk.msc -- the common makefile
EXELIBS = $(LIBC)
OBJDIR = obj
CXXFILES = \
.\msf.cxx\
.\dir.cxx\
.\dirp.cxx\
.\fat.cxx\
.\mstream.cxx\
.\sstream.cxx\
.\msfiter.cxx\
.\header.cxx\
.\difat.cxx\
.\page.cxx\
.\vect.cxx\
.\refilb.cxx\
.\funcs.cxx\
.\chinst.cxx\
.\entry.cxx\
.\dffuncs.cxx\
.\dfstream.cxx\
.\dfiter.cxx\
.\iter.cxx\
.\cdocfile.cxx\
.\rexpdf.cxx\
.\docfile.cxx\
.\ascii.cxx\
.\expst.cxx\
.\expiter.cxx\
.\expdf.cxx\
.\storage.cxx\
.\mem.cxx\
.\time.cxx \
.\wchar.c \
HEADERS= ascii.hxx\
dfbasis.hxx\
expiter.hxx\
iter.hxx\
mread.hxx\
byteordr.hxx\
expdf.hxx\
expst.hxx\
time.hxx\
h\cdocfile.hxx\
h\dirfunc.hxx\
h\handle.hxx\
h\piter.hxx\
h\storage.h\
h\chinst.hxx\
h\docfile.hxx\
h\header.hxx\
h\props.h\
h\storagep.h\
h\dfexcept.hxx\
h\docfilep.hxx\
h\mem.hxx\
h\propstm.hxx\
h\tchar.h\
h\dffuncs.hxx\
h\entry.hxx\
h\msf.hxx\
h\ref.hxx\
h\vect.hxx\
h\dfmsp.hxx\
h\error.hxx\
h\msffunc.hxx\
h\refilb.hxx\
h\vectfunc.hxx\
h\dfver.h\
h\fat.hxx\
h\msfiter.hxx\
h\revert.hxx\
h\wchar.h\
h\difat.hxx\
h\funcs.hxx\
h\ole.hxx\
h\rexpdf.hxx\
h\dir.hxx\
h\page.hxx\
h\sstream.hxx
CXX_OBJS=$(CXXFILES:.cxx=.obj)
CXX_OBJS=$(CXX_OBJS:.c=.obj)
CXX_OBJS=$(CXX_OBJS:.\=obj\)
PROPS_OBJDIR=.\props\obj
PROPS_OBJS=\
$(PROPS_OBJDIR)\psetstg.obj\
$(PROPS_OBJDIR)\utils.obj\
$(PROPS_OBJDIR)\ntprop.obj\
$(PROPS_OBJDIR)\ntpropb.obj\
$(PROPS_OBJDIR)\propstm.obj\
$(PROPS_OBJDIR)\propvar.obj\
$(PROPS_OBJDIR)\stgvarb.obj\
$(PROPS_OBJDIR)\propstg.obj
default: $(OBJDIR) propmk $(OBJDIR)\refstg.dll
propmk:
cd props
nmake /$(MAKEFLAGS)
cd ..
#clear all the files then build
clean: clobber default
# clear all the files
clobber:
@if exist "$(OBJDIR)\*.obj" erase "$(OBJDIR)\*.obj"
@if exist "$(OBJDIR)\refstg.dll" erase "$(OBJDIR)\refstg.dll"
@if exist "$(OBJDIR)\refstg.dll" erase "$(OBJDIR)\refstg.dll"
@if exist "$(OBJDIR)\refstg.lib" erase "$(OBJDIR)\refstg.lib"
@if exist "$(OBJDIR)\refstg.map" erase "$(OBJDIR)\refstg.map"
@if exist "$(OBJDIR)\refstg.exp" erase "$(OBJDIR)\refstg.exp"
@if exist "$(OBJDIR)\refstg.lnk" erase "$(OBJDIR)\refstg.lnk"
cd props
nmake clobber
cd ..
# make the directory if it does not exist
$(OBJDIR):
@if not exist "$(OBJDIR)" mkdir $(OBJDIR)
!IF "$(POPTS)" != ""
OBJS=$(CXX_OBJS) $(PROPS_OBJS)
DEF_FILE=refprop.def
!ELSE
OBJS=$(CXX_OBJS)
DEF_FILE=refstg.def
!ENDIF
$(OBJDIR)\refstg.dll: $(OBJS)
$(LINKER) @<<$*.lnk
$(LFLAGS)
$(OBJS: = ^
)
$(EXELIBS)
/OUT:$*.dll
/MAP:$*.map
/DEF:$(DEF_FILE)
<<KEEP
TAGS:
etags $(HEADERS) $(CXX_FILES)
cd props
nmake tags
cd ..
{}.c{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) $(CINC) /Fo$(OBJDIR)\ $<
{}.cxx{$(OBJDIR)}.obj:
$(CC) $(CFLAGS) $(CINC) /Fo$(OBJDIR)\ $<
!INCLUDE depend.msc