1 dnl***************************************************************************
2 dnl Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. *
4 dnl Permission is hereby granted, free of charge, to any person obtaining a *
5 dnl copy of this software and associated documentation files (the *
6 dnl "Software"), to deal in the Software without restriction, including *
7 dnl without limitation the rights to use, copy, modify, merge, publish, *
8 dnl distribute, distribute with modifications, sublicense, and/or sell *
9 dnl copies of the Software, and to permit persons to whom the Software is *
10 dnl furnished to do so, subject to the following conditions: *
12 dnl The above copyright notice and this permission notice shall be included *
13 dnl in all copies or substantial portions of the Software. *
15 dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
16 dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
17 dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
18 dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
19 dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
20 dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
21 dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
23 dnl Except as contained in this notice, the name(s) of the above copyright *
24 dnl holders shall not be used in advertising or otherwise to promote the *
25 dnl sale, use or other dealings in this Software without prior written *
27 dnl***************************************************************************
29 dnl Author: Thomas E. Dickey 1995-on
31 dnl $Id: aclocal.m4,v 1.489 2009/11/21 17:49:12 tom Exp $
32 dnl Macros used in NCURSES auto-configuration script.
34 dnl These macros are maintained separately from NCURSES. The copyright on
35 dnl this file applies to the aggregation of macros and does not affect use of
36 dnl these macros in other applications.
38 dnl See http://invisible-island.net/autoconf/ for additional information.
40 dnl ---------------------------------------------------------------------------
41 dnl ---------------------------------------------------------------------------
42 dnl AM_LANGINFO_CODESET version: 3 updated: 2002/10/27 23:21:42
43 dnl -------------------
44 dnl Inserted as requested by gettext 0.10.40
45 dnl File from /usr/share/aclocal
47 dnl ====================
50 dnl From Bruno Haible.
51 AC_DEFUN([AM_LANGINFO_CODESET],
53 AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset,
54 [AC_TRY_LINK([#include <langinfo.h>],
55 [char* cs = nl_langinfo(CODESET);],
56 am_cv_langinfo_codeset=yes,
57 am_cv_langinfo_codeset=no)
59 if test $am_cv_langinfo_codeset = yes; then
60 AC_DEFINE(HAVE_LANGINFO_CODESET, 1,
61 [Define if you have <langinfo.h> and nl_langinfo(CODESET).])
64 dnl ---------------------------------------------------------------------------
65 dnl CF_ADA_INCLUDE_DIRS version: 5 updated: 2006/10/14 15:23:15
66 dnl -------------------
67 dnl Construct the list of include-options for the C programs in the Ada95
69 AC_DEFUN([CF_ADA_INCLUDE_DIRS],
71 ACPPFLAGS="-I. -I../../include $ACPPFLAGS"
72 if test "$srcdir" != "."; then
73 ACPPFLAGS="-I\${srcdir}/../../include $ACPPFLAGS"
75 if test "$GCC" != yes; then
76 ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
77 elif test "$includedir" != "/usr/include"; then
78 if test "$includedir" = '${prefix}/include' ; then
79 if test $prefix != /usr ; then
80 ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
83 ACPPFLAGS="$ACPPFLAGS -I\${includedir}"
88 dnl ---------------------------------------------------------------------------
89 dnl CF_ADD_CFLAGS version: 8 updated: 2009/01/06 19:33:30
91 dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
92 dnl The second parameter if given makes this macro verbose.
94 dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS,
95 dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily
96 dnl confused by the quotes (which require backslashes to keep them usable).
97 AC_DEFUN([CF_ADD_CFLAGS],
102 cf_new_extra_cppflags=
104 for cf_add_cflags in $1
106 case $cf_fix_cppflags in
108 case $cf_add_cflags in #(vi
109 -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
110 case $cf_add_cflags in
112 cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'`
114 test "${cf_add_cflags}" != "${cf_tst_cflags}" \
115 && test -z "${cf_tst_cflags}" \
116 && cf_fix_cppflags=yes
118 if test $cf_fix_cppflags = yes ; then
119 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
121 elif test "${cf_tst_cflags}" = "\"'" ; then
122 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
128 *$cf_add_cflags) #(vi
131 cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
136 cf_new_cflags="$cf_new_cflags $cf_add_cflags"
141 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
143 cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
145 test "${cf_add_cflags}" != "${cf_tst_cflags}" \
146 && test -z "${cf_tst_cflags}" \
147 && cf_fix_cppflags=no
152 if test -n "$cf_new_cflags" ; then
153 ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])
154 CFLAGS="$CFLAGS $cf_new_cflags"
157 if test -n "$cf_new_cppflags" ; then
158 ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])
159 CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
162 if test -n "$cf_new_extra_cppflags" ; then
163 ifelse($2,,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)])
164 EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
167 AC_SUBST(EXTRA_CPPFLAGS)
170 dnl ---------------------------------------------------------------------------
171 dnl CF_ADD_INCDIR version: 12 updated: 2009/01/18 10:00:47
173 dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's
174 dnl redundant. We don't normally need to add -I/usr/local/include for gcc,
175 dnl but old versions (and some misinstalled ones) need that. To make things
176 dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to
177 dnl the include-path).
178 AC_DEFUN([CF_ADD_INCDIR],
180 if test -n "$1" ; then
181 for cf_add_incdir in $1
183 while test $cf_add_incdir != /usr/include
185 if test -d $cf_add_incdir
188 if test -n "$CFLAGS$CPPFLAGS" ; then
189 # a loop is needed to ensure we can add subdirs of existing dirs
190 for cf_test_incdir in $CFLAGS $CPPFLAGS ; do
191 if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then
192 cf_have_incdir=yes; break
197 if test "$cf_have_incdir" = no ; then
198 if test "$cf_add_incdir" = /usr/local/include ; then
201 cf_save_CPPFLAGS=$CPPFLAGS
202 CPPFLAGS="$CPPFLAGS -I$cf_add_incdir"
203 AC_TRY_COMPILE([#include <stdio.h>],
206 [cf_have_incdir=yes])
207 CPPFLAGS=$cf_save_CPPFLAGS
212 if test "$cf_have_incdir" = no ; then
213 CF_VERBOSE(adding $cf_add_incdir to include-path)
214 ifelse($2,,CPPFLAGS,$2)="$ifelse($2,,CPPFLAGS,$2) -I$cf_add_incdir"
216 cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'`
217 test "$cf_top_incdir" = "$cf_add_incdir" && break
218 cf_add_incdir="$cf_top_incdir"
227 dnl ---------------------------------------------------------------------------
228 dnl CF_ADD_LIBDIR version: 8 updated: 2009/01/18 10:01:08
230 dnl Adds to the library-path
232 dnl Some machines have trouble with multiple -L options.
234 dnl $1 is the (list of) directory(s) to add
235 dnl $2 is the optional name of the variable to update (default LDFLAGS)
237 AC_DEFUN([CF_ADD_LIBDIR],
239 if test -n "$1" ; then
240 for cf_add_libdir in $1
242 if test $cf_add_libdir = /usr/lib ; then
244 elif test -d $cf_add_libdir
247 if test -n "$LDFLAGS$LIBS" ; then
248 # a loop is needed to ensure we can add subdirs of existing dirs
249 for cf_test_libdir in $LDFLAGS $LIBS ; do
250 if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then
251 cf_have_libdir=yes; break
255 if test "$cf_have_libdir" = no ; then
256 CF_VERBOSE(adding $cf_add_libdir to library-path)
257 ifelse($2,,LDFLAGS,$2)="-L$cf_add_libdir $ifelse($2,,LDFLAGS,$2)"
263 dnl ---------------------------------------------------------------------------
264 dnl CF_ADD_SUBDIR_PATH version: 2 updated: 2007/07/29 10:12:59
265 dnl ------------------
266 dnl Append to a search-list for a nonstandard header/lib-file
267 dnl $1 = the variable to return as result
268 dnl $2 = the package name
269 dnl $3 = the subdirectory, e.g., bin, include or lib
270 dnl $4 = the directory under which we will test for subdirectories
271 dnl $5 = a directory that we do not want $4 to match
272 AC_DEFUN([CF_ADD_SUBDIR_PATH],
274 test "$4" != "$5" && \
276 ifelse([$5],NONE,,[(test $5 = NONE || test -d $5) &&]) {
277 test -n "$verbose" && echo " ... testing for $3-directories under $4"
278 test -d $4/$3 && $1="[$]$1 $4/$3"
279 test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2"
280 test -d $4/$3/$2/$3 && $1="[$]$1 $4/$3/$2/$3"
281 test -d $4/$2/$3 && $1="[$]$1 $4/$2/$3"
282 test -d $4/$2/$3/$2 && $1="[$]$1 $4/$2/$3/$2"
285 dnl ---------------------------------------------------------------------------
286 dnl CF_ANSI_CC_CHECK version: 9 updated: 2001/12/30 17:53:34
288 dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
289 dnl in the sharutils 4.2 distribution.
290 AC_DEFUN([CF_ANSI_CC_CHECK],
292 AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[
294 cf_save_CFLAGS="$CFLAGS"
295 cf_save_CPPFLAGS="$CPPFLAGS"
296 # Don't try gcc -ansi; that turns off useful extensions and
297 # breaks some systems' header files.
299 # Ultrix and OSF/1 -std1
300 # HP-UX -Aa -D_HPUX_SOURCE
302 # UnixWare 1.2 (cannot use -Xc, since ANSI/POSIX clashes)
303 for cf_arg in "-DCC_HAS_PROTOS" \
308 "-Aa -D_HPUX_SOURCE" \
311 CF_ADD_CFLAGS($cf_arg)
314 #ifndef CC_HAS_PROTOS
315 #if !defined(__STDC__) || (__STDC__ != 1)
320 int test (int i, double x);
321 struct s1 {int (*f) (int a);};
322 struct s2 {int (*f) (double a);};],
323 [cf_cv_ansi_cc="$cf_arg"; break])
325 CFLAGS="$cf_save_CFLAGS"
326 CPPFLAGS="$cf_save_CPPFLAGS"
329 if test "$cf_cv_ansi_cc" != "no"; then
330 if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
331 CF_ADD_CFLAGS($cf_cv_ansi_cc)
333 AC_DEFINE(CC_HAS_PROTOS)
337 dnl ---------------------------------------------------------------------------
338 dnl CF_ANSI_CC_REQD version: 4 updated: 2008/03/23 14:48:54
340 dnl For programs that must use an ANSI compiler, obtain compiler options that
341 dnl will make it recognize prototypes. We'll do preprocessor checks in other
342 dnl macros, since tools such as unproto can fake prototypes, but only part of
343 dnl the preprocessor.
344 AC_DEFUN([CF_ANSI_CC_REQD],
345 [AC_REQUIRE([CF_ANSI_CC_CHECK])
346 if test "$cf_cv_ansi_cc" = "no"; then
348 [Your compiler does not appear to recognize prototypes.
349 You have the following choices:
350 a. adjust your compiler options
351 b. get an up-to-date compiler
352 c. use a wrapper such as unproto])
355 dnl ---------------------------------------------------------------------------
356 dnl CF_AR_FLAGS version: 4 updated: 2009/02/07 13:42:23
358 dnl Check for suitable "ar" (archiver) options for updating an archive.
359 AC_DEFUN([CF_AR_FLAGS],[
360 AC_REQUIRE([CF_PROG_AR])
362 AC_CACHE_CHECK(for options to update archives, cf_cv_ar_flags,[
363 cf_cv_ar_flags=unknown
364 for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
366 rm -f conftest.$ac_cv_objext
369 cat >conftest.$ac_ext <<EOF
370 #line __oline__ "configure"
371 int testdata[[3]] = { 123, 456, 789 };
373 if AC_TRY_EVAL(ac_compile) ; then
374 $AR $cf_ar_flags conftest.a conftest.$ac_cv_objext 2>&AC_FD_CC 1>/dev/null
375 if test -f conftest.a ; then
376 cf_cv_ar_flags=$cf_ar_flags
380 CF_VERBOSE(cannot compile test-program)
384 rm -f conftest.a conftest.$ac_ext conftest.$ac_cv_objext
386 test -z "$ARFLAGS" && ARFLAGS=$cf_cv_ar_flags
387 AC_SUBST(ARFLAGS,$cf_cv_ar_flags)
389 dnl ---------------------------------------------------------------------------
390 dnl CF_AWK_BIG_PRINTF version: 3 updated: 2008/12/27 12:30:03
391 dnl -----------------
392 dnl Check if awk can handle big strings using printf. Some older versions of
393 dnl awk choke on large strings passed via "%s".
395 dnl $1 = desired string size
396 dnl $2 = variable to set with result
397 AC_DEFUN([CF_AWK_BIG_PRINTF],
404 if ( ${AWK} 'BEGIN { xx = "x"; while (length(xx) < $1) { xx = xx "x"; }; printf("%s\n", xx); }' \
405 | $AWK '{ printf "%d\n", length([$]0); }' | $AWK 'BEGIN { eqls=0; recs=0; } { recs++; if ([$]0 == 12000) eqls++; } END { if (recs != 1 || eqls != 1) exit 1; }' 2>/dev/null >/dev/null ) ; then
413 dnl ---------------------------------------------------------------------------
414 dnl CF_BOOL_DECL version: 8 updated: 2004/01/30 15:51:18
416 dnl Test if 'bool' is a builtin type in the configured C++ compiler. Some
417 dnl older compilers (e.g., gcc 2.5.8) don't support 'bool' directly; gcc
418 dnl 2.6.3 does, in anticipation of the ANSI C++ standard.
420 dnl Treat the configuration-variable specially here, since we're directly
421 dnl substituting its value (i.e., 1/0).
423 dnl $1 is the shell variable to store the result in, if not $cv_cv_builtin_bool
424 AC_DEFUN([CF_BOOL_DECL],
426 AC_MSG_CHECKING(if we should include stdbool.h)
428 AC_CACHE_VAL(cf_cv_header_stdbool_h,[
429 AC_TRY_COMPILE([],[bool foo = false],
430 [cf_cv_header_stdbool_h=0],
435 ],[bool foo = false],
436 [cf_cv_header_stdbool_h=1],
437 [cf_cv_header_stdbool_h=0])])])
439 if test "$cf_cv_header_stdbool_h" = 1
440 then AC_MSG_RESULT(yes)
441 else AC_MSG_RESULT(no)
444 AC_MSG_CHECKING([for builtin bool type])
446 AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
449 #include <sys/types.h>
451 [ifelse($1,,cf_cv_builtin_bool,[$1])=1],
452 [ifelse($1,,cf_cv_builtin_bool,[$1])=0])
455 if test "$ifelse($1,,cf_cv_builtin_bool,[$1])" = 1
456 then AC_MSG_RESULT(yes)
457 else AC_MSG_RESULT(no)
460 dnl ---------------------------------------------------------------------------
461 dnl CF_BOOL_SIZE version: 12 updated: 2006/12/16 12:33:30
463 dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
464 dnl Don't bother looking for bool.h, since it's been deprecated.
466 dnl If the current compiler is C rather than C++, we get the bool definition
467 dnl from <stdbool.h>.
468 AC_DEFUN([CF_BOOL_SIZE],
470 AC_MSG_CHECKING([for size of bool])
471 AC_CACHE_VAL(cf_cv_type_of_bool,[
477 #if defined(__cplusplus)
479 #ifdef HAVE_GXX_BUILTIN_H
480 #include <g++/builtin.h>
481 #elif HAVE_GPP_BUILTIN_H
482 #include <gpp/builtin.h>
489 #if $cf_cv_header_stdbool_h
497 FILE *fp = fopen("cf_test.out", "w");
501 fputs("unsigned ", fp);
502 if (sizeof(x) == sizeof(int)) fputs("int", fp);
503 else if (sizeof(x) == sizeof(char)) fputs("char", fp);
504 else if (sizeof(x) == sizeof(short))fputs("short",fp);
505 else if (sizeof(x) == sizeof(long)) fputs("long", fp);
508 ${cf_cv_main_return:-return}(0);
511 [cf_cv_type_of_bool=`cat cf_test.out`
512 if test -z "$cf_cv_type_of_bool"; then
513 cf_cv_type_of_bool=unknown
515 [cf_cv_type_of_bool=unknown],
516 [cf_cv_type_of_bool=unknown])
519 AC_MSG_RESULT($cf_cv_type_of_bool)
520 if test "$cf_cv_type_of_bool" = unknown ; then
521 case .$NCURSES_BOOL in #(vi
522 .auto|.) NCURSES_BOOL=unsigned;;
524 AC_MSG_WARN(Assuming $NCURSES_BOOL for type of bool)
525 cf_cv_type_of_bool=$NCURSES_BOOL
528 dnl ---------------------------------------------------------------------------
529 dnl CF_BUILD_CC version: 6 updated: 2006/10/14 15:23:15
531 dnl If we're cross-compiling, allow the user to override the tools and their
532 dnl options. The configure script is oriented toward identifying the host
533 dnl compiler, etc., but we need a build compiler to generate parts of the
536 dnl $1 = default for $CPPFLAGS
537 dnl $2 = default for $LIBS
538 AC_DEFUN([CF_BUILD_CC],[
539 AC_REQUIRE([CF_PROG_EXT])
540 if test "$cross_compiling" = yes ; then
542 # defaults that we might want to override
543 : ${BUILD_CFLAGS:=''}
544 : ${BUILD_CPPFLAGS:='ifelse([$1],,,[$1])'}
545 : ${BUILD_LDFLAGS:=''}
546 : ${BUILD_LIBS:='ifelse([$2],,,[$2])'}
547 : ${BUILD_EXEEXT:='$x'}
548 : ${BUILD_OBJEXT:='o'}
550 AC_ARG_WITH(build-cc,
551 [ --with-build-cc=XXX the build C compiler ($BUILD_CC)],
552 [BUILD_CC="$withval"],
553 [AC_CHECK_PROGS(BUILD_CC, gcc cc cl)])
554 AC_MSG_CHECKING(for native build C compiler)
555 AC_MSG_RESULT($BUILD_CC)
557 AC_MSG_CHECKING(for native build C preprocessor)
558 AC_ARG_WITH(build-cpp,
559 [ --with-build-cpp=XXX the build C preprocessor ($BUILD_CPP)],
560 [BUILD_CPP="$withval"],
561 [BUILD_CPP='${BUILD_CC} -E'])
562 AC_MSG_RESULT($BUILD_CPP)
564 AC_MSG_CHECKING(for native build C flags)
565 AC_ARG_WITH(build-cflags,
566 [ --with-build-cflags=XXX the build C compiler-flags ($BUILD_CFLAGS)],
567 [BUILD_CFLAGS="$withval"])
568 AC_MSG_RESULT($BUILD_CFLAGS)
570 AC_MSG_CHECKING(for native build C preprocessor-flags)
571 AC_ARG_WITH(build-cppflags,
572 [ --with-build-cppflags=XXX the build C preprocessor-flags ($BUILD_CPPFLAGS)],
573 [BUILD_CPPFLAGS="$withval"])
574 AC_MSG_RESULT($BUILD_CPPFLAGS)
576 AC_MSG_CHECKING(for native build linker-flags)
577 AC_ARG_WITH(build-ldflags,
578 [ --with-build-ldflags=XXX the build linker-flags ($BUILD_LDFLAGS)],
579 [BUILD_LDFLAGS="$withval"])
580 AC_MSG_RESULT($BUILD_LDFLAGS)
582 AC_MSG_CHECKING(for native build linker-libraries)
583 AC_ARG_WITH(build-libs,
584 [ --with-build-libs=XXX the build libraries (${BUILD_LIBS})],
585 [BUILD_LIBS="$withval"])
586 AC_MSG_RESULT($BUILD_LIBS)
588 # this assumes we're on Unix.
592 : ${BUILD_CC:='${CC}'}
594 if ( test "$BUILD_CC" = "$CC" || test "$BUILD_CC" = '${CC}' ) ; then
595 AC_MSG_ERROR([Cross-build requires two compilers.
596 Use --with-build-cc to specify the native compiler.])
600 : ${BUILD_CC:='${CC}'}
601 : ${BUILD_CPP:='${CPP}'}
602 : ${BUILD_CFLAGS:='${CFLAGS}'}
603 : ${BUILD_CPPFLAGS:='${CPPFLAGS}'}
604 : ${BUILD_LDFLAGS:='${LDFLAGS}'}
605 : ${BUILD_LIBS:='${LIBS}'}
606 : ${BUILD_EXEEXT:='$x'}
607 : ${BUILD_OBJEXT:='o'}
612 AC_SUBST(BUILD_CFLAGS)
613 AC_SUBST(BUILD_CPPFLAGS)
614 AC_SUBST(BUILD_LDFLAGS)
616 AC_SUBST(BUILD_EXEEXT)
617 AC_SUBST(BUILD_OBJEXT)
619 dnl ---------------------------------------------------------------------------
620 dnl CF_CFG_DEFAULTS version: 7 updated: 2005/09/24 16:15:00
622 dnl Determine the default configuration into which we'll install ncurses. This
623 dnl can be overridden by the user's command-line options. There's two items to
625 dnl 1. the prefix (e.g., /usr)
626 dnl 2. the header files (e.g., /usr/include/ncurses)
627 dnl We'll look for a previous installation of ncurses and use the same defaults.
629 dnl We don't use AC_PREFIX_DEFAULT, because it gets evaluated too soon, and
630 dnl we don't use AC_PREFIX_PROGRAM, because we cannot distinguish ncurses's
631 dnl programs from a vendor's.
632 AC_DEFUN([CF_CFG_DEFAULTS],
634 AC_MSG_CHECKING(for prefix)
635 if test "x$prefix" = "xNONE" ; then
636 case "$cf_cv_system_name" in
637 # non-vendor systems don't have a conflict
638 openbsd*|freebsd*|linux*|cygwin*|k*bsd*-gnu)
641 *) prefix=$ac_default_prefix
645 AC_MSG_RESULT($prefix)
647 if test "x$prefix" = "xNONE" ; then
648 AC_MSG_CHECKING(for default include-directory)
649 test -n "$verbose" && echo 1>&AC_FD_MSG
652 $includedir/ncurses \
654 $prefix/include/ncurses \
656 /usr/local/include/ncurses \
660 cf_dir=`eval echo $cf_symbol`
661 if test -f $cf_dir/curses.h ; then
662 if ( fgrep NCURSES_VERSION $cf_dir/curses.h 2>&1 >/dev/null ) ; then
663 includedir="$cf_symbol"
664 test -n "$verbose" && echo $ac_n " found " 1>&AC_FD_MSG
668 test -n "$verbose" && echo " tested $cf_dir" 1>&AC_FD_MSG
670 AC_MSG_RESULT($includedir)
673 dnl ---------------------------------------------------------------------------
674 dnl CF_CGETENT version: 3 updated: 2000/08/12 23:18:52
676 dnl Check if the terminal-capability database functions are available. If not,
677 dnl ncurses has a much-reduced version.
678 AC_DEFUN([CF_CGETENT],[
679 AC_MSG_CHECKING(for terminal-capability database functions)
680 AC_CACHE_VAL(cf_cv_cgetent,[
682 #include <stdlib.h>],[
685 char *db_array = temp;
686 cgetent(&buf, /* int *, */ &db_array, "vt100");
687 cgetcap(buf, "tc", '=');
688 cgetmatch(buf, "tc");
693 AC_MSG_RESULT($cf_cv_cgetent)
694 test "$cf_cv_cgetent" = yes && AC_DEFINE(HAVE_BSD_CGETENT)
696 dnl ---------------------------------------------------------------------------
697 dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59
699 dnl Check if we're accidentally using a cache from a different machine.
700 dnl Derive the system name, as a check for reusing the autoconf cache.
702 dnl If we've packaged config.guess and config.sub, run that (since it does a
703 dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow
704 dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM
705 dnl which is useful in cross-compiles.
707 dnl Note: we would use $ac_config_sub, but that is one of the places where
708 dnl autoconf 2.5x broke compatibility with autoconf 2.13
709 AC_DEFUN([CF_CHECK_CACHE],
711 if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then
712 ifelse([$1],,[AC_CANONICAL_HOST],[$1])
713 system_name="$host_os"
715 system_name="`(uname -s -r) 2>/dev/null`"
716 if test -z "$system_name" ; then
717 system_name="`(hostname) 2>/dev/null`"
720 test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
721 AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
723 test -z "$system_name" && system_name="$cf_cv_system_name"
724 test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)
726 if test ".$system_name" != ".$cf_cv_system_name" ; then
727 AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))
728 AC_MSG_ERROR("Please remove config.cache and try again.")
731 dnl ---------------------------------------------------------------------------
732 dnl CF_CHECK_ERRNO version: 10 updated: 2008/08/22 16:33:22
734 dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
735 dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it
738 dnl $1 = the name to check
739 dnl $2 = the assumed type
740 AC_DEFUN([CF_CHECK_ERRNO],
742 AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
748 #include <sys/types.h>
749 #include <errno.h> ],
750 ifelse($2,,int,$2) x = (ifelse($2,,int,$2)) $1,
755 if test "$cf_cv_dcl_$1" = no ; then
756 CF_UPPER(cf_result,decl_$1)
757 AC_DEFINE_UNQUOTED($cf_result)
760 # It's possible (for near-UNIX clones) that the data doesn't exist
761 CF_CHECK_EXTERN_DATA($1,ifelse($2,,int,$2))
763 dnl ---------------------------------------------------------------------------
764 dnl CF_CHECK_EXTERN_DATA version: 3 updated: 2001/12/30 18:03:23
765 dnl --------------------
766 dnl Check for existence of external data in the current set of libraries. If
767 dnl we can modify it, it's real enough.
768 dnl $1 = the name to check
770 AC_DEFUN([CF_CHECK_EXTERN_DATA],
772 AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[
782 if test "$cf_cv_have_$1" = yes ; then
783 CF_UPPER(cf_result,have_$1)
784 AC_DEFINE_UNQUOTED($cf_result)
788 dnl ---------------------------------------------------------------------------
789 dnl CF_CHECK_GPM_WGETCH version: 1 updated: 2007/04/28 14:38:06
790 dnl -------------------
791 dnl Check if GPM is already linked with curses. If so - and if the linkage
792 dnl is not "weak" - warn about this because it can create problems linking
793 dnl applications with ncurses.
794 AC_DEFUN([CF_CHECK_GPM_WGETCH],[
795 AC_CHECK_LIB(gpm,Gpm_Wgetch,[
797 AC_CACHE_CHECK(if GPM is weakly bound to curses library, cf_cv_check_gpm_wgetch,[
798 cf_cv_check_gpm_wgetch=unknown
799 if test "$cross_compiling" != yes ; then
801 cat >conftest.$ac_ext <<CF_EOF
806 ${cf_cv_main_return:-return}(0);
811 # This only works if we can look at the symbol table. If a shared
812 # library is stripped for install, we cannot use that. So we're forced
813 # to rely on the static library, noting that some packagers may not
815 LIBS="-static -lgpm -dynamic $LIBS"
816 if AC_TRY_EVAL(ac_compile) ; then
817 if AC_TRY_EVAL(ac_link) ; then
818 cf_cv_check_gpm_wgetch=`nm conftest$ac_exeext | egrep '\<wgetch\>' | egrep '\<[[vVwW]]\>'`
819 test -n "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=yes
820 test -z "$cf_cv_check_gpm_wgetch" && cf_cv_check_gpm_wgetch=no
828 if test "$cf_cv_check_gpm_wgetch" != yes ; then
829 AC_MSG_WARN(GPM library is already linked with curses - read the FAQ)
832 dnl ---------------------------------------------------------------------------
833 dnl CF_CPP_PARAM_INIT version: 4 updated: 2001/04/07 22:31:18
834 dnl -----------------
835 dnl Check if the C++ compiler accepts duplicate parameter initialization. This
836 dnl is a late feature for the standard and is not in some recent compilers
838 AC_DEFUN([CF_CPP_PARAM_INIT],
840 if test -n "$CXX"; then
841 AC_CACHE_CHECK(if $CXX accepts parameter initialization,cf_cv_cpp_param_init,[
853 TEST::TEST(int x = 1) // some compilers do not like second initializer
859 [cf_cv_cpp_param_init=yes],
860 [cf_cv_cpp_param_init=no],
861 [cf_cv_cpp_param_init=unknown])
865 test "$cf_cv_cpp_param_init" = yes && AC_DEFINE(CPP_HAS_PARAM_INIT)
867 dnl ---------------------------------------------------------------------------
868 dnl CF_CPP_STATIC_CAST version: 1 updated: 2005/07/23 16:52:43
869 dnl ------------------
870 dnl Check if the C++ compiler accepts static_cast in generics. This appears to
871 dnl not be supported in g++ before 3.0
872 AC_DEFUN([CF_CPP_STATIC_CAST],
874 if test -n "$CXX"; then
876 AC_CACHE_CHECK(if $CXX accepts static_cast,cf_cv_cpp_static_cast,[
884 NCursesPanel(int nlines,
894 template<class T> class NCursesUserPanel : public NCursesPanel
897 NCursesUserPanel (int nlines,
901 const T* p_UserData = static_cast<T*>(0))
902 : NCursesPanel (nlines, ncols, begin_y, begin_x)
905 NCursesUserPanel(const T* p_UserData = static_cast<T*>(0)) : NCursesPanel()
909 virtual ~NCursesUserPanel() {};
912 const char* p_UserData = static_cast<char*>(0)],
913 [cf_cv_cpp_static_cast=yes],
914 [cf_cv_cpp_static_cast=no])
921 test "$cf_cv_cpp_static_cast" = yes && AC_DEFINE(CPP_HAS_STATIC_CAST)
923 dnl ---------------------------------------------------------------------------
924 dnl CF_C_INLINE version: 2 updated: 2007/08/11 14:09:50
926 dnl Check if the C compiler supports "inline".
927 dnl $1 is the name of a shell variable to set if inline is supported
928 dnl $2 is the threshold for gcc 4.x's option controlling maximum inline size
929 AC_DEFUN([CF_C_INLINE],[
932 if test "$ac_cv_c_inline" != no ; then
934 if test "$INTEL_COMPILER" = yes
937 elif test "$GCC" = yes
939 AC_CACHE_CHECK(if gcc supports options to tune inlining,cf_cv_gcc_inline,[
940 cf_save_CFLAGS=$CFLAGS
941 CFLAGS="$CFLAGS --param max-inline-insns-single=$2"
942 AC_TRY_COMPILE([inline int foo(void) { return 1; }],
943 [${cf_cv_main_return:-return} foo()],
944 [cf_cv_gcc_inline=yes],
945 [cf_cv_gcc_inline=no])
946 CFLAGS=$cf_save_CFLAGS
948 if test "$cf_cv_gcc_inline" = yes ; then
949 CF_ADD_CFLAGS([--param max-inline-insns-single=$2])
955 dnl ---------------------------------------------------------------------------
956 dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52
958 dnl "dirname" is not portable, so we fake it with a shell script.
959 AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl
960 dnl ---------------------------------------------------------------------------
961 dnl CF_DIRS_TO_MAKE version: 3 updated: 2002/02/23 20:38:31
963 AC_DEFUN([CF_DIRS_TO_MAKE],
966 for cf_item in $cf_list_models
968 CF_OBJ_SUBDIR($cf_item,cf_subdir)
969 for cf_item2 in $DIRS_TO_MAKE
971 test $cf_item2 = $cf_subdir && break
973 test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir"
975 for cf_dir in $DIRS_TO_MAKE
977 test ! -d $cf_dir && mkdir $cf_dir
979 AC_SUBST(DIRS_TO_MAKE)
981 dnl ---------------------------------------------------------------------------
982 dnl CF_DISABLE_LEAKS version: 4 updated: 2006/12/16 15:10:42
984 dnl Combine no-leak checks with the libraries or tools that are used for the
986 AC_DEFUN([CF_DISABLE_LEAKS],[
988 AC_REQUIRE([CF_WITH_DMALLOC])
989 AC_REQUIRE([CF_WITH_DBMALLOC])
990 AC_REQUIRE([CF_WITH_VALGRIND])
992 AC_MSG_CHECKING(if you want to perform memory-leak testing)
994 [ --disable-leaks test: free permanent memory, analyze leaks],
996 : ${with_no_leaks:=no})
997 AC_MSG_RESULT($with_no_leaks)
999 if test "$with_no_leaks" = yes ; then
1003 dnl ---------------------------------------------------------------------------
1004 dnl CF_ENABLE_RPATH version: 1 updated: 2008/09/13 10:22:30
1006 dnl Check if the rpath option should be used, setting cache variable
1007 dnl cf_cv_ld_rpath if so.
1008 AC_DEFUN([CF_ENABLE_RPATH],
1010 AC_MSG_CHECKING(if rpath option should be used)
1011 AC_ARG_ENABLE(rpath,
1012 [ --enable-rpath use rpath option when generating shared libraries],
1013 [cf_cv_ld_rpath=$enableval],
1014 [cf_cv_ld_rpath=no])
1015 AC_MSG_RESULT($cf_cv_ld_rpath)
1017 dnl ---------------------------------------------------------------------------
1018 dnl CF_ERRNO version: 5 updated: 1997/11/30 12:44:39
1020 dnl Check if 'errno' is declared in <errno.h>
1021 AC_DEFUN([CF_ERRNO],
1023 CF_CHECK_ERRNO(errno)
1025 dnl ---------------------------------------------------------------------------
1026 dnl CF_ETIP_DEFINES version: 3 updated: 2003/03/22 19:13:43
1028 dnl Test for conflicting definitions of exception in gcc 2.8.0, etc., between
1029 dnl math.h and builtin.h, only for ncurses
1030 AC_DEFUN([CF_ETIP_DEFINES],
1032 AC_MSG_CHECKING(for special defines needed for etip.h)
1033 cf_save_CXXFLAGS="$CXXFLAGS"
1035 for cf_math in "" MATH_H
1037 for cf_excp in "" MATH_EXCEPTION
1039 CXXFLAGS="$cf_save_CXXFLAGS -I${srcdir}/c++ -I${srcdir}/menu -I${srcdir}/include"
1040 test -n "$cf_math" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_math}"
1041 test -n "$cf_excp" && CXXFLAGS="$CXXFLAGS -DETIP_NEEDS_${cf_excp}"
1043 #include <etip.h.in>
1045 test -n "$cf_math" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_math})
1046 test -n "$cf_excp" && AC_DEFINE_UNQUOTED(ETIP_NEEDS_${cf_excp})
1047 cf_result="$cf_math $cf_excp"
1052 AC_MSG_RESULT($cf_result)
1053 CXXFLAGS="$cf_save_CXXFLAGS"
1055 dnl ---------------------------------------------------------------------------
1056 dnl CF_FIND_LINKAGE version: 13 updated: 2008/12/24 07:59:55
1058 dnl Find a library (specifically the linkage used in the code fragment),
1059 dnl searching for it if it is not already in the library path.
1060 dnl See also CF_ADD_SEARCHPATH.
1062 dnl Parameters (4-on are optional):
1063 dnl $1 = headers for library entrypoint
1064 dnl $2 = code fragment for library entrypoint
1065 dnl $3 = the library name without the "-l" option or ".so" suffix.
1066 dnl $4 = action to perform if successful (default: update CPPFLAGS, etc)
1067 dnl $5 = action to perform if not successful
1068 dnl $6 = module name, if not the same as the library name
1069 dnl $7 = extra libraries
1071 dnl Sets these variables:
1072 dnl $cf_cv_find_linkage_$3 - yes/no according to whether linkage is found
1073 dnl $cf_cv_header_path_$3 - include-directory if needed
1074 dnl $cf_cv_library_path_$3 - library-directory if needed
1075 dnl $cf_cv_library_file_$3 - library-file if needed, e.g., -l$3
1076 AC_DEFUN([CF_FIND_LINKAGE],[
1078 # If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these
1079 # will be set on completion of the AC_TRY_LINK below.
1080 cf_cv_header_path_$3=
1081 cf_cv_library_path_$3=
1083 CF_MSG_LOG([Starting [FIND_LINKAGE]($3,$6)])
1085 AC_TRY_LINK([$1],[$2],
1086 cf_cv_find_linkage_$3=yes,[
1087 cf_cv_find_linkage_$3=no
1089 CF_VERBOSE(find linkage for $3 library)
1090 CF_MSG_LOG([Searching for headers in [FIND_LINKAGE]($3,$6)])
1092 cf_save_CPPFLAGS="$CPPFLAGS"
1093 cf_test_CPPFLAGS="$CPPFLAGS"
1095 CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6]))
1096 for cf_cv_header_path_$3 in $cf_search
1098 if test -d $cf_cv_header_path_$3 ; then
1099 CF_VERBOSE(... testing $cf_cv_header_path_$3)
1100 CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_$3"
1101 AC_TRY_COMPILE([$1],[$2],[
1102 CF_VERBOSE(... found $3 headers in $cf_cv_header_path_$3)
1103 cf_cv_find_linkage_$3=maybe
1104 cf_test_CPPFLAGS="$CPPFLAGS"
1106 CPPFLAGS="$cf_save_CPPFLAGS"
1111 if test "$cf_cv_find_linkage_$3" = maybe ; then
1113 CF_MSG_LOG([Searching for $3 library in [FIND_LINKAGE]($3,$6)])
1115 cf_save_LIBS="$LIBS"
1116 cf_save_LDFLAGS="$LDFLAGS"
1119 CPPFLAGS="$cf_test_CPPFLAGS"
1120 LIBS="-l$3 $7 $cf_save_LIBS"
1121 AC_TRY_LINK([$1],[$2],[
1122 CF_VERBOSE(... found $3 library in system)
1123 cf_cv_find_linkage_$3=yes])
1124 CPPFLAGS="$cf_save_CPPFLAGS"
1125 LIBS="$cf_save_LIBS"
1128 if test "$cf_cv_find_linkage_$3" != yes ; then
1129 CF_LIBRARY_PATH(cf_search,$3)
1130 for cf_cv_library_path_$3 in $cf_search
1132 if test -d $cf_cv_library_path_$3 ; then
1133 CF_VERBOSE(... testing $cf_cv_library_path_$3)
1134 CPPFLAGS="$cf_test_CPPFLAGS"
1135 LIBS="-l$3 $7 $cf_save_LIBS"
1136 LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_$3"
1137 AC_TRY_LINK([$1],[$2],[
1138 CF_VERBOSE(... found $3 library in $cf_cv_library_path_$3)
1139 cf_cv_find_linkage_$3=yes
1140 cf_cv_library_file_$3="-l$3"
1142 CPPFLAGS="$cf_save_CPPFLAGS"
1143 LIBS="$cf_save_LIBS"
1144 LDFLAGS="$cf_save_LDFLAGS"
1148 LIBS="$cf_save_LIBS"
1149 CPPFLAGS="$cf_save_CPPFLAGS"
1150 LDFLAGS="$cf_save_LDFLAGS"
1154 cf_cv_find_linkage_$3=no
1158 if test "$cf_cv_find_linkage_$3" = yes ; then
1160 CF_ADD_INCDIR($cf_cv_header_path_$3)
1161 CF_ADD_LIBDIR($cf_cv_library_path_$3)
1165 ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5])
1168 dnl ---------------------------------------------------------------------------
1169 dnl CF_FUNC_DLSYM version: 1 updated: 2004/06/16 20:52:45
1171 dnl Test for dlsym() and related functions, as well as libdl.
1176 AC_DEFUN([CF_FUNC_DLSYM],[
1178 AC_CHECK_FUNC(dlsym,cf_have_dlsym=yes,[
1181 AC_CHECK_LIB(dl,dlsym,[
1183 cf_have_libdl=yes])])
1185 if test "$cf_have_dlsym" = yes ; then
1186 test "$cf_have_libdl" = yes && LIBS="-ldl $LIBS"
1188 AC_MSG_CHECKING(whether able to link to dl*() functions)
1189 AC_TRY_LINK([#include <dlfcn.h>],[
1191 if ((obj = dlopen("filename", 0)) != 0) {
1192 if (dlsym(obj, "symbolname") == 0) {
1196 AC_DEFINE(HAVE_LIBDL)],[
1197 AC_MSG_ERROR(Cannot link test program for libdl)])
1200 AC_MSG_ERROR(Cannot find dlsym function)
1203 dnl ---------------------------------------------------------------------------
1204 dnl CF_FUNC_MEMMOVE version: 7 updated: 2006/12/16 12:33:30
1206 dnl Check for memmove, or a bcopy that can handle overlapping copy. If neither
1207 dnl is found, add our own version of memmove to the list of objects.
1208 AC_DEFUN([CF_FUNC_MEMMOVE],
1210 AC_CHECK_FUNC(memmove,,[
1211 AC_CHECK_FUNC(bcopy,[
1212 AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[
1215 static char data[] = "abcdefghijklmnopqrstuwwxyz";
1217 bcopy(data, temp, sizeof(data));
1218 bcopy(temp+10, temp, 15);
1219 bcopy(temp+5, temp+15, 10);
1220 ${cf_cv_main_return:-return} (strcmp(temp, "klmnopqrstuwwxypqrstuwwxyz"));
1223 [cf_cv_good_bcopy=yes],
1224 [cf_cv_good_bcopy=no],
1225 [cf_cv_good_bcopy=unknown])
1227 ],[cf_cv_good_bcopy=no])
1228 if test "$cf_cv_good_bcopy" = yes ; then
1229 AC_DEFINE(USE_OK_BCOPY)
1231 AC_DEFINE(USE_MY_MEMMOVE)
1234 dnl ---------------------------------------------------------------------------
1235 dnl CF_FUNC_NANOSLEEP version: 3 updated: 2006/12/16 12:33:30
1236 dnl -----------------
1237 dnl Check for existence of workable nanosleep() function. Some systems, e.g.,
1238 dnl AIX 4.x, provide a non-working version.
1239 AC_DEFUN([CF_FUNC_NANOSLEEP],[
1240 AC_CACHE_CHECK(if nanosleep really works,cf_cv_func_nanosleep,[
1246 #ifdef HAVE_SYS_TIME_H
1247 #include <sys/time.h>
1251 struct timespec ts1, ts2;
1254 ts1.tv_nsec = 750000000;
1258 code = nanosleep(&ts1, &ts2); /* on failure errno is ENOSYS. */
1259 ${cf_cv_main_return:-return}(code != 0);
1262 [cf_cv_func_nanosleep=yes],
1263 [cf_cv_func_nanosleep=no],
1264 [cf_cv_func_nanosleep=unknown])])
1266 test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP)
1268 dnl ---------------------------------------------------------------------------
1269 dnl CF_FUNC_OPENPTY version: 2 updated: 2008/04/12 19:49:01
1271 dnl Check for openpty() function, along with <pty.h> header. It may need the
1272 dnl "util" library as well.
1273 AC_DEFUN([CF_FUNC_OPENPTY],
1275 AC_CHECK_LIB(util,openpty,cf_cv_lib_util=yes,cf_cv_lib_util=no)
1276 AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
1277 cf_save_LIBS="$LIBS"
1278 test $cf_cv_lib_util = yes && LIBS="-lutil $LIBS"
1279 for cf_header in pty.h libutil.h util.h
1282 #include <$cf_header>
1284 int x = openpty((int *)0, (int *)0, (char *)0,
1285 (struct termios *)0, (struct winsize *)0);
1287 cf_cv_func_openpty=$cf_header
1290 cf_cv_func_openpty=no
1293 LIBS="$cf_save_LIBS"
1296 dnl ---------------------------------------------------------------------------
1297 dnl CF_FUNC_POLL version: 4 updated: 2006/12/16 12:33:30
1299 dnl See if the poll function really works. Some platforms have poll(), but
1300 dnl it does not work for terminals or files.
1301 AC_DEFUN([CF_FUNC_POLL],[
1302 AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
1308 #include <sys/poll.h>
1311 struct pollfd myfds;
1315 myfds.events = POLLIN;
1317 ret = poll(&myfds, 1, 100);
1318 ${cf_cv_main_return:-return}(ret != 0);
1320 [cf_cv_working_poll=yes],
1321 [cf_cv_working_poll=no],
1322 [cf_cv_working_poll=unknown])])
1323 test "$cf_cv_working_poll" = "yes" && AC_DEFINE(HAVE_WORKING_POLL)
1325 dnl ---------------------------------------------------------------------------
1326 dnl CF_FUNC_TERMIOS version: 2 updated: 2000/07/22 23:37:24
1328 dnl Some old/broken variations define tcgetattr() only as a macro in
1330 AC_DEFUN([CF_FUNC_TERMIOS],[
1331 AC_REQUIRE([CF_STRUCT_TERMIOS])
1332 AC_CACHE_CHECK(for tcgetattr, cf_cv_have_tcgetattr,[
1334 #include <sys/types.h>
1335 #ifdef HAVE_UNISTD_H
1338 #ifdef HAVE_TERMIOS_H
1339 #include <termios.h>
1340 #define TTY struct termios
1342 #ifdef HAVE_TERMIO_H
1344 #define TTY struct termio
1349 tcgetattr(1, &foo);],
1350 [cf_cv_have_tcgetattr=yes],
1351 [cf_cv_have_tcgetattr=no])])
1352 test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR)
1354 dnl ---------------------------------------------------------------------------
1355 dnl CF_FUNC_VSSCANF version: 3 updated: 2001/12/19 00:50:10
1357 dnl Check for vsscanf() function, which is in c9x but generally not in earlier
1358 dnl versions of C. It is in the GNU C library, and can often be simulated by
1359 dnl other functions.
1360 AC_DEFUN([CF_FUNC_VSSCANF],
1362 AC_CACHE_CHECK(for vsscanf function or workaround,cf_cv_func_vsscanf,[
1365 #include <stdio.h>],[
1367 vsscanf("from", "%d", ap)],[cf_cv_func_vsscanf=vsscanf],[
1370 #include <stdio.h>],[
1374 strbuf._flag = _IOREAD;
1375 strbuf._ptr = strbuf._base = (unsigned char *) str;
1376 strbuf._cnt = strlen(str);
1377 strbuf._file = _NFILE;
1378 return (vfscanf(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=vfscanf],[
1381 #include <stdio.h>],[
1385 strbuf._flag = _IOREAD;
1386 strbuf._ptr = strbuf._base = (unsigned char *) str;
1387 strbuf._cnt = strlen(str);
1388 strbuf._file = _NFILE;
1389 return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[
1390 cf_cv_func_vsscanf=no])])])])
1392 case $cf_cv_func_vsscanf in #(vi
1393 vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi
1394 vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi
1395 _doscan) AC_DEFINE(HAVE__DOSCAN);;
1399 dnl ---------------------------------------------------------------------------
1400 dnl CF_GCC_ATTRIBUTES version: 13 updated: 2009/08/11 20:19:56
1401 dnl -----------------
1402 dnl Test for availability of useful gcc __attribute__ directives to quiet
1403 dnl compiler warnings. Though useful, not all are supported -- and contrary
1404 dnl to documentation, unrecognized directives cause older compilers to barf.
1405 AC_DEFUN([CF_GCC_ATTRIBUTES],
1407 if test "$GCC" = yes
1409 cat > conftest.i <<EOF
1411 #define GCC_PRINTF 0
1416 #ifndef GCC_NORETURN
1417 #define GCC_NORETURN /* nothing */
1420 #define GCC_UNUSED /* nothing */
1423 if test "$GCC" = yes
1425 AC_CHECKING([for $CC __attribute__ directives])
1426 cat > conftest.$ac_ext <<EOF
1427 #line __oline__ "${as_me-configure}"
1428 #include "confdefs.h"
1429 #include "conftest.h"
1430 #include "conftest.i"
1432 #define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
1434 #define GCC_PRINTFLIKE(fmt,var) /*nothing*/
1437 #define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
1439 #define GCC_SCANFLIKE(fmt,var) /*nothing*/
1441 extern void wow(char *,...) GCC_SCANFLIKE(1,2);
1442 extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN;
1443 extern void foo(void) GCC_NORETURN;
1444 int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; }
1446 cf_printf_attribute=no
1447 cf_scanf_attribute=no
1448 for cf_attribute in scanf printf unused noreturn
1450 CF_UPPER(cf_ATTRIBUTE,$cf_attribute)
1451 cf_directive="__attribute__(($cf_attribute))"
1452 echo "checking for $CC $cf_directive" 1>&AC_FD_CC
1454 case $cf_attribute in #(vi
1456 cf_printf_attribute=yes
1457 cat >conftest.h <<EOF
1458 #define GCC_$cf_ATTRIBUTE 1
1462 cf_scanf_attribute=yes
1463 cat >conftest.h <<EOF
1464 #define GCC_$cf_ATTRIBUTE 1
1468 cat >conftest.h <<EOF
1469 #define GCC_$cf_ATTRIBUTE $cf_directive
1474 if AC_TRY_EVAL(ac_compile); then
1475 test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute)
1476 cat conftest.h >>confdefs.h
1477 case $cf_attribute in #(vi
1479 if test "$cf_printf_attribute" = no ; then
1480 cat >>confdefs.h <<EOF
1481 #define GCC_PRINTFLIKE(fmt,var) /* nothing */
1484 cat >>confdefs.h <<EOF
1485 #define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var)))
1490 if test "$cf_scanf_attribute" = no ; then
1491 cat >>confdefs.h <<EOF
1492 #define GCC_SCANFLIKE(fmt,var) /* nothing */
1495 cat >>confdefs.h <<EOF
1496 #define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var)))
1504 fgrep define conftest.i >>confdefs.h
1509 dnl ---------------------------------------------------------------------------
1510 dnl CF_GCC_VERSION version: 4 updated: 2005/08/27 09:53:42
1512 dnl Find version of gcc
1513 AC_DEFUN([CF_GCC_VERSION],[
1514 AC_REQUIRE([AC_PROG_CC])
1516 if test "$GCC" = yes ; then
1517 AC_MSG_CHECKING(version of $CC)
1518 GCC_VERSION="`${CC} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
1519 test -z "$GCC_VERSION" && GCC_VERSION=unknown
1520 AC_MSG_RESULT($GCC_VERSION)
1523 dnl ---------------------------------------------------------------------------
1524 dnl CF_GCC_WARNINGS version: 24 updated: 2009/02/01 15:21:00
1526 dnl Check if the compiler supports useful warning options. There's a few that
1527 dnl we don't use, simply because they're too noisy:
1529 dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x)
1530 dnl -Wredundant-decls (system headers make this too noisy)
1531 dnl -Wtraditional (combines too many unrelated messages, only a few useful)
1532 dnl -Wwrite-strings (too noisy, but should review occasionally). This
1533 dnl is enabled for ncurses using "--enable-const".
1537 dnl $1 is an optional list of gcc warning flags that a particular
1538 dnl application might want to use, e.g., "no-unused" for
1541 dnl If $with_ext_const is "yes", add a check for -Wwrite-strings
1543 AC_DEFUN([CF_GCC_WARNINGS],
1545 AC_REQUIRE([CF_GCC_VERSION])
1546 CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
1548 cat > conftest.$ac_ext <<EOF
1549 #line __oline__ "${as_me-configure}"
1550 int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
1553 if test "$INTEL_COMPILER" = yes
1555 # The "-wdXXX" options suppress warnings:
1556 # remark #1419: external declaration in primary source file
1557 # remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
1558 # remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
1559 # remark #193: zero used for undefined preprocessing identifier
1560 # remark #593: variable "curs_sb_left_arrow" was set but never used
1561 # remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
1562 # remark #869: parameter "tw" was never referenced
1563 # remark #981: operands are evaluated in unspecified order
1564 # warning #279: controlling expression is constant
1566 AC_CHECKING([for $CC warning options])
1567 cf_save_CFLAGS="$CFLAGS"
1568 EXTRA_CFLAGS="-Wall"
1580 CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
1581 if AC_TRY_EVAL(ac_compile); then
1582 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
1583 EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
1586 CFLAGS="$cf_save_CFLAGS"
1588 elif test "$GCC" = yes
1590 AC_CHECKING([for $CC warning options])
1591 cf_save_CFLAGS="$CFLAGS"
1592 EXTRA_CFLAGS="-W -Wall"
1594 test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings"
1596 Wbad-function-cast \
1600 Wmissing-declarations \
1601 Wmissing-prototypes \
1605 Wstrict-prototypes \
1606 Wundef $cf_warn_CONST $1
1608 CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt"
1609 if AC_TRY_EVAL(ac_compile); then
1610 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
1611 case $cf_opt in #(vi
1613 CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES"
1616 case $GCC_VERSION in
1618 CF_VERBOSE(feature is broken in gcc $GCC_VERSION)
1623 EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt"
1626 CFLAGS="$cf_save_CFLAGS"
1630 AC_SUBST(EXTRA_CFLAGS)
1632 dnl ---------------------------------------------------------------------------
1633 dnl CF_GNAT_TRY_LINK version: 1 updated: 2004/08/21 19:02:08
1634 dnl ----------------
1635 dnl Verify that a test program compiles/links with GNAT.
1636 dnl $cf_ada_make is set to the program that compiles/links
1637 dnl $ADAFLAGS may be set to the GNAT flags.
1639 dnl $1 is the text of the spec
1640 dnl $2 is the text of the body
1641 dnl $3 is the shell command to execute if successful
1642 dnl $4 is the shell command to execute if not successful
1643 AC_DEFUN([CF_GNAT_TRY_LINK],
1646 cat >>conftest.ads <<CF_EOF
1649 cat >>conftest.adb <<CF_EOF
1652 if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
1653 ifelse($3,, :,[ $3])
1659 dnl ---------------------------------------------------------------------------
1660 dnl CF_GNAT_TRY_RUN version: 3 updated: 2004/08/21 19:02:08
1662 dnl Verify that a test program compiles and runs with GNAT
1663 dnl $cf_ada_make is set to the program that compiles/links
1664 dnl $ADAFLAGS may be set to the GNAT flags.
1666 dnl $1 is the text of the spec
1667 dnl $2 is the text of the body
1668 dnl $3 is the shell command to execute if successful
1669 dnl $4 is the shell command to execute if not successful
1670 AC_DEFUN([CF_GNAT_TRY_RUN],
1673 cat >>conftest.ads <<CF_EOF
1676 cat >>conftest.adb <<CF_EOF
1679 if ( $cf_ada_make $ADAFLAGS conftest 1>&AC_FD_CC 2>&1 ) ; then
1680 if ( ./conftest 1>&AC_FD_CC 2>&1 ) ; then
1681 ifelse($3,, :,[ $3])
1690 dnl ---------------------------------------------------------------------------
1691 dnl CF_GNAT_VERSION version: 12 updated: 2006/10/14 15:23:15
1693 dnl Verify version of GNAT.
1694 AC_DEFUN([CF_GNAT_VERSION],
1696 AC_MSG_CHECKING(for gnat version)
1697 cf_gnat_version=`${cf_ada_make-gnatmake} -v 2>&1 | grep '[[0-9]].[[0-9]][[0-9]]*' |\
1698 sed -e '2,$d' -e 's/[[^0-9 \.]]//g' -e 's/^[[ ]]*//' -e 's/ .*//'`
1699 AC_MSG_RESULT($cf_gnat_version)
1701 case $cf_gnat_version in
1702 3.1[[1-9]]*|3.[[2-9]]*|[[4-9]].*)
1703 cf_cv_prog_gnat_correct=yes
1705 *) echo Unsupported GNAT version $cf_gnat_version. Required is 3.11 or better. Disabling Ada95 binding.
1706 cf_cv_prog_gnat_correct=no
1709 case $cf_gnat_version in
1710 3.[[1-9]]*|[[4-9]].*)
1711 cf_compile_generics=generics
1712 cf_generic_objects="\${GENOBJS}"
1714 *) cf_compile_generics=
1719 dnl ---------------------------------------------------------------------------
1720 dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07
1722 dnl Check if we must define _GNU_SOURCE to get a reasonable value for
1723 dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect
1724 dnl (or misfeature) of glibc2, which breaks portability of many applications,
1725 dnl since it is interwoven with GNU extensions.
1727 dnl Well, yes we could work around it...
1728 AC_DEFUN([CF_GNU_SOURCE],
1730 AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
1731 AC_TRY_COMPILE([#include <sys/types.h>],[
1732 #ifndef _XOPEN_SOURCE
1735 [cf_cv_gnu_source=no],
1736 [cf_save="$CPPFLAGS"
1737 CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
1738 AC_TRY_COMPILE([#include <sys/types.h>],[
1739 #ifdef _XOPEN_SOURCE
1742 [cf_cv_gnu_source=no],
1743 [cf_cv_gnu_source=yes])
1747 test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
1749 dnl ---------------------------------------------------------------------------
1750 dnl CF_GPP_LIBRARY version: 8 updated: 2003/02/02 01:41:46
1752 dnl If we're trying to use g++, test if libg++ is installed (a rather common
1753 dnl problem :-). If we have the compiler but no library, we'll be able to
1754 dnl configure, but won't be able to build the c++ demo program.
1755 AC_DEFUN([CF_GPP_LIBRARY],
1757 cf_cxx_library=unknown
1758 case $cf_cv_system_name in #(vi
1766 if test "$GXX" = yes; then
1767 AC_MSG_CHECKING([for lib$cf_gpp_libname])
1769 LIBS="$LIBS -l$cf_gpp_libname"
1771 #include <$cf_gpp_libname/builtin.h>
1773 [two_arg_error_handler_t foo2 = lib_error_handler],
1775 CXXLIBS="$CXXLIBS -l$cf_gpp_libname"
1776 if test "$cf_gpp_libname" = cpp ; then
1777 AC_DEFINE(HAVE_GPP_BUILTIN_H)
1779 AC_DEFINE(HAVE_GXX_BUILTIN_H)
1782 #include <builtin.h>
1784 [two_arg_error_handler_t foo2 = lib_error_handler],
1786 CXXLIBS="$CXXLIBS -l$cf_gpp_libname"
1787 AC_DEFINE(HAVE_BUILTIN_H)],
1788 [cf_cxx_library=no])])
1790 AC_MSG_RESULT($cf_cxx_library)
1793 dnl ---------------------------------------------------------------------------
1794 dnl CF_GXX_VERSION version: 5 updated: 2005/08/27 09:53:42
1796 dnl Check for version of g++
1797 AC_DEFUN([CF_GXX_VERSION],[
1798 AC_REQUIRE([AC_PROG_CPP])
1800 if test "$GXX" = yes; then
1801 AC_MSG_CHECKING(version of g++)
1802 GXX_VERSION="`${CXX-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
1803 test -z "$GXX_VERSION" && GXX_VERSION=unknown
1804 AC_MSG_RESULT($GXX_VERSION)
1807 dnl ---------------------------------------------------------------------------
1808 dnl CF_GXX_WARNINGS version: 5 updated: 2005/08/13 14:54:38
1810 dnl Check if the compiler supports useful warning options.
1812 dnl Most of gcc's options apply to g++, except:
1813 dnl -Wbad-function-cast
1814 dnl -Wmissing-declarations
1815 dnl -Wnested-externs
1817 dnl Omit a few (for now):
1821 dnl $1 is an optional list of g++ warning flags that a particular
1822 dnl application might want to use, e.g., "no-unused" for
1825 dnl If $with_ext_const is "yes", add a check for -Wwrite-strings
1827 AC_DEFUN([CF_GXX_WARNINGS],
1830 CF_INTEL_COMPILER(GXX,INTEL_CPLUSPLUS,CXXFLAGS)
1832 AC_REQUIRE([CF_GXX_VERSION])
1837 cat > conftest.$ac_ext <<EOF
1838 #line __oline__ "configure"
1839 int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; }
1842 if test "$INTEL_CPLUSPLUS" = yes
1844 # The "-wdXXX" options suppress warnings:
1845 # remark #1419: external declaration in primary source file
1846 # remark #1682: implicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
1847 # remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem)
1848 # remark #1684: conversion from pointer to same-sized integral type (potential portability problem)
1849 # remark #193: zero used for undefined preprocessing identifier
1850 # remark #593: variable "curs_sb_left_arrow" was set but never used
1851 # remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits
1852 # remark #869: parameter "tw" was never referenced
1853 # remark #981: operands are evaluated in unspecified order
1854 # warning #269: invalid format string conversion
1856 AC_CHECKING([for $CC warning options])
1857 cf_save_CXXFLAGS="$CXXFLAGS"
1858 EXTRA_CXXFLAGS="-Wall"
1871 CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -$cf_opt"
1872 if AC_TRY_EVAL(ac_compile); then
1873 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
1874 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
1877 CXXFLAGS="$cf_save_CXXFLAGS"
1879 elif test "$GXX" = yes
1881 AC_CHECKING([for $CXX warning options])
1882 cf_save_CXXFLAGS="$CXXFLAGS"
1883 EXTRA_CXXFLAGS="-W -Wall"
1884 cf_gxx_extra_warnings=""
1885 test "$with_ext_const" = yes && cf_gxx_extra_warnings="Wwrite-strings"
1886 case "$GCC_VERSION" in
1890 cf_gxx_extra_warnings="$cf_gxx_extra_warnings Weffc++"
1896 Woverloaded-virtual \
1902 Wmissing-prototypes \
1905 Wstrict-prototypes \
1906 Wundef $cf_gxx_extra_warnings $1
1908 CXXFLAGS="$cf_save_CXXFLAGS $EXTRA_CXXFLAGS -Werror -$cf_opt"
1909 if AC_TRY_EVAL(ac_compile); then
1910 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt)
1911 EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS -$cf_opt"
1913 test -n "$verbose" && AC_MSG_RESULT(... no -$cf_opt)
1916 CXXFLAGS="$cf_save_CXXFLAGS"
1921 AC_SUBST(EXTRA_CXXFLAGS)
1923 dnl ---------------------------------------------------------------------------
1924 dnl CF_HASHED_DB version: 3 updated: 2007/11/24 17:43:37
1926 dnl Look for an instance of the Berkeley hashed database.
1928 dnl $1 = optional parameter, to specify install-prefix for the database.
1929 AC_DEFUN([CF_HASHED_DB],
1936 if test -d "$1" ; then
1937 CF_ADD_INCDIR($1/include)
1938 CF_ADD_LIBDIR($1/lib)
1942 AC_CHECK_HEADER(db.h,[
1943 CF_HASHED_DB_VERSION
1944 if test "$cf_cv_hashed_db_version" = unknown ; then
1945 AC_MSG_ERROR(Cannot determine version of db)
1948 if test "$cf_cv_hashed_db_libs" = unknown ; then
1949 AC_MSG_ERROR(Cannot determine library for db)
1950 elif test "$cf_cv_hashed_db_libs" != default ; then
1951 LIBS="-l$cf_cv_hashed_db_libs $LIBS"
1955 AC_MSG_ERROR(Cannot find db.h)
1958 dnl ---------------------------------------------------------------------------
1959 dnl CF_HASHED_DB_LIBS version: 8 updated: 2008/08/04 06:18:06
1960 dnl -----------------
1961 dnl Given that we have the header and version for hashed database, find the
1962 dnl library information.
1963 AC_DEFUN([CF_HASHED_DB_LIBS],
1965 AC_CACHE_CHECK(for db libraries, cf_cv_hashed_db_libs,[
1966 cf_cv_hashed_db_libs=unknown
1967 for cf_db_libs in "" db$cf_cv_hashed_db_version db-$cf_cv_hashed_db_version db ''
1969 cf_save_libs="$LIBS"
1970 if test -n "$cf_db_libs"; then
1971 LIBS="-l$cf_db_libs $LIBS"
1973 CF_MSG_LOG(checking for library "$cf_db_libs")
1975 $ac_includes_default
1978 char *path = "/tmp/foo";
1979 #ifdef DB_VERSION_MAJOR
1980 #if DB_VERSION_MAJOR >= 4
1982 db_create(&result, NULL, 0);
1983 result->open(result,
1990 #elif DB_VERSION_MAJOR >= 3
1992 db_create(&result, NULL, 0);
1993 result->open(result,
1999 #elif DB_VERSION_MAJOR >= 2
2008 #endif /* DB_VERSION_MAJOR */
2010 DB *result = dbopen(path,
2016 ${cf_cv_main_return:-return}(result != 0)
2018 if test -n "$cf_db_libs" ; then
2019 cf_cv_hashed_db_libs=$cf_db_libs
2021 cf_cv_hashed_db_libs=default
2023 LIBS="$cf_save_libs"
2026 LIBS="$cf_save_libs"
2030 dnl ---------------------------------------------------------------------------
2031 dnl CF_HASHED_DB_VERSION version: 3 updated: 2007/12/01 15:01:37
2032 dnl --------------------
2033 dnl Given that we have the header file for hashed database, find the version
2035 AC_DEFUN([CF_HASHED_DB_VERSION],
2037 AC_CACHE_CHECK(for version of db, cf_cv_hashed_db_version,[
2038 cf_cv_hashed_db_version=unknown
2040 for cf_db_version in 1 2 3 4 5
2042 CF_MSG_LOG(checking for db version $cf_db_version)
2044 $ac_includes_default
2047 #ifdef DB_VERSION_MAJOR
2048 /* db2 (DB_VERSION_MAJOR=2) has also DB_VERSION_MINOR, tested with 7 */
2049 #if $cf_db_version == DB_VERSION_MAJOR
2055 #if $cf_db_version == 1
2056 /* ok: assuming this is DB 1.8.5 */
2062 cf_cv_hashed_db_version=$cf_db_version
2068 dnl ---------------------------------------------------------------------------
2069 dnl CF_HEADER_PATH version: 9 updated: 2008/12/07 19:38:31
2071 dnl Construct a search-list of directories for a nonstandard header-file
2074 dnl $1 = the variable to return as result
2075 dnl $2 = the package name
2076 AC_DEFUN([CF_HEADER_PATH],
2078 cf_header_path_list=""
2079 if test -n "${CFLAGS}${CPPFLAGS}" ; then
2080 for cf_header_path in $CPPFLAGS $CFLAGS
2082 case $cf_header_path in #(vi
2084 cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'`
2085 CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE)
2086 cf_header_path_list="$cf_header_path_list [$]$1"
2092 CF_SUBDIR_PATH($1,$2,include)
2094 test "$includedir" != NONE && \
2095 test "$includedir" != "/usr/include" && \
2096 test -d "$includedir" && {
2097 test -d $includedir && $1="[$]$1 $includedir"
2098 test -d $includedir/$2 && $1="[$]$1 $includedir/$2"
2101 test "$oldincludedir" != NONE && \
2102 test "$oldincludedir" != "/usr/include" && \
2103 test -d "$oldincludedir" && {
2104 test -d $oldincludedir && $1="[$]$1 $oldincludedir"
2105 test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2"
2108 $1="$cf_header_path_list [$]$1"
2110 dnl ---------------------------------------------------------------------------
2111 dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23
2113 dnl Insert text into the help-message, for readability, from AC_ARG_WITH.
2114 AC_DEFUN([CF_HELP_MESSAGE],
2115 [AC_DIVERT_HELP([$1])dnl
2117 dnl ---------------------------------------------------------------------------
2118 dnl CF_INCLUDE_DIRS version: 6 updated: 2009/01/06 19:37:40
2120 dnl Construct the list of include-options according to whether we're building
2121 dnl in the source directory or using '--srcdir=DIR' option. If we're building
2122 dnl with gcc, don't append the includedir if it happens to be /usr/include,
2123 dnl since that usually breaks gcc's shadow-includes.
2124 AC_DEFUN([CF_INCLUDE_DIRS],
2126 CPPFLAGS="$CPPFLAGS -I. -I../include"
2127 if test "$srcdir" != "."; then
2128 CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include"
2130 if test "$GCC" != yes; then
2131 CPPFLAGS="$CPPFLAGS -I\${includedir}"
2132 elif test "$includedir" != "/usr/include"; then
2133 if test "$includedir" = '${prefix}/include' ; then
2134 if test $prefix != /usr ; then
2135 CPPFLAGS="$CPPFLAGS -I\${includedir}"
2138 CPPFLAGS="$CPPFLAGS -I\${includedir}"
2143 dnl ---------------------------------------------------------------------------
2144 dnl CF_INTEL_COMPILER version: 3 updated: 2005/08/06 18:37:29
2145 dnl -----------------
2146 dnl Check if the given compiler is really the Intel compiler for Linux. It
2147 dnl tries to imitate gcc, but does not return an error when it finds a mismatch
2148 dnl between prototypes, e.g., as exercised by CF_MISSING_CHECK.
2150 dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
2151 dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from
2152 dnl the wrappers for gcc and g++ warnings.
2154 dnl $1 = GCC (default) or GXX
2155 dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
2156 dnl $3 = CFLAGS (default) or CXXFLAGS
2157 AC_DEFUN([CF_INTEL_COMPILER],[
2158 ifelse($2,,INTEL_COMPILER,[$2])=no
2160 if test "$ifelse($1,,[$1],GCC)" = yes ; then
2163 AC_MSG_CHECKING(if this is really Intel ifelse($1,GXX,C++,C) compiler)
2164 cf_save_CFLAGS="$ifelse($3,,CFLAGS,[$3])"
2165 ifelse($3,,CFLAGS,[$3])="$ifelse($3,,CFLAGS,[$3]) -no-gcc"
2167 #ifdef __INTEL_COMPILER
2171 ],[ifelse($2,,INTEL_COMPILER,[$2])=yes
2172 cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc"
2174 ifelse($3,,CFLAGS,[$3])="$cf_save_CFLAGS"
2175 AC_MSG_RESULT($ifelse($2,,INTEL_COMPILER,[$2]))
2180 dnl ---------------------------------------------------------------------------
2181 dnl CF_ISASCII version: 3 updated: 2000/08/12 23:18:52
2183 dnl Check if we have either a function or macro for 'isascii()'.
2184 AC_DEFUN([CF_ISASCII],
2186 AC_MSG_CHECKING(for isascii)
2187 AC_CACHE_VAL(cf_cv_have_isascii,[
2188 AC_TRY_LINK([#include <ctype.h>],[int x = isascii(' ')],
2189 [cf_cv_have_isascii=yes],
2190 [cf_cv_have_isascii=no])
2192 AC_MSG_RESULT($cf_cv_have_isascii)
2193 test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII)
2195 dnl ---------------------------------------------------------------------------
2196 dnl CF_LARGEFILE version: 7 updated: 2007/06/02 11:58:50
2198 dnl Add checks for large file support.
2199 AC_DEFUN([CF_LARGEFILE],[
2200 ifdef([AC_FUNC_FSEEKO],[
2202 if test "$enable_largefile" != no ; then
2205 # Normally we would collect these definitions in the config.h,
2206 # but (like _XOPEN_SOURCE), some environments rely on having these
2207 # defined before any of the system headers are included. Another
2208 # case comes up with C++, e.g., on AIX the compiler compiles the
2209 # header files by themselves before looking at the body files it is
2210 # told to compile. For ncurses, those header files do not include
2212 test "$ac_cv_sys_large_files" != no && CPPFLAGS="$CPPFLAGS -D_LARGE_FILES "
2213 test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE "
2214 test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits "
2216 AC_CACHE_CHECK(whether to use struct dirent64, cf_cv_struct_dirent64,[
2218 #include <sys/types.h>
2221 /* if transitional largefile support is setup, this is true */
2222 extern struct dirent64 * readdir(DIR *);
2223 struct dirent64 *x = readdir((DIR *)0);
2224 struct dirent *y = readdir((DIR *)0);
2227 [cf_cv_struct_dirent64=yes],
2228 [cf_cv_struct_dirent64=no])
2230 test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64)
2234 dnl ---------------------------------------------------------------------------
2235 dnl CF_LDFLAGS_STATIC version: 7 updated: 2009/04/04 18:31:04
2236 dnl -----------------
2237 dnl Check for compiler/linker flags used to temporarily force usage of static
2238 dnl libraries. This depends on the compiler and platform. Use this to help
2239 dnl ensure that the linker picks up a given library based on its position in
2240 dnl the list of linker options and libraries.
2241 AC_DEFUN([CF_LDFLAGS_STATIC],[
2243 if test "$GCC" = yes ; then
2244 case $cf_cv_system_name in #(
2245 OS/2*|os2*|aix[[4]]*|solaris2.1[[0-9]]|darwin*) #( vi
2249 *) #( normally, except when broken
2250 LDFLAGS_STATIC=-static
2251 LDFLAGS_SHARED=-dynamic
2255 case $cf_cv_system_name in #(
2256 aix[[456]]*) #( from ld manpage
2257 LDFLAGS_STATIC=-bstatic
2258 LDFLAGS_SHARED=-bdynamic
2260 hpux*) #( from ld manpage for hpux10.20, hpux11.11
2261 # We could also use just "archive" and "shared".
2262 LDFLAGS_STATIC=-Wl,-a,archive_shared
2263 LDFLAGS_SHARED=-Wl,-a,shared_archive
2265 irix*) #( from ld manpage IRIX64
2266 LDFLAGS_STATIC=-Bstatic
2267 LDFLAGS_SHARED=-Bdynamic
2269 osf[[45]]*) #( from ld manpage osf4.0d, osf5.1
2270 # alternative "-oldstyle_liblookup" (not in cc manpage)
2271 LDFLAGS_STATIC=-noso
2272 LDFLAGS_SHARED=-so_archive
2275 LDFLAGS_STATIC=-Bstatic
2276 LDFLAGS_SHARED=-Bdynamic
2281 AC_SUBST(LDFLAGS_STATIC)
2282 AC_SUBST(LDFLAGS_SHARED)
2284 dnl ---------------------------------------------------------------------------
2285 dnl CF_LIBRARY_PATH version: 8 updated: 2008/12/07 19:38:31
2287 dnl Construct a search-list of directories for a nonstandard library-file
2290 dnl $1 = the variable to return as result
2291 dnl $2 = the package name
2292 AC_DEFUN([CF_LIBRARY_PATH],
2294 cf_library_path_list=""
2295 if test -n "${LDFLAGS}${LIBS}" ; then
2296 for cf_library_path in $LDFLAGS $LIBS
2298 case $cf_library_path in #(vi
2300 cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'`
2301 CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE)
2302 cf_library_path_list="$cf_library_path_list [$]$1"
2308 CF_SUBDIR_PATH($1,$2,lib)
2310 $1="$cf_library_path_list [$]$1"
2312 dnl ---------------------------------------------------------------------------
2313 dnl CF_LIB_PREFIX version: 8 updated: 2008/09/13 11:34:16
2315 dnl Compute the library-prefix for the given host system
2316 dnl $1 = variable to set
2317 AC_DEFUN([CF_LIB_PREFIX],
2319 case $cf_cv_system_name in #(vi
2326 ifelse($1,,,[$1=$LIB_PREFIX])
2327 AC_SUBST(LIB_PREFIX)
2329 dnl ---------------------------------------------------------------------------
2330 dnl CF_LIB_RULES version: 55 updated: 2008/12/13 16:17:38
2332 dnl Append definitions and rules for the given models to the subdirectory
2333 dnl Makefiles, and the recursion rule for the top-level Makefile. If the
2334 dnl subdirectory is a library-source directory, modify the LIBS_TO_MAKE list in
2335 dnl the corresponding makefile to list the models that we'll generate.
2337 dnl For shared libraries, make a list of symbolic links to construct when
2338 dnl generating each library. The convention used for Linux is the simplest
2341 dnl lib<name>.so.<major> ->
2342 dnl lib<name>.so.<maj>.<minor>
2343 AC_DEFUN([CF_LIB_RULES],
2345 CF_LIB_PREFIX(cf_prefix)
2346 AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
2348 if test $cf_cv_shlib_version = cygdll ; then
2349 TINFO_NAME=$TINFO_ARG_SUFFIX
2353 for cf_dir in $SRC_SUBDIRS
2355 if test ! -d $srcdir/$cf_dir ; then
2357 elif test -f $srcdir/$cf_dir/modules; then
2361 for cf_item in $cf_LIST_MODELS
2363 CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf)
2364 if test $cf_item = shared ; then
2365 if test "$cf_cv_do_symlinks" = yes ; then
2366 case "$cf_cv_shlib_version" in #(vi
2368 case "$cf_cv_system_name" in #(vi
2370 case .${LIB_SUFFIX} in
2372 cf_suffix=`echo $cf_suffix | sed 's/^w//'`
2373 cf_suffix=w'.${REL_VERSION}'"$cf_suffix"
2376 cf_suffix='.${REL_VERSION}'"$cf_suffix"
2380 *) cf_suffix="$cf_suffix"'.${REL_VERSION}' ;;
2384 case "$cf_cv_system_name" in #(vi
2386 case .${LIB_SUFFIX} in
2388 cf_suffix=`echo $cf_suffix | sed 's/^w//'`
2389 cf_suffix=w'.${ABI_VERSION}'"$cf_suffix"
2392 cf_suffix='.${ABI_VERSION}'"$cf_suffix"
2396 *) cf_suffix="$cf_suffix"'.${ABI_VERSION}' ;;
2401 # cygwin needs import library, and has unique naming convention
2402 # use autodetected ${cf_prefix} for import lib and static lib, but
2403 # use 'cyg' prefix for shared lib.
2404 if test $cf_cv_shlib_version = cygdll ; then
2405 cf_cygsuf=`echo "$cf_suffix" | sed -e 's/\.dll/\${ABI_VERSION}.dll/'`
2406 LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/cyg${cf_dir}${cf_cygsuf}"
2410 LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}"
2413 if test $cf_dir = ncurses ; then
2414 cf_subsets="$LIB_SUBSETS"
2415 cf_r_parts="$cf_subsets"
2416 cf_liblist="$LIBS_TO_MAKE"
2418 while test -n "$cf_r_parts"
2420 cf_l_parts=`echo "$cf_r_parts" |sed -e 's/ .*$//'`
2421 cf_r_parts=`echo "$cf_r_parts" |sed -e 's/^[[^ ]]* //'`
2422 if test "$cf_l_parts" != "$cf_r_parts" ; then
2424 case $cf_l_parts in #(vi
2426 cf_item=`echo $cf_liblist |sed -e s%${LIB_NAME}${LIB_SUFFIX}%${TINFO_LIB_SUFFIX}%g`
2429 cf_item=`echo $cf_liblist |sed -e s%${LIB_NAME}${LIB_SUFFIX}%${TICS_LIB_SUFFIX}%g`
2435 if test -n "$cf_item"; then
2436 LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
2443 cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib.* //'`
2446 sed -e "s%@LIBS_TO_MAKE@%$LIBS_TO_MAKE%" \
2447 -e "s%@SHARED_LIB@%$SHARED_LIB%" \
2448 $cf_dir/Makefile >$cf_dir/Makefile.out
2449 mv $cf_dir/Makefile.out $cf_dir/Makefile
2451 $AWK -f $srcdir/mk-0th.awk \
2452 libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \
2453 $srcdir/$cf_dir/modules >>$cf_dir/Makefile
2455 for cf_subset in $cf_subsets
2458 for cf_item in $cf_LIST_MODELS
2460 echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})"
2461 CF_UPPER(cf_ITEM,$cf_item)
2462 CF_LIB_SUFFIX($cf_item,cf_suffix,cf_depsuf)
2463 CF_OBJ_SUBDIR($cf_item,cf_subdir)
2465 # Test for case where we build libtinfo with a different name.
2467 if test $cf_dir = ncurses ; then
2470 cf_libname=${cf_libname}$LIB_SUFFIX
2473 cf_libname=$TINFO_LIB_SUFFIX
2476 cf_libname=$TICS_LIB_SUFFIX
2480 cf_libname=${cf_libname}$LIB_SUFFIX
2482 if test -n "${DFT_ARG_SUFFIX}" ; then
2483 # undo $LIB_SUFFIX add-on in CF_LIB_SUFFIX
2484 cf_suffix=`echo $cf_suffix |sed -e "s%^${LIB_SUFFIX}%%"`
2487 # These dependencies really are for development, not
2488 # builds, but they are useful in porting, too.
2489 cf_depend="../include/ncurses_cfg.h"
2490 if test "$srcdir" = "."; then
2493 cf_reldir="\${srcdir}"
2496 if test -f $srcdir/$cf_dir/$cf_dir.priv.h; then
2497 cf_depend="$cf_depend $cf_reldir/$cf_dir.priv.h"
2498 elif test -f $srcdir/$cf_dir/curses.priv.h; then
2499 cf_depend="$cf_depend $cf_reldir/curses.priv.h"
2503 old_cf_suffix="$cf_suffix"
2504 if test "$cf_cv_shlib_version_infix" = yes ; then
2505 if test -n "$LIB_SUFFIX" ; then
2508 cf_libname=`echo $cf_libname | sed 's/w$//'`
2509 cf_suffix=`echo $cf_suffix | sed 's/^w//'`
2516 $AWK -f $srcdir/mk-1st.awk \
2517 name=${cf_libname}${cf_dir_suffix} \
2518 traces=$LIB_TRACING \
2524 TermlibRoot=$TINFO_NAME \
2525 TermlibSuffix=$TINFO_SUFFIX \
2526 ShlibVer=$cf_cv_shlib_version \
2527 ShlibVerInfix=$cf_cv_shlib_version_infix \
2528 ReLink=${cf_cv_do_relink-no} \
2529 DoLinks=$cf_cv_do_symlinks \
2530 rmSoLocs=$cf_cv_rm_so_locs \
2531 ldconfig="$LDCONFIG" \
2532 overwrite=$WITH_OVERWRITE \
2533 depend="$cf_depend" \
2535 $srcdir/$cf_dir/modules >>$cf_dir/Makefile
2537 cf_suffix="$old_cf_suffix"
2539 for cf_subdir2 in $cf_subdirs lib
2541 test $cf_subdir = $cf_subdir2 && break
2543 test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \
2544 $AWK -f $srcdir/mk-2nd.awk \
2546 traces=$LIB_TRACING \
2552 crenames=$cf_cv_prog_CC_c_o \
2553 cxxrenames=$cf_cv_prog_CXX_c_o \
2554 $srcdir/$cf_dir/modules >>$cf_dir/Makefile
2555 cf_subdirs="$cf_subdirs $cf_subdir"
2560 echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >>Makefile
2563 for cf_dir in $SRC_SUBDIRS
2565 if test ! -d $srcdir/$cf_dir ; then
2569 if test -f $cf_dir/Makefile ; then
2572 echo 'libs \' >> Makefile
2573 echo 'install.libs \' >> Makefile
2574 echo 'uninstall.libs ::' >> Makefile
2575 echo ' cd '$cf_dir' && ${MAKE} ${CF_MFLAGS} [$]@' >> Makefile
2580 if test -f $srcdir/$cf_dir/modules; then
2582 if test -f $srcdir/$cf_dir/headers; then
2583 cat >> Makefile <<CF_EOF
2585 uninstall.includes \\
2588 if test "$cf_dir" != "c++" ; then
2589 echo 'lint \' >> Makefile
2591 cat >> Makefile <<CF_EOF
2597 uninstall.$cf_dir ::
2598 cd $cf_dir && \${MAKE} \${CF_MFLAGS} \[$]@
2600 elif test -f $srcdir/$cf_dir/headers; then
2601 cat >> Makefile <<CF_EOF
2607 uninstall.includes ::
2608 cd $cf_dir && \${MAKE} \${CF_MFLAGS} \[$]@
2613 cat >> Makefile <<CF_EOF
2615 install.libs uninstall.libs \\
2616 install.data uninstall.data ::
2617 $MAKE_TERMINFO cd misc && \${MAKE} \${CF_MFLAGS} \[$]@
2620 if test "x$cf_with_manpages" = xyes; then
2621 cat >> Makefile <<CF_EOF
2625 cd man && \${MAKE} \${CF_MFLAGS} \[$]@
2629 cat >> Makefile <<CF_EOF
2632 rm -f config.cache config.log config.status Makefile include/ncurses_cfg.h
2633 rm -f headers.sh headers.sed mk_shared_lib.sh
2634 rm -f edit_man.* man_alias.*
2635 rm -rf \${DIRS_TO_MAKE}
2638 # Special case: tack's manpage lives in its own directory.
2639 if test "x$cf_with_manpages" = xyes; then
2640 if test -d tack ; then
2641 if test -f $srcdir/$tack.h; then
2642 cat >> Makefile <<CF_EOF
2646 cd tack && \${MAKE} \${CF_MFLAGS} \[$]@
2652 dnl If we're installing into a subdirectory of /usr/include, etc., we should
2653 dnl prepend the subdirectory's name to the "#include" paths. It won't hurt
2654 dnl anything, and will make it more standardized. It's awkward to decide this
2655 dnl at configuration because of quoting, so we'll simply make all headers
2656 dnl installed via a script that can do the right thing.
2658 rm -f headers.sed headers.sh
2660 dnl ( generating this script makes the makefiles a little tidier :-)
2661 echo creating headers.sh
2662 cat >headers.sh <<CF_EOF
2664 # This shell script is generated by the 'configure' script. It is invoked in a
2665 # subdirectory of the build tree. It generates a sed-script in the parent
2666 # directory that is used to adjust includes for header files that reside in a
2667 # subdirectory of /usr/include, etc.
2669 while test \[$]# != 3
2671 PRG="\$PRG \[$]1"; shift
2676 TMPSRC=\${TMPDIR-/tmp}/\`basename \$SRC\`\$\$
2677 TMPSED=\${TMPDIR-/tmp}/headers.sed\$\$
2678 echo installing \$SRC in \$DST
2681 if test $WITH_CURSES_H = yes; then
2682 cat >>headers.sh <<CF_EOF
2685 END=\`basename \$DST\`
2686 for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
2688 NAME=\`basename \$i\`
2689 echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
2699 cat >>headers.sh <<CF_EOF
2702 END=\`basename \$DST\`
2703 for i in \`cat \$REF/../*/headers |fgrep -v "#"\`
2705 NAME=\`basename \$i\`
2706 if test "\$NAME" = "curses.h"
2708 echo "s/<curses.h>/<ncurses.h>/" >> \$TMPSED
2711 echo "s/<\$NAME>/<\$END\/\$NAME>/" >> \$TMPSED
2715 echo "s/<curses.h>/<ncurses.h>/" >> \$TMPSED
2720 cat >>headers.sh <<CF_EOF
2722 sed -f \$TMPSED \$SRC > \$TMPSRC
2723 NAME=\`basename \$SRC\`
2725 if test $WITH_CURSES_H != yes; then
2726 cat >>headers.sh <<CF_EOF
2727 test "\$NAME" = "curses.h" && NAME=ncurses.h
2730 cat >>headers.sh <<CF_EOF
2731 # Just in case someone gzip'd manpages, remove the conflicting copy.
2732 test -f \$DST/\$NAME.gz && rm -f \$DST/\$NAME.gz
2734 eval \$PRG \$TMPSRC \$DST/\$NAME
2735 rm -f \$TMPSRC \$TMPSED
2738 chmod 0755 headers.sh
2740 for cf_dir in $SRC_SUBDIRS
2742 if test ! -d $srcdir/$cf_dir ; then
2746 if test -f $srcdir/$cf_dir/headers; then
2747 $AWK -f $srcdir/mk-hdr.awk \
2748 subset="$LIB_SUBSETS" \
2749 compat="$WITH_CURSES_H" \
2750 $srcdir/$cf_dir/headers >>$cf_dir/Makefile
2753 if test -f $srcdir/$cf_dir/modules; then
2754 if test "$cf_dir" != "c++" ; then
2755 cat >>$cf_dir/Makefile <<"CF_EOF"
2756 depend : ${AUTO_SRC}
2757 makedepend -- ${CPPFLAGS} -- ${C_SRC}
2759 # DO NOT DELETE THIS LINE -- make depend depends on it.
2766 dnl ---------------------------------------------------------------------------
2767 dnl CF_LIB_SONAME version: 3 updated: 2006/12/16 15:55:46
2769 dnl Find the and soname for the given shared library. Set the cache variable
2770 dnl cf_cv_$3_soname to this, unless it is not found. Then set the cache
2771 dnl variable to "unknown".
2775 dnl $3 = library name
2776 AC_DEFUN([CF_LIB_SONAME],
2778 AC_CACHE_CHECK(for soname of $3 library,cf_cv_$3_soname,[
2780 cf_cv_$3_soname=unknown
2781 if test "$cross_compiling" != yes ; then
2782 cat >conftest.$ac_ext <<CF_EOF
2787 ${cf_cv_main_return:-return}(0);
2790 cf_save_LIBS="$LIBS"
2792 if AC_TRY_EVAL(ac_compile) ; then
2793 if AC_TRY_EVAL(ac_link) ; then
2794 cf_cv_$3_soname=`ldd conftest$ac_exeext 2>/dev/null | sed -e 's,^.*/,,' -e 's, .*$,,' | fgrep lib$3.`
2795 test -z "$cf_cv_$3_soname" && cf_cv_$3_soname=unknown
2799 LIBS="$cf_save_LIBS"
2803 dnl ---------------------------------------------------------------------------
2804 dnl CF_LIB_SUFFIX version: 16 updated: 2008/12/27 12:30:03
2806 dnl Compute the library file-suffix from the given model name
2808 dnl $2 = variable to set (the nominal library suffix)
2809 dnl $3 = dependency variable to set (actual filename)
2810 dnl The variable $LIB_SUFFIX, if set, prepends the variable to set.
2811 AC_DEFUN([CF_LIB_SUFFIX],
2813 AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
2832 case $cf_cv_system_name in
2862 test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
2863 test -n "$LIB_SUFFIX" && $3="${LIB_SUFFIX}[$]{$3}"
2865 dnl ---------------------------------------------------------------------------
2866 dnl CF_LIB_TYPE version: 4 updated: 2000/10/20 22:57:49
2868 dnl Compute the string to append to -library from the given model name
2870 dnl $2 = variable to set
2871 dnl The variable $LIB_SUFFIX, if set, prepends the variable to set.
2872 AC_DEFUN([CF_LIB_TYPE],
2881 test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
2883 dnl ---------------------------------------------------------------------------
2884 dnl CF_LINK_DATAONLY version: 9 updated: 2009/01/01 20:21:38
2885 dnl ----------------
2886 dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
2887 dnl only data (i.e., no functions), for example NeXT. On those systems we'll
2888 dnl have to provide wrappers for global tables to ensure they're linked
2890 AC_DEFUN([CF_LINK_DATAONLY],
2892 AC_MSG_CHECKING([if data-only library module links])
2893 AC_CACHE_VAL(cf_cv_link_dataonly,[
2895 cat >conftest.$ac_ext <<EOF
2896 #line __oline__ "configure"
2897 int testdata[[3]] = { 123, 456, 789 };
2899 if AC_TRY_EVAL(ac_compile) ; then
2900 mv conftest.o data.o && \
2901 ( $AR $ARFLAGS conftest.a data.o ) 2>&AC_FD_CC 1>/dev/null
2903 rm -f conftest.$ac_ext data.o
2904 cat >conftest.$ac_ext <<EOF
2905 #line __oline__ "configure"
2909 ${cf_cv_main_return:-return}(1); /* I'm told this linker is broken */
2911 extern int testdata[[3]];
2912 return testdata[[0]] == 123
2913 && testdata[[1]] == 456
2914 && testdata[[2]] == 789;
2918 if AC_TRY_EVAL(ac_compile); then
2919 mv conftest.o func.o && \
2920 ( $AR $ARFLAGS conftest.a func.o ) 2>&AC_FD_CC 1>/dev/null
2922 rm -f conftest.$ac_ext func.o
2923 ( eval $RANLIB conftest.a ) 2>&AC_FD_CC >/dev/null
2925 LIBS="conftest.a $LIBS"
2929 extern int testfunc();
2930 ${cf_cv_main_return:-return} (!testfunc());
2933 [cf_cv_link_dataonly=yes],
2934 [cf_cv_link_dataonly=no],
2935 [cf_cv_link_dataonly=unknown])
2938 AC_MSG_RESULT($cf_cv_link_dataonly)
2940 if test "$cf_cv_link_dataonly" = no ; then
2941 AC_DEFINE(BROKEN_LINKER)
2946 dnl ---------------------------------------------------------------------------
2947 dnl CF_LINK_FUNCS version: 7 updated: 2006/12/16 12:33:30
2949 dnl Most Unix systems have both link and symlink, a few don't have symlink.
2950 dnl A few non-Unix systems implement symlink, but not link.
2951 dnl A few non-systems implement neither (or have nonfunctional versions).
2952 AC_DEFUN([CF_LINK_FUNCS],
2958 if test "$cross_compiling" = yes ; then
2963 AC_CACHE_CHECK(if link/symlink functions work,cf_cv_link_funcs,[
2965 for cf_func in link symlink ; do
2967 #include <sys/types.h>
2968 #include <sys/stat.h>
2969 #ifdef HAVE_UNISTD_H
2975 char *src = "config.log";
2976 char *dst = "conftest.chk";
2981 fail = ($cf_func("config.log", "conftest.chk") < 0)
2982 || (stat(dst, &dst_sb) < 0)
2983 || (dst_sb.st_mtime != src_sb.st_mtime);
2989 ${cf_cv_main_return:-return} (fail);
2992 cf_cv_link_funcs="$cf_cv_link_funcs $cf_func"
2993 eval 'ac_cv_func_'$cf_func'=yes'],[
2994 eval 'ac_cv_func_'$cf_func'=no'],[
2995 eval 'ac_cv_func_'$cf_func'=error'])
2997 test -z "$cf_cv_link_funcs" && cf_cv_link_funcs=no
2999 test "$ac_cv_func_link" = yes && AC_DEFINE(HAVE_LINK)
3000 test "$ac_cv_func_symlink" = yes && AC_DEFINE(HAVE_SYMLINK)
3003 dnl ---------------------------------------------------------------------------
3004 dnl CF_MAIN_RETURN version: 1 updated: 2006/12/10 09:51:54
3006 dnl Check if a return from main to the shell actually returns the same exit
3007 dnl code. This is true for almost any POSIX environment.
3009 dnl Some very old environments did not flush stdout, etc., on an exit. That
3010 dnl would be a useful case to test for also.
3011 AC_DEFUN([CF_MAIN_RETURN],
3013 cf_cv_main_return=return
3015 dnl ---------------------------------------------------------------------------
3016 dnl CF_MAKEFLAGS version: 12 updated: 2006/10/21 08:27:03
3018 dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make'
3019 dnl options to lower-levels. It's very useful for "make -n" -- if we have it.
3020 dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
3021 dnl ${MAKEFLAGS} variable incompatible because it adds the assignments :-)
3022 AC_DEFUN([CF_MAKEFLAGS],
3024 AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[
3026 for cf_option in '-${MAKEFLAGS}' '${MFLAGS}'
3028 cat >cf_makeflags.tmp <<CF_EOF
3031 @ echo '.$cf_option'
3033 cf_result=`${MAKE-make} -k -f cf_makeflags.tmp 2>/dev/null | sed -e 's,[[ ]]*$,,'`
3034 case "$cf_result" in
3036 cf_result=`${MAKE-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null`
3037 case "$cf_result" in
3038 .*CC=*) cf_cv_makeflags=
3040 *) cf_cv_makeflags=$cf_option
3046 *) echo "given option \"$cf_option\", no match \"$cf_result\""
3050 rm -f cf_makeflags.tmp
3053 AC_SUBST(cf_cv_makeflags)
3055 dnl ---------------------------------------------------------------------------
3056 dnl CF_MAKE_TAGS version: 2 updated: 2000/10/04 09:18:40
3058 dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have
3059 dnl a monocase filesystem.
3060 AC_DEFUN([CF_MAKE_TAGS],[
3061 AC_REQUIRE([CF_MIXEDCASE_FILENAMES])
3062 AC_CHECK_PROG(MAKE_LOWER_TAGS, ctags, yes, no)
3064 if test "$cf_cv_mixedcase" = yes ; then
3065 AC_CHECK_PROG(MAKE_UPPER_TAGS, etags, yes, no)
3070 if test "$MAKE_UPPER_TAGS" = yes ; then
3075 AC_SUBST(MAKE_UPPER_TAGS)
3077 if test "$MAKE_LOWER_TAGS" = yes ; then
3082 AC_SUBST(MAKE_LOWER_TAGS)
3084 dnl ---------------------------------------------------------------------------
3085 dnl CF_MANPAGE_FORMAT version: 8 updated: 2009/01/11 20:30:50
3086 dnl -----------------
3087 dnl Option to allow user to override automatic configuration of manpage format.
3088 dnl There are several special cases:
3090 dnl gzip - man checks for, can display gzip'd files
3091 dnl compress - man checks for, can display compressed files
3092 dnl BSDI - files in the cat-directories are suffixed ".0"
3093 dnl formatted - installer should format (put files in cat-directory)
3094 dnl catonly - installer should only format, e.g., for a turnkey system.
3096 dnl There are other configurations which this macro does not test, e.g., HPUX's
3097 dnl compressed manpages (but uncompressed manpages are fine, and HPUX's naming
3098 dnl convention would not match our use).
3099 AC_DEFUN([CF_MANPAGE_FORMAT],
3101 AC_REQUIRE([CF_PATHSEP])
3102 AC_MSG_CHECKING(format of man-pages)
3104 AC_ARG_WITH(manpage-format,
3105 [ --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and
3106 optionally formatted/catonly, e.g., gzip,formatted],
3107 [MANPAGE_FORMAT=$withval],
3108 [MANPAGE_FORMAT=unknown])
3110 test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=unknown
3111 MANPAGE_FORMAT=`echo "$MANPAGE_FORMAT" | sed -e 's/,/ /g'`
3115 case $MANPAGE_FORMAT in
3117 if test -z "$MANPATH" ; then
3118 MANPATH="/usr/man:/usr/share/man"
3121 # look for the 'date' man-page (it's most likely to be installed!)
3127 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}"
3128 for cf_dir in $MANPATH; do
3129 test -z "$cf_dir" && cf_dir=/usr/man
3130 for cf_name in $cf_dir/man*/$cf_example.[[01]]* $cf_dir/cat*/$cf_example.[[01]]* $cf_dir/man*/$cf_example $cf_dir/cat*/$cf_example
3132 cf_test=`echo $cf_name | sed -e 's/*//'`
3133 if test "x$cf_test" = "x$cf_name" ; then
3136 *.gz) MANPAGE_FORMAT="$MANPAGE_FORMAT gzip";;
3137 *.Z) MANPAGE_FORMAT="$MANPAGE_FORMAT compress";;
3138 *.0) MANPAGE_FORMAT="$MANPAGE_FORMAT BSDI";;
3139 *) MANPAGE_FORMAT="$MANPAGE_FORMAT normal";;
3153 # if we found a match in either man* or cat*, stop looking
3154 if test -n "$MANPAGE_FORMAT" ; then
3156 test "$cf_preform" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT formatted"
3157 test "$cf_catonly" = yes && MANPAGE_FORMAT="$MANPAGE_FORMAT catonly"
3163 test $cf_found=yes && break
3166 # only check the first directory in $MANPATH where we find manpages
3167 if test -n "$MANPAGE_FORMAT" ; then
3171 # if we did not find the example, just assume it is normal
3172 test -z "$MANPAGE_FORMAT" && MANPAGE_FORMAT=normal
3176 for cf_option in $MANPAGE_FORMAT; do
3177 case $cf_option in #(vi
3178 gzip|compress|BSDI|normal|formatted|catonly)
3181 cf_unknown="$cf_unknown $cf_option"
3188 AC_MSG_RESULT($MANPAGE_FORMAT)
3189 if test -n "$cf_unknown" ; then
3190 AC_MSG_WARN(Unexpected manpage-format $cf_unknown)
3193 dnl ---------------------------------------------------------------------------
3194 dnl CF_MANPAGE_RENAMES version: 7 updated: 2005/06/18 18:51:57
3195 dnl ------------------
3196 dnl The Debian people have their own naming convention for manpages. This
3197 dnl option lets us override the name of the file containing renaming, or
3198 dnl disable it altogether.
3199 AC_DEFUN([CF_MANPAGE_RENAMES],
3201 AC_MSG_CHECKING(for manpage renaming)
3203 AC_ARG_WITH(manpage-renames,
3204 [ --with-manpage-renames specify manpage-renaming],
3205 [MANPAGE_RENAMES=$withval],
3206 [MANPAGE_RENAMES=yes])
3208 case ".$MANPAGE_RENAMES" in #(vi
3212 # Debian 'man' program?
3213 if test -f /etc/debian_version ; then
3214 MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames
3221 if test "$MANPAGE_RENAMES" != no ; then
3222 if test -f $srcdir/man/$MANPAGE_RENAMES ; then
3223 MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES
3224 elif test ! -f $MANPAGE_RENAMES ; then
3225 AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES)
3228 test ! -d man && mkdir man
3230 # Construct a sed-script to perform renaming within man-pages
3231 if test -n "$MANPAGE_RENAMES" ; then
3232 test ! -d man && mkdir man
3233 sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed
3237 AC_MSG_RESULT($MANPAGE_RENAMES)
3238 AC_SUBST(MANPAGE_RENAMES)
3240 dnl ---------------------------------------------------------------------------
3241 dnl CF_MANPAGE_SYMLINKS version: 4 updated: 2003/12/13 18:01:58
3242 dnl -------------------
3243 dnl Some people expect each tool to make all aliases for manpages in the
3244 dnl man-directory. This accommodates the older, less-capable implementations
3245 dnl of 'man', and is optional.
3246 AC_DEFUN([CF_MANPAGE_SYMLINKS],
3248 AC_MSG_CHECKING(if manpage aliases will be installed)
3250 AC_ARG_WITH(manpage-aliases,
3251 [ --with-manpage-aliases specify manpage-aliases using .so],
3252 [MANPAGE_ALIASES=$withval],
3253 [MANPAGE_ALIASES=yes])
3255 AC_MSG_RESULT($MANPAGE_ALIASES)
3257 if test "$LN_S" = "ln -s"; then
3264 if test "$MANPAGE_ALIASES" = yes ; then
3265 AC_MSG_CHECKING(if manpage symlinks should be used)
3267 AC_ARG_WITH(manpage-symlinks,
3268 [ --with-manpage-symlinks specify manpage-aliases using symlinks],
3269 [MANPAGE_SYMLINKS=$withval],
3270 [MANPAGE_SYMLINKS=$cf_use_symlinks])
3272 if test "$$cf_use_symlinks" = no; then
3273 if test "$MANPAGE_SYMLINKS" = yes ; then
3274 AC_MSG_WARN(cannot make symlinks, will use .so files)
3279 AC_MSG_RESULT($MANPAGE_SYMLINKS)
3283 dnl ---------------------------------------------------------------------------
3284 dnl CF_MANPAGE_TBL version: 3 updated: 2002/01/19 22:51:32
3286 dnl This option causes manpages to be run through tbl(1) to generate tables
3288 AC_DEFUN([CF_MANPAGE_TBL],
3290 AC_MSG_CHECKING(for manpage tbl)
3292 AC_ARG_WITH(manpage-tbl,
3293 [ --with-manpage-tbl specify manpage processing with tbl],
3294 [MANPAGE_TBL=$withval],
3297 AC_MSG_RESULT($MANPAGE_TBL)
3299 dnl ---------------------------------------------------------------------------
3300 dnl CF_MAN_PAGES version: 35 updated: 2007/03/31 11:47:29
3302 dnl Try to determine if the man-pages on the system are compressed, and if
3303 dnl so, what format is used. Use this information to construct a script that
3304 dnl will install man-pages.
3305 AC_DEFUN([CF_MAN_PAGES],
3307 CF_HELP_MESSAGE(Options to Specify How Manpages are Installed:)
3313 if test "$prefix" = "NONE" ; then
3314 cf_prefix="$ac_default_prefix"
3319 case "$MANPAGE_FORMAT" in # (vi
3334 test ! -d man && mkdir man
3338 case "$MANPAGE_FORMAT" in #(vi
3341 cf_compress=compress
3349 cf_edit_man=./edit_man.sh
3350 cf_man_alias=`pwd`/man_alias.sed
3352 cat >$cf_edit_man <<CF_EOF
3354 # this script is generated by the configure-script CF_MAN_PAGES macro.
3359 NCURSES_MAJOR="$NCURSES_MAJOR"
3360 NCURSES_MINOR="$NCURSES_MINOR"
3361 NCURSES_PATCH="$NCURSES_PATCH"
3363 NCURSES_OSPEED="$NCURSES_OSPEED"
3364 TERMINFO="$TERMINFO"
3366 MKDIRS="sh `cd $srcdir && pwd`/mkdirs.sh"
3369 INSTALL_DATA="$INSTALL_DATA"
3371 transform="$program_transform_name"
3373 TMP=\${TMPDIR-/tmp}/man\$\$
3374 trap "rm -f \$TMP" 0 1 2 5 15
3386 top_srcdir=\[$]srcdir/..
3389 if test "\$form" = normal ; then
3390 if test "$cf_format" = yes ; then
3391 if test "$cf_inboth" = no ; then
3392 sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
3396 cf_subdir=\$mandir/man
3397 cf_tables=$MANPAGE_TBL
3399 cf_subdir=\$mandir/cat
3403 # process the list of source-files
3406 *.orig|*.rej) ;; #(vi
3408 section=\`expr "\$i" : '.*\\.\\([[0-9]]\\)[[xm]]*'\`;
3409 if test \$verb = installing ; then
3410 if test ! -d \$cf_subdir\${section} ; then
3411 \$MKDIRS \$cf_subdir\$section
3415 # replace variables in man page
3416 if test ! -f $cf_man_alias ; then
3417 cat >>$cf_man_alias <<-CF_EOF2
3418 s,@DATADIR@,\$datadir,g
3419 s,@TERMINFO@,\$TERMINFO,g
3420 s,@NCURSES_MAJOR@,\$NCURSES_MAJOR,g
3421 s,@NCURSES_MINOR@,\$NCURSES_MINOR,g
3422 s,@NCURSES_PATCH@,\$NCURSES_PATCH,g
3423 s,@NCURSES_OSPEED@,\$NCURSES_OSPEED,g
3428 cf_NAME=`echo "$cf_name" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
3429 cf_name=`echo $cf_name|sed "$program_transform_name"`
3430 cat >>$cf_edit_man <<-CF_EOF
3431 s,@$cf_NAME@,$cf_name,
3435 cat >>$cf_edit_man <<CF_EOF
3437 echo "...made $cf_man_alias"
3441 cf_source=\`basename \$i\`
3443 test ! -f \$inalias && inalias="\$srcdir/\$inalias"
3444 if test ! -f \$inalias ; then
3445 echo .. skipped \$cf_source
3450 if test "$MANPAGE_ALIASES" != no ; then
3451 cat >>$cf_edit_man <<CF_EOF
3452 aliases=\`sed -f \$top_srcdir/man/manlinks.sed \$inalias |sed -f $cf_man_alias | sort -u\`
3456 if test "$MANPAGE_RENAMES" = no ; then
3457 cat >>$cf_edit_man <<CF_EOF
3458 # perform program transformations for section 1 man pages
3459 if test \$section = 1 ; then
3460 cf_target=\$cf_subdir\${section}/\`echo \$cf_source|sed "\${transform}"\`
3462 cf_target=\$cf_subdir\${section}/\$cf_source
3466 cat >>$cf_edit_man <<CF_EOF
3467 cf_target=\`grep "^\$cf_source" $MANPAGE_RENAMES | $AWK '{print \[$]2}'\`
3468 if test -z "\$cf_target" ; then
3469 echo '? missing rename for '\$cf_source
3470 cf_target="\$cf_source"
3472 cf_target="\$cf_subdir\${section}/\${cf_target}"
3477 cat >>$cf_edit_man <<CF_EOF
3478 sed -f $cf_man_alias \\
3481 if test -f $MANPAGE_RENAMES ; then
3482 cat >>$cf_edit_man <<CF_EOF
3483 < \$i | sed -f `pwd`/edit_man.sed >\$TMP
3486 cat >>$cf_edit_man <<CF_EOF
3491 cat >>$cf_edit_man <<CF_EOF
3492 if test \$cf_tables = yes ; then
3493 tbl \$TMP >\$TMP.out
3498 if test $with_curses_h != yes ; then
3499 cat >>$cf_edit_man <<CF_EOF
3500 sed -e "/\#[ ]*include/s,curses.h,ncurses.h," < \$TMP >\$TMP.out
3505 cat >>$cf_edit_man <<CF_EOF
3506 if test \$form = format ; then
3507 nroff -man \$TMP >\$TMP.out
3512 if test -n "$cf_compress" ; then
3513 cat >>$cf_edit_man <<CF_EOF
3514 if test \$verb = installing ; then
3515 if ( $cf_compress -f \$TMP )
3517 mv \$TMP.$cf_so_strip \$TMP
3520 cf_target="\$cf_target.$cf_so_strip"
3524 case "$MANPAGE_FORMAT" in #(vi
3526 cat >>$cf_edit_man <<CF_EOF
3527 if test \$form = format ; then
3528 # BSDI installs only .0 suffixes in the cat directories
3529 cf_target="\`echo \$cf_target|sed -e 's/\.[[1-9]]\+[[a-z]]*/.0/'\`"
3535 cat >>$cf_edit_man <<CF_EOF
3536 suffix=\`basename \$cf_target | sed -e 's%^[[^.]]*%%'\`
3537 if test \$verb = installing ; then
3538 echo \$verb \$cf_target
3539 \$INSTALL_DATA \$TMP \$cf_target
3540 test -d \$cf_subdir\${section} &&
3541 test -n "\$aliases" && (
3542 cd \$cf_subdir\${section} && (
3543 cf_source=\`echo \$cf_target |sed -e 's%^.*/\([[^/]][[^/]]*/[[^/]][[^/]]*$\)%\1%'\`
3544 test -n "$cf_so_strip" && cf_source=\`echo \$cf_source |sed -e 's%\.$cf_so_strip\$%%'\`
3545 cf_target=\`basename \$cf_target\`
3546 for cf_alias in \$aliases
3548 if test \$section = 1 ; then
3549 cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
3552 if test "$MANPAGE_SYMLINKS" = yes ; then
3553 if test -f \$cf_alias\${suffix} ; then
3554 if ( cmp -s \$cf_target \$cf_alias\${suffix} )
3559 echo .. \$verb alias \$cf_alias\${suffix}
3560 rm -f \$cf_alias\${suffix}
3561 $LN_S \$cf_target \$cf_alias\${suffix}
3562 elif test "\$cf_target" != "\$cf_alias\${suffix}" ; then
3563 echo ".so \$cf_source" >\$TMP
3565 if test -n "$cf_compress" ; then
3566 cat >>$cf_edit_man <<CF_EOF
3567 if test -n "$cf_so_strip" ; then
3568 $cf_compress -f \$TMP
3569 mv \$TMP.$cf_so_strip \$TMP
3573 cat >>$cf_edit_man <<CF_EOF
3574 echo .. \$verb alias \$cf_alias\${suffix}
3575 rm -f \$cf_alias\${suffix}
3576 \$INSTALL_DATA \$TMP \$cf_alias\${suffix}
3581 elif test \$verb = removing ; then
3582 test -f \$cf_target && (
3583 echo \$verb \$cf_target
3586 test -d \$cf_subdir\${section} &&
3587 test -n "\$aliases" && (
3588 cd \$cf_subdir\${section} && (
3589 for cf_alias in \$aliases
3591 if test \$section = 1 ; then
3592 cf_alias=\`echo \$cf_alias|sed "\${transform}"\`
3595 echo .. \$verb alias \$cf_alias\${suffix}
3596 rm -f \$cf_alias\${suffix}
3608 if test $cf_inboth = yes ; then
3609 if test \$form != format ; then
3610 sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
3616 chmod 755 $cf_edit_man
3619 dnl ---------------------------------------------------------------------------
3620 dnl CF_MATH_LIB version: 5 updated: 2000/05/28 01:39:10
3622 dnl Checks for libraries. At least one UNIX system, Apple Macintosh
3623 dnl Rhapsody 5.5, does not have -lm. We cannot use the simpler
3624 dnl AC_CHECK_LIB(m,sin), because that fails for C++.
3625 AC_DEFUN([CF_MATH_LIB],
3627 AC_CACHE_CHECK(if -lm needed for math functions,
3633 [double x = rand(); printf("result = %g\n", ]ifelse($2,,sin(x),$2)[)],
3634 [cf_cv_need_libm=no],
3635 [cf_cv_need_libm=yes])])
3636 if test "$cf_cv_need_libm" = yes
3643 dnl ---------------------------------------------------------------------------
3644 dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55
3645 dnl ----------------------
3646 dnl Check if the file-system supports mixed-case filenames. If we're able to
3647 dnl create a lowercase name and see it as uppercase, it doesn't support that.
3648 AC_DEFUN([CF_MIXEDCASE_FILENAMES],
3650 AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
3651 if test "$cross_compiling" = yes ; then
3652 case $target_alias in #(vi
3653 *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi
3661 rm -f conftest CONFTEST
3663 if test -f CONFTEST ; then
3668 rm -f conftest CONFTEST
3671 test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
3673 dnl ---------------------------------------------------------------------------
3674 dnl CF_MKSTEMP version: 5 updated: 2006/12/16 12:33:30
3676 dnl Check for a working mkstemp. This creates two files, checks that they are
3677 dnl successfully created and distinct (AmigaOS apparently fails on the last).
3678 AC_DEFUN([CF_MKSTEMP],[
3679 AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[
3682 #include <sys/types.h>
3686 #include <sys/stat.h>
3689 char *tmpl = "conftestXXXXXX";
3697 for (n = 0; n < 2; ++n) {
3698 strcpy(name[n], tmpl);
3699 if ((fd = mkstemp(name[n])) >= 0) {
3700 if (!strcmp(name[n], tmpl)
3701 || stat(name[n], &sb) != 0
3702 || (sb.st_mode & S_IFMT) != S_IFREG
3703 || (sb.st_mode & 077) != 0) {
3710 && !strcmp(name[0], name[1]))
3712 ${cf_cv_main_return:-return}(result);
3714 ],[cf_cv_func_mkstemp=yes
3715 ],[cf_cv_func_mkstemp=no
3716 ],[AC_CHECK_FUNC(mkstemp)
3719 if test "$cf_cv_func_mkstemp" = yes ; then
3720 AC_DEFINE(HAVE_MKSTEMP)
3723 dnl ---------------------------------------------------------------------------
3724 dnl CF_MSG_LOG version: 4 updated: 2007/07/29 09:55:12
3726 dnl Write a debug message to config.log, along with the line number in the
3727 dnl configure script.
3728 AC_DEFUN([CF_MSG_LOG],[
3729 echo "${as_me-configure}:__oline__: testing $* ..." 1>&AC_FD_CC
3731 dnl ---------------------------------------------------------------------------
3732 dnl CF_NCURSES_ABI_6 version: 1 updated: 2005/09/17 18:42:49
3733 dnl ----------------
3734 dnl Set ncurses' ABI to 6 unless overridden by explicit configure option, and
3735 dnl warn about this.
3736 AC_DEFUN([CF_NCURSES_ABI_6],[
3737 if test "${with_abi_version+set}" != set; then
3738 case $cf_cv_rel_version in
3740 cf_cv_rel_version=6.0
3742 AC_MSG_WARN(Overriding ABI version to $cf_cv_abi_version)
3747 dnl ---------------------------------------------------------------------------
3748 dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05
3749 dnl ------------------
3750 dnl see CF_WITH_NO_LEAKS
3751 AC_DEFUN([CF_NO_LEAKS_OPTION],[
3752 AC_MSG_CHECKING(if you want to use $1 for testing)
3755 [AC_DEFINE($3)ifelse([$4],,[
3758 : ${with_cflags:=-g}
3759 : ${with_no_leaks:=yes}
3762 AC_MSG_RESULT(${with_$1:-no})