#!/usr/bin/make -f name = users # version 0.7.1 # Copyright (C) 2009 Luke Shumaker # 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. # # Originally written by Luke Shumaker . export rvs ?= @name@ # Directories ###################################################### srcdir ?= @srcdir@ prefix ?= @prefix@ exec_prefix ?= @exec_prefix@ bindir ?= @bindir@ sbindir ?= @sbindir@ libexecdir ?= @libexecdir@ #export srcdir prefix exec_prefix bindir sbindir libexecdir # Programs ######################################################### RVS ?= @RVS@ SHELL ?= @SHELL@ RM ?= rm CP ?= cp SED ?= sed INSTALL ?= install MKDIR ?= $(INSTALL) -d #mkdir -p INSTALL_PROGRAM ?= $(INSTALL) INSTALL_DATA ?= $(INSTALL) -m 644 TOUCH ?= touch # This file doesn't use touch #export RVS SHELL RM CP SED INSTALL MKDIR INSTALL_PROGRAM INSTALL_DATA TOUCH # phony targets #################################################### all : $(name) .PHONY : $(name) install uninstall clean distclean .SUFFIXES : # main ############################################################# mysrcdir = $(srcdir)/plugins/$(name) myoutdir = out srcFiles = $(filter-out %/Makefile.in,$(shell find $(mysrcdir)/ -type f)) shSrcFiles = $(filter %.sh,$(srcFiles)) shOutFiles = $(patsubst $(mysrcdir)/%,$(myoutdir)/%,$(basename $(shSrcFiles))) $(name) : $(shOutFiles) # (un)install ###################################################### install : all $(RVS) install $(name) $(myoutdir) uninstall : $(RVS) uninstall $(name) # clean ############################################################ clean : distclean : clean $(RM) Makefile $(RM) -r out # implicit rules ################################################### b := @ # build shell scripts $(myoutdir)/% : $(mysrcdir)/%.sh $(MKDIR) $(dir $@) $(SED) 's/$bSHELL@/$(subst /,\/,$(SHELL))/g' <$< > $@ # workaround... idk why it doesn't match `lib/' $(myoutdir)/lib/% : $(mysrcdir)/lib/%.sh $(MKDIR) $(dir $@) $(SED) 's/$bSHELL@/$(subst /,\/,$(SHELL))/g' <$< > $@