windows-nt/Source/XPSP1/NT/com/ole32/stg/ref/makefile.gcc
2020-09-26 16:20:57 +08:00

183 lines
3.4 KiB
Plaintext

#********************************************************************
#** Microsoft Windows **
#** Copyright(c) Microsoft Corp., 1992 - 1993 **
#********************************************************************
#
# GNU MAKE VERSION OF MAKEFILE FOR THE REFERENCE IMPL
#
ifneq (,)
This makefile requires GNU Make.
endif
include commk.gcc
# uncomment the appropriate line to specify whether you want
# property set code
PROPS_OPT=props
#PROPS_OPT=noprops
ifeq ($(PROPS_OPT),props)
ADD_CFLAGS += -DNEWPROPS
endif
# the base directory where the code resides
BASE_DIR=.
ifeq ($(PROPS_OPT),props)
ifneq ($(DBG_FLAGS),-DNDEBUG)
DBG_FLAGS += -DDBGPROP
endif
endif
# Put compiler specific flags in CFLAGS
CFLAGS = $(DBG_FLAGS) -D_UNIX $(ADD_CFLAGS) $(BYTE_ORDER)
ifeq ($(U_OPTS),use_unicode)
CFLAGS += -D_UNICODE=1
endif
# export variables so that sub- Make processes can see them
export CFLAGS
export DBG_FLAGS
CINC =
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 \
expdf.cxx \
cdocfile.cxx \
rexpdf.cxx \
time.cxx \
docfile.cxx \
ascii.cxx \
expst.cxx \
expiter.cxx \
storage.cxx \
mem.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
SOURCES= $(CXXFILES) $(HEADERS)
CXX_OBJS1=$(CXXFILES:%.cxx=obj/%.o)
CXX_OBJS=$(CXX_OBJS1:%.c=obj/%.o)
PROPS_OBJDIR = ./props/obj
ifeq ($(PROPS_OPT),props)
PROPS_OBJS=\
$(PROPS_OBJDIR)/psetstg.o\
$(PROPS_OBJDIR)/utils.o\
$(PROPS_OBJDIR)/ntprop.o\
$(PROPS_OBJDIR)/ntpropb.o\
$(PROPS_OBJDIR)/propstm.o\
$(PROPS_OBJDIR)/propvar.o\
$(PROPS_OBJDIR)/stgvarb.o\
$(PROPS_OBJDIR)/propstg.o\
$(PROPS_OBJDIR)/qsort.o
else
PROPS_OBJS=
endif
default: "$(OBJDIR)" propmk $(OBJDIR)/refstg.a
propmk:
cd props; $(MAKE); cd ..
#clear all the files then build
clean: clobber default
# make etags for source browsing
tags: $(SOURCES)
etags $(SOURCES)
# clear all the files:
clobber:
-@rm -rf $(OBJDIR)/*.o $(OBJDIR)/refstg.a
cd props; $(MAKE) clobber
# make the directory
"$(OBJDIR)":
-@if [ ! -r $(OBJDIR) ]; then mkdir $(OBJDIR); fi
$(OBJDIR)/refstg.a: $(CXX_OBJS) $(PROPS_OBJS)
$(ARCHIVE) $@ $(CXX_OBJS) $(PROPS_OBJS)
$(OBJDIR)/%.o: %.c
$(CC) -c $(CFLAGS) $(CINC) $< -o $@
$(OBJDIR)/%.o: %.cxx
$(CC) -c $(CFLAGS) $(CINC) $< -o $@
include depend.gcc