From 47b6e46d9bba6835018bdf7432ea742eaca45a03 Mon Sep 17 00:00:00 2001 From: katherine Date: Tue, 10 Dec 2019 23:29:21 -0700 Subject: implement option parsing and calendar locating --- Makefile | 64 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 64 insertions(+) create mode 100644 Makefile (limited to 'Makefile') diff --git a/Makefile b/Makefile new file mode 100644 index 0000000..1f49a2d --- /dev/null +++ b/Makefile @@ -0,0 +1,64 @@ +.POSIX: +.SUFFIXES: + +CC = cc +CFLAGS = -Wall -O2 +CFLAGSDEBUG = -std=c99 -Wall -pedantic -ggdb3 -O0 -DDEBUG +PREFIX = /usr/local + +all: every + +debug: dbg_every + +install: all + mkdir -p $(DESTDIR)$(PREFIX)/bin + mkdir -p $(DESTDIR)$(PREFIX)/share/man/man1 + cp -f every $(DESTDIR)$(PREFIX)/bin + gzip < every.1 > $(DESTDIR)$(PREFIX)/share/man/man1/every.1.gz + +every: build/release build/release/calendar.o build/release/conf.o build/release/main.o build/release/opt.o + $(CC) $(LDFLAGS) -o every build/release/calendar.o build/release/conf.o build/release/main.o build/release/opt.o $(LDLIBS) + +dbg_every: build/debug build/debug/calendar.o build/debug/conf.o build/debug/main.o build/debug/opt.o + $(CC) $(LDFLAGS) -o dbg_every build/debug/calendar.o build/debug/conf.o build/debug/main.o build/debug/opt.o $(LDLIBS) + +build/release: + mkdir -p build/release + +build/debug: + mkdir -p build/debug + +src/version.h: + printf "%s\n%s\n\n%s%s%s\n\n%s\n" \ + "#ifndef EVERY_VERSION_H" \ + "#define EVERY_VERSION_H" \ + "#define VERSION \"every-" "8cb7ab5" "\"" \ + "#endif" > src/version.h + +build/release/calendar.o: src/calendar.c + $(CC) -c $(CFLAGS) -o build/release/calendar.o src/calendar.c +build/release/conf.o: src/conf.c + $(CC) -c $(CFLAGS) -o build/release/conf.o src/conf.c +build/release/main.o: src/main.c src/opt.h \ + src/../reqs/simple-xdg-bdirs/simple-xdg-bdirs.h + $(CC) -c $(CFLAGS) -o build/release/main.o src/main.c +build/release/opt.o: src/opt.c src/version.h src/opt.h \ + src/../reqs/simple-opt/simple-opt.h + $(CC) -c $(CFLAGS) -o build/release/opt.o src/opt.c + +build/debug/calendar.o: src/calendar.c + $(CC) -c $(CFLAGSDEBUG) -o build/debug/calendar.o src/calendar.c +build/debug/conf.o: src/conf.c + $(CC) -c $(CFLAGSDEBUG) -o build/debug/conf.o src/conf.c +build/debug/main.o: src/main.c src/opt.h \ + src/../reqs/simple-xdg-bdirs/simple-xdg-bdirs.h + $(CC) -c $(CFLAGSDEBUG) -o build/debug/main.o src/main.c +build/debug/opt.o: src/opt.c src/version.h src/opt.h \ + src/../reqs/simple-opt/simple-opt.h + $(CC) -c $(CFLAGSDEBUG) -o build/debug/opt.o src/opt.c + +clean: + rm -f src/version.h + rm -f every + rm -f dbg_every + rm -rf build -- cgit v1.2.3