X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/a2c417d3e1641ba4ab151b7945b90f55176705b1..9698f17a245e2f6a38609072bf9d1e0fcd33c747:/Makefile.am diff --git a/Makefile.am b/Makefile.am index ca46a4cd..f1868ec0 100644 --- a/Makefile.am +++ b/Makefile.am @@ -55,6 +55,7 @@ TESTS = test/ali/test-ali test/anno/test-anno \ test/bad-input/test-header \ test/burst/test-burst test/burst/test-burst-mime \ test/comp/test-comp-format test/dist/test-dist \ + test/folder/test-coverage \ test/folder/test-create test/folder/test-nocreate \ test/folder/test-packf test/folder/test-recurse \ test/folder/test-sortm test/folder/test-total \ @@ -69,7 +70,7 @@ TESTS = test/ali/test-ali test/anno/test-anno \ test/inc/test-deb359167 test/inc/test-eom-align \ test/inc/test-inc-scanout test/inc/test-msgchk \ test/inc/test-pop \ - test/install-mh/test-install-mh \ + test/install-mh/test-install-mh test/install-mh/test-version-check \ test/locking/test-datalocking test/locking/test-spoollocking \ test/manpages/test-manpages \ test/mhbuild/test-attach \ @@ -82,6 +83,7 @@ TESTS = test/ali/test-ali test/anno/test-anno \ test/mhlist/test-mhlist test/mhlist/test-ext-params \ test/mhmail/test-mhmail \ test/mhparam/test-mhparam test/mhpath/test-mhpath \ + test/mhshow/test-binary \ test/mhshow/test-charset test/mhshow/test-textcharset \ test/mhshow/test-cte-binary test/mhshow/test-qp \ test/mhshow/test-subpart test/mhshow/test-msg-buffer-boundaries \ @@ -100,6 +102,7 @@ TESTS = test/ali/test-ali test/anno/test-anno \ test/rcv/test-rcvtty test/refile/test-refile test/repl/test-convert \ test/repl/test-if-str test/repl/test-trailing-newline \ test/repl/test-multicomp test/repl/test-repl \ + test/scan/test-header-parsing \ test/scan/test-scan test/scan/test-scan-multibyte \ test/sequences/test-flist test/sequences/test-mark \ test/sequences/test-out-of-range \ @@ -110,23 +113,28 @@ TESTS = test/ali/test-ali test/anno/test-anno \ test/whatnow/test-ls test/whom/test-whom \ test/cleanup ## The "cleanup" test should always be last. +XFAIL_TESTS = \ + # + check_SCRIPTS = test/common.sh check_PROGRAMS = test/getfullname test/getcanon test/fakepop test/fakesmtp \ test/getcwidth test/fakehttp +## So they can be built without builing the `check' target. +check-programs: $(check_PROGRAMS) + ## The location of installed nmhetcdir is, for all purposes except ## distcheck, $nmhetcdir. For distcheck, prepend $MH_INST_DIR (from ## test/common.sh.in), which is based on $MH_TEST_DIR (from ## $TESTS_ENVIRONMENT). -DISTCHECK_CONFIGURE_FLAGS = DISABLE_SETGID_MAIL=1 \ - NMHETCDIRINST='$${abs_builddir}/test/testdir/inst' +AM_DISTCHECK_CONFIGURE_FLAGS = DISABLE_SETGID_MAIL=1 \ + NMHETCDIRINST='$${abs_builddir}/test/testdir/inst' ## ## Stuff that should be cleaned via "make clean" ## automake 1.12.6 on FreeBSD 9 needs the sbr/dtimep.c. ## CLEANFILES = config/version.c sbr/sigmsg.h sbr/dtimep.c etc/mts.conf \ - etc/gen-ctype-checked sbr/ctype-checked.[hc] \ etc/mhn.defaults man/man.sed man/mh-chart.man $(man_MANS) \ *.plist clean-local: @@ -149,11 +157,6 @@ superclean: maintainer-clean @rm -f $(SUPERCLEANFILES) .PHONY: superclean -## -## Files that need to be built before everything else -## -BUILT_SOURCES = sbr/ctype-checked.c - ## ## This is a list of all programs that get installed in the "bin" directory ## Note that primary difference between "PROGRAMS" and "SCRIPTS" is that @@ -178,13 +181,6 @@ nmhlibexec_PROGRAMS = uip/ap uip/dp uip/fmtdump uip/mhl uip/mkstemp \ nmhlibexec_SCRIPTS = uip/spost -## -## Programs that MAY need to get built at some point; we need to list them -## here if they don't appear in any other primary so Automake knows about -## them and can properly record dependency information. -## -EXTRA_PROGRAMS = etc/gen-ctype-checked - ## ## Internal libraries that we create as part of the build process ## but do not install @@ -198,9 +194,9 @@ noinst_LIBRARIES = sbr/libmh.a mts/libmts.a noinst_HEADERS = h/addrsbr.h h/aliasbr.h h/crawl_folders.h h/dropsbr.h \ h/fmt_compile.h h/fmt_scan.h h/icalendar.h h/md5.h h/mf.h \ h/mh.h h/mhcachesbr.h h/mhparse.h h/mime.h \ - h/mts.h h/nmh.h h/picksbr.h h/popsbr.h h/prototypes.h \ - h/rcvmail.h h/scansbr.h h/signals.h h/tws.h h/utils.h \ - mts/smtp/smtp.h sbr/ctype-checked.h h/oauth.h \ + h/mts.h h/nmh.h h/netsec.h h/picksbr.h h/popsbr.h \ + h/prototypes.h h/rcvmail.h h/scansbr.h h/signals.h h/tws.h \ + h/utils.h mts/smtp/smtp.h sbr/ctype-checked.h h/oauth.h \ thirdparty/jsmn/jsmn.h ## @@ -240,14 +236,15 @@ dist_doc_DATA = COPYRIGHT INSTALL NEWS README VERSION \ ## Contribs that get installed in docdir/contrib/ ## docs_contribdir = $(docdir)/contrib -dist_docs_contrib_SCRIPTS = docs/contrib/replyfilter docs/contrib/build_nmh \ - docs/contrib/ml docs/contrib/vpick +dist_docs_contrib_SCRIPTS = docs/contrib/replyfilter \ + docs/contrib/localpostproc docs/contrib/ml \ + docs/contrib/vpick docs/contrib/replaliases dist_docs_contrib_DATA = docs/contrib/replaliases ## ## Our man pages ## -man_MANS = man/ali.1 man/anno.1 man/ap.8 man/burst.1 man/comp.1 \ +man_MANS = man/MH.7 man/ali.1 man/anno.1 man/ap.8 man/burst.1 man/comp.1 \ man/dist.1 man/dp.8 man/flist.1 man/flists.1 \ man/fmtdump.8 man/fmttest.1 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 \ @@ -266,8 +263,8 @@ man_MANS = man/ali.1 man/anno.1 man/ap.8 man/burst.1 man/comp.1 \ ## ## Sources for our man pages ## -man_SRCS = man/ali.man man/anno.man man/ap.man man/burst.man man/comp.man \ - man/dist.man man/dp.man man/flist.man \ +man_SRCS = man/MH.man man/ali.man man/anno.man man/ap.man man/burst.man \ + man/comp.man man/dist.man man/dp.man man/flist.man \ man/flists.man man/fmtdump.man man/fmttest.man man/fnext.man \ man/folder.man man/folders.man man/forw.man man/fprev.man \ man/inc.man man/install-mh.man man/mark.man man/mh-alias.man \ @@ -289,7 +286,7 @@ man_SRCS = man/ali.man man/anno.man man/ap.man man/burst.man man/comp.man \ ## Files we need to include in the distribution which aren't found by ## Automake using the automatic rules ## -EXTRA_DIST = autogen.sh config/version.sh sbr/icalparse.h \ +EXTRA_DIST = autogen.sh build_nmh config/version.sh sbr/icalparse.h \ etc/mts.conf.in etc/mhn.defaults.sh etc/sendfiles \ $(MHNSEARCHPROG) DATE MACHINES \ docs/ChangeLog_MH-3_to_MH-6.6 \ @@ -343,7 +340,8 @@ uip_forw_SOURCES = uip/forw.c uip/whatnowproc.c uip/whatnowsbr.c uip/sendsbr.c \ uip_forw_LDADD = $(LDADD) $(READLINELIB) $(TERMLIB) $(ICONVLIB) $(POSTLINK) uip_inc_SOURCES = uip/inc.c uip/scansbr.c uip/dropsbr.c uip/popsbr.c -uip_inc_LDADD = $(LDADD) $(TERMLIB) $(ICONVLIB) $(SASLLIB) $(CURLLIB) $(POSTLINK) +uip_inc_LDADD = $(LDADD) $(TERMLIB) $(ICONVLIB) $(SASLLIB) $(CURLLIB) \ + $(TLSLIB) $(POSTLINK) uip_install_mh_SOURCES = uip/install-mh.c uip_install_mh_LDADD = $(LDADD) $(POSTLINK) @@ -390,7 +388,7 @@ uip_mhstore_SOURCES = uip/mhstore.c uip/mhparse.c uip/mhcachesbr.c \ uip_mhstore_LDADD = $(LDADD) $(TERMLIB) $(ICONVLIB) $(POSTLINK) uip_msgchk_SOURCES = uip/msgchk.c uip/popsbr.c -uip_msgchk_LDADD = $(LDADD) $(SASLLIB) $(CURLLIB) $(POSTLINK) +uip_msgchk_LDADD = $(LDADD) $(SASLLIB) $(CURLLIB) $(TLSLIB) $(POSTLINK) uip_new_SOURCES = uip/new.c uip_new_LDADD = $(LDADD) $(POSTLINK) @@ -502,14 +500,11 @@ test_fakesmtp_SOURCES = test/fakesmtp.c test/server.c test_fakesmtp_LDADD = $(POSTLINK) test_fakehttp_SOURCES = test/fakehttp.c test/server.c -test_fakehttp_LDADD = $(POSTLINK) +test_fakehttp_LDADD = $(LDADD) $(POSTLINK) test_getcwidth_SOURCES = test/getcwidth.c test_getcwidth_LDADD = $(POSTLINK) -etc_gen_ctype_checked_SOURCES = etc/gen-ctype-checked.c -etc_gen_ctype_checked_LDADD = $(POSTLINK) - ## ## Our rebuild rules for files that aren't built via the normal mechanisms ## @@ -520,11 +515,6 @@ etc_gen_ctype_checked_LDADD = $(POSTLINK) config/version.c: Makefile $(srcdir)/config/version.sh env srcdir="$(srcdir)" sh $(srcdir)/config/version.sh $(VERSION) > ./config/version.c -sbr/ctype-checked.h: etc/gen-ctype-checked - etc/gen-ctype-checked - -sbr/ctype-checked.c: etc/gen-ctype-checked sbr/ctype-checked.h - etc/mts.conf: $(srcdir)/etc/mts.conf.in Makefile @rm -f $@ $(SED) -e 's,%mts%,$(MTS),' \ @@ -535,6 +525,7 @@ etc/mts.conf: $(srcdir)/etc/mts.conf.in Makefile < $(srcdir)/etc/mts.conf.in > $@ etc/mhn.defaults: $(srcdir)/etc/mhn.defaults.sh $(MHNSEARCHPROG) + $(MKDIR_P) $(@D) # FIXME: A better way? @rm -f $@ $(srcdir)/etc/mhn.defaults.sh $(MHNSEARCHPATH) $(MHNSEARCHPROG) > $@ @@ -610,8 +601,9 @@ sbr_libmh_a_SOURCES = sbr/addrsbr.c sbr/ambigsw.c sbr/atooi.c sbr/arglist.c \ sbr/m_draft.c sbr/m_getfld.c sbr/m_gmprot.c \ sbr/m_maildir.c sbr/m_name.c sbr/m_popen.c sbr/m_rand.c \ sbr/makedir.c sbr/md5.c sbr/message_id.c \ - sbr/mime_type.c sbr/mts.c sbr/norm_charmap.c sbr/path.c \ - sbr/peekc.c sbr/pidwait.c sbr/pidstatus.c \ + sbr/mime_type.c sbr/mts.c sbr/netsec.c \ + sbr/norm_charmap.c sbr/path.c \ + sbr/pidwait.c sbr/pidstatus.c \ sbr/print_help.c sbr/print_sw.c sbr/print_version.c \ sbr/push.c sbr/putenv.c sbr/refile.c sbr/remdir.c \ sbr/r1bindex.c sbr/readconfig.c sbr/ruserpass.c \ @@ -629,6 +621,8 @@ sbr_libmh_a_SOURCES = sbr/addrsbr.c sbr/ambigsw.c sbr/atooi.c sbr/arglist.c \ config/config.c config/version.c \ thirdparty/jsmn/jsmn.c +sbr_libmh_a_LIBADD = $(LIBOBJS) + ## ## Because these files use the definitions in the libmh rule below, ## they need to be rebuilt if the Makefile changes. @@ -730,16 +724,17 @@ rpm: dist ## These targets are not integrated into the other automake ## targets because they will be used so infrequently, if at all. ## -gcov: - @if ./config.status --config | grep -e --enable-debug >/dev/null; then \ - echo For best results with gcov, configure without --enable-debug; \ - fi +gcov: gcov-rebuild gcov-run gcov-process gcov-report +gcov-rebuild: @echo rebuilding with AM_CFLAGS=--coverage . . . - @(make clean && make AM_CFLAGS=--coverage) > /dev/null && \ - make check AM_CFLAGS=--coverage + @(make clean && make AM_CFLAGS=--coverage) > /dev/null +gcov-run: + make check AM_CFLAGS=--coverage +gcov-process: @for i in `find . -name '*.gcda'`; do \ - gcov -p -o `echo $$i | $(SED) 's%\\(.*\\)/%\\1 %'`; \ + gcov -pro `echo $$i | $(SED) 's%\\(.*\\)/%\\1 %'`; \ done +gcov-report: @for i in `find . -name '*.gcno'`; do \ if test -f `echo $$i | sed 's%\.gcno%.gcda%'`; then :; else \ echo untested: $$i; \ @@ -749,7 +744,8 @@ gcov-mostlyclean: @find . -name '*.gcno' -o -name '*.gcda' | xargs rm gcov-clean: gcov-mostlyclean @find . -name '*.gcov' | xargs rm -.PHONY: gcov gcov-mostlyclean gcov-clean +.PHONY: gcov gcov-rebuild gcov-run gcov-process gcov-report \ + gcov-mostlyclean gcov-clean ##