summaryrefslogtreecommitdiff
path: root/plugins/main.mk.in
diff options
context:
space:
mode:
Diffstat (limited to 'plugins/main.mk.in')
-rw-r--r--plugins/main.mk.in71
1 files changed, 15 insertions, 56 deletions
diff --git a/plugins/main.mk.in b/plugins/main.mk.in
index ed5dca8..8ffa1d7 100644
--- a/plugins/main.mk.in
+++ b/plugins/main.mk.in
@@ -1,7 +1,6 @@
#!/usr/bin/make -f
-#name=rvs plugin Makefile
-#ver=0.9
-include info.mk # this contains the actuall name/version for the plugin
+#name=rvs plugins
+#version='1.0'
# Copyright (C) 2009 Luke Shumaker
#
# This program is free software; you can redistribute it and/or
@@ -18,62 +17,22 @@ include info.mk # this contains the actuall name/version for the plugin
# along with this program; see the file COPYING.
# If not, see <http://www.gnu.org/licenses>.
-rvs = @name@
-id = $(name)-$(ver)
+mods = $(patsubst ./%,%,$(shell find ./* -maxdepth 0 -type d))
-# phony targets ####################################################
-all : $(name)
-.PHONY : $(name) install uninstall clean distclean dist
-.SUFFIXES :
+.PHONY : all
+all : build
-# build ############################################################
-mysrcdir = $(srcdir)/plugins/$(name)
-myoutdir = out
+.PHONY : install build
+install : $(addprefix install-,$(mods))
+build : $(addprefix build-,$(mods))
-srcFiles = $(filter-out %/Makefile.in,$(shell find $(mysrcdir)/ -type f))
+.SECONDARY:
-shSrcFiles = $(filter %.sh,$(srcFiles))
-shOutFiles = $(patsubst $(mysrcdir)/%,$(myoutdir)/%,$(basename $(shSrcFiles)))
+%/main.mk : plugin.mk %/; cp $< $@
-$(name) : $(myoutdir) $(shOutFiles) $(myoutdir)/plugin.conf
-
-$(myoutdir)/plugin.conf : $(mysrcdir)/plugin.conf
- $(INSTALL_DATA) $< $@
-
-# (un)install ######################################################
-
-install : all
- $(RVS) install $(name)-$(ver) $(myoutdir)
-
-uninstall :
- $(RVS) uninstall $(name)
-
-# clean ############################################################
-
-clean :
-
-distclean : clean
- $(RM) Makefile
- $(RM) -r out
-
-# implicit rules ###################################################
-
-b := @
-# build shell scripts
-$(myoutdir)/% : $(mysrcdir)/%.sh $(myoutdir)
- $(INSTALL_PROGRAM) $< $@
- $(SED) -i \
- -e 's/$bSHELL@/$(subst /,\/,$(SHELL))/g' \
- -e 's/$blibexecdir@/$(subst /,\/,$(libexecdir))/g' \
- -e 's/$bID@/$(subst /,\/,$(id))/g' \
- $@
-
-plugin.conf : plugin.conf.in
- $(SED) \
- -e 's/$bname@/$(subst /,\/,$(name))/g' \
- -e 's/$bver@/$(subst /,\/,$(ver))/g' \
- $< > $@
-
-$(DESTDIR)$(libexecdir)/$(rvs) $(myoutdir) :
- $(MKDIR) $@
+complete-% : %/ %/main.mk
+build-% : %/ complete-% %/main.mk; $(MAKE) -C $<
+install-% : %/ complete-% %/main.mk; $(MAKE) -C $< install
+clean-% : %/ complete-% %/main.mk; $(MAKE) -C $< clean
+distclean-% : %/ complete-% %/main.mk; $(MAKE) -C $< distclean