# lackey - curses calendar program
-# See COPYING file for copyright and license details.
+# See COPYING file for license details.
-include config.mk
# Sources
PROG ?= lackey
-PROG_SRC ?= main view date cal util
+PROG_SRC ?= main view date cal conf util
TEST ?= test
-TEST_SRC ?= test date util
-VIEWS ?= day week month year events todo settings help
+TEST_SRC ?= test date cal conf util
+VIEWS ?= day week month year events todo settings help edit
CALS ?= dummy ical
# For ncursesw
all: $(PROG)
clean:
- rm -f src/*.o views/*.o cals/*.o $(PROG) $(TEST)
+ rm -f src/*.o views/*.o cals/*.o $(PROG) $(TEST)
dist:
tar -czf $(PROG)-$(VERSION).tar.gz --transform s::$(PROG)-$(VERSION)/: \
rm -f $(DESTDIR)$(PREFIX)/bin/$(PROG)
rm -f $(DESTDIR)$(MANPREFIX)/man1/$(PROG).1
+memcheck: $(PROG)
+ valgrind --log-file=valgrind.out \
+ --track-origins=yes \
+ --leak-check=full \
+ --leak-resolution=high \
+ ./$(PROG)
+
# Rules
$(PROG): $(PROG_SRC:%=src/%.o) $(VIEWS:%=views/%.o) $(CALS:%=cals/%.o)
$(GCC) $(CFLAGS) -o $@ $+ $(LDFLAGS)
$(TEST): $(TEST_SRC:%=src/%.o) $(CALS:%=cals/%.o)
$(GCC) $(CFLAGS) -o $@ $+ $(LDFLAGS)
-%.o: %.c $(wildcard src/*.h) makefile
+%.o: %.c $(wildcard src/*.h makefile config.mk)
$(GCC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $<
.PHONY: all clean dist install uninstall