PW_SHA256 := 7361c87eb5e55240a3afbf7f41bc2a08f93e392414103075d3929b5fd53e021c DARWIN = $(findstring Darwin,$(shell uname)) NEEDED_CFLAGS := -std=c99 -D_POSIX_C_SOURCE=200112L -D__EXTENSIONS__ NEEDED_CFLAGS += $(if $(DARWIN),-D_DARWIN_C_SOURCE) ifeq ($(shell sha256sum pw.c),$(PW_SHA256) pw.c) PW_VERSION := 3 else PW_VERSION := 3-$(shell git rev-parse --short HEAD) PW_VERSION := $(PW_VERSION)$(shell git diff --quiet || printf -- "-dirty") endif CFLAGS ?= -g -O2 -W -Wall override CFLAGS += $(NEEDED_CFLAGS) -DCONFIG_PW_VER=\"$(PW_VERSION)\" DESTDIR ?= /usr/local .PHONY: all fixver all: pw fixver pw: $(if $(DARWIN),macpoll.o) clean:; rm -f pw macpoll.o install:; install pw $(DESTDIR)/bin/pw; \ install -D pw.1 $(DESTDIR)/share/man/man1/pw.1; \ install -D pw-relnotes.5 $(DESTDIR)/share/man/man5/pw-relnotes.5 define FIXVER sed -e '/^\.TH/s/Version [^"]\+/Version $(PW_VERSION)/' $1 > pw.tmp ; cmp -s $1 pw.tmp && rm pw.tmp || mv pw.tmp $1 endef fixver:; @$(call FIXVER,pw.1); $(call FIXVER, pw-relnotes.5)