aboutsummaryrefslogtreecommitdiffhomepage
path: root/Makefile.local
diff options
context:
space:
mode:
authorGravatar Carl Worth <cworth@cworth.org>2009-11-10 07:14:49 -0800
committerGravatar Carl Worth <cworth@cworth.org>2009-11-10 07:24:10 -0800
commitc5dccd851a8b79d8cedbfc8f2d2b8f9be2b7fa5a (patch)
tree7eaa0b616a99460359c7e2ee593c46c6a4c64a60 /Makefile.local
parent3cdb24d38aaa4cf043526a946e0a4ae290a6881d (diff)
Implement a non-recursive make.
The idea here is that every Makefile at each lower level will be an identical, tiny file that simply defers to a top-level make. Meanwhile, the Makefile.local file at each level is a Makefile snippet to be included at the top-level into a large, flat Makefile. As such, it needs to define its rules with the entire relative directory to each file, (typically in $(dir)). The local files can also append to variables such as SRCS and CLEAN for files to be analyzed for dependencies and to be cleaned.
Diffstat (limited to 'Makefile.local')
-rw-r--r--Makefile.local16
1 files changed, 16 insertions, 0 deletions
diff --git a/Makefile.local b/Makefile.local
new file mode 100644
index 00000000..5474efc6
--- /dev/null
+++ b/Makefile.local
@@ -0,0 +1,16 @@
+all: notmuch
+
+notmuch: notmuch.o lib/notmuch.a
+ $(CC) $(NOTMUCH_LDFLAGS) $^ -o $@
+
+notmuch.1.gz:
+ gzip --stdout notmuch.1 > notmuch.1.gz
+
+install: all notmuch.1.gz
+ install -C -D notmuch $(DESTDIR)/usr/bin/notmuch
+ install -C -D notmuch.1.gz $(DESTDIR)/usr/share/man/man1
+ install -C -D notmuch-completion.bash \
+ $(DESTDIR)/etc/bash_completion.d/notmuch
+
+SRCS := $(SRCS) notmuch.c
+CLEAN := $(CLEAN) notmuch *.o