]> diplodocus.org Git - nmh/blobdiff - Makefile.am
pending-release-notes: add mhshow's "-prefer", and mh-format's %(kibi/kilo)
[nmh] / Makefile.am
index 24632c4db2d7785028e0998c500e1dba759cc0f1..af4a2fee17c0d543aa50260a421cbc911a86b7bc 100644 (file)
@@ -25,18 +25,19 @@ MHNSEARCHPATH = "$(PATH)"
 MHNSEARCHPROG = $(srcdir)/etc/mhn.find.sh
 
 ##
-## Automake doesn't let us install programs in $(libdir), so we create our
-## own directory prefix to use in the primary variable.
+## Install config files and back-end programs in our own subdirecctories.
 ##
-auxexecdir = @libdir@
+nmhetcdir  = @sysconfdir@/nmh
+nmhlibexecdir = @libexecdir@/nmh
 
 ##
 ## nmh _does_ have a test suite!
 ##
 TESTS_ENVIRONMENT = MH_OBJ_DIR="@abs_builddir@" \
                    MH_TEST_DIR="@abs_builddir@/test/testdir" \
-                   auxexecdir="$(auxexecdir)" bindir="$(bindir)" \
-                   mandir="$(mandir)" sysconfdir="$(sysconfdir)" \
+                   nmhlibexecdir="$(nmhlibexecdir)" bindir="$(bindir)" \
+                   mandir="$(mandir)" nmhetcdir="$(nmhetcdir)" \
+                   nmhetcdirinst="@nmhetcdirinst@$(nmhetcdir)" \
                    supported_locks="$(supported_locks)" \
                    default_locking="${default_locking}" \
                    MULTIBYTE_ENABLED=$(MULTIBYTE_ENABLED) \
@@ -52,8 +53,8 @@ TESTS = test/ali/test-ali test/anno/test-anno \
        test/folder/test-create test/folder/test-packf \
        test/folder/test-recurse test/folder/test-sortm \
        test/folder/test-total \
-       test/format/test-curses \
-       test/format/test-dp test/format/test-fmtdump \
+       test/format/test-curses test/format/test-dp \
+       test/format/test-fmtdump test/format/test-functions \
        test/format/test-localmbox test/format/test-myname \
        test/format/test-myhost test/format/test-mymbox \
        test/format/test-nullstr \
@@ -72,6 +73,7 @@ TESTS = test/ali/test-ali test/anno/test-anno \
        test/mhbuild/test-forw test/mhbuild/test-header-encode \
        test/mhbuild/test-utf8-body \
        test/mhfixmsg/test-mhfixmsg \
+       test/mhl/test-mhl-flags \
        test/mhlist/test-mhlist test/mhlist/test-ext-params \
        test/mhmail/test-mhmail \
        test/mhparam/test-mhparam test/mhpath/test-mhpath \
@@ -101,7 +103,13 @@ TESTS = test/ali/test-ali test/anno/test-anno \
 check_SCRIPTS = test/common.sh
 check_PROGRAMS = test/getfullname test/getcanon test/fakepop test/fakesmtp \
                 test/getcwidth
-DISTCHECK_CONFIGURE_FLAGS = DISABLE_SETGID_MAIL=1
+
+## 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'
 
 ##
 ## Stuff that should be cleaned via "make clean"
@@ -118,7 +126,7 @@ clean-local:
 ##
 ## Stuff that should be cleaned via "make maintainer-clean"
 ##
-MAINTAINERCLEANFILES = cscope.files cscope.out cscope.in.out cscope.po.out *.plist
+MAINTAINERCLEANFILES = atags cscope.files cscope.out cscope.in.out cscope.po.out *.plist
 
 ##
 ## And our own superclean, to get everything left by maintainer-clean.
@@ -151,13 +159,13 @@ bin_PROGRAMS = uip/ali uip/anno uip/burst uip/comp uip/dist uip/flist \
 bin_SCRIPTS = uip/mhmail etc/sendfiles
 
 ##
-## This is all programs that get installed in the "lib" directory
+## This is all programs that get installed in the "libexec/nmh" directory
 ##
-auxexec_PROGRAMS = uip/ap uip/dp uip/fmtdump uip/mhl uip/mkstemp \
+nmhlibexec_PROGRAMS = uip/ap uip/dp uip/fmtdump uip/mhl uip/mkstemp \
                   uip/post uip/rcvdist uip/rcvpack uip/rcvstore uip/rcvtty \
                   uip/slocal uip/viamail
 
-auxexec_SCRIPTS = uip/spost
+nmhlibexec_SCRIPTS = uip/spost
 
 ##
 ## Programs that MAY need to get built at some point; we need to list them
@@ -186,7 +194,7 @@ noinst_HEADERS = h/addrsbr.h h/aliasbr.h h/crawl_folders.h h/dropsbr.h \
 ##
 ## Extra files we need to install in various places
 ##
-dist_sysconf_DATA = etc/MailAliases etc/components etc/digestcomps \
+dist_nmhetc_DATA = etc/MailAliases etc/components etc/digestcomps \
                    etc/distcomps etc/forwcomps etc/mhl.body etc/mhl.digest \
                    etc/mhl.format etc/mhl.forward etc/mhl.headers \
                    etc/mhl.reply etc/mhshow.marker etc/rcvdistcomps \
@@ -201,7 +209,7 @@ dist_sysconf_DATA = etc/MailAliases etc/components etc/digestcomps \
 ## The same as above, but we don't include these in the distribution
 ## (because they're generated at compile time)
 ##
-sysconf_DATA = etc/mhn.defaults etc/mts.conf
+nmhetc_DATA = etc/mhn.defaults etc/mts.conf
 
 ##
 ## Documentation that gets installed in docdir
@@ -409,7 +417,7 @@ uip_whom_SOURCES = uip/whom.c uip/distsbr.c
 uip_whom_LDADD = $(LDADD) $(POSTLINK)
 
 ##
-## Programs definitions for all utilities that end up in $(libdir)
+## Programs definitions for all utilities that end up in $(nmhlibexecdir)
 ##
 
 uip_ap_SOURCES = uip/ap.c
@@ -477,8 +485,8 @@ etc_gen_ctype_checked_LDADD = $(POSTLINK)
 ## Hard-code the config/version.c target, instead of using $@, so this
 ## rule works for the distcheck target with Solaris (System V) make.
 ## distcheck uses VPATH, causes that make to prepend the VPATH to $@.
-config/version.c: Makefile
-       sh $(srcdir)/config/version.sh $(VERSION) > ./config/version.c
+config/version.c: Makefile $(srcdir)/config/version.sh
+       env srcdir="$(srcdir)" sh $(srcdir)/config/version.sh $(VERSION) > ./config/version.c
 
 sbr/sigmsg.h: $(srcdir)/sbr/sigmsg.awk $(SIGNAL_H)
        $(AWK) -f $(srcdir)/sbr/sigmsg.awk $(SIGNAL_H) > $@
@@ -547,8 +555,8 @@ uninstall-hook:
 ## Our rules to build our internal libraries (libmh.a, libmts.a)
 ##
 sbr_libmh_a_SOURCES = sbr/addrsbr.c sbr/ambigsw.c sbr/atooi.c sbr/arglist.c \
-                     sbr/base64.c \
-                     sbr/brkstring.c sbr/check_charset.c sbr/client.c \
+                     sbr/base64.c sbr/brkstring.c \
+                     sbr/charstring.c sbr/check_charset.c sbr/client.c \
                      sbr/closefds.c sbr/concat.c sbr/context_del.c \
                      sbr/context_find.c sbr/context_foil.c sbr/context_read.c \
                      sbr/context_replace.c sbr/context_save.c \
@@ -595,10 +603,10 @@ sbr_libmh_a_SOURCES = sbr/addrsbr.c sbr/ambigsw.c sbr/atooi.c sbr/arglist.c \
 
 config/sbr_libmh_a-config.$(OBJEXT) sbr/sbr_libmh_a-mts.$(OBJEXT): Makefile
 
-sbr_libmh_a_CPPFLAGS = -I./sbr -DNMHETCDIR='"$(sysconfdir)"' \
+sbr_libmh_a_CPPFLAGS = -I./sbr -DNMHETCDIR='"@nmhetcdirinst@$(nmhetcdir)"' \
                -DMAILSPOOL='"$(mailspool)"' \
                -DSENDMAILPATH='"$(sendmailpath)"' -DNMHBINDIR='"$(bindir)"' \
-               -DNMHLIBDIR='"$(libdir)"'
+               -DNMHLIBEXECDIR='"$(nmhlibexecdir)"'
 
 mts_libmts_a_SOURCES = mts/smtp/smtp.c
 
@@ -616,10 +624,10 @@ $(man_MANS): man/man.sed
 man/man.sed: Makefile
        @echo 's,%nmhwarning%,THIS FILE HAS BEEN AUTOMATICALLY GENERATED.  DO NOT EDIT.,g' > $@
        @echo 's,%nmhversion%,nmh-$(VERSION),g' >> $@
+       @echo 's,%nmhetcdir%,$(nmhetcdir),g' >> $@
+       @echo 's,%nmhlibexecdir%,$(nmhlibexecdir),g' >> $@
        @echo 's,%bindir%,$(bindir),g' >> $@
        @echo 's,%docdir%,$(docdir),g' >> $@
-       @echo 's,%etcdir%,$(sysconfdir),g' >> $@
-       @echo 's,%libdir%,$(libdir),g' >> $@
        @echo 's,%mandir%,$(mandir),g' >> $@
        @echo 's,%mailspool%,$(mailspool),g' >> $@
        @echo 's,%sendmailpath%,$(sendmailpath),g' >> $@