ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/rxvt-unicode/configure.ac
Revision: 1.26
Committed: Mon Jan 23 10:10:39 2006 UTC (18 years, 5 months ago) by ayin
Branch: MAIN
Changes since 1.25: +0 -39 lines
Log Message:
*** empty log message ***

File Contents

# Content
1 dnl#
2 dnl# Process this file with autoconf to produce a configure script.
3 dnl#
4
5 AC_INIT
6 AC_PREREQ(2.50)
7 AC_CONFIG_SRCDIR([src/feature.h])
8 AC_CONFIG_HEADER(config.h:config.h.in)
9
10 AC_CANONICAL_HOST
11
12 dnl RXVT version
13 changequote(, )dnl
14 VERSION=`sed -n -e 's/^.*[ \t]VERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
15 DATE=`sed -n -e 's/^.*[ \t]DATE.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
16 dnl LIBVERSION=`sed -n -e 's/^.*[ \t]LIBVERSION.*"\(.*\)"$/\1/p' ${srcdir}/src/version.h`
17 changequote([, ])dnl
18 AC_SUBST(VERSION)dnl
19 AC_SUBST(DATE)dnl
20 AC_SUBST(LSMDATE)dnl
21 AC_SUBST(LIBVERSION)dnl
22 echo ""
23 echo "configuring for rxvt $VERSION"
24 echo ""
25
26 orig_CXXFLAGS="$CXXFLAGS"
27
28 dnl# Checks for programs.
29 dnl AC_MAKE_SET
30
31 AC_PROG_CC
32 AC_PROG_CXX
33 AC_PROG_CPP
34 AC_PROG_INSTALL
35
36 AC_AIX
37 AC_ISC_POSIX
38 AC_LANG(C++)
39
40 dnl check wether we can link with gcc -lsupc++
41 if test x$GCC = xyes && test x$GXX = xyes; then
42 dnl FreeBSD (at least up to 5.3) has a broken GCC, workaround it
43 AC_MSG_CHECKING([for working libsupc++])
44 save_CXX="$CXX"
45 save_LIBS="$LIBS"
46 CXX="$CC"
47 LIBS="$LIBS -lsupc++"
48 LINKER="$CC"
49 AC_LINK_IFELSE(
50 [AC_LANG_PROGRAM([struct test { }; void f() try { throw new test; } catch (...) { throw; }])],
51 [AC_MSG_RESULT(ok)],
52 [
53 AC_MSG_RESULT([no, making everything bigger and slower])
54 LIBS="$save_LIBS"
55 LINKER="$save_CXX"
56 ]
57 )
58 CXX="$save_CXX"
59 fi
60 AC_SUBST(LINKER,[$LINKER])
61
62 AC_LANG(C++)
63 dnl# --------------------------------------------------------------------------
64 dnl# Supply default CXXFLAGS, if not specified by `CXXFLAGS=flags ./configure'
65 dnl#
66 if test -z "$orig_CXXFLAGS"; then
67 if test x$GCC = xyes && test "x$GXX" = xyes; then
68 CXXFLAGS="-g -O3 -fno-threadsafe-statics -fno-enforce-eh-specs"
69 AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [], [CXXFLAGS="-g -O3"])
70 else
71 CXXFLAGS="-O"
72 fi
73 CFLAGS="$CXXFLAGS"
74 fi
75
76 AC_DEFINE(_GNU_SOURCE, 1, Use all glibc features.)
77
78 case $host in
79 *-*-solaris* )
80 AC_DEFINE(_XOPEN_SOURCE_EXTENDED, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
81 AC_DEFINE(_XOPEN_SOURCE, 2, Needed to get declarations for msg_control and msg_controllen on Solaris)
82 AC_DEFINE(__EXTENSIONS__, 1, Needed to get declarations for msg_control and msg_controllen on Solaris)
83 ;;
84 esac
85
86 dnl if test x$GXX = xyes; then
87 dnl CXXFLAGS="$CXXFLAGS" dnl I once had -fno-exceptions, but I am using them now...
88 dnl fi
89
90 dnl# FreeBSD needs to link libxpg4
91 AC_CHECK_FUNC(setlocale, [], [AC_CHECK_LIB(xpg4, setlocale, [LIBS="$LIBS -lxpg4"])])
92
93 dnl# solaris needs to link libnsl and socket
94 AC_CHECK_FUNC(gethostbyname, [], [AC_CHECK_LIB(nsl, gethostbyname, [LIBS="$LIBS -lnsl"])])
95 AC_CHECK_FUNC(socket, [], [AC_CHECK_LIB(socket, socket, [LIBS="$LIBS -lsocket"])])
96
97 dnl# more solaris
98 AC_CHECK_FUNC(sched_yield, [], [AC_CHECK_LIB(rt, sched_yield, [LIBS="$LIBS -lrt"])])
99
100 dnl# sched_yield to improve terminal efficiency
101 AC_MSG_CHECKING(for sched_yield support)
102 AC_TRY_LINK([#include <sched.h>],[sched_yield ()],
103 [AC_MSG_RESULT(yes)
104 AC_DEFINE(HAVE_SCHED_YIELD, 1, Define if you have sched-h and sched_yield)],
105 [AC_MSG_RESULT(no)])
106
107 dnl AC_ENABLE_SHARED(no)dnl# libtool
108 dnl AC_ENABLE_STATIC(yes)dnl# libtool
109 dnl AC_PROG_LIBTOOL()dnl# libtool
110
111 MALLOC_TYPE=S
112
113 support_frills=yes
114 support_inheritpixmap=yes
115 support_tinting=yes
116 support_fading=yes
117 support_keepscrolling=yes
118 support_selectionscrolling=yes
119 support_mousewheel=yes
120 support_mouseslipwheel=yes
121 support_utmp=yes
122 support_wtmp=yes
123 support_lastlog=yes
124 support_text_blink=yes
125 support_pointer_blank=yes
126 support_scroll_rxvt=yes
127 support_scroll_next=yes
128 support_scroll_xterm=yes
129 support_scroll_plain=yes
130 support_xim=yes
131 support_xpm=yes
132 support_xft=yes
133 support_unicode3=no
134 support_combining=yes
135 support_8bitctrls=no
136 support_iso14755=yes
137 support_styles=yes
138 support_perl=yes
139 codesets=all
140
141 dnl# --------------------------------------------------------------------------
142 dnl# CHECKING COMMAND LINE OPTIONS
143 dnl# --------------------------------------------------------------------------
144
145 if test "x$enable_shared" = xyes; then
146 AC_DEFINE(LIBRXVT, 1, Build shared library version - specify via configure only)
147 INSTALL_LIBRXVT=yes
148 fi
149 AC_SUBST(INSTALL_LIBRXVT)
150
151 AC_ARG_ENABLE(everything,
152 [ --enable-everything enable standard non-multichoice features
153 NOTE: this option is order dependent
154 NOTE: automatically enabled with --enable-shared],
155 [
156 if test x$enableval = xno; then
157 support_24bit=no
158 support_frills=no
159 support_inheritpixmap=no
160 support_tinting=no
161 support_fading=no
162 support_keepscrolling=no
163 support_selectionscrolling=no
164 support_lastlog=no
165 support_mousewheel=no
166 support_mouseslipwheel=no
167 support_text_blink=no
168 support_pointer_blank=no
169 support_scroll_rxvt=no
170 support_scroll_next=no
171 support_scroll_xterm=no
172 support_scroll_plain=no
173 support_utmp=no
174 support_wtmp=no
175 support_xim=no
176 support_xpm=no
177 support_xft=no
178 support_unicode3=no
179 support_combining=no
180 support_8bitctrls=no
181 support_iso14755=no
182 support_styles=no
183 support_perl=no
184 codesets=
185 fi
186 if test x$enableval = xyes; then
187 support_24bit=yes
188 support_frills=yes
189 support_inheritpixmap=yes
190 support_tinting=yes
191 support_fading=yes
192 support_keepscrolling=yes
193 support_selectionscrolling=yes
194 support_lastlog=yes
195 support_mousewheel=yes
196 support_mouseslipwheel=yes
197 support_text_blink=yes
198 support_pointer_blank=yes
199 support_scroll_rxvt=yes
200 support_scroll_next=yes
201 support_scroll_xterm=yes
202 support_scroll_plain=yes
203 support_utmp=yes
204 support_wtmp=yes
205 support_xim=yes
206 support_xpm=yes
207 support_xft=yes
208 support_unicode3=yes
209 support_combining=yes
210 #support_8bitctrls=yes
211 support_iso14755=yes
212 support_styles=yes
213 support_perl=yes
214 codesets=all
215 fi
216 ])
217
218 AC_ARG_ENABLE(unicode3,
219 [ --enable-unicode3 use 21 instead of 16 bits to represent unicode characters],
220 [if test x$enableval = xyes -o x$enableval = xno; then
221 support_unicode3=$enableval
222 fi])
223
224 AC_ARG_ENABLE(combining,
225 [ --enable-combining enable composition of base and combining characters],
226 [if test x$enableval = xyes -o x$enableval = xno; then
227 support_combining=$enableval
228 fi])
229
230 AC_ARG_ENABLE(xft,
231 [ --enable-xft enable xft support on systems that have it],
232 [if test x$enableval = xyes -o x$enableval = xno; then
233 support_xft=$enableval
234 fi])
235
236 AC_ARG_ENABLE(font-styles,
237 [ --enable-font-styles enable bold and italic support],
238 [if test x$enableval = xyes -o x$enableval = xno; then
239 support_styles=$enableval
240 fi])
241
242 AC_ARG_ENABLE(xpm-background,
243 [ --enable-xpm-background enable XPM background pixmaps],
244 [if test x$enableval = xyes -o x$enableval = xno; then
245 support_xpm=$enableval
246 fi])
247
248 AC_ARG_ENABLE(transparency,
249 [ --enable-transparency enable transparent backgrounds],
250 [if test x$enableval = xyes -o x$enableval = xno; then
251 support_inheritpixmap=$enableval
252 fi])
253
254 AC_ARG_ENABLE(tinting,
255 [ --enable-tinting enable tinting of transparent bg],
256 [if test x$enableval = xyes -o x$enableval = xno; then
257 support_tinting=$enableval
258 fi])
259
260 AC_ARG_ENABLE(fading,
261 [ --enable-fading enable colors fading when off focus],
262 [if test x$enableval = xyes -o x$enableval = xno; then
263 support_fading=$enableval
264 fi])
265
266 AC_ARG_ENABLE(rxvt-scroll,
267 [ --enable-rxvt-scroll enable rxvt style scrollbar],
268 [if test x$enableval = xyes -o x$enableval = xno; then
269 support_scroll_rxvt=$enableval
270 fi])
271
272 AC_ARG_ENABLE(next-scroll,
273 [ --enable-next-scroll enable NeXT style scrollbar],
274 [if test x$enableval = xyes -o x$enableval = xno; then
275 support_scroll_next=$enableval
276 fi])
277
278 AC_ARG_ENABLE(xterm-scroll,
279 [ --enable-xterm-scroll enable Xterm style scrollbar],
280 [if test x$enableval = xyes -o x$enableval = xno; then
281 support_scroll_xterm=$enableval
282 fi])
283
284 AC_ARG_ENABLE(perl,
285 [ --enable-perl enable embedded perl interpreter],
286 [if test x$enableval = xyes -o x$enableval = xno; then
287 support_perl=$enableval
288 fi])
289
290 AC_ARG_ENABLE(plain-scroll,
291 [ --enable-plain-scroll enable plain style scrollbar],
292 [if test x$enableval = xyes -o x$enableval = xno; then
293 support_scroll_plain=$enableval
294 fi])
295
296 dnl AC_ARG_ENABLE(half-shadow,
297 dnl [ --enable-half-shadow use half width/height shadow on rxvt scrollbar],
298 dnl [if test x$enableval = xyes; then
299 dnl AC_DEFINE(HALFSHADOW, 1, Define if you want the depth of scrollbars and menus to be less)
300 dnl fi])
301
302 AC_ARG_WITH(codesets,
303 [ --with-codesets=NAME,.. compile in additional codesets (jp,jp_ext,kr,zh,zh_ext,all)],
304 [codesets="$withval"])
305
306 AC_ARG_ENABLE(xim,
307 [ --enable-xim XIM (X Input Method) protocol support],
308 [if test x$enableval = xyes -o x$enableval = xno; then
309 support_xim=$enableval
310 fi])
311
312 AC_ARG_ENABLE(backspace-key,
313 [ --disable-backspace-key disable handling of the backspace key],
314 [if test x$enableval = xno; then
315 AC_DEFINE(NO_BACKSPACE_KEY, 1, Define if you don't want support for the backspace key)
316 fi])
317
318 AC_ARG_ENABLE(delete-key,
319 [ --disable-delete-key disable handling of the delete key],
320 [if test x$enableval = xno; then
321 AC_DEFINE(NO_DELETE_KEY, 1, Define if you don't want support for the (non-keypad) delete key)
322 fi])
323
324 AC_ARG_ENABLE(resources,
325 [ --disable-resources disable all resource checking],
326 [if test x$enableval = xno; then
327 AC_DEFINE(NO_RESOURCES, 1, Define if you don't want any resources read)
328 fi])
329
330 AC_ARG_ENABLE(8bitctrls,
331 [ --enable-8bitctrls enable 8 bit control sequences (not recommended)],
332 [if test x$enableval = xyes -o x$enableval = xno; then
333 support_8bitctrls=$enableval
334 fi])
335
336 RESFALLBACK=Rxvt
337 AC_ARG_ENABLE(fallback,
338 [ --enable-fallback(=CLASS) fall back on CLASS resources in addition to URxvt ones (default: Rxvt)],
339 [
340 test x$enableval = xyes && enableval=Rxvt
341 test x$enableval = xno && enableval=
342 RESFALLBACK="$enableval"
343 ])
344
345 if test x$RESFALLBACK != x; then
346 AC_DEFINE_UNQUOTED(RESFALLBACK, "$RESFALLBACK", [Fallback resource class])
347 fi
348
349 RESNAME=urxvt
350 AC_ARG_WITH(res-name,
351 [ --with-res-name=NAME use this as default resource name (default: urxvt)],
352 [RESNAME="$withval"])
353 AC_DEFINE_UNQUOTED(RESNAME,"$RESNAME", [Default resource name])
354
355 RESCLASS=URxvt
356 AC_ARG_WITH(res-class,
357 [ --with-res-class=CLASS use this as the resource class (default: URxvt)],
358 [RESCLASS="$withval"])
359 AC_DEFINE_UNQUOTED(RESCLASS,"$RESCLASS", [Resource class])
360
361 RXVTNAME=urxvt
362 AC_ARG_WITH(name,
363 [ --with-name=NAME set the basename for the installed binaries (default: urxvt)],
364 [RXVTNAME="$withval"])
365 AC_DEFINE_UNQUOTED(RXVTNAME,"$RXVTNAME", [Binary base name])
366
367 RXVTNAME=`echo "$RXVTNAME"|sed "$program_transform_name"`
368 AC_SUBST(RXVTNAME)
369
370 AC_ARG_ENABLE(swapscreen,
371 [ --disable-swapscreen disable swap screen support],
372 [if test x$enableval = xno; then
373 AC_DEFINE(NO_SECONDARY_SCREEN, 1, Disable the secondary screen. Many programs use the secondary screen as their workplace)
374 fi])
375
376 AC_ARG_ENABLE(iso14755,
377 [ --enable-iso14755 enable support for extended ISO 14755 modes],
378 [if test x$enableval = xyes -o x$enableval = xno; then
379 support_iso14755=$enableval
380 fi])
381
382 AC_ARG_ENABLE(frills,
383 [ --enable-frills enable support for rarely used features],
384 [if test x$enableval = xyes -o x$enableval = xno; then
385 support_frills=$enableval
386 fi])
387
388 AC_ARG_ENABLE(24bit,
389 [ --enable-24bit enable support for using 24bit visuals if available],
390 [if test x$enableval = xyes -o x$enableval = xno; then
391 support_24bit=$enableval
392 fi])
393
394 AC_ARG_ENABLE(keepscrolling,
395 [ --enable-keepscrolling enable continual scrolling on scrollbar arrow press],
396 [if test x$enableval = xyes -o x$enableval = xno; then
397 support_keepscrolling=$enableval
398 fi])
399
400 AC_ARG_ENABLE(selectionscrolling,
401 [ --enable-selectionscrolling enable scrolling during selections],
402 [if test x$enableval = xyes -o x$enableval = xno; then
403 support_selectionscrolling=$enableval
404 fi])
405
406 AC_ARG_ENABLE(mousewheel,
407 [ --enable-mousewheel enable scrolling via mouse wheel or buttons 4 & 5],
408 [if test x$enableval = xyes -o x$enableval = xno; then
409 support_mousewheel=$enableval
410 fi])
411
412 AC_ARG_ENABLE(slipwheeling,
413 [ --enable-slipwheeling enable slip wheel scrolling (requires previous)],
414 [if test x$enableval = xyes -o x$enableval = xno; then
415 support_mouseslipwheel=$enableval
416 fi])
417
418 AC_ARG_ENABLE(dmalloc,
419 [ --enable-dmalloc enable Gray Watson's malloc - for debugging use],
420 [if test x$enableval = xyes; then
421 MALLOC_TYPE=G
422 DEBUG=-DDEBUG_MALLOC
423 DLIB="-L/usr/local/lib -ldmalloc"
424 DINCLUDE=-I/usr/local/include
425 fi])
426
427 AC_ARG_ENABLE(dlmalloc,
428 [ --enable-dlmalloc enable Doug Lea's malloc - for production use
429 NOTE: enable only one malloc package],
430 [if test x$enableval = xyes; then
431 MALLOC_TYPE=D
432 DEBUG=
433 DLIB="-L/usr/local/lib -ldlmalloc"
434 DINCLUDE=
435 fi])
436
437 AC_ARG_ENABLE(smart-resize,
438 [ --enable-smart-resize enable smart growth/shrink behaviour],
439 [if test x$enableval = xyes; then
440 AC_DEFINE(SMART_RESIZE, 1, Define to use "smart" resize behavior)
441 fi])
442
443 AC_ARG_ENABLE(text-blink,
444 [ --enable-text-blink enable blinking text],
445 [if test x$enableval = xyes -o x$enableval = xno; then
446 support_text_blink=$enableval
447 fi])
448
449 AC_ARG_ENABLE(pointer-blank,
450 [ --enable-pointer-blank enable pointer blank when typing or inactive pointer],
451 [if test x$enableval = xyes -o x$enableval = xno; then
452 support_pointer_blank=$enableval
453 fi])
454
455 AC_ARG_WITH(term,
456 [ --with-term=NAME set the terminal to NAME (default: rxvt)],
457 [if test x$withval != x; then
458 AC_DEFINE_UNQUOTED(TERMENV, "$withval",Set TERM to the value given by configure) term="$withval"
459 fi])
460
461 AC_ARG_WITH(terminfo,
462 [ --with-terminfo=PATH set the path to the terminfo tree to PATH],
463 [if test x$withval != x; then
464 AC_DEFINE_UNQUOTED(RXVT_TERMINFO, "$withval", Set TERMINFO value to the value given by configure) terminfo="$withval"
465 fi])
466
467 dnl# --------------------------------------------------------------------------
468
469 AC_PATH_PROG(MV, mv, mv)
470 AC_PATH_PROG(CP, cp, cp)
471 AC_PATH_PROG(LN, ln, ln)
472 AC_PATH_PROG(SED, sed, sed)
473 AC_PATH_PROG(ECHO, echo, echo)
474 AC_PATH_PROG(CMP, cmp, cmp)
475 AC_PATH_PROG(TIC, tic)
476
477 dnl# need a neat way to detect SVR4 or its features
478 dnl# in src/command.c we use these functions:
479 dnl# grantpt(), unlockpt(), ptsname(), which are defined in <sys/ptms.h>
480 dnl# - but are these also defined for other systems?
481
482 dnl# hack to find if this is SVR4 -- who knows?
483 dnl## AC_MSG_CHECKING(for SVR4)
484 dnl## AC_EGREP_CPP(yes,
485 dnl## [#if defined (SVR4) || defined (_SVR4) || defined (__svr4__)
486 dnl## yes;
487 dnl## #endif
488 dnl## ], [AC_MSG_RESULT(yes); AC_DEFINE(PERHAPS_SVR4)], AC_MSG_RESULT(perhaps not?))
489
490 AC_PATH_XTRA
491
492 dnl# the only reasonable way to find libXpm is do-it-yourself
493 dnl# only check if we want xpm-background
494
495 if test x$support_xpm = xyes; then
496 VT_FIND_LIBXPM
497 if test x$no_xpm = xyes; then
498 support_xpm=needsmanualspecification
499 fi
500 fi
501
502 dnl# --------------------------------------------------------------------------
503 dnl# CHECKING FOR HEADER FILES
504 dnl# --------------------------------------------------------------------------
505 AC_HEADER_SYS_WAIT
506 AC_CHECK_HEADERS( \
507 assert.h \
508 fcntl.h \
509 stdarg.h \
510 stdlib.h \
511 string.h \
512 termios.h \
513 unistd.h \
514 sys/byteorder.h \
515 sys/ioctl.h \
516 sys/select.h \
517 sys/sockio.h \
518 sys/strredir.h \
519 sys/time.h \
520 stdint.h \
521 wchar.h \
522 cwchar \
523 clocale \
524 )
525
526 AC_HEADER_TIME
527
528 dnl# check to allow both <termios.h> and <sys/ioctl.h>
529 AC_CACHE_CHECK(whether termios.h and sys/ioctl.h may both be included, rxvt_cv_header_sysioctl,
530 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdio.h>
531 #include <sys/ioctl.h>
532 #ifdef HAVE_TERMIOS_H
533 #include <termios.h>
534 #endif]], [[int a = ECHO;]])],[rxvt_cv_header_sysioctl=yes],[rxvt_cv_header_sysioctl=no])])
535
536 dnl# ELF systems may want to store paths for dynamic libraries.
537 dnl# Lets see if the compiler can accept "-Rpath" or "-Wl,-Rpath"
538 dnl# At least one version of SunOS wants "-R path" but it's not checked yet.
539 if test -n "$GCC"; then
540 LDARG="-Wl,"
541 else
542 LDARG=""
543 fi
544 changequote(, )dnl
545 R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-rpath '$LDARG'\1/g'
546 changequote([, ])dnl
547
548 ac_save_CFLAGS=$CFLAGS
549 ac_save_LIBS=$LIBS
550 CFLAGS="$CFLAGS $X_CFLAGS"
551 LIBS=`echo "$LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
552 AC_CACHE_CHECK([for -rpath dynamic library path recording], rxvt_cv_rpath,
553 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
554 main()
555 {
556 exit(0);
557 (void) XOpenDisplay("foobar");
558 }]])],[rxvt_cv_rpath=yes],[rxvt_cv_rpath=no],[dnl
559 AC_MSG_WARN(You may need to check the LIBS line)])])
560 if test x$rxvt_cv_rpath != xyes; then
561 changequote(, )dnl
562 R_TRANSLATE='s/-L\([^ ]*\)/-L\1 '$LDARG'-R\1/g'
563 changequote([, ])dnl
564 LIBS=`echo "$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11" | sed "$R_TRANSLATE"`
565 AC_CACHE_CHECK([for -R dynamic library path recording], rxvt_cv_R,
566 [AC_RUN_IFELSE([AC_LANG_SOURCE([[
567 main()
568 {
569 exit(0);
570 (void) XOpenDisplay("foobar");
571 }]])],[rxvt_cv_R=yes],[rxvt_cv_R=no],[rxvt_cv_R=no])])
572 if test x$rxvt_cv_R != xyes; then
573 LIBS="$ac_save_LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
574 fi
575 fi
576
577 AC_CACHE_CHECK([for XPointer], rxvt_cv_xpointer,
578 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <X11/Xlib.h>]], [[XPointer dummy;]])],[rxvt_cv_xpointer=yes],[rxvt_cv_xpointer=no])])
579 if test x$rxvt_cv_xpointer = xyes; then
580 AC_DEFINE(HAVE_XPOINTER, 1, Define if you have XPointer typedef)
581 fi
582 LIBS=$ac_save_LIBS
583 CFLAGS=$ac_save_CFLAGS
584
585
586 AC_C_CONST
587 AC_C_INLINE
588
589 dnl> AC_HEADER_STDC dnl# skip this test, Sun always fails anyhow.
590
591 dnl# --------------------------------------------------------------------------
592 dnl# CHECKING FOR MISSING TYPEDEFS
593 dnl# --------------------------------------------------------------------------
594 dnl# Missing typedefs and replacements
595 AC_TYPE_MODE_T
596 dnl> AC_CHECK_TYPE(umode_t, int)
597 dnl> AC_CHECK_TYPE(off_t, long)
598 AC_TYPE_PID_T
599 AC_TYPE_UID_T
600
601 AC_CHECK_SIZEOF(short, 2)
602 AC_CHECK_SIZEOF(int, 4)
603 dnl AC_CHECK_SIZEOF(long, 4)
604 AC_CHECK_SIZEOF(long long, 8)
605 AC_CHECK_SIZEOF(int *, 4)
606
607 dnl# see usage below
608 AC_DEFUN([RXVT_CHECK_SIZE],
609 [AC_CACHE_CHECK([for $2], $1,
610 [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[#include <stdint.h>]], [[$2 dummy;]])],[$1=yes],[dnl
611 if test "$ac_cv_sizeof_char" -ge $3; then
612 $1="$4 char"
613 else
614 if test "$ac_cv_sizeof_short" -ge $3; then
615 $1="$4 short"
616 else
617 if test "$ac_cv_sizeof_int" -ge $3; then
618 $1="$4 int"
619 else
620 if test "$ac_cv_sizeof_long" -ge $3; then
621 $1="$4 long"
622 else
623 if test "$ac_cv_sizeof_long_long" -ge $3; then
624 $1="$4 long long"
625 else
626 $1="$4 $5" # we _must_ have a (possibly wrong) default
627 fi
628 fi
629 fi
630 fi
631 fi])])]
632 if test x"$$1" != xyes; then
633 $6="typedef $$1 $2;"
634 else
635 if test x"$4" = x; then
636 $6="/* typedef $5 $2; */"
637 else
638 $6="/* typedef $4 $5 $2; */"
639 fi
640 fi dnl
641 )
642 dnl#
643 dnl# Look for types the system may know about anyway.
644 dnl#
645 RXVT_CHECK_SIZE(rxvt_cv_int16_t, int16_t, 2, , short, rxvt_int16_typedef)
646 AC_SUBST(rxvt_int16_typedef)
647 RXVT_CHECK_SIZE(rxvt_cv_uint16_t, uint16_t, 2, unsigned, short, rxvt_uint16_typedef)
648 AC_SUBST(rxvt_uint16_typedef)
649 RXVT_CHECK_SIZE(rxvt_cv_int32_t, int32_t, 4, , int, rxvt_int32_typedef)
650 AC_SUBST(rxvt_int32_typedef)
651 RXVT_CHECK_SIZE(rxvt_cv_uint32_t, uint32_t, 4, unsigned, int, rxvt_uint32_typedef)
652 AC_SUBST(rxvt_uint32_typedef)
653 dnl RXVT_CHECK_SIZE(rxvt_cv_int64_t, int64_t, 8, , long long, rxvt_int64_typedef)
654 dnl AC_SUBST(rxvt_int64_typedef)
655 dnl RXVT_CHECK_SIZE(rxvt_cv_uint64_t, uint64_t, 8, unsigned, long long, rxvt_uint64_typedef)
656 dnl AC_SUBST(rxvt_uint64_typedef)
657 dnl#
658 dnl# Now look for another we use
659 dnl#
660 if test "$ac_cv_sizeof_int_p" -eq 8; then
661 rxvt_intp_define="#define intp_t int64_t"
662 rxvt_u_intp_define="#define u_intp_t u_int64_t"
663 else
664 if test "$ac_cv_sizeof_int_p" -eq 4; then
665 rxvt_intp_define="#define intp_t int32_t"
666 rxvt_u_intp_define="#define u_intp_t u_int32_t"
667 else
668 if test "$ac_cv_sizeof_int_p" -eq 2; then
669 rxvt_intp_define="#define intp_t int16_t"
670 rxvt_u_intp_define="#define u_intp_t u_int16_t"
671 else
672 rxvt_intp_define="#error set intp_t"
673 rxvt_u_intp_define="#error set u_intp_t"
674 fi
675 fi
676 fi
677 AC_SUBST(rxvt_intp_define)
678 AC_SUBST(rxvt_u_intp_define)
679
680 dnl# --------------------------------------------------------------------------
681 dnl# CHECKING FOR LIBRARY FUNCTIONS
682 dnl# --------------------------------------------------------------------------
683 AC_TYPE_SIGNAL
684 dnl> AC_FUNC_VPRINTF
685
686 AC_CHECK_FUNCS( \
687 unsetenv \
688 setutent \
689 seteuid \
690 setresuid \
691 setreuid \
692 on_exit \
693 )
694
695 UTMP_CHECK
696
697 dnl# --------------------------------------------------------------------------
698
699 dnl# find ttys/ttytab
700 AC_CACHE_CHECK(where ttys/ttytab is located, rxvt_cv_path_ttytab,
701 [for ttys_file in dnl
702 /etc/ttys /etc/ttytab;
703 do
704 if test -f "$ttys_file" ; then
705 rxvt_cv_path_ttytab=$ttys_file
706 break
707 fi
708 done
709 ])
710 if test x$rxvt_cv_path_ttytab != x; then
711 AC_DEFINE_UNQUOTED(TTYTAB_FILENAME, "$rxvt_cv_path_ttytab", Define location of ttys/ttytab)
712 fi
713
714 dnl# --------------------------------------------------------------------------
715 dnl# --------------------------------------------------------------------------
716
717 dnl# this is a really hack test for some basic Xlocale stuff
718 ac_save_LIBS=$LIBS
719 ac_save_CFLAGS=$CFLAGS
720 CFLAGS="$CFLAGS $X_CFLAGS"
721 LIBS="$LIBS $X_LIBS $X_EXTRA_LIBS -lX11"
722 if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then
723 LIBS=`echo $LIBS | sed "$R_TRANSLATE"`
724 fi
725 AC_CACHE_CHECK(for working Xlocale, rxvt_cv_func_xlocale,
726 [AC_RUN_IFELSE([AC_LANG_SOURCE([[#include <X11/Xlib.h>
727 main() {
728 char *p;
729 if ((p = XSetLocaleModifiers("@im=none")) != NULL && *p)
730 exit (XSupportsLocale() ? 0 : 1);
731 else
732 exit (1);}]])],[dnl
733 rxvt_cv_func_xlocale=yes],[rxvt_cv_func_xlocale=no],[dnl
734 AC_MSG_WARN(Define NO_XLOCALE in config.h manually)])])
735 if test x$rxvt_cv_func_xlocale = xyes; then
736 AC_DEFINE(HAVE_XLOCALE, 1, Define if Xlocale support works)
737 fi
738
739 AC_CACHE_CHECK(for working X setlocale, rxvt_cv_func_xsetlocale,
740 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#define X_LOCALE 1
741 #include <X11/Xlocale.h>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_xsetlocale=yes],[rxvt_cv_func_xsetlocale=no])])
742 if test x$rxvt_cv_func_xsetlocale = xyes; then
743 AC_DEFINE(HAVE_XSETLOCALE, 1, Define if setlocale (defined to Xsetlocale) works)
744 fi
745 LIBS=$ac_save_LIBS
746 CFLAGS=$ac_save_CFLAGS
747
748 AC_CACHE_CHECK(for working plain setlocale, rxvt_cv_func_setlocale,
749 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <clocale>]], [[setlocale(LC_CTYPE, "");]])],[rxvt_cv_func_setlocale=yes],[rxvt_cv_func_setlocale=no])])
750 if test x$rxvt_cv_func_setlocale = xyes; then
751 AC_DEFINE(HAVE_SETLOCALE, 1, Define if plain old setlocale works)
752 fi
753
754 AC_CACHE_CHECK(for working nl_langinfo, rxvt_cv_func_nl_langinfo,
755 [AC_LINK_IFELSE([AC_LANG_PROGRAM([[#include <langinfo.h>]], [[nl_langinfo(CODESET);]])],[rxvt_cv_func_nl_langinfo=yes],[rxvt_cv_func_nl_langinfo=no])])
756 if test x$rxvt_cv_func_nl_langinfo = xyes; then
757 AC_DEFINE(HAVE_NL_LANGINFO, 1, Define if nl_langinfo(CODESET) works)
758 fi
759
760 SCM_RIGHTS_CHECK
761
762 AC_CACHE_CHECK(for broken XIM callback, rxvt_broken_ximcb,
763 [AC_COMPILE_IFELSE([
764 #include <X11/Xlib.h>
765
766 void im_destroy_cb (XIC unused1, XPointer client_data, XPointer unused3);
767
768 void f() {
769 XIMCallback cb;
770 cb.callback = im_destroy_cb;
771 }
772 ],rxvt_broken_ximcb=yes,rxvt_broken_ximcb=no)])
773
774 if test x$rxvt_broken_ximcb = xyes; then
775 AC_DEFINE(XIMCB_PROTO_BROKEN, 1, Define if your XIMCallback specifies XIC as first type.)
776 fi
777
778 PTY_CHECK
779
780 TTY_GROUP_CHECK
781
782 dnl# --------------------------------------------------------------------------
783 dnl# now add and remove other stuff
784 dnl# --------------------------------------------------------------------------
785 if test x$support_xft = xyes; then
786 AC_PATH_PROG(PKG_CONFIG, pkg-config, no)
787 if test $PKG_CONFIG != no && $PKG_CONFIG --exists xft; then
788 LIBS="$LIBS `$PKG_CONFIG xft --libs`"
789 CPPFLAGS="$CPPFLAGS `$PKG_CONFIG xft --cflags`"
790 else
791 AC_PATH_PROG(XFT_CONFIG, xft-config, no)
792 if test $XFT_CONFIG != no; then
793 LIBS="$LIBS `$XFT_CONFIG --libs`"
794 CPPFLAGS="$CPPFLAGS `$XFT_CONFIG --cflags`"
795 fi
796 fi
797
798 AC_CHECK_HEADERS(X11/Xft/Xft.h,,[support_xft=no])
799 AC_CHECK_LIB(Xft,XftDrawString32,,[support_xft=no])
800
801 if test x$support_xft = xyes; then
802 AC_DEFINE(XFT, 1, Define to enable xft support)
803 fi
804 fi
805 if test x$support_styles = xyes; then
806 AC_DEFINE(ENABLE_STYLES, 1, Define if you want bold and italic support)
807 fi
808 if test x$support_iso14755 = xyes; then
809 AC_DEFINE(ISO_14755, 1, Define if you want ISO 14755 extended support)
810 fi
811 if test x$support_8bitctrls = xyes; then
812 AC_DEFINE(EIGHT_BIT_CONTROLS, 1, Define if you want 8 bit control sequences)
813 fi
814 if test x$support_fading = xyes; then
815 AC_DEFINE(OFF_FOCUS_FADING, 1, Define if you want faded colors when focus is lost)
816 fi
817 if test x$support_tinting = xyes; then
818 AC_DEFINE(TINTING, 1, Define if you want your background to be tinted)
819 fi
820 if test x$support_inheritpixmap = xyes; then
821 AC_DEFINE(TRANSPARENT, 1, Define if you want your background to use the parent window background)
822 fi
823 if test x$support_keepscrolling = xno; then
824 AC_DEFINE(NO_SCROLLBAR_BUTTON_CONTINUAL_SCROLLING, 1, Define for continual scrolling when you keep the scrollbar button pressed)
825 fi
826 if test x$support_selectionscrolling = xyes; then
827 AC_DEFINE(SELECTION_SCROLLING, 1, Define to allow scrolling when the selection moves to the top or bottom of the screen)
828 fi
829 if test x$support_frills = xyes; then
830 AC_DEFINE(ENABLE_FRILLS, 1, Define if you want handling for rarely used but handy features)
831 fi
832 if test x$support_24bit = xyes; then
833 AC_DEFINE(PREFER_24BIT, 1, Define to use a 24 bit visual if the screen has 24 bit mode, even if the default is 8 bit)
834 fi
835 if test x$support_mousewheel = xyes; then
836 AC_DEFINE(MOUSE_WHEEL, 1, Define to use wheel events (button4 and button5) to scroll)
837 fi
838 if test x$support_mouseslipwheel = xyes; then
839 AC_DEFINE(MOUSE_SLIP_WHEELING, 1, Define to have CTRL cause wheel events to accelerate scrolling. Release CTRL to halt scrolling)
840 fi
841 if test x$support_xim = xyes -o x$multichar_set = xyes; then
842 if test x$rxvt_cv_func_xlocale = xyes; then
843 AC_DEFINE(USE_XIM, 1, Define if you want to have XIM (X Input Method) protocol support - required for multibyte characters input)
844 fi
845 fi
846 if test x$support_xpm = xyes; then
847 AC_DEFINE(XPM_BACKGROUND, 1, Define if you want to have sexy-looking background pixmaps. Needs libXpm)
848 fi
849 if test x$support_scroll_rxvt = xyes; then
850 AC_DEFINE(RXVT_SCROLLBAR, 1, Support Rxvt original style scrollbars)
851 scrolltypes="rxvt"
852 fi
853 if test x$support_scroll_next = xyes; then
854 AC_DEFINE(NEXT_SCROLLBAR, 1, Support NeXT style scrollbars)
855 scrolltypes="$scrolltypes next"
856 fi
857 if test x$support_scroll_xterm = xyes; then
858 AC_DEFINE(XTERM_SCROLLBAR, 1, Support Xterm style scrollbars)
859 scrolltypes="$scrolltypes xterm"
860 fi
861 if test x$support_scroll_plain = xyes; then
862 AC_DEFINE(PLAIN_SCROLLBAR, 1, Support plain style scrollbars)
863 scrolltypes="$scrolltypes plain"
864 fi
865 if test x$support_pointer_blank = xyes; then
866 AC_DEFINE(POINTER_BLANK, 1, Define if you want hide the pointer while typing)
867 fi
868 if test x$support_text_blink = xyes; then
869 AC_DEFINE(TEXT_BLINK, 1, Define if you want blinking text support)
870 fi
871 if test x$support_unicode3 = xyes; then
872 AC_DEFINE(UNICODE_3, 1, Define if you want to represent unicode characters outside plane 0)
873 fi
874 if test x$support_combining = xyes; then
875 AC_DEFINE(ENABLE_COMBINING, 1, Define if you want to automatically compose combining characters)
876 fi
877 if test x$codesets = xall; then
878 codesets=jp,jp-ext,kr,zh,zh-ext
879 fi
880 AC_DEFINE(ENCODING_EU, 1, Define if you want european extended codesets)
881 AC_DEFINE(ENCODING_VN, 1, Define if you want vietnamese codesets)
882 for codeset in `echo $codesets | tr "[a-z,\\-]" "[A-Z _]"`; do
883 case "$codeset" in
884 JP ) AC_DEFINE(ENCODING_JP, 1, Define if you want japanese codesets) ;;
885 JP_EXT ) AC_DEFINE(ENCODING_JP_EXT, 1, Define if you want extended japanese codesets) ;;
886 KR ) AC_DEFINE(ENCODING_KR, 1, Define if you want korean codesets) ;;
887 ZH ) AC_DEFINE(ENCODING_ZH, 1, Define if you want chinese codesets) ;;
888 ZH_EXT ) AC_DEFINE(ENCODING_ZH_EXT, 1, Define if you want extended chinese codesets) ;;
889 esac
890 done
891
892 IF_PERL=\#
893 if test x$support_perl = xyes; then
894 AC_PATH_PROG(PERL, perl5)
895 AC_PATH_PROG(PERL, perl)
896
897 AC_MSG_CHECKING(for $PERL suitability)
898 if $PERL -MExtUtils::Embed -e "use v5.8" >/dev/null 2>/dev/null; then
899
900 save_CXXFLAGS="$CXXFLAGS"
901 save_LIBS="$LIBS"
902 CXXFLAGS="$CXXFLAGS `$PERL -MExtUtils::Embed -e ccopts`"
903 LIBS="$LIBS `$PERL -MExtUtils::Embed -e ldopts`"
904 AC_TRY_LINK([
905 #include <EXTERN.h>
906 #include <perl.h>
907 #include <XSUB.h>
908 ],[
909 PerlInterpreter *perl = perl_alloc ();
910 ],[rxvt_perl_link=yes],[rxvt_perl_link=no])
911 CXXFLAGS="$save_CXXFLAGS"
912 LIBS="$save_LIBS"
913
914 if test x$rxvt_perl_link = xyes; then
915 AC_MSG_RESULT(ok)
916 AC_DEFINE(ENABLE_PERL, 1, Define if you can embed a perl interpreter)
917 IF_PERL=
918 PERL_O=rxvtperl.o
919 PERLFLAGS="`$PERL -MExtUtils::Embed -e ccopts`"
920 PERLLIB="`$PERL -MExtUtils::Embed -e ldopts`"
921 PERLPRIVLIBEXP="`$PERL -MConfig -e 'print $Config{privlibexp}'`"
922 else
923 AC_MSG_ERROR([no, unable to link])
924 fi
925 else
926 AC_MSG_ERROR([no working perl found, or perl not version >= 5.8])
927 fi
928 fi
929 AC_SUBST(PERLLIB)
930 AC_SUBST(PERLFLAGS)
931 AC_SUBST(PERLPRIVLIBEXP)
932 AC_SUBST(PERL)
933 AC_SUBST(IF_PERL)
934 AC_SUBST(PERL_O)
935
936 if test x$support_perl = xyes; then
937 support_frills=yes
938 fi
939
940 dnl> AC_CHECK_FUNCS(gettimeofday putenv select socket)
941
942 CFLAGS=${CFLAGS--O}
943 LDFLAGS=${LDFLAGS--O}
944
945 CPPFLAGS="$CPPFLAGS"
946 AC_SUBST(DEBUG)
947 AC_SUBST(DINCLUDE)
948 AC_SUBST(CFLAGS)
949 AC_SUBST(CPPFLAGS)
950 AC_SUBST(LDFLAGS)
951 AC_SUBST(X_CFLAGS)
952
953 dnl# Attack the libs
954 if test x$rxvt_cv_rpath = xyes -o x$rxvt_cv_R = xyes; then
955 DLIB=`echo $DLIB | sed "$R_TRANSLATE"`
956 LIBS=`echo $LIBS | sed "$R_TRANSLATE"`
957 X_LIBS=`echo $X_LIBS | sed "$R_TRANSLATE"`
958 X_EXTRA_LIBS=`echo $X_EXTRA_LIBS | sed "$R_TRANSLATE"`
959 XPM_LIBS=`echo $XPM_LIBS | sed "$R_TRANSLATE"`
960 fi
961 AC_SUBST(DLIB)
962 AC_SUBST(LIBS)
963 AC_SUBST(X_LIBS)
964 AC_SUBST(X_EXTRA_LIBS)
965
966 AC_ARG_PROGRAM
967
968 dnl# test for "sun" or "__sun__" before include sys_ioctl
969
970 dnl# revert HAVE_BLAH_H into a "#include <blah.h>"
971 AC_DEFUN([RXVT_DEFINE_TO_INCLUDE], dnl
972 [if test "$$3" = "$4" -o "$$5" = "$6"; then
973 $1="#include <$2>"
974 else
975 $1="/* #include <$2> */"
976 fi dnl
977 AC_SUBST($1)])
978
979 RXVT_DEFINE_TO_INCLUDE(include_stdint_h, stdint.h, ac_cv_header_stdint_h, yes, notset, dontmatch)
980 RXVT_DEFINE_TO_INCLUDE(include_stdarg_h, cstdarg, ac_cv_header_stdarg_h, yes, notset, dontmatch)
981 RXVT_DEFINE_TO_INCLUDE(include_stdlib_h, cstdlib, ac_cv_header_stdlib_h, yes, notset, dontmatch)
982 RXVT_DEFINE_TO_INCLUDE(include_unistd_h, unistd.h, ac_cv_header_unistd_h, yes, notset, dontmatch)
983 RXVT_DEFINE_TO_INCLUDE(include_string_h, cstring, ac_cv_header_string_h, yes, notset, dontmatch)
984 RXVT_DEFINE_TO_INCLUDE(include_fcntl_h, fcntl.h, ac_cv_header_fcntl_h, yes, notset, dontmatch)
985 RXVT_DEFINE_TO_INCLUDE(include_util_h, util.h, ac_cv_header_util_h, yes, notset, dontmatch)
986 RXVT_DEFINE_TO_INCLUDE(include_assert_h, assert.h, ac_cv_header_assert_h, yes, notset, dontmatch)
987 RXVT_DEFINE_TO_INCLUDE(include_sys_ioctl_h, sys/ioctl.h, rxvt_cv_header_sysioctl, yes, notset, dontmatch)
988 RXVT_DEFINE_TO_INCLUDE(include_sys_select_h, sys/select.h, ac_cv_header_sys_select_h, yes, notset, dontmatch)
989 RXVT_DEFINE_TO_INCLUDE(include_sys_strredir_h, sys/strredir.h, ac_cv_header_sys_strredir_h, yes, notset, dontmatch)
990 RXVT_DEFINE_TO_INCLUDE(include_sys_time_h, sys/time.h, ac_cv_header_sys_time_h, yes, notset, dontmatch)
991 RXVT_DEFINE_TO_INCLUDE(include_time_h, time.h, ac_cv_header_sys_time_h, no, ac_cv_header_time, yes)
992
993 AC_CONFIG_FILES([Makefile \
994 doc/Makefile \
995 src/Makefile \
996 src/rxvtlib.h \
997 ])
998 AC_OUTPUT
999
1000 echo "Configuration:
1001
1002 Rxvt version: $VERSION : $DATE
1003 Source code location: $srcdir
1004 Install path: ${prefix}/bin
1005 Compiler: $CXX
1006 Compiler flags: $CFLAGS
1007 Linker: $LINKER"
1008
1009 if test "$MALLOC_TYPE" = S; then
1010 echo " malloc support: system default"
1011 fi
1012 if test "$MALLOC_TYPE" = G; then
1013 echo " malloc support: Gray Watson's dmalloc"
1014 fi
1015 if test "$MALLOC_TYPE" = D; then
1016 echo " malloc support: Doug Lea's malloc"
1017 fi
1018
1019 if test x$support_xpm = xyes; then
1020 echo " Xpm library: $XPM_LIBS"
1021 fi
1022
1023 if test x$term != x; then
1024 echo " set TERM to: $term"
1025 fi
1026 if test x$terminfo != x; then
1027 echo " set TERMINFO to: $terminfo"
1028 fi
1029 echo " default resource name: $RESNAME"
1030 echo " resource class: $RESCLASS"
1031 if test x$RESFALLBACK != x; then
1032 echo " resource class fallback: $RESFALLBACK"
1033 fi
1034 echo
1035 echo " embedded perl: $support_perl"
1036 echo
1037 if test x$support_xpm = xneedsmanualspecification; then
1038 echo ".----------------------------------------------------------------."
1039 echo ". WARNING: --enable-xpm-background was specified however the ."
1040 echo ". XPM includes files and libraries could not be found. ."
1041 echo ". XPM backgrounds are now being DISABLED! If you want ."
1042 echo ". to use them you should rerun configure with the ."
1043 echo ". appropriate --with-xpm-includes=/path/to/xpm/includes ."
1044 echo ". and --with-xpm-library=/path/to/xpm/library lines. ."
1045 echo ".----------------------------------------------------------------."
1046 fi
1047 if test x$support_xim = xyes -a x$rxvt_cv_func_xlocale = xno; then
1048 echo ".----------------------------------------------------------------."
1049 echo ". WARNING: --enable-xim was specified however the locale support ."
1050 echo ". functions could not be found. ."
1051 echo ". XIM is now being DISABLED! ."
1052 echo ".----------------------------------------------------------------."
1053 fi
1054
1055 echo " *** Optionally check src/feature.h for further options ***"
1056 echo
1057
1058 echo ".----------------------------------------------------------------."
1059 echo ". NOTE: some features are disabled by default, try ."
1060 echo ". configure --help to get an idea of the optional features, ."
1061 echo ". or read ./README.configure ."
1062 echo ". ."
1063 echo ". The script ./reconf gives a reasonable baseline, try it if ."
1064 echo ". you do not want to read documentation and still want some ."
1065 echo ". useful features. ."
1066 echo ".----------------------------------------------------------------."
1067 echo
1068