Makefile (1090B)
1 # sxalert Makefile 2 # GNU GPL v3.0+ 3 4 CC=c99 5 VERSION=1.0 6 DIST=sxalert-$(VERSION) 7 8 SRC = sxalert.c sxalert.h config.h 9 DOC = sxalert.1 README.txt LICENSE 10 FILES = $(SRC) $(DOC) Makefile 11 12 PREFIX ?= /usr/local 13 BINDIR ?= $(PREFIX)/bin 14 MANDIR ?= $(PREFIX)/share/man/man1 15 DESTDIR ?= 16 17 18 CFLAGS = -Wall -Wextra -Wpedantic \ 19 -Wconversion -Wsign-conversion \ 20 -Wshadow -Wstrict-prototypes \ 21 -Wmissing-prototypes -Wformat=2 22 PKGS = xft xrandr x11 23 CPPFLAGS += $(shell pkg-config --cflags $(PKGS)) 24 LDLIBS += $(shell pkg-config --libs $(PKGS)) 25 26 .PHONY: all clean install uninstall dist 27 28 all: sxalert 29 30 sxalert: $(SRC) 31 $(CC) $(CPPFLAGS) $(CFLAGS) sxalert.c -o $@ $(LDLIBS) 32 33 install: 34 mkdir -p $(DESTDIR)$(BINDIR) 35 mkdir -p $(DESTDIR)$(MANDIR) 36 install -m 755 sxalert $(DESTDIR)$(BINDIR) 37 install -m 644 sxalert.1 $(DESTDIR)$(MANDIR) 38 39 uninstall: 40 rm -f $(DESTDIR)$(BINDIR)/sxalert 41 rm -f $(DESTDIR)$(MANDIR)/sxalert.1 42 43 clean: 44 rm -f sxalert 45 46 dist: 47 mkdir $(DIST) 48 cp $(FILES) $(DIST)/ 49 tar -czf $(DIST).tar.gz $(DIST) 50 rm -rf $(DIST) 51 sha256sum $(DIST).tar.gz > $(DIST).tar.gz.sha256