From e2ffc5c34c7e7ced37bbe17892b83588411ecfdc Mon Sep 17 00:00:00 2001 From: Luke Shumaker Date: Sun, 25 Oct 2009 04:05:40 -0400 Subject: major rewrite on build system, make doesn't complain for diff --- main.mk.in | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 main.mk.in (limited to 'main.mk.in') diff --git a/main.mk.in b/main.mk.in new file mode 100644 index 0000000..622607f --- /dev/null +++ b/main.mk.in @@ -0,0 +1,69 @@ +#!/usr/bin/make -f +name = @name@ +ver = 0.8r58 + +rvs = $(name) +RVS = @RVS@ +# plugins ########################################################## +plugins = $(patsubst $(srcdir)/plugins/%,%, \ + $(shell find $(srcdir)/plugins/* -maxdepth 0 -type d)) + +build-plugins = $(addprefix p-,$(plugins)) +install-plugins = $(addprefix install-p-,$(plugins)) +uninstall-plugins = $(addprefix uninstall-p-,$(plugins)) +clean-plugins = $(addprefix clean-p-,$(plugins)) +distclean-plugins = $(addprefix distclean-p-,$(plugins)) +dist-plugins = $(addprefix dist-p-,$(plugins)) + +# phony targets #################################################### +all : wrapper $(build-plugins) +.PHONY : install uninstall clean distclean dist libexec \ + build-wrapper install-wrapper uninstall-wrapper clean-wrapper distclean-wrapper dist-wrapper +#$(build-plugins) $(install-plugins) $(uninstall-plugins) $(clean-plugins) $(distclean-plugins) $(dist-plugins) + +.SUFFIXES : + +# install ########################################################## + +install : install-wrapper libexec $(install-plugins) + +# $(libexecdir)/rvs/* +libexec : $(libexecdir)/$(rvs)/plugins +$(libexecdir)/$(rvs)/plugins : $(libexecdir)/$(rvs) + $(TOUCH) $@ + +# uninstall ######################################################## + +uninstall : + $(RM) $(bindir)/$(rvs) + $(RM) -r $(libexecdir)/$(rvs) + +# clean ############################################################ + +clean : $(clean-plugins) clean-wrapper + +distclean : clean $(distclean-plugins) distclean-wrapper + $(RM) Makefile + +# wrapper ########################################################## + +wrapper : build-wrapper +build-wrapper : wrapper/ wrapper/Makefile; $(MAKE) -C $< +uninstall-wrapper : wrapper/ wrapper/Makefile; $(MAKE) -C $< uninstall +clean-wrapper : wrapper/ wrapper/Makefile; $(MAKE) -C $< clean +distclean-wrapper : wrapper/ wrapper/Makefile; $(MAKE) -C $< distclean +dist-wrapper : wrapper/ wrapper/Makefile; $(MAKE) -C $< dist + +install-wrapper : wrapper/ wrapper/Makefile wrapper; $(MAKE) -C $< install +$(RVS) : install-wrapper + +# plugins ########################################################## + +install-p-% : plugins/% plugins/%/Makefile p-% libexec $(RVS) + $(MAKE) -C $< install +p-% : plugins/% plugins/%/Makefile ; $(MAKE) -C $< +uninstall-p-% : plugins/% plugins/%/Makefile ; $(MAKE) -C $< uninstall +clean-p-% : plugins/% plugins/%/Makefile ; $(MAKE) -C $< clean +distclean-p-% : plugins/% plugins/%/Makefile ; $(MAKE) -C $< distclean +dist-p-% : plugins/% plugins/%/Makefile ; $(MAKE) -C $< dist + -- cgit v1.2.3-2-g168b