diff options
Diffstat (limited to 'plugins/main.mk.in')
-rw-r--r-- | plugins/main.mk.in | 71 |
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 |