Modified configure to use config.guess and config.sub to auto-detect
[mmh] / configure.in
1 dnl
2 dnl configure.in -- autoconf template for nmh
3 dnl
4 dnl $Id$
5 dnl
6
7 AC_INIT(h/nmh.h)
8 AC_CONFIG_HEADER(config.h)
9
10 AC_CANONICAL_SYSTEM
11
12 dnl What version of nmh are we building?
13 VERSION=`sed -e 's/nmh-//' ${srcdir}/VERSION`
14 echo "configuring for nmh-$VERSION"
15 AC_SUBST(VERSION)dnl
16
17 dnl -------------------------
18 dnl CHECK COMMAND LINE OPTION
19 dnl -------------------------
20 dnl What method of posting should post use?
21 undefine([mts])dnl
22 AC_ARG_WITH(mts,
23 [  --with-mts=MTS          specify the mail transport agent])
24
25 if test x$with_mts = xsmtp; then
26   MTS="smtp"
27   MTSLIB="mts/smtp/libsmtp.a"
28   AC_DEFINE(SMTPMTS)dnl
29 elif test x$with_mts = xsendmail; then
30   MTS="sendmail"
31   MTSLIB="mts/sendmail/libsend.a"
32   AC_DEFINE(SENDMTS)dnl
33 else
34   MTS="smtp"
35   MTSLIB="mts/smtp/libsmtp.a"
36   AC_DEFINE(SMTPMTS)dnl
37 fi
38
39 AC_SUBST(MTS)
40 AC_SUBST(MTSLIB)
41
42 dnl What should be the default editor?
43 undefine([editor])dnl
44 AC_ARG_WITH(editor,
45 [  --with-editor=EDITOR    specify the default editor])
46
47 if test -n "$with_editor"; then
48   editorpath="$with_editor"
49 fi
50
51 dnl What should be the default pager?
52 undefine([pager])dnl
53 AC_ARG_WITH(pager,
54 [  --with-pager=PAGER      specify the default pager])
55
56 if test -n "$with_pager"; then
57   pagerpath="$with_pager"
58 fi
59
60 dnl Do you want mhe support?
61 undefine([nmh-mhe])dnl
62 AC_ARG_ENABLE(nmh-mhe,
63 [  --enable-nmh-mhe        enable mhe support (DEFAULT)])
64
65 dnl mhe support is on by default, so define it unless
66 dnl explicitly disabled.
67 if test x$enable_nmh_mhe != xno; then
68   AC_DEFINE(MHE)dnl
69 fi
70
71 dnl Do you want client-side support for pop
72 undefine([nmh-pop])dnl
73 AC_ARG_ENABLE(nmh-pop,
74 [  --enable-nmh-pop        enable client-side support for pop])
75 if test x$enable_nmh_pop = xyes; then
76   AC_DEFINE(POP)dnl
77   POPLIB=popsbr.o
78   POPSED='/^%nmhbeginpop%/d;/^%nmhendpop%/d'
79 else
80   POPSED='/^%nmhbeginpop%/,/^%nmhendpop%/d'
81 fi
82 AC_SUBST(POPLIB)dnl
83 AC_SUBST(POPSED)dnl
84
85 dnl Do you want client-side support for kpop
86 AC_ARG_WITH(krb4,
87 [  --with-krb4=PREFIX      specify location of Kerberos V4 for kpop support])
88 if test x$with_krb4 != x -a x$with_krb4 != xno; then
89   AC_DEFINE(KPOP)dnl
90   AC_DEFINE(KPOP_PRINCIPAL, "pop")dnl
91 fi
92
93 dnl Do you want support for hesiod
94 AC_ARG_WITH(hesiod,
95 [  --with-hesiod=PREFIX    specify location of Hesiod])
96 if test x$with_hesiod != x -a x$with_hesiod != xno; then
97   AC_DEFINE(HESIOD)dnl
98 fi
99
100 dnl Do you want to debug nmh?
101 undefine([nmh-debug])dnl
102 AC_ARG_ENABLE(nmh-debug,
103 [  --enable-nmh-debug      enable nmh code debugging])
104
105 dnl ----------------------------------------------------
106 dnl Default location is /usr/local/nmh/{bin,etc,lib,man}
107 dnl ----------------------------------------------------
108 AC_PREFIX_DEFAULT(/usr/local/nmh)
109
110 dnl ------------------
111 dnl CHECK THE COMPILER
112 dnl ------------------
113 dnl We want these before the checks,
114 dnl so the checks can modify their values.
115 test -z "$CFLAGS" && CFLAGS= auto_cflags=1
116 if test x$enable_nmh_debug = xyes; then
117   test -z "$LDFLAGS" && LDFLAGS=-g
118 fi
119
120 AC_PROG_CC
121
122 dnl if the user hasn't specified CFLAGS, then
123 dnl   if compiler is gcc, then
124 dnl     use -O2 and some warning flags
125 dnl   else use -O
126 if test -n "$auto_cflags"; then
127   if test x$enable_nmh_debug = xyes; then
128     if test -n "$GCC"; then
129       test -z "$CFLAGS" && CFLAGS="-Wall -g" || CFLAGS="$CFLAGS -Wall -g"
130     else
131       test -z "$CFLAGS" && CFLAGS=-g || CFLAGS="$CFLAGS -g"
132     fi
133   else
134     test -z "$LDFLAGS" && LDFLAGS=-s
135     if test -n "$GCC"; then
136       test -z "$CFLAGS" && CFLAGS=-O2 || CFLAGS="$CFLAGS -O2"
137     else
138       test -z "$CFLAGS" && CFLAGS=-O  || CFLAGS="$CFLAGS -O"
139     fi
140   fi
141 fi
142
143 AC_C_CONST              dnl Does compiler support `const'.
144
145 dnl ------------------
146 dnl CHECK FOR PROGRAMS
147 dnl ------------------
148 AC_PROG_MAKE_SET        dnl Does make define $MAKE
149 AC_PROG_INSTALL         dnl Check for BSD compatible `install'
150 AC_PROG_RANLIB          dnl Check for `ranlib'
151 AC_PROG_AWK             dnl Check for mawk,gawk,nawk, then awk
152 AC_PROG_LEX             dnl Check for lex/flex
153
154 dnl Check for lorder and tsort commands
155 AC_CHECK_PROG(LORDER, lorder, lorder, no)dnl
156 AC_CHECK_PROG(TSORT, tsort, tsort, no)dnl
157
158 dnl If either doesn't exist, replace them with echo and cat
159 if test x$ac_cv_prog_LORDER != xlorder -o x$ac_cv_prog_TSORT != xtsort; then
160   LORDER=echo
161   TSORT=cat
162   AC_SUBST(LORDER)dnl
163   AC_SUBST(TSORT)dnl
164 fi
165
166 dnl Look for `sendmail'
167 pathtmp=/usr/lib:/usr/sbin:/usr/etc:/usr/ucblib:/usr/bin:/bin
168 AC_PATH_PROG(sendmailpath, sendmail, no, [$pathtmp])
169
170 dnl Look for `more'
171 pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
172 AC_PATH_PROG(morepath, more, no, [$pathtmp])
173
174 dnl If pager is not specified yet,
175 dnl then use `more' as the default.
176 if test -z "$pagerpath"; then
177   pagerpath="$morepath"
178 fi
179 AC_SUBST(pagerpath)dnl
180
181 dnl Look for `vi'
182 pathtmp=/usr/bin:/bin:/usr/ucb:/usr/local/bin
183 AC_PATH_PROG(vipath, vi, no, [$pathtmp])
184
185 dnl If editor is not specified yet,
186 dnl then use `vi' as the default.
187 if test -z "$editorpath"; then
188   editorpath="$vipath"
189 fi
190 AC_SUBST(editorpath)dnl
191
192 dnl Check for broken vi
193 AC_CACHE_CHECK(for broken vi, nmh_cv_attvibug,
194 [if echo 'r /nonexist-file
195 q' | ex > /dev/null 2>&1
196 then
197         nmh_cv_attvibug=no
198 else
199         nmh_cv_attvibug=yes
200 fi])
201  
202 if test "$nmh_cv_attvibug" = yes; then
203   AC_DEFINE(ATTVIBUG)
204 fi
205
206 dnl ---------------
207 dnl FIND MAIL SPOOL
208 dnl ---------------
209 AC_CACHE_CHECK(where mail spool is located, nmh_cv_mailspool,
210 [for mailspool in /var/mail        dnl
211                   /var/spool/mail  dnl
212                   /usr/spool/mail  dnl
213                   /dev/null;       dnl Just in case we fall through
214 do
215   test -d $mailspool && break
216 done
217 nmh_cv_mailspool=$mailspool
218 ])
219 mailspool=$nmh_cv_mailspool
220 AC_SUBST(mailspool)dnl
221
222 dnl ------------------
223 dnl CHECK HEADER FILES
224 dnl ------------------
225 AC_HEADER_DIRENT
226 AC_HEADER_STDC
227 AC_HEADER_TIME
228 AC_HEADER_SYS_WAIT
229 AC_HEADER_STAT
230 AC_CHECK_HEADERS(string.h memory.h stdlib.h unistd.h errno.h fcntl.h \
231                  limits.h crypt.h termcap.h termio.h termios.h locale.h \
232                  sys/param.h sys/time.h sys/utsname.h arpa/inet.h \
233                  arpa/ftp.h)
234
235 AC_CACHE_CHECK(POSIX termios, nmh_cv_sys_posix_termios,
236 [AC_TRY_LINK([#include <sys/types.h>
237 #include <unistd.h>
238 #include <termios.h>],
239 [/* SunOS 4.0.3 has termios.h but not the library calls.  */
240 tcgetattr(0, 0);],
241   nmh_cv_sys_posix_termios=yes, nmh_cv_sys_posix_termios=no)])
242  
243 if test $nmh_cv_sys_posix_termios = yes; then
244   AC_CACHE_CHECK(TIOCGWINSZ in termios.h,
245   nmh_cv_header_termios_h_tiocgwinsz,
246   [AC_TRY_LINK([#include <sys/types.h>
247 #include <termios.h>],
248   [int x = TIOCGWINSZ;],
249   nmh_cv_header_termios_h_tiocgwinsz=yes,
250   nmh_cv_header_termios_h_tiocgwinsz=no)])
251 else
252   nmh_cv_header_termios_h_tiocgwinsz=no
253 fi
254  
255 if test $nmh_cv_header_termios_h_tiocgwinsz = no; then
256   AC_CACHE_CHECK(TIOCGWINSZ in sys/ioctl.h,
257   nmh_cv_header_sys_ioctl_h_tiocgwinsz,
258   [AC_TRY_LINK([#include <sys/types.h>
259 #include <sys/ioctl.h>],
260   [int x = TIOCGWINSZ;],
261   nmh_cv_header_sys_ioctl_h_tiocgwinsz=yes,
262   nmh_cv_header_sys_ioctl_h_tiocgwinsz=no)])
263   if test $nmh_cv_header_sys_ioctl_h_tiocgwinsz = yes; then
264     AC_DEFINE(GWINSZ_IN_SYS_IOCTL)
265   fi
266 fi
267  
268 AC_CHECK_HEADER([sys/ptem.h], AC_DEFINE(WINSIZE_IN_PTEM))
269
270 dnl ---------------
271 dnl CHECK FUNCTIONS
272 dnl ---------------
273 AC_FUNC_VFORK
274 AC_CHECK_FUNCS(waitpid wait3 sigaction sigprocmask sigblock sigsetmask \
275                sighold sigrelse writev lstat uname tzset killpg)
276
277 dnl sigsetjmp may be a macro
278 AC_MSG_CHECKING(for sigsetjmp)
279 AC_TRY_LINK([#include <setjmp.h>], [sigsetjmp((void *)0, 0);],
280         [AC_DEFINE(HAVE_SIGSETJMP) AC_MSG_RESULT(yes)], AC_MSG_RESULT(no))
281
282 AC_REPLACE_FUNCS(snprintf strerror strdup)
283
284 dnl -------------------
285 dnl CHECK FOR LIBRARIES
286 dnl -------------------
287 dnl Check location of modf
288 AC_CHECK_FUNC(modf, , AC_CHECK_LIB(m, modf))
289
290 dnl Checks for network libraries (nsl, socket)
291 AC_CHECK_NETLIBS
292
293 dnl Check for bug in libraries such that ruserpass
294 dnl needs to be linked as _ruserpass.
295 AC_CHECK_RUSERPASS
296
297 termcap_curses_order="termcap curses ncurses"
298 for lib in $termcap_curses_order; do
299   AC_CHECK_LIB(${lib}, tgetent, [TERMLIB="-l$lib"; break])
300 done
301 AC_SUBST(TERMLIB)dnl
302
303 dnl --------------
304 dnl CHECK FOR NDBM
305 dnl --------------
306 dnl Checks for ndbm
307 AC_CHECK_FUNC(dbm_open, ,
308   AC_CHECK_LIB(ndbm, dbm_open, ,
309     AC_CHECK_LIB(dbm, dbm_open)))
310
311 dnl ----------------
312 dnl CHECK FOR HESIOD
313 dnl ----------------
314 if test x$with_hesiod != x -a x$with_hesiod != xno; then
315   if test x$with_hesiod != xyes; then
316     HESIOD_INCLUDES="-I$with_hesiod/include"
317     HESIOD_LIBS="-L$with_hesiod/lib"
318   fi
319   AC_CHECK_FUNC(res_send, ,
320     AC_CHECK_LIB(resolv, res_send))
321   AC_CHECK_LIB(hesiod, hes_resolve, [HESIOD_LIBS="$HESIOD_LIBS -lhesiod"],
322     [AC_MSG_ERROR(Hesiod library not found)], $HESIOD_LIBS)
323 fi
324 AC_SUBST(HESIOD_INCLUDES)dnl
325 AC_SUBST(HESIOD_LIBS)dnl
326
327 dnl ----------------------------------
328 dnl CHECK FOR KRB4 (Kerberos4 support)
329 dnl ----------------------------------
330 if test x$with_krb4 != x -a x$with_krb4 != xno; then
331   if test x$with_krb4 != xyes; then
332     KRB4_INCLUDES="-I$with_krb4/include"
333     if test -d "$with_krb4/include/kerberosIV"; then
334       KRB4_INCLUDES="$KRB4_INCLUDES -I$with_krb4/include/kerberosIV"
335     fi
336     KRB4_LIBS="-L$with_krb4/lib"
337   elif test -d /usr/include/kerberosIV; then
338     KRB4_INCLUDES="-I/usr/include/kerberosIV"
339   fi
340   AC_CHECK_LIB(krb4, krb_rd_req,
341     [KRB4_LIBS="$KRB4_LIBS -lkrb4 -ldes425 -lkrb5 -lcrypto -lcom_err"],
342     [AC_CHECK_LIB(krb, krb_rd_req,
343       [KRB4_LIBS="$KRB4_LIBS -lkrb -ldes"],
344       [AC_MSG_ERROR(Kerberos 4 libraries not found)],
345       $KRB4_LIBS -ldes)],
346     $KRB4_LIBS -ldes425 -lkrb5 -lcrypto -lcom_err)
347 fi
348 AC_SUBST(KRB4_INCLUDES)dnl
349 AC_SUBST(KRB4_LIBS)dnl
350
351 dnl ---------------------
352 dnl CHECK TERMCAP LIBRARY
353 dnl ---------------------
354
355 dnl Add the termcap library, so that the following configure
356 dnl tests will find it when it tries to link test programs.
357 nmh_save_LIBS="$LIBS"
358 LIBS="$TERMLIB $LIBS"
359
360 dnl Checks for external variable ospeed in the termcap library.
361 AC_CACHE_CHECK(if an include file defines ospeed,
362 nmh_cv_decl_ospeed_include_defines,
363 [AC_TRY_LINK(
364 [#include <sys/types.h>
365 #if HAVE_TERMIOS_H
366 #include <termios.h>
367 #endif
368 #if HAVE_TERMCAP_H
369 #include <termcap.h>
370 #endif], [ospeed = 0;],
371 nmh_cv_decl_ospeed_include_defines=yes,
372 nmh_cv_decl_ospeed_include_defines=no)])
373  
374 if test $nmh_cv_decl_ospeed_include_defines = no; then
375   AC_CACHE_CHECK(if you must define ospeed,
376   nmh_cv_decl_ospeed_must_define,
377   [AC_TRY_LINK( ,[extern short ospeed; ospeed = 0;],
378   nmh_cv_decl_ospeed_must_define=yes,
379   nmh_cv_decl_ospeed_must_define=no)])
380 fi
381  
382 if test $nmh_cv_decl_ospeed_include_defines = yes; then
383   AC_DEFINE(HAVE_OSPEED)
384 elif test $nmh_cv_decl_ospeed_must_define = yes; then
385   AC_DEFINE(HAVE_OSPEED)
386   AC_DEFINE(MUST_DEFINE_OSPEED)
387 fi
388
389 dnl dnl Checks if tgetent accepts NULL and will
390 dnl dnl allocate its own termcap buffer.
391 dnl AC_CACHE_CHECK(if tgetent accepts NULL,
392 dnl nmh_cv_func_tgetent_accepts_null,
393 dnl [AC_TRY_RUN([main(){int i = tgetent((char*)0,"vt100");exit(!i || i == -1);}],
394 dnl   nmh_cv_func_tgetent_accepts_null=yes,
395 dnl   nmh_cv_func_tgetent_accepts_null=no,
396 dnl   nmh_cv_func_tgetent_accepts_null=no)])
397 dnl if test $nmh_cv_func_tgetent_accepts_null = yes; then
398 dnl   AC_DEFINE(TGETENT_ACCEPTS_NULL)
399 dnl fi
400
401 dnl Now put the libraries back to what it was before we
402 dnl starting checking the termcap library.
403 LIBS="$nmh_save_LIBS"
404
405 dnl --------------
406 dnl CHECK TYPEDEFS
407 dnl --------------
408 AC_TYPE_SIGNAL
409 AC_TYPE_PID_T
410 AC_TYPE_OFF_T
411 AC_TYPE_UID_T
412 AC_TYPE_MODE_T
413 AC_TYPE_SIZE_T
414
415 dnl Check for sigset_t.  Currently I'm looking in
416 dnl <sys/types.h> and <signal.h>.  Others might need
417 dnl to be added.
418 AC_CACHE_CHECK(for sigset_t, nmh_cv_type_sigset_t,
419 [AC_TRY_COMPILE(
420 [#include <sys/types.h>
421 #include <signal.h>], [sigset_t tempsigset;],
422   nmh_cv_type_sigset_t=yes, nmh_cv_type_sigset_t=no)])
423 if test $nmh_cv_type_sigset_t = no; then
424   AC_DEFINE(sigset_t, unsigned int)
425 fi
426
427 dnl ----------------
428 dnl CHECK STRUCTURES
429 dnl ----------------
430 AC_STRUCT_ST_BLKSIZE
431
432 AC_CACHE_CHECK(for tm_gmtoff in struct tm, nmh_cv_struct_tm_gmtoff,
433 [AC_TRY_COMPILE(
434 [#ifdef TIME_WITH_SYS_TIME
435 # include <sys/time.h>
436 # include <time.h>
437 #else
438 # ifdef TM_IN_SYS_TIME
439 #  include <sys/time.h>
440 # else
441 #  include <time.h>
442 # endif
443 #endif],
444 [struct tm temptm; temptm.tm_gmtoff = 0;],
445   nmh_cv_struct_tm_gmtoff=yes, nmh_cv_struct_tm_gmtoff=no)])
446 if test $nmh_cv_struct_tm_gmtoff = yes; then
447   AC_DEFINE(HAVE_TM_GMTOFF)
448 fi
449
450 dnl -------------
451 dnl CHECK SIGNALS
452 dnl -------------
453 dnl What style of signal do you have (POSIX, BSD, or SYSV)?
454 AC_MSG_CHECKING(what style of signals to use)
455 if test $ac_cv_func_sigaction = yes -a $ac_cv_func_sigprocmask = yes; then
456   signals_style=POSIX_SIGNALS
457   AC_DEFINE(POSIX_SIGNALS)
458   AC_DEFINE(RELIABLE_SIGNALS)
459 elif test $ac_cv_func_sigblock = yes -a $ac_cv_func_sigsetmask = yes; then
460   signals_style=BSD_SIGNALS
461   AC_DEFINE(BSD_SIGNALS)
462   AC_DEFINE(RELIABLE_SIGNALS)
463 elif test $ac_cv_func_sighold = yes -a $ac_cv_func_sigrelse = yes; then
464   signals_style=SYSV_SIGNALS
465   AC_DEFINE(SYSV_SIGNALS)
466 else
467   signals_style=NO_SIGNAL_BLOCKING
468   AC_DEFINE(NO_SIGNAL_BLOCKING)
469 fi
470
471 AC_MSG_RESULT($signals_style)
472
473 dnl Where is <signal.h> located?  Needed as input for signames.awk
474 AC_CACHE_CHECK(where signal.h is located, nmh_cv_path_signal_h,
475 [for SIGNAL_H in /usr/include/bsd/sys/signal.h  dnl Next
476                  /usr/include/asm/signal.h      dnl Linux 1.3.0 and above
477                  /usr/include/asm/signum.h      dnl some versions of Linux/Alpha
478                  /usr/include/linux/signal.h    dnl Linux up to 1.2.11
479                  /usr/include/sys/signal.h      dnl Almost everybody else
480                  /dev/null;                     dnl Just in case we fall through
481 do
482   test -f $SIGNAL_H && \
483   grep '#[      ]*define[       ][      ]*SIG[0-9A-Z]*[         ]*[0-9][0-9]*' $SIGNAL_H > /dev/null && \
484   break
485 done
486 nmh_cv_path_signal_h=$SIGNAL_H
487 ])
488 SIGNAL_H=$nmh_cv_path_signal_h
489 AC_SUBST(SIGNAL_H)dnl
490
491 dnl ----------------
492 dnl OS SPECIFIC DEFINES
493 dnl ----------------
494 case "$target_os" in
495
496   solaris2*)
497     AC_DEFINE(SYS5)
498     AC_DEFINE(SVR4)
499     ;;
500   irix*)
501     AC_DEFINE(SYS5)
502     AC_DEFINE(SVR4)
503     ;;
504   osf*)
505     AC_DEFINE(SYS5)
506     AC_DEFINE(SVR4)
507     ;;
508   aix*)
509     AC_DEFINE(SYS5)
510     AC_DEFINE(SVR4)
511     ;;
512   sunos4*)
513     AC_DEFINE(BIND)
514     AC_DEFINE(BSD42)
515     ;;
516   linux*)
517     AC_DEFINE(LINUX_STDIO)
518     ;;
519   freebsd*)  
520     AC_DEFINE(BIND)
521     AC_DEFINE(BSD42)
522     AC_DEFINE(BSD44)
523     ;;
524   netbsd*)
525     AC_DEFINE(BIND)
526     AC_DEFINE(BSD42)
527     AC_DEFINE(BSD44)
528     ;;
529   openbsd*)
530     AC_DEFINE(BIND)
531     AC_DEFINE(BSD42)
532     AC_DEFINE(BSD44)
533     ;;
534   bsd/os*)
535     AC_DEFINE(BIND)
536     AC_DEFINE(BSD42)
537     AC_DEFINE(BSD44)
538     ;;
539   sco5*)
540     AC_DEFINE(SYS5)
541     AC_DEFINE(SCO_5_STDIO)
542     ;;
543 esac
544
545
546 dnl ----------------
547 dnl OUTPUT MAKEFILES
548 dnl ----------------
549 AC_OUTPUT(Makefile config/Makefile h/Makefile sbr/Makefile uip/Makefile \
550           zotnet/Makefile zotnet/mts/Makefile zotnet/tws/Makefile \
551           zotnet/mf/Makefile zotnet/bboards/Makefile mts/Makefile \
552           mts/smtp/Makefile mts/sendmail/Makefile mts/mmdf/Makefile \
553           etc/Makefile man/Makefile, \
554           [test -z "$CONFIG_HEADERS" || echo > stamp-h])
555
556 eval "nmhbin=${bindir}";         eval "nmhbin2=${nmhbin}"
557 eval "nmhsysconf=${sysconfdir}"; eval "nmhsysconf2=${nmhsysconf}"
558 eval "nmhlib=${libdir}";         eval "nmhlib2=${nmhlib}"
559 eval "nmhman=${mandir}"
560
561 echo "
562 nmh configuration
563 -----------------
564 nmh version               : ${VERSION}
565 target os                 : ${target}
566 compiler                  : ${CC}
567 compiler flags            : ${CFLAGS}
568 linker flags              : ${LDFLAGS}
569 source code location      : ${srcdir}
570 binary install path       : ${nmhbin2}
571 libary install path       : ${nmhlib2}
572 config files install path : ${nmhsysconf2}
573 man page install path     : ${nmhman}
574 transport system          : ${MTS}
575 default editor            : ${editorpath}
576 default pager             : ${pagerpath}"
577 echo ""