ledger/Makefile
2003-10-01 20:47:10 +00:00

63 lines
955 B
Makefile

define GNUCASH
true
endef
define HUQUQ
true
endef
#
# Example build: make GNUCASH=1 COMMODITY=EUR
#
CODE = amount.cc \
ledger.cc \
parse.cc \
balance.cc \
register.cc \
equity.cc \
main.cc
OBJS = $(patsubst %.cc,%.o,$(CODE))
ifndef COMMODITY
COMMODITY = \$$
endif
CFLAGS = -Wall -ansi -pedantic
CFLAGS := $(CFLAGS) -DDEFAULT_COMMODITY="\"$(COMMODITY)\""
#DFLAGS = -O3 -fomit-frame-pointer
DFLAGS = -g # -O2 # -pg
INCS = -I/usr/include/xmltok
LIBS = -lgmpxx -lgmp -lpcre
ifdef HUQUQ
CFLAGS := $(CFLAGS) -DHUQUQULLAH=1
endif
ifdef GNUCASH
CODE := $(CODE) gnucash.cc
CFLAGS := $(CFLAGS) -DREAD_GNUCASH=1
LIBS := $(LIBS) -lxmlparse
endif
all: make.deps ledger
ledger: $(OBJS)
g++ $(CFLAGS) $(INCS) $(DFLAGS) -o $@ $(OBJS) $(LIBS)
%.o: %.cc
g++ $(CFLAGS) $(INCS) $(DFLAGS) -c -o $@ $<
clean:
rm -f ledger *.o
rebuild: clean deps all
deps: make.deps
make.deps: Makefile
cc -M $(INCS) $(CODE) > $@
include make.deps