82 lines
1.6 KiB
Makefile
82 lines
1.6 KiB
Makefile
CODE = account.cc \
|
|
amount.cc \
|
|
autoxact.cc \
|
|
balance.cc \
|
|
binary.cc \
|
|
config.cc \
|
|
datetime.cc \
|
|
debug.cc \
|
|
format.cc \
|
|
ledger.cc \
|
|
option.cc \
|
|
parser.cc \
|
|
qif.cc \
|
|
quotes.cc \
|
|
textual.cc \
|
|
valexpr.cc \
|
|
value.cc \
|
|
walk.cc
|
|
|
|
OBJS = $(patsubst %.cc,%.o,$(CODE))
|
|
|
|
#CXX = cc
|
|
CXX = g++
|
|
|
|
CFLAGS = -Wall -ansi -pedantic
|
|
#DFLAGS = -O3 -fomit-frame-pointer -DDEBUG_LEVEL=0
|
|
DFLAGS = -g -DDEBUG_LEVEL=4 -DDO_CLEANUP
|
|
#DFLAGS = -g -DDEBUG_LEVEL=2 -pg
|
|
|
|
INCS = -I/sw/include \
|
|
-I/usr/include/gcc/darwin/3.3/c++ \
|
|
-I/usr/include/gcc/darwin/3.3/c++/ppc-darwin
|
|
LIBS = -L/sw/lib -lgmp -lpcre
|
|
|
|
ifdef GNUCASH
|
|
CODE := $(CODE) gnucash.cc
|
|
OBJS := $(OBJS) gnucash.o
|
|
CFLAGS := $(CFLAGS) -DREAD_GNUCASH=1
|
|
INCS := $(INCS) -I/usr/include/httpd/xml
|
|
LIBS := $(LIBS) -L/sw/lib -lxmlparse
|
|
endif
|
|
|
|
all: make.deps ledger
|
|
|
|
docs: ledger.info ledger.pdf
|
|
|
|
libledger.a: $(OBJS)
|
|
ar rv $@ $?
|
|
ranlib $@
|
|
|
|
ledger: libledger.a main.o
|
|
$(CXX) $(CFLAGS) $(INCS) $(DFLAGS) -o $@ main.o -L. -lledger $(LIBS)
|
|
|
|
valexpr: libledger.a valexpr.cc
|
|
$(CXX) $(CFLAGS) $(INCS) $(DFLAGS) -DTEST -o $@ valexpr.cc \
|
|
-L. -lledger $(LIBS)
|
|
|
|
ledger.info: ledger.texi
|
|
makeinfo $<
|
|
|
|
ledger.pdf: ledger.texi
|
|
texi2pdf $<
|
|
|
|
%.o: %.cc
|
|
$(CXX) $(CFLAGS) $(INCS) $(DFLAGS) -c -o $@ $<
|
|
|
|
clean:
|
|
rm -f ledger valexpr libledger.a *.o *.elc *~ .\#*
|
|
rm -f *.aux *.cp *.fn *.ky *.log *.pg *.toc *.tp *.vr
|
|
rm -f .gdb_history gmon.out out
|
|
|
|
distclean fullclean: clean
|
|
rm -f *.info *.html *.pdf *.elc make.deps TAGS
|
|
|
|
rebuild: clean deps all
|
|
|
|
deps: make.deps
|
|
|
|
make.deps: Makefile.old
|
|
cc -M $(INCS) $(CODE) main.cc > $@
|
|
|
|
include make.deps
|