Changed repl and dist default to -noatfile.
[mmh] / Makefile.am
index 56ecdb1..2c4dcfe 100644 (file)
@@ -36,7 +36,9 @@ auxexecdir = @libdir@
 TESTS_ENVIRONMENT = MH_OBJ_DIR=@abs_builddir@ \
                    MH_TEST_DIR=@abs_builddir@/test/testdir \
                    auxexecdir=$(auxexecdir) bindir=$(bindir) \
-                   mandir=$(mandir) sysconfdir=$(sysconfdir)
+                   mandir=$(mandir) sysconfdir=$(sysconfdir) \
+                   MULTIBYTE_ENABLED=$(MULTIBYTE_ENABLED) \
+                   $(TESTS_SHELL) ## Keep at end of TESTS_ENVIRONMENT.
 ##
 ## Important note: the "cleanup" test should always be last
 ##
@@ -65,7 +67,7 @@ TESTS = test/bad-input/test-header \
        test/refile/test-refile \
        test/repl/test-if-str test/repl/test-trailing-newline \
        test/repl/test-multicomp \
-       test/scan/test-scan \
+       test/scan/test-scan test/scan/test-scan-multibyte \
        test/sequences/test-flist test/sequences/test-mark \
        test/whatnow/test-attach-detach test/whatnow/test-cd \
        test/whatnow/test-ls test/whom/test-whom \
@@ -73,6 +75,7 @@ TESTS = test/bad-input/test-header \
 
 check_SCRIPTS = test/common.sh
 check_PROGRAMS = test/getfullname test/getfqdn test/fakesmtp
+DISTCHECK_CONFIGURE_FLAGS = DISABLE_SETGID_MAIL=1
 
 ##
 ## Stuff that should be cleaned via "make clean"
@@ -80,7 +83,7 @@ check_PROGRAMS = test/getfullname test/getfqdn test/fakesmtp
 CLEANFILES = config/version.c sbr/sigmsg.h etc/mts.conf etc/sendfiles \
             etc/mhn.defaults man/man.sed man/mh-chart.man $(man_MANS)
 clean-local:
-       @rm -rf RPM a.out.DSYM uip/a.out.DSYM
+       @rm -rf RPM a.out.dSYM uip/a.out.dSYM
        @rm -rf test/testdir
 
 ##
@@ -174,7 +177,7 @@ dist_doc_DATA = COPYRIGHT VERSION docs/COMPLETION-BASH docs/COMPLETION-TCSH \
 ## Contribs that get installed in docdir/contrib/
 ##
 contribdir = $(docdir)/contrib
-dist_contrib_DATA = docs/contrib/nmh.spec docs/contrib/replyfilter
+dist_contrib_DATA = docs/contrib/replyfilter docs/contrib/build_nmh
 
 ##
 ## Our man pages
@@ -184,7 +187,7 @@ man_MANS = man/ali.1 man/anno.1 man/ap.8 man/burst.1 man/comp.1 \
           man/fmtdump.8 man/fnext.1 man/folder.1 man/folders.1 \
           man/forw.1 man/fprev.1 man/inc.1 man/install-mh.1 man/mark.1 \
           man/mh-alias.5 man/mh-chart.1 man/mh-draft.5 man/mh-format.5 \
-          man/mh-mail.5 man/mh-profile.5 man/mh-sequence.5 \
+          man/mh-mail.5 man/mh-profile.5 man/mh_profile.5 man/mh-sequence.5 \
           man/mh-tailor.5 man/mhbuild.1 man/mhl.1 man/mhlist.1 \
           man/mhmail.1 man/mhn.1 man/mhparam.1 man/mhpath.1 \
           man/mhshow.1 man/mhstore.1 man/msgchk.1 man/msh.1 \
@@ -200,7 +203,7 @@ man_MANS = man/ali.1 man/anno.1 man/ap.8 man/burst.1 man/comp.1 \
 ## Automake using the automatic rules
 ##
 EXTRA_DIST = config/version.sh sbr/sigmsg.awk etc/mts.conf.in etc/sendfiles.in \
-            etc/mhn.defaults.sh $(MHNSEARCHPROG) DATE \
+            etc/mhn.defaults.sh $(MHNSEARCHPROG) DATE MACHINES \
             docs/ChangeLog_MH-3_to_MH-6.6 \
             docs/ChangeLog_MH-6.7.0_to_MH-6.8.4.html \
             man/ali.man man/anno.man man/ap.man man/burst.man man/comp.man \
@@ -209,11 +212,11 @@ EXTRA_DIST = config/version.sh sbr/sigmsg.awk etc/mts.conf.in etc/sendfiles.in \
             man/folders.man man/forw.man man/fprev.man man/inc.man \
             man/install-mh.man man/mark.man man/mh-alias.man \
             man/mh-chart-gen.sh man/mh-draft.man man/mh-format.man \
-            man/mh-mail.man man/mh-profile.man man/mh-sequence.man \
-            man/mh-tailor.man man/mhbuild.man man/mhl.man man/mhlist.man \
-            man/mhmail.man man/mhn.man man/mhparam.man man/mhpath.man \
-            man/mhshow.man man/mhstore.man man/msgchk.man man/msh.man \
-            man/mts.conf.man man/new.man man/next.man man/nmh.man \
+            man/mh-mail.man man/mh-profile.man man/mh_profile.man \
+            man/mh-sequence.man man/mh-tailor.man man/mhbuild.man man/mhl.man \
+            man/mhlist.man man/mhmail.man man/mhn.man man/mhparam.man \
+            man/mhpath.man man/mhshow.man man/mhstore.man man/msgchk.man \
+            man/msh.man man/mts.conf.man man/new.man man/next.man man/nmh.man \
             man/packf.man man/pick.man man/post.man man/prev.man \
             man/prompter.man man/rcvdist.man man/rcvpack.man \
             man/rcvstore.man man/rcvtty.man man/refile.man man/repl.man \
@@ -222,7 +225,8 @@ EXTRA_DIST = config/version.sh sbr/sigmsg.awk etc/mts.conf.in etc/sendfiles.in \
             man/unseen.man man/whatnow.man man/whom.man \
             test/README $(TESTS) test/inc/deb359167.mbox \
             test/inc/fromline.txt test/inc/msgheader.txt test/inc/filler.txt \
-            test/inc/md5sums test/post/test-post-common.sh
+            test/inc/md5sums test/post/test-post-common.sh \
+            SPECS/nmh.spec SPECS/build-nmh-cygwin
 
 ##
 ## These are all of the definitions for each of the programs listed above.
@@ -412,6 +416,10 @@ etc/sendfiles: $(srcdir)/etc/sendfiles.in Makefile
 ##
 ## This rule gets called at "make install" time; we use it to create links
 ## between different programs.
+## On Cygwin, the choice of ln or ln -s must be made at install time,
+## not configure time, because some filesystems (NTFS) support hard
+## links but others (FAT32) don't.  The fallback to cp -p might not be
+## needed, but it's here just in case.
 ##
 install-exec-hook:
        rm -f $(DESTDIR)$(bindir)/flists$(EXEEXT)
@@ -421,21 +429,34 @@ install-exec-hook:
        rm -f $(DESTDIR)$(bindir)/unseen$(EXEEXT)
        rm -f $(DESTDIR)$(bindir)/prev$(EXEEXT)
        rm -f $(DESTDIR)$(bindir)/next$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/flist$(EXEEXT) $(DESTDIR)$(bindir)/flists$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/folder$(EXEEXT) $(DESTDIR)$(bindir)/folders$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/new$(EXEEXT) $(DESTDIR)$(bindir)/fnext$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/new$(EXEEXT) $(DESTDIR)$(bindir)/fprev$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/new$(EXEEXT) $(DESTDIR)$(bindir)/unseen$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/show$(EXEEXT) $(DESTDIR)$(bindir)/prev$(EXEEXT)
-       ln $(DESTDIR)$(bindir)/show$(EXEEXT) $(DESTDIR)$(bindir)/next$(EXEEXT)
+       cd $(DESTDIR)$(bindir) && \
+         if ln flist$(EXEEXT) flists$(EXEEXT) 2>/dev/null && \
+           ln folder$(EXEEXT) folders$(EXEEXT) && \
+           ln new$(EXEEXT) fnext$(EXEEXT) && \
+           ln new$(EXEEXT) fprev$(EXEEXT) && \
+           ln new$(EXEEXT) unseen$(EXEEXT) && \
+           ln show$(EXEEXT) prev$(EXEEXT) && \
+           ln show$(EXEEXT) next$(EXEEXT); then :; \
+         elif ln -s flist$(EXEEXT) flists$(EXEEXT) 2>/dev/null && \
+           ln -s folder$(EXEEXT) folders$(EXEEXT) && \
+           ln -s new$(EXEEXT) fnext$(EXEEXT) && \
+           ln -s new$(EXEEXT) fprev$(EXEEXT) && \
+           ln -s new$(EXEEXT) unseen$(EXEEXT) && \
+           ln -s show$(EXEEXT) prev$(EXEEXT) && \
+           ln -s show$(EXEEXT) next$(EXEEXT); then :; \
+         else cp -p flist$(EXEEXT) flists$(EXEEXT) && \
+           cp -p folder$(EXEEXT) folders$(EXEEXT) && \
+           cp -p new$(EXEEXT) fnext$(EXEEXT) && \
+           cp -p new$(EXEEXT) fprev$(EXEEXT) && \
+           cp -p new$(EXEEXT) unseen$(EXEEXT) && \
+           cp -p show$(EXEEXT) prev$(EXEEXT) && \
+           cp -p show$(EXEEXT) next$(EXEEXT); \
+         fi
        if test x$(SETGID_MAIL) != x; then \
-               chgrp $(MAIL_SPOOL_GRP) $(DESTDIR)$(bindir)/inc$(EXEEXT); \
+               chgrp $(MAIL_SPOOL_GRP) $(DESTDIR)$(bindir)/inc$(EXEEXT) && \
                chmod 2755 $(DESTDIR)$(bindir)/inc$(EXEEXT); \
        fi
 
-install-data-hook:
-       rm -f $(DESTDIR)$(man5dir)/mh_profile.5
-       ln $(DESTDIR)$(man5dir)/mh-profile.5 $(DESTDIR)$(man5dir)/mh_profile.5
 ##
 ## Make sure we remove those links at uninstall time
 ##
@@ -447,7 +468,6 @@ uninstall-hook:
        rm -f $(DESTDIR)$(bindir)/unseen$(EXEEXT)
        rm -f $(DESTDIR)$(bindir)/prev$(EXEEXT)
        rm -f $(DESTDIR)$(bindir)/next$(EXEEXT)
-       rm -f $(DESTDIR)$(man5dir)/mh_profile.5
 
 ##
 ## Our rules to build our internal libraries (libmh.a, libmts.a)
@@ -459,7 +479,7 @@ sbr_libmh_a_SOURCES = sbr/addrsbr.c sbr/ambigsw.c sbr/atooi.c sbr/brkstring.c \
                      sbr/context_replace.c sbr/context_save.c \
                      sbr/copy.c sbr/copyip.c sbr/cpydata.c \
                      sbr/cpydgst.c sbr/crawl_folders.c sbr/discard.c \
-                     sbr/done.c sbr/dtime.c sbr/escape_display_name.c \
+                     sbr/done.c sbr/dtime.c sbr/escape_addresses.c \
                      sbr/error.c  sbr/ext_hook.c sbr/fdcompare.c \
                      sbr/folder_addmsg.c sbr/folder_delmsgs.c \
                      sbr/folder_free.c sbr/folder_pack.c \
@@ -495,7 +515,9 @@ sbr_libmh_a_CPPFLAGS = -I./sbr -DNMHETCDIR='"$(sysconfdir)"' \
                -DDEFAULT_PAGER='"$(pagerpath)"'
 
 sbr_libdtimep_a_SOURCES = sbr/dtimep.l
-sbr_libdtimep_a_CFLAGS = $(sbr_libmh_a_CPPFLAGS) $(DISABLE_UNUSED_MACROS_WARNING)
+sbr_libdtimep_a_CFLAGS = $(sbr_libmh_a_CPPFLAGS) \
+                        $(DISABLE_UNUSED_MACROS_WARNING) \
+                        $(DISABLE_SIGN_COMPARE_WARNING)
 
 mts_libmts_a_SOURCES = mts/smtp/smtp.c
 
@@ -557,14 +579,12 @@ ChangeLog:
 ##
 rpm: dist
        @test -d $(rpmdir)/SOURCES || $(MKDIR_P) $(rpmdir)/SOURCES
-       @test -d $(rpmdir)/SPECS || $(MKDIR_P) $(rpmdir)/SPECS
        @mv -f $(DIST_ARCHIVES) $(rpmdir)/SOURCES
        @cp -p VERSION $(rpmdir)/SOURCES
-       @cp -p docs/contrib/nmh.spec $(rpmdir)/SPECS
        @rpmbuild --define '_topdir $(rpmdir)' \
          --define '_tmppath %{_topdir}/TMP' \
          --define "_sysconfdir $(DESTDIR)$(sysconfdir)" \
-         -ba $(rpmdir)/SPECS/nmh.spec
+         -ba SPECS/nmh.spec
 .PHONY: rpm
 
 ##
@@ -572,7 +592,7 @@ rpm: dist
 ##
 cscope:
        echo "-I $(srcdir)/h -I $(srcdir)/sbr -I $(srcdir)/uip -I $(srcdir)/mts/smtp" > cscope.files
-       find $(srcdir) \( -name \*.c -o -name \*.l \) -print | grep -v dtimep.c >> cscope.files
+       find $(srcdir) \( -name docs -prune \) -o \( -name \*.c -o -name \*.l \) -print | grep -v dtimep.c >> cscope.files
 .PHONY: cscope
 
 
@@ -592,7 +612,7 @@ gcov:
           gcov -p -o `echo $$i | $(SED) 's%\\(.*\\)/%\\1 %'`; \
         done
        @for i in `find . -name '*.gcno'`; do \
-          if ! test -f `echo $$i | sed 's%\.gcno%.gcda%'`; then \
+          if test -f `echo $$i | sed 's%\.gcno%.gcda%'`; then :; else \
             echo untested: $$i; \
           fi; \
         done
@@ -623,5 +643,5 @@ upload: dist
                chmod 664 $(DIST_ARCHIVES).sig; \
        fi
        @echo "Uploading to savannah"
-       scp -p $(DIST_ARCHIVES)* $(SAVANNAH_USERNAME)@savannah.gnu.org:/releases/nmh
+       scp -p $(DIST_ARCHIVES)* $(SAVANNAH_USERNAME)@dl.sv.nongnu.org:/releases/nmh
 .PHONY: upload