X-Git-Url: https://diplodocus.org/git/nmh/blobdiff_plain/cf1f3bdaa19bf1b5e1e99ee1e8a28d61a524395e..d92ca17b1bbd3b17be48f48432ddc9a7ed1faf27:/configure.ac diff --git a/configure.ac b/configure.ac index 7441dd02..09365563 100644 --- a/configure.ac +++ b/configure.ac @@ -74,10 +74,12 @@ AS_IF([test -n "$with_smtpservers"], [smtpservers="$with_smtpservers"], [smtpservers="localhost"]) AC_SUBST([smtpservers])dnl -dnl ---------------------------------------------------- -dnl Default location is /usr/local/nmh/{bin,etc,lib,man} -dnl ---------------------------------------------------- +dnl ------------------------------------------------------------------- +dnl Default location is /usr/local/nmh/{bin,etc,libexec,man}, unless we +dnl find an existing installation, in which case we use its location. +dnl ------------------------------------------------------------------- AC_PREFIX_DEFAULT([/usr/local/nmh]) +AC_PREFIX_PROGRAM([mhparam]) dnl ------------------ dnl CHECK THE COMPILER @@ -152,8 +154,20 @@ fi dnl FreeBSD needs a bit of magic to bring getline() into scope. dnl We do this here rather than in (say) h/mh.h because this macro must dnl be defined before is pulled in. +dnl +dnl And while we're here, add the packages tree to the cpp and ld search +dnl paths. Note that FreeBSD's pkg(8) seems to be hardwired to use /usr/local. +dnl If /usr/ports is installed, we use its idea of where things are installed, +dnl otherwise we assume /usr/local. + AS_IF([test `uname` = FreeBSD], - [CPPFLAGS="${CPPFLAGS:+$CPPFLAGS }-D_WITH_GETLINE"]) + [CPPFLAGS="${CPPFLAGS:+$CPPFLAGS }-D_WITH_GETLINE" + nmh_cv_freebsd_localbase=`echo '.include ' \ + | make -k -f /dev/stdin -V LOCALBASE 2>/dev/null | sed 1q` + test -z "$nmh_cv_freebsd_localbase" && nmh_cv_freebsd_localbase=/usr/local + CPPFLAGS="${CPPFLAGS:+$CPPFLAGS }-I$nmh_cv_freebsd_localbase/include" + LDFLAGS="${LDFLAGS:+$LDFLAGS }-L$nmh_cv_freebsd_localbase/lib" +]) dnl -------------- dnl CUSTOMIZE LINK @@ -192,11 +206,12 @@ AC_HEADER_ASSERT dnl ------------------ dnl CHECK FOR PROGRAMS dnl ------------------ -AC_PROG_MAKE_SET dnl Does make define $MAKE -AC_PROG_INSTALL dnl Check for BSD compatible `install' -AC_PROG_RANLIB dnl Check for `ranlib' +AC_PROG_MAKE_SET dnl Does make define $MAKE +AC_PROG_INSTALL dnl Check for BSD compatible `install' +AC_PROG_RANLIB dnl Check for `ranlib' AC_PROG_AWK dnl Check for mawk,gawk,nawk, then awk -AC_PROG_SED dnl Check for Posix-compliant sed +AC_PROG_SED dnl Check for Posix-compliant sed +AC_PROG_YACC dnl Check for yacc/bison AM_PROG_LEX dnl Check for lex/flex AM_PROG_AR @@ -292,7 +307,7 @@ AS_IF([test x"$DISABLE_SETGID_MAIL" != x -a x"$DISABLE_SETGID_MAIL" != x0], dnl If mailspool is not world-writable and dotlockfile is not setgid, dnl we need to #define MAILGROUP to 1 and make inc setgid. -if test x"$LOCKTYPE" = x"dot" -a x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then +if test x"$with_locking" = x"dot" -a x"$nmh_cv_mailspool_world_writable" = x"no" -a x"$nmh_cv_dotlockfile_setgid" != x"yes" ; then dnl do we really need both of these? AC_DEFINE([MAILGROUP],[1], [Define to 1 if you need to make `inc' set-group-id because your mail spool is not world writable. There are no guarantees as to the safety of doing this, but this #define will add some extra security checks.])dnl @@ -501,6 +516,13 @@ AS_IF([test "$LEX" = flex], '; sed "s/\( \)int i;/\1yy_size_t i;/" $@ >$@.tmp && mv -f $@.tmp $@']) AC_SUBST([LFLAGS])]) +dnl ------------------ +dnl FOR INTERNAL USE by the NMH test suite +dnl ------------------ +AC_ARG_VAR([NMHETCDIRINST], [for internal use by nmh test suite]) +AS_IF([test -n "$NMHETCDIRINST"], [nmhetcdirinst=$NMHETCDIRINST] + AC_SUBST([nmhetcdirinst])) + dnl ---------------- dnl CHECK STRUCTURES dnl ---------------- @@ -551,7 +573,7 @@ dnl the final summary and should use them nowhere else (see the autoconf dnl docs for the rationale for bindir etc being unexpanded). eval "nmhbin=${bindir}"; eval "nmhbin=${nmhbin}" eval "nmhsysconf=${sysconfdir}"; eval "nmhsysconf=${nmhsysconf}" -eval "nmhlib=${libdir}"; eval "nmhlib=${nmhlib}" +eval "nmhlibexec=${libexecdir}"; eval "nmhlibexec=${nmhlibexec}" eval "nmhman=${mandir}"; eval "nmhman=${nmhman}" eval "nmhrpm=${nmhrpm}"; @@ -566,8 +588,8 @@ linker flags : ${LDFLAGS} preprocessor flags : ${CPPFLAGS} source code location : ${srcdir} binary install path : ${nmhbin} -library install path : ${nmhlib} -config files install path : ${nmhsysconf} +libexec install path : ${nmhlibexec}/nmh +config files install path : ${nmhsysconf}/nmh man page install path : ${nmhman} RPM build root : ${nmhrpm} backup prefix : ${backup_prefix}