X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=etc%2FMakefile.in;h=0c7736d646151179600dbdf37f4fb9d4573ca6cd;hp=67eed058d0e99b12713470bac45caab72e60306c;hb=2abae0bfd0ad5bf898461e50aa4b466d641f23d9;hpb=1691e80890e5d8ba258c51c214a3e91880e1db2b diff --git a/etc/Makefile.in b/etc/Makefile.in index 67eed05..0c7736d 100644 --- a/etc/Makefile.in +++ b/etc/Makefile.in @@ -1,8 +1,6 @@ # # Makefile for etc subdirectory # -# $Id$ -# SHELL = /bin/sh @@ -16,10 +14,11 @@ bindir = @bindir@ libdir = @libdir@ etcdir = @sysconfdir@ -mailspool = @mailspool@ +mailspool = @mailspool@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_DATA = @INSTALL_DATA@ # Path to search for programs to handle MIME @@ -34,73 +33,86 @@ SED = sed .SUFFIXES: -# format and components files -DIST_FILES = mhl.body mhl.digest mhl.format mhl.forward mhl.headers \ - mhl.reply scan.default scan.mailx scan.nomime scan.size scan.time \ - scan.timely scan.unseen components digestcomps distcomps \ - forwcomps rcvdistcomps replcomps replgroupcomps MailAliases +# static configuration, format, and components files +STATIC_FILES = components digestcomps distcomps forwcomps \ + mhl.body mhl.digest mhl.format mhl.forward mhl.headers \ + mhl.reply rcvdistcomps rcvdistcomps.outbox \ + replcomps replgroupcomps scan.MMDDYY scan.YYYYMMDD \ + scan.nmh scan.mailx scan.nomime scan.size scan.time \ + scan.timely scan.unseen -# format and configuration files to generate -GEN_FILES = mhn.defaults mts.conf +# templates and scripts from which non-static files are generated +GENERATED_FILE_SRCS = mhn.defaults.sh mhn.find.sh mts.conf.in sendfiles.in -# data files we need to install -FILES = $(DIST_FILES) $(GEN_FILES) +# scripts generated using above GENERATED_FILE_SRCs; don't add binaries +# to this list, as they'll get installed with INSTALL_SCRIPT and won't +# be stripped. +GENERATED_BIN_FILES = sendfiles -# scripts to install -SCRIPTS = sendfiles +# non-scripts generated using above GENERATED_FILE_SRCs +GENERATED_ETC_FILES = mhn.defaults mts.conf -# auxiliary files -AUX = Makefile.in mhn.defaults.sh mhn.find.sh mts.conf.in +# auxiliary files (included in distribution but not installed) +AUX = Makefile.in -# all files in this directory included in the distribution -DIST = $(DIST_FILES) $(SCRIPTS) $(AUX) +# all non-generated files in this directory are included in the distribution +DIST = $(STATIC_FILES) $(GENERATED_FILE_SRCS) $(AUX) # ========= DEPENDENCIES FOR BUILDING ========== -all: $(GEN_FILES) +all: $(GENERATED_BIN_FILES) $(GENERATED_ETC_FILES) mhn.defaults: $(srcdir)/mhn.defaults.sh $(MHNSEARCHPROG) rm -f $@ $(srcdir)/mhn.defaults.sh $(MHNSEARCHPATH) $(MHNSEARCHPROG) > $@ -mts.conf: $(srcdir)/mts.conf.in +mts.conf: $(srcdir)/mts.conf.in Makefile rm -f $@ $(SED) -e 's,%mailspool%,$(mailspool),' \ -e 's,%etcdir%,$(etcdir),' < $(srcdir)/mts.conf.in > $@ -install: install-files install-scripts +sendfiles: $(srcdir)/sendfiles.in Makefile + rm -f $@ + $(SED) -e 's,%libdir%,$(libdir),' < $(srcdir)/sendfiles.in > $@ -install-files: - $(top_srcdir)/mkinstalldirs $(etcdir) - for file in $(DIST_FILES); do \ - if [ -f $(etcdir)/$$file ]; then \ - mv $(etcdir)/$$file $(etcdir)/$$file.old; \ - fi; \ - $(INSTALL_DATA) $(srcdir)/$$file $(etcdir)/$$file; \ - done - for file in $(GEN_FILES); do \ - if [ -f $(etcdir)/$$file ]; then \ - mv $(etcdir)/$$file $(etcdir)/$$file.old; \ - fi; \ - $(INSTALL_DATA) $$file $(etcdir)/$$file; \ +install: install-bin-files install-etc-files + +install-bin-files: + $(top_srcdir)/mkinstalldirs $(DESTDIR)$(bindir) + for script in $(GENERATED_BIN_FILES); do \ + $(INSTALL_SCRIPT) $$script $(DESTDIR)$(bindir)/$$script; \ done -install-scripts: - $(top_srcdir)/mkinstalldirs $(libdir) - for script in $(SCRIPTS); do \ - $(INSTALL_PROGRAM) $(srcdir)/$$script $(libdir)/$$script; \ +install-etc-files: + $(top_srcdir)/mkinstalldirs $(DESTDIR)$(etcdir) + INSTALL_FILES="$(GENERATED_ETC_FILES)"; \ + for file in $(STATIC_FILES); do \ + INSTALL_FILES="$$INSTALL_FILES $(srcdir)/$$file"; \ + done; \ + for path in $$INSTALL_FILES; do \ + file=`basename $$path`; \ + if [ -f "$(DESTDIR)$(etcdir)/$$file" ]; then \ + if cmp -s "$$path" "$(DESTDIR)$(etcdir)/$$file" ; then \ + :; \ + else \ + $(INSTALL_DATA) "$$path" "$(DESTDIR)$(etcdir)/$$file.dist"; \ + echo "$(DESTDIR)$(etcdir)/$$file has local modifications; installing with .dist suffix"; \ + fi; \ + else \ + $(INSTALL_DATA) $$path $(DESTDIR)$(etcdir)/$$file; \ + fi; \ done -uninstall: uninstall-files uninstall-scripts +uninstall: uninstall-bin-files uninstall-etc-files -uninstall-files: - for file in $(FILES); do \ - rm -f $(etcdir)/$$file; \ +uninstall-bin-files: + for script in $(GENERATED_BIN_FILES); do \ + rm -f $(DESTDIR)$(bindir)/$$script; \ done -uninstall-scripts: - for script in $(SCRIPTS); do \ - rm -f $(libdir)/$$script; \ +uninstall-etc-files: + for file in $(STATIC_FILES) $(GENERATED_ETC_FILES); do \ + rm -f $(DESTDIR)$(etcdir)/$$file; \ done # ========== DEPENDENCIES FOR CLEANUP ========== @@ -109,7 +121,7 @@ mostlyclean: rm -f *~ clean: mostlyclean - rm -f $(GEN_FILES) + rm -f $(GENERATED_ETC_FILES) $(GENERATED_BIN_FILES) distclean: clean rm -f Makefile @@ -123,12 +135,11 @@ superclean: realclean subdir = etc Makefile: Makefile.in ../config.status - cd .. && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= ./config.status - + cd .. && ./config.status $(subdir)/$@ + distdir = ../`cat ../distname`/$(subdir) nmhdist: $(DIST) @echo "Copying distribution files in $(subdir)" @for file in $(DIST); do \ cp -p $(srcdir)/$$file $(distdir); \ done -