X-Git-Url: http://git.marmaro.de/?p=mmh;a=blobdiff_plain;f=etc%2FMakefile.in;h=0c7736d646151179600dbdf37f4fb9d4573ca6cd;hp=ad43e9dbc98feb8179cab3219b118da3f0935c54;hb=2abae0bfd0ad5bf898461e50aa4b466d641f23d9;hpb=82e9ded8c02ea347c9cb9a8e507d0d0e5b2acc3b diff --git a/etc/Makefile.in b/etc/Makefile.in index ad43e9d..0c7736d 100644 --- a/etc/Makefile.in +++ b/etc/Makefile.in @@ -1,8 +1,6 @@ # # Makefile for etc subdirectory # -# $Id$ -# SHELL = /bin/sh @@ -17,11 +15,10 @@ libdir = @libdir@ etcdir = @sysconfdir@ mailspool = @mailspool@ -masquerade = @masquerade@ -smtpservers = @smtpservers@ INSTALL = @INSTALL@ INSTALL_PROGRAM = @INSTALL_PROGRAM@ +INSTALL_SCRIPT = @INSTALL_SCRIPT@ INSTALL_DATA = @INSTALL_DATA@ # Path to search for programs to handle MIME @@ -37,34 +34,33 @@ SED = sed .SUFFIXES: # static configuration, format, and components files -STATIC_FILES = MailAliases 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.default scan.mailx scan.nomime scan.size scan.time \ - scan.timely scan.unseen +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 # templates and scripts from which non-static files are generated GENERATED_FILE_SRCS = mhn.defaults.sh mhn.find.sh mts.conf.in sendfiles.in -# files generated using above GENERATED_FILE_SRCs -GENERATED_FILES = mhn.defaults mts.conf sendfiles - -# data files we need to install (in etc) -INSTALL_FILES = $(STATIC_FILES) $(GENERATED_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 we need to install (in bin) -SCRIPTS = sendfiles +# non-scripts generated using above GENERATED_FILE_SRCs +GENERATED_ETC_FILES = mhn.defaults mts.conf # auxiliary files (included in distribution but not installed) AUX = Makefile.in # all non-generated files in this directory are included in the distribution -DIST = $(STATIC_FILES) $(GENERATED_FILE_SRCS) $(SCRIPTS) $(AUX) +DIST = $(STATIC_FILES) $(GENERATED_FILE_SRCS) $(AUX) # ========= DEPENDENCIES FOR BUILDING ========== -all: $(GENERATED_FILES) +all: $(GENERATED_BIN_FILES) $(GENERATED_ETC_FILES) mhn.defaults: $(srcdir)/mhn.defaults.sh $(MHNSEARCHPROG) rm -f $@ @@ -73,45 +69,50 @@ mhn.defaults: $(srcdir)/mhn.defaults.sh $(MHNSEARCHPROG) mts.conf: $(srcdir)/mts.conf.in Makefile rm -f $@ $(SED) -e 's,%mailspool%,$(mailspool),' \ - -e 's,%etcdir%,$(etcdir),' \ - -e 's,%masquerade%,$(masquerade),' \ - -e 's,%smtpservers%,$(smtpservers),' < $(srcdir)/mts.conf.in > $@ + -e 's,%etcdir%,$(etcdir),' < $(srcdir)/mts.conf.in > $@ sendfiles: $(srcdir)/sendfiles.in Makefile rm -f $@ $(SED) -e 's,%libdir%,$(libdir),' < $(srcdir)/sendfiles.in > $@ -install: install-files install-scripts +install: install-bin-files install-etc-files -install-files: - $(top_srcdir)/mkinstalldirs $(etcdir) - for file in $(INSTALL_FILES); do \ - echo $$file; \ - if [ -f $(etcdir)/$$file ]; then \ - mv $(etcdir)/$$file $(etcdir)/$$file.prev; \ - fi; \ - $(INSTALL_DATA) $(srcdir)/$$file $(etcdir)/$$file; \ - if diff $(etcdir)/$$file.prev $(etcdir)/$$file; then \ - rm $(etcdir)/$$file.prev; \ - fi; \ +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 $(bindir) - for script in $(SCRIPTS); do \ - $(INSTALL_PROGRAM) $(srcdir)/$$script $(bindir)/$$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 $(INSTALL_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 $(bindir)/$$script; \ +uninstall-etc-files: + for file in $(STATIC_FILES) $(GENERATED_ETC_FILES); do \ + rm -f $(DESTDIR)$(etcdir)/$$file; \ done # ========== DEPENDENCIES FOR CLEANUP ========== @@ -120,7 +121,7 @@ mostlyclean: rm -f *~ clean: mostlyclean - rm -f $(GENERATED_FILES) + rm -f $(GENERATED_ETC_FILES) $(GENERATED_BIN_FILES) distclean: clean rm -f Makefile @@ -134,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 -