#PROFILEFLAG=-pg
OPTIFLAG=-DNDEBUG -DNPRINT -O2
DEBUGFLAG=-g
+
# turn off -pipe if linker doesn't support it
EXTRACXXFLAGS=-pipe -Wall -W -Wmissing-prototypes
-# -Woverloaded-virtual
+
+#
+# -lefence = ElectricFence.
+#
+# ElectricFence is a memory debugger which uses the
+# VM hardware to trap malloc/free errors.
+#
+#EXTRALIB+=-lefence
####
#### END USER CONFIGURABLE part.
# version info
MAJVER=0
MINVER=0
-PATCHLEVEL=16
+PATCHLEVEL=24
VERSION=$(MAJVER).$(MINVER).$(PATCHLEVEL)
CXXVER=`$(CXX) --version`
+#flower version
+NEEDEFLOWERVER=1.0.20
+
# directories
TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
OBJECTDIR=objects
HEADERDIR=hdr
CCDIR=src
-
-vpath %.cc $(CCDIR)
-vpath %.hh $(HEADERDIR)
-vpath %.y $(CCDIR)
-vpath %.l $(CCDIR)
-vpath %.o $(OBJECTDIR)
+INITDIR=init
+DEPDIR=deps
+INPUTDIR=input
+#vpath %.cc $(CCDIR)
+#vpath %.hh $(HEADERDIR)
+#vpath %.y $(CCDIR)
+#vpath %.l $(CCDIR)
+#vpath %.o $(OBJECTDIR)
+#vpath %.dep $(DEPDIR)
#
#
progdocs=$(hdr) $(mycc)
gencc=parser.cc lexer.cc
cc=$(mycc) $(gencc)
-obs=$(cc:.cc=.o)
+CCSOURCE=$(addprefix $(CCDIR)/, $(cc))
+obs=$(addprefix $(OBJECTDIR)/,$(cc:.cc=.o))
+ALLDEPS=$(addprefix $(DEPDIR)/,$(cc:.cc=.dep))
#dist
.EXPORT_ALL_VARIABLES:
# distribution files.
othersrc=lexer.l parser.y
-SCRIPTS=make_version make_patch genheader
-IFILES=dimen.tex symbol.ini kortjakje.ly pavane.ly maartje.ly\
- lilyponddefs.tex test.tex .dstreamrc
-OFILES=Makefile Variables.make Sources.make COPYING README
-DFILES=$(OFILES) $(IFILES) $(SCRIPTS)
+SCRIPTS=make_version make_patch genheader clearlily
+MAKFILES=Makefile Variables.make Sources.make Initial.make Generate.make \
+ configure
+OFILES=COPYING README NEWS TODO
+IFILES= standchen.tex titledefs.tex pavane.tex lilyponddefs.tex test.tex .dstreamrc dimen.tex
+DFILES=$(MAKFILES) $(OFILES) $(IFILES) $(SCRIPTS)
#compiling
LOADLIBES=-L$(FLOWERDIR) -lflower $(EXTRALIB)
exe=$(PACKAGENAME)
OUTPUT_OPTION=$< -o $@
DDIR=$(TOPDIR)/$(DNAME)
-SUBDIRS=Documentation $(OBJECTDIR) $(CCDIR) $(HEADERDIR)
+SUBDIRS=Documentation $(OBJECTDIR) $(CCDIR) $(HEADERDIR) $(INITDIR) $(DEPDIR) \
+ $(INPUTDIR)
+
+depfile=deps/$(subst .o,.dep,$(notdir $@))
+DODEP=rm -f $(depfile); DEPENDENCIES_OUTPUT="$(depfile) $(OBJECTDIR)/$(notdir $@)"
+