summaryrefslogtreecommitdiff
path: root/rvs/main.mk.in
diff options
context:
space:
mode:
Diffstat (limited to 'rvs/main.mk.in')
-rw-r--r--rvs/main.mk.in127
1 files changed, 64 insertions, 63 deletions
diff --git a/rvs/main.mk.in b/rvs/main.mk.in
index ee7aac5..46fa64a 100644
--- a/rvs/main.mk.in
+++ b/rvs/main.mk.in
@@ -1,84 +1,85 @@
#!/usr/bin/make -f
-name = @name@
-ver = 0.9
-# Copyright (C) 2009 Luke Shumaker
-#
-# This program is free software; you can redistribute it and/or
-# modify it under the terms of the GNU General Public License as
-# published by the Free Software Foundation; either version 2 of the
-# License, or (at your option) any later version.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program; see the file COPYING.
-# If not, see <http://www.gnu.org/licenses>.
-
-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))
+name=repo
+ver=0.8r61
+# Copyright (C) 2009 Luke Shumaker
+#
+# This file is part of rvs.
+#
+# rvs is free software; you can redistribute it and/or modify it under the
+# terms of the GNU General Public License as published by the Free Software
+# Foundation; either version 2, or (at your option) any later version.
+#
+# rvs is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+# See the GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with rvs; see the file COPYING.
+# If not, write to the Free Software Foundation,
+# 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+
+export rvs = @name@
# 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)
-
+all : $(name)
+.PHONY : $(name) install uninstall clean distclean dist
.SUFFIXES :
-# install ##########################################################
+# build ############################################################
+mysrcdir = $(srcdir)/plugins/$(name)
+myoutdir = outs
+
+srcFiles = $(filter-out %/Makefile.in,$(shell find $(mysrcdir)/ -type f))
+
+shSrcFiles = $(filter %.sh,$(srcFiles))
+shOutFiles = $(patsubst $(mysrcdir)/%,$(myoutdir)/%,$(basename $(shSrcFiles)))
-install : install-wrapper libexec $(install-plugins)
+$(name) : $(myoutdir) $(shOutFiles) $(myoutdir)/plugin.conf
-# $(libexecdir)/rvs/*
-libexec : $(libexecdir)/$(rvs)/plugins
-$(libexecdir)/$(rvs)/plugins : $(libexecdir)/$(rvs)
- $(TOUCH) $@
+$(myoutdir)/plugin.conf : $(mysrcdir)/plugin.conf
+ $(INSTALL_DATA) $< $@
-# uninstall ########################################################
+# (un)install ######################################################
+
+install : all
+ $(RVS) install $(name)-$(ver) $(myoutdir)
uninstall :
- $(RM) $(bindir)/$(rvs)
- $(RM) -r $(libexecdir)/$(rvs)
+ $(RVS) uninstall $(name)
# clean ############################################################
-clean : $(clean-plugins) clean-wrapper
+clean :
-distclean : clean $(distclean-plugins) distclean-wrapper
+distclean : clean
$(RM) Makefile
+ $(RM) -r out
+
+# dist #############################################################
+
+id = $(name)-$(ver)
+dist : $(id).tar.gz
-# wrapper ##########################################################
+$(id).tar.gz : $(id)
+ tar -czf $@ $<
-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
+$(id) : distclean
+ $(INSTALL) -m 777 -d $@
+ $(CP) -r $(mysrcdir)/* $@
-install-wrapper : wrapper/ wrapper/Makefile wrapper; $(MAKE) -C $< install
-$(RVS) : install-wrapper
+# implicit rules ###################################################
-# plugins ##########################################################
+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' \
+ $@
-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
+$(dirs) $(libexecdir)/$(rvs) $(myoutdir) :
+ $(MKDIR) $@