diff options
author | June McEnroe <june@causal.agency> | 2017-10-03 12:32:05 -0400 |
---|---|---|
committer | June McEnroe <june@causal.agency> | 2017-10-03 12:32:05 -0400 |
commit | f595106dee331dd864ebb15bab9ae17675967168 (patch) | |
tree | b683c5e61eadfe637457bd7443fc7c1b03a0c5ad /Makefile | |
parent | Remove leading blank lines (diff) | |
download | torus-f595106dee331dd864ebb15bab9ae17675967168.tar.gz torus-f595106dee331dd864ebb15bab9ae17675967168.zip |
Simplify Makefile with pattern rule
Insert rant about how GNU make handles the .c rule with extra dependencies. Also I don't care that everything links curses now.
Diffstat (limited to 'Makefile')
-rw-r--r-- | Makefile | 24 |
1 files changed, 9 insertions, 15 deletions
diff --git a/Makefile b/Makefile index 0be6b77..14d4506 100644 --- a/Makefile +++ b/Makefile @@ -1,21 +1,15 @@ USER = torus +BINS = server client help meta merge +CFLAGS += -Wall -Wextra -Wpedantic +LDLIBS = -lcurses -all: server client help meta merge +all: $(BINS) -server: server.c torus.h - $(CC) -Wall -Wextra -Wpedantic $(CFLAGS) -o server server.c +$(BINS): torus.h -client: client.c torus.h - $(CC) -Wall -Wextra -Wpedantic $(CFLAGS) -lcurses -o client client.c - -help: help.c torus.h - $(CC) -Wall -Wextra -Wpedantic $(CFLAGS) -o help help.c - -meta: meta.c torus.h - $(CC) -Wall -Wextra -Wpedantic $(CFLAGS) -o meta meta.c - -merge: merge.c torus.h - $(CC) -Wall -Wextra -Wpedantic $(CFLAGS) -lcurses -o merge merge.c +# Only necessary so GNU make doesn't try to use torus.h as a source. +.c: + $(CC) $(CFLAGS) $(LDFLAGS) $< $(LDLIBS) -o $@ termcap: termcap.diff patch -p0 -o termcap < termcap.diff @@ -47,6 +41,6 @@ chroot.tar: server client help termcap.db tar -c -f chroot.tar -C root bin home lib libexec usr clean: - rm -f server client help meta merge termcap termcap.db chroot.tar + rm -f $(BINS) termcap termcap.db chroot.tar .PHONY: all clean |