From cbb267f60bb13baa1cac65517f60249b1b5bd436 Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 8 Nov 2015 00:56:44 -0500 Subject: tidy Makefile --- proto/common.mk | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 proto/common.mk (limited to 'proto/common.mk') diff --git a/proto/common.mk b/proto/common.mk new file mode 100644 index 0000000..41f5c79 --- /dev/null +++ b/proto/common.mk @@ -0,0 +1,55 @@ +# Copyright © 2015 Luke Shumaker +# This work is free. You can redistribute it and/or modify it under the +# terms of the Do What The Fuck You Want To Public License, Version 2, +# as published by Sam Hocevar. See http://www.wtfpl.net/ for more details. + +rel = $(patsubst $(abspath .)/%,./%,$(abspath $1)) + +all: build +.PHONY: all + +include $(addsuffix /Makefile,$(subdirs)) + +generate: $(generate) +.PHONY: generate + +configure: generate $(configure) +.PHONY: configure + +build: configure $(build) +.PHONY: build + +install: build $(install) +.PHONY: install + +# un-build +clean: + rm -rf -- $(build) $(build_secondary) +.PHONY: clean + +# un-configure +distclean: clean + rm -rf -- $(configure) $(configure_secondary) +.PHONY: distclean + +# un-generate +maintainer-clean: distclean + rm -rf -- $(generate) $(generate_secondary) +.PHONY: maintainer-clean + +# un-install +uninstall: + rm -f -- $(install) + rmdir -p -- $(sort $(dir $(install))) 2>/dev/null || true +.PHONY: uninstall + + +# Now, this is magic. It stores the values of environment variables, +# so that if you change them in a way that would cause something to be +# rebuilt, then Make knows. +.var.%: FORCE + $(Q)printf '%s' '$($*)' > .tmp$@ && { cmp -s .tmp$@ $@ && rm -f -- .tmp$@ || mv -Tf .tmp$@ $@; } || { rm -f -- .tmp$@; false; } + +.DELETE_ON_ERROR: +.SECONDARY: +.PHONY: FORCE -- cgit v1.2.3