1dnl macros used for DIALOG configure script 2dnl $Id: aclocal.m4,v 1.87 2012/02/16 02:11:26 tom Exp $ 3dnl --------------------------------------------------------------------------- 4dnl Copyright 1999-2011,2012 -- Thomas E. Dickey 5dnl 6dnl Permission is hereby granted, free of charge, to any person obtaining a 7dnl copy of this software and associated documentation files (the 8dnl "Software"), to deal in the Software without restriction, including 9dnl without limitation the rights to use, copy, modify, merge, publish, 10dnl distribute, distribute with modifications, sublicense, and/or sell 11dnl copies of the Software, and to permit persons to whom the Software is 12dnl furnished to do so, subject to the following conditions: 13dnl 14dnl The above copyright notice and this permission notice shall be included 15dnl in all copies or portions of the Software. 16dnl 17dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS 18dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 19dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. 20dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, 21dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR 22dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR 23dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. 24dnl 25dnl Except as contained in this notice, the name(s) of the above copyright 26dnl holders shall not be used in advertising or otherwise to promote the 27dnl sale, use or other dealings in this Software without prior written 28dnl authorization. 29dnl 30dnl see 31dnl http://invisible-island.net/autoconf/ 32dnl --------------------------------------------------------------------------- 33dnl --------------------------------------------------------------------------- 34dnl AM_GNU_GETTEXT version: 12 updated: 2010/06/19 07:02:11 35dnl -------------- 36dnl Usage: Just like AM_WITH_NLS, which see. 37AC_DEFUN([AM_GNU_GETTEXT], 38 [AC_REQUIRE([AC_PROG_MAKE_SET])dnl 39 AC_REQUIRE([AC_PROG_CC])dnl 40 AC_REQUIRE([AC_CANONICAL_HOST])dnl 41 AC_REQUIRE([AC_PROG_RANLIB])dnl 42 AC_REQUIRE([AC_ISC_POSIX])dnl 43 AC_REQUIRE([AC_HEADER_STDC])dnl 44 AC_REQUIRE([AC_C_CONST])dnl 45 AC_REQUIRE([AC_C_INLINE])dnl 46 AC_REQUIRE([AC_TYPE_OFF_T])dnl 47 AC_REQUIRE([AC_TYPE_SIZE_T])dnl 48 AC_REQUIRE([AC_FUNC_ALLOCA])dnl 49 AC_REQUIRE([AC_FUNC_MMAP])dnl 50 AC_REQUIRE([jm_GLIBC21])dnl 51 52 AC_CHECK_HEADERS([argz.h limits.h locale.h nl_types.h malloc.h stddef.h \ 53stdlib.h string.h unistd.h sys/param.h]) 54 AC_CHECK_FUNCS([feof_unlocked fgets_unlocked getcwd getegid geteuid \ 55getgid getuid mempcpy munmap putenv setenv setlocale stpcpy strchr strcasecmp \ 56strdup strtoul tsearch __argz_count __argz_stringify __argz_next]) 57 58 AM_ICONV 59 AM_LANGINFO_CODESET 60 AM_LC_MESSAGES 61 AM_WITH_NLS([$1],[$2],[$3],[$4]) 62 63 if test "x$CATOBJEXT" != "x"; then 64 if test "x$ALL_LINGUAS" = "x"; then 65 LINGUAS= 66 else 67 AC_MSG_CHECKING(for catalogs to be installed) 68 NEW_LINGUAS= 69 for presentlang in $ALL_LINGUAS; do 70 useit=no 71 for desiredlang in ${LINGUAS-$ALL_LINGUAS}; do 72 # Use the presentlang catalog if desiredlang is 73 # a. equal to presentlang, or 74 # b. a variant of presentlang (because in this case, 75 # presentlang can be used as a fallback for messages 76 # which are not translated in the desiredlang catalog). 77 case "$desiredlang" in 78 "$presentlang"*) useit=yes;; 79 esac 80 done 81 if test $useit = yes; then 82 NEW_LINGUAS="$NEW_LINGUAS $presentlang" 83 fi 84 done 85 LINGUAS=$NEW_LINGUAS 86 AC_MSG_RESULT($LINGUAS) 87 fi 88 89 dnl Construct list of names of catalog files to be constructed. 90 if test -n "$LINGUAS"; then 91 for lang in $LINGUAS; do CATALOGS="$CATALOGS $lang$CATOBJEXT"; done 92 fi 93 fi 94 95 dnl Enable libtool support if the surrounding package wishes it. 96 INTL_LIBTOOL_SUFFIX_PREFIX=ifelse([$1], use-libtool, [l], []) 97 AC_SUBST(INTL_LIBTOOL_SUFFIX_PREFIX) 98])dnl 99dnl --------------------------------------------------------------------------- 100dnl AM_ICONV version: 12 updated: 2007/07/30 19:12:03 101dnl -------- 102dnl Inserted as requested by gettext 0.10.40 103dnl File from /usr/share/aclocal 104dnl iconv.m4 105dnl ==================== 106dnl serial AM2 107dnl 108dnl From Bruno Haible. 109dnl 110dnl ==================== 111dnl Modified to use CF_FIND_LINKAGE and CF_ADD_SEARCHPATH, to broaden the 112dnl range of locations searched. Retain the same cache-variable naming to 113dnl allow reuse with the other gettext macros -Thomas E Dickey 114AC_DEFUN([AM_ICONV], 115[ 116 dnl Some systems have iconv in libc, some have it in libiconv (OSF/1 and 117 dnl those with the standalone portable GNU libiconv installed). 118 119 AC_ARG_WITH([libiconv-prefix], 120[ --with-libiconv-prefix=DIR 121 search for libiconv in DIR/include and DIR/lib], [ 122 CF_ADD_OPTIONAL_PATH($withval, libiconv) 123 ]) 124 125 AC_CACHE_CHECK(for iconv, am_cv_func_iconv, [ 126 CF_FIND_LINKAGE(CF__ICONV_HEAD, 127 CF__ICONV_BODY, 128 iconv, 129 am_cv_func_iconv=yes, 130 am_cv_func_iconv=["no, consider installing GNU libiconv"])]) 131 132 if test "$am_cv_func_iconv" = yes; then 133 AC_DEFINE(HAVE_ICONV, 1, [Define if you have the iconv() function.]) 134 135 AC_CACHE_CHECK([if the declaration of iconv() needs const.], 136 am_cv_proto_iconv_const,[ 137 AC_TRY_COMPILE(CF__ICONV_HEAD [ 138extern 139#ifdef __cplusplus 140"C" 141#endif 142#if defined(__STDC__) || defined(__cplusplus) 143size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft); 144#else 145size_t iconv(); 146#endif 147],[], am_cv_proto_iconv_const=no, 148 am_cv_proto_iconv_const=yes)]) 149 150 if test "$am_cv_proto_iconv_const" = yes ; then 151 am_cv_proto_iconv_arg1="const" 152 else 153 am_cv_proto_iconv_arg1="" 154 fi 155 156 AC_DEFINE_UNQUOTED(ICONV_CONST, $am_cv_proto_iconv_arg1, 157 [Define as const if the declaration of iconv() needs const.]) 158 fi 159 160 LIBICONV= 161 if test "$cf_cv_find_linkage_iconv" = yes; then 162 CF_ADD_INCDIR($cf_cv_header_path_iconv) 163 if test -n "$cf_cv_library_file_iconv" ; then 164 LIBICONV="-liconv" 165 CF_ADD_LIBDIR($cf_cv_library_path_iconv) 166 fi 167 fi 168 169 AC_SUBST(LIBICONV) 170])dnl 171dnl --------------------------------------------------------------------------- 172dnl AM_LANGINFO_CODESET version: 3 updated: 2002/10/27 23:21:42 173dnl ------------------- 174dnl Inserted as requested by gettext 0.10.40 175dnl File from /usr/share/aclocal 176dnl codeset.m4 177dnl ==================== 178dnl serial AM1 179dnl 180dnl From Bruno Haible. 181AC_DEFUN([AM_LANGINFO_CODESET], 182[ 183 AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, 184 [AC_TRY_LINK([#include <langinfo.h>], 185 [char* cs = nl_langinfo(CODESET);], 186 am_cv_langinfo_codeset=yes, 187 am_cv_langinfo_codeset=no) 188 ]) 189 if test $am_cv_langinfo_codeset = yes; then 190 AC_DEFINE(HAVE_LANGINFO_CODESET, 1, 191 [Define if you have <langinfo.h> and nl_langinfo(CODESET).]) 192 fi 193])dnl 194dnl --------------------------------------------------------------------------- 195dnl AM_LC_MESSAGES version: 4 updated: 2002/10/27 23:21:42 196dnl -------------- 197dnl Inserted as requested by gettext 0.10.40 198dnl File from /usr/share/aclocal 199dnl lcmessage.m4 200dnl ==================== 201dnl Check whether LC_MESSAGES is available in <locale.h>. 202dnl Ulrich Drepper <drepper@cygnus.com>, 1995. 203dnl 204dnl This file can be copied and used freely without restrictions. It can 205dnl be used in projects which are not available under the GNU General Public 206dnl License or the GNU Library General Public License but which still want 207dnl to provide support for the GNU gettext functionality. 208dnl Please note that the actual code of the GNU gettext library is covered 209dnl by the GNU Library General Public License, and the rest of the GNU 210dnl gettext package package is covered by the GNU General Public License. 211dnl They are *not* in the public domain. 212dnl 213dnl serial 2 214dnl 215AC_DEFUN([AM_LC_MESSAGES], 216 [if test $ac_cv_header_locale_h = yes; then 217 AC_CACHE_CHECK([for LC_MESSAGES], am_cv_val_LC_MESSAGES, 218 [AC_TRY_LINK([#include <locale.h>], [return LC_MESSAGES], 219 am_cv_val_LC_MESSAGES=yes, am_cv_val_LC_MESSAGES=no)]) 220 if test $am_cv_val_LC_MESSAGES = yes; then 221 AC_DEFINE(HAVE_LC_MESSAGES, 1, 222 [Define if your <locale.h> file defines LC_MESSAGES.]) 223 fi 224 fi])dnl 225dnl --------------------------------------------------------------------------- 226dnl AM_PATH_PROG_WITH_TEST version: 8 updated: 2009/01/11 20:31:12 227dnl ---------------------- 228dnl Inserted as requested by gettext 0.10.40 229dnl File from /usr/share/aclocal 230dnl progtest.m4 231dnl ==================== 232dnl Search path for a program which passes the given test. 233dnl Ulrich Drepper <drepper@cygnus.com>, 1996. 234dnl 235dnl This file can be copied and used freely without restrictions. It can 236dnl be used in projects which are not available under the GNU General Public 237dnl License or the GNU Library General Public License but which still want 238dnl to provide support for the GNU gettext functionality. 239dnl Please note that the actual code of the GNU gettext library is covered 240dnl by the GNU Library General Public License, and the rest of the GNU 241dnl gettext package package is covered by the GNU General Public License. 242dnl They are *not* in the public domain. 243dnl 244dnl serial 2 245dnl 246dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR, 247dnl TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]]) 248AC_DEFUN([AM_PATH_PROG_WITH_TEST], 249[# Extract the first word of "$2", so it can be a program name with args. 250AC_REQUIRE([CF_PATHSEP]) 251set dummy $2; ac_word=[$]2 252AC_MSG_CHECKING([for $ac_word]) 253AC_CACHE_VAL(ac_cv_path_$1, 254[case "[$]$1" in 255 [[\\/]*|?:[\\/]]*) 256 ac_cv_path_$1="[$]$1" # Let the user override the test with a path. 257 ;; 258 *) 259 IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATH_SEPARATOR}" 260 for ac_dir in ifelse([$5], , $PATH, [$5]); do 261 test -z "$ac_dir" && ac_dir=. 262 if test -f $ac_dir/$ac_word$ac_exeext; then 263 if [$3]; then 264 ac_cv_path_$1="$ac_dir/$ac_word$ac_exeext" 265 break 266 fi 267 fi 268 done 269 IFS="$ac_save_ifs" 270dnl If no 4th arg is given, leave the cache variable unset, 271dnl so AC_PATH_PROGS will keep looking. 272ifelse([$4], , , [ test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4" 273])dnl 274 ;; 275esac])dnl 276$1="$ac_cv_path_$1" 277if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then 278 AC_MSG_RESULT([$]$1) 279else 280 AC_MSG_RESULT(no) 281fi 282AC_SUBST($1)dnl 283])dnl 284dnl --------------------------------------------------------------------------- 285dnl AM_WITH_NLS version: 24 updated: 2010/06/20 09:24:28 286dnl ----------- 287dnl Inserted as requested by gettext 0.10.40 288dnl File from /usr/share/aclocal 289dnl gettext.m4 290dnl ==================== 291dnl Macro to add for using GNU gettext. 292dnl Ulrich Drepper <drepper@cygnus.com>, 1995. 293dnl ==================== 294dnl Modified to use CF_FIND_LINKAGE and CF_ADD_SEARCHPATH, to broaden the 295dnl range of locations searched. Retain the same cache-variable naming to 296dnl allow reuse with the other gettext macros -Thomas E Dickey 297dnl ==================== 298dnl 299dnl This file can be copied and used freely without restrictions. It can 300dnl be used in projects which are not available under the GNU General Public 301dnl License or the GNU Library General Public License but which still want 302dnl to provide support for the GNU gettext functionality. 303dnl Please note that the actual code of the GNU gettext library is covered 304dnl by the GNU Library General Public License, and the rest of the GNU 305dnl gettext package package is covered by the GNU General Public License. 306dnl They are *not* in the public domain. 307dnl 308dnl serial 10 309dnl 310dnl Usage: AM_WITH_NLS([TOOLSYMBOL], [NEEDSYMBOL], [LIBDIR], [ENABLED]). 311dnl If TOOLSYMBOL is specified and is 'use-libtool', then a libtool library 312dnl $(top_builddir)/intl/libintl.la will be created (shared and/or static, 313dnl depending on --{enable,disable}-{shared,static} and on the presence of 314dnl AM-DISABLE-SHARED). Otherwise, a static library 315dnl $(top_builddir)/intl/libintl.a will be created. 316dnl If NEEDSYMBOL is specified and is 'need-ngettext', then GNU gettext 317dnl implementations (in libc or libintl) without the ngettext() function 318dnl will be ignored. 319dnl LIBDIR is used to find the intl libraries. If empty, 320dnl the value `$(top_builddir)/intl/' is used. 321dnl ENABLED is used to control the default for the related --enable-nls, since 322dnl not all application developers want this feature by default, e.g., lynx. 323dnl 324dnl The result of the configuration is one of three cases: 325dnl 1) GNU gettext, as included in the intl subdirectory, will be compiled 326dnl and used. 327dnl Catalog format: GNU --> install in $(datadir) 328dnl Catalog extension: .mo after installation, .gmo in source tree 329dnl 2) GNU gettext has been found in the system's C library. 330dnl Catalog format: GNU --> install in $(datadir) 331dnl Catalog extension: .mo after installation, .gmo in source tree 332dnl 3) No internationalization, always use English msgid. 333dnl Catalog format: none 334dnl Catalog extension: none 335dnl The use of .gmo is historical (it was needed to avoid overwriting the 336dnl GNU format catalogs when building on a platform with an X/Open gettext), 337dnl but we keep it in order not to force irrelevant filename changes on the 338dnl maintainers. 339dnl 340AC_DEFUN([AM_WITH_NLS], 341[AC_MSG_CHECKING([whether NLS is requested]) 342 dnl Default is enabled NLS 343 ifelse([$4],,[ 344 AC_ARG_ENABLE(nls, 345 [ --disable-nls do not use Native Language Support], 346 USE_NLS=$enableval, USE_NLS=yes)],[ 347 AC_ARG_ENABLE(nls, 348 [ --enable-nls use Native Language Support], 349 USE_NLS=$enableval, USE_NLS=no)]) 350 AC_MSG_RESULT($USE_NLS) 351 AC_SUBST(USE_NLS) 352 353 BUILD_INCLUDED_LIBINTL=no 354 USE_INCLUDED_LIBINTL=no 355 INTLLIBS= 356 357 dnl If we use NLS figure out what method 358 if test "$USE_NLS" = "yes"; then 359 AC_DEFINE(ENABLE_NLS, 1, 360 [Define to 1 if translation of program messages to the user's native language 361 is requested.]) 362 AC_MSG_CHECKING([whether included gettext is requested]) 363 AC_ARG_WITH(included-gettext, 364 [ --with-included-gettext use the GNU gettext library included here], 365 nls_cv_force_use_gnu_gettext=$withval, 366 nls_cv_force_use_gnu_gettext=no) 367 AC_MSG_RESULT($nls_cv_force_use_gnu_gettext) 368 369 nls_cv_use_gnu_gettext="$nls_cv_force_use_gnu_gettext" 370 if test "$nls_cv_force_use_gnu_gettext" != "yes"; then 371 dnl User does not insist on using GNU NLS library. Figure out what 372 dnl to use. If GNU gettext is available we use this. Else we have 373 dnl to fall back to GNU NLS library. 374 CATOBJEXT=NONE 375 376 cf_save_LIBS_1="$LIBS" 377 CF_ADD_LIBS($LIBICONV) 378 AC_CACHE_CHECK([for libintl.h and gettext()], cf_cv_func_gettext,[ 379 CF_FIND_LINKAGE(CF__INTL_HEAD, 380 CF__INTL_BODY, 381 intl, 382 cf_cv_func_gettext=yes, 383 cf_cv_func_gettext=no) 384 ]) 385 LIBS="$cf_save_LIBS_1" 386 387 if test "$cf_cv_func_gettext" = yes ; then 388 AC_DEFINE(HAVE_LIBINTL_H) 389 390 dnl If an already present or preinstalled GNU gettext() is found, 391 dnl use it. But if this macro is used in GNU gettext, and GNU 392 dnl gettext is already preinstalled in libintl, we update this 393 dnl libintl. (Cf. the install rule in intl/Makefile.in.) 394 if test "$PACKAGE" != gettext; then 395 AC_DEFINE(HAVE_GETTEXT, 1, 396 [Define if the GNU gettext() function is already present or preinstalled.]) 397 398 CF_ADD_INCDIR($cf_cv_header_path_intl) 399 400 if test -n "$cf_cv_library_file_intl" ; then 401 dnl If iconv() is in a separate libiconv library, then anyone 402 dnl linking with libintl{.a,.so} also needs to link with 403 dnl libiconv. 404 INTLLIBS="$cf_cv_library_file_intl $LIBICONV" 405 CF_ADD_LIBDIR($cf_cv_library_path_intl,INTLLIBS) 406 fi 407 408 gt_save_LIBS="$LIBS" 409 LIBS="$LIBS $INTLLIBS" 410 AC_CHECK_FUNCS(dcgettext) 411 LIBS="$gt_save_LIBS" 412 413 dnl Search for GNU msgfmt in the PATH. 414 AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, 415 [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :) 416 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) 417 418 dnl Search for GNU xgettext in the PATH. 419 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, 420 [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :) 421 422 CATOBJEXT=.gmo 423 fi 424 fi 425 426 if test "$CATOBJEXT" = "NONE"; then 427 dnl GNU gettext is not found in the C library. 428 dnl Fall back on GNU gettext library. 429 nls_cv_use_gnu_gettext=yes 430 fi 431 fi 432 433 if test "$nls_cv_use_gnu_gettext" = "yes"; then 434 if test ! -d $srcdir/intl ; then 435 AC_MSG_ERROR(no NLS library is packaged with this application) 436 fi 437 dnl Mark actions used to generate GNU NLS library. 438 INTLOBJS="\$(GETTOBJS)" 439 AM_PATH_PROG_WITH_TEST(MSGFMT, msgfmt, 440 [$ac_dir/$ac_word --statistics /dev/null >/dev/null 2>&1], :) 441 AC_PATH_PROG(GMSGFMT, gmsgfmt, $MSGFMT) 442 AM_PATH_PROG_WITH_TEST(XGETTEXT, xgettext, 443 [$ac_dir/$ac_word --omit-header /dev/null >/dev/null 2>&1], :) 444 AC_SUBST(MSGFMT) 445 BUILD_INCLUDED_LIBINTL=yes 446 USE_INCLUDED_LIBINTL=yes 447 CATOBJEXT=.gmo 448 INTLLIBS="ifelse([$3],[],\$(top_builddir)/intl,[$3])/libintl.ifelse([$1], use-libtool, [l], [])a $LIBICONV" 449 LIBS=`echo " $LIBS " | sed -e 's/ -lintl / /' -e 's/^ //' -e 's/ $//'` 450 fi 451 452 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. 453 dnl Test whether we really found GNU msgfmt. 454 if test "$GMSGFMT" != ":"; then 455 dnl If it is no GNU msgfmt we define it as : so that the 456 dnl Makefiles still can work. 457 if $GMSGFMT --statistics /dev/null >/dev/null 2>&1; then 458 : ; 459 else 460 AC_MSG_RESULT( 461 [found msgfmt program is not GNU msgfmt; ignore it]) 462 GMSGFMT=":" 463 fi 464 fi 465 466 dnl This could go away some day; the PATH_PROG_WITH_TEST already does it. 467 dnl Test whether we really found GNU xgettext. 468 if test "$XGETTEXT" != ":"; then 469 dnl If it is no GNU xgettext we define it as : so that the 470 dnl Makefiles still can work. 471 if $XGETTEXT --omit-header /dev/null >/dev/null 2>&1; then 472 : ; 473 else 474 AC_MSG_RESULT( 475 [found xgettext program is not GNU xgettext; ignore it]) 476 XGETTEXT=":" 477 fi 478 fi 479 480 dnl We need to process the po/ directory. 481 POSUB=po 482 fi 483 484 AC_OUTPUT_COMMANDS( 485 [for ac_file in $CONFIG_FILES; do 486 487 # Support "outfile[:infile[:infile...]]" 488 case "$ac_file" in 489 *:*) ac_file=`echo "$ac_file"|sed 's%:.*%%'` ;; 490 esac 491 492 # PO directories have a Makefile.in generated from Makefile.inn. 493 case "$ac_file" in */[Mm]akefile.in) 494 # Adjust a relative srcdir. 495 ac_dir=`echo "$ac_file"|sed 's%/[^/][^/]*$%%'` 496 ac_dir_suffix="/`echo "$ac_dir"|sed 's%^\./%%'`" 497 ac_dots=`echo "$ac_dir_suffix"|sed 's%/[^/]*%../%g'` 498 ac_base=`basename $ac_file .in` 499 # In autoconf-2.13 it is called $ac_given_srcdir. 500 # In autoconf-2.50 it is called $srcdir. 501 test -n "$ac_given_srcdir" || ac_given_srcdir="$srcdir" 502 503 case "$ac_given_srcdir" in 504 .) top_srcdir=`echo $ac_dots|sed 's%/$%%'` ;; 505 /*) top_srcdir="$ac_given_srcdir" ;; 506 *) top_srcdir="$ac_dots$ac_given_srcdir" ;; 507 esac 508 509 if test -f "$ac_given_srcdir/$ac_dir/POTFILES.in"; then 510 rm -f "$ac_dir/POTFILES" 511 test -n "$as_me" && echo "$as_me: creating $ac_dir/POTFILES" || echo "creating $ac_dir/POTFILES" 512 sed -e "/^#/d" -e "/^[ ]*\$/d" -e "s,.*, $top_srcdir/& \\\\," -e "\$s/\(.*\) \\\\/\1/" < "$ac_given_srcdir/$ac_dir/POTFILES.in" > "$ac_dir/POTFILES" 513 test -n "$as_me" && echo "$as_me: creating $ac_dir/$ac_base" || echo "creating $ac_dir/$ac_base" 514 sed -e "/POTFILES =/r $ac_dir/POTFILES" "$ac_dir/$ac_base.in" > "$ac_dir/$ac_base" 515 fi 516 ;; 517 esac 518 done]) 519 520 dnl If this is used in GNU gettext we have to set BUILD_INCLUDED_LIBINTL 521 dnl to 'yes' because some of the testsuite requires it. 522 if test "$PACKAGE" = gettext; then 523 BUILD_INCLUDED_LIBINTL=yes 524 fi 525 526 dnl intl/plural.c is generated from intl/plural.y. It requires bison, 527 dnl because plural.y uses bison specific features. It requires at least 528 dnl bison-1.26 because earlier versions generate a plural.c that doesn't 529 dnl compile. 530 dnl bison is only needed for the maintainer (who touches plural.y). But in 531 dnl order to avoid separate Makefiles or --enable-maintainer-mode, we put 532 dnl the rule in general Makefile. Now, some people carelessly touch the 533 dnl files or have a broken "make" program, hence the plural.c rule will 534 dnl sometimes fire. To avoid an error, defines BISON to ":" if it is not 535 dnl present or too old. 536 if test "$nls_cv_use_gnu_gettext" = "yes"; then 537 AC_CHECK_PROGS([INTLBISON], [bison]) 538 if test -z "$INTLBISON"; then 539 ac_verc_fail=yes 540 else 541 dnl Found it, now check the version. 542 AC_MSG_CHECKING([version of bison]) 543changequote(<<,>>)dnl 544 ac_prog_version=`$INTLBISON --version 2>&1 | sed -n 's/^.*GNU Bison.* \([0-9]*\.[0-9.]*\).*$/\1/p'` 545 case $ac_prog_version in 546 '') ac_prog_version="v. ?.??, bad"; ac_verc_fail=yes;; 547 1.2[6-9]* | 1.[3-9][0-9]* | [2-9].*) 548changequote([,])dnl 549 ac_prog_version="$ac_prog_version, ok"; ac_verc_fail=no;; 550 *) ac_prog_version="$ac_prog_version, bad"; ac_verc_fail=yes;; 551 esac 552 AC_MSG_RESULT([$ac_prog_version]) 553 fi 554 if test $ac_verc_fail = yes; then 555 INTLBISON=: 556 fi 557 fi 558 559 dnl These rules are solely for the distribution goal. While doing this 560 dnl we only have to keep exactly one list of the available catalogs 561 dnl in configure.in. 562 for lang in $ALL_LINGUAS; do 563 GMOFILES="$GMOFILES $lang.gmo" 564 POFILES="$POFILES $lang.po" 565 done 566 567 dnl Make all variables we use known to autoconf. 568 AC_SUBST(BUILD_INCLUDED_LIBINTL) 569 AC_SUBST(USE_INCLUDED_LIBINTL) 570 AC_SUBST(CATALOGS) 571 AC_SUBST(CATOBJEXT) 572 AC_SUBST(GMOFILES) 573 AC_SUBST(INTLLIBS) 574 AC_SUBST(INTLOBJS) 575 AC_SUBST(POFILES) 576 AC_SUBST(POSUB) 577 578 dnl For backward compatibility. Some configure.ins may be using this. 579 nls_cv_header_intl= 580 nls_cv_header_libgt= 581 582 dnl For backward compatibility. Some Makefiles may be using this. 583 DATADIRNAME=share 584 AC_SUBST(DATADIRNAME) 585 586 dnl For backward compatibility. Some Makefiles may be using this. 587 INSTOBJEXT=.mo 588 AC_SUBST(INSTOBJEXT) 589 590 dnl For backward compatibility. Some Makefiles may be using this. 591 GENCAT=gencat 592 AC_SUBST(GENCAT) 593])dnl 594dnl --------------------------------------------------------------------------- 595dnl CF_ACVERSION_CHECK version: 2 updated: 2011/05/08 11:22:03 596dnl ------------------ 597dnl Conditionally generate script according to whether we're using a given autoconf. 598dnl 599dnl $1 = version to compare against 600dnl $2 = code to use if AC_ACVERSION is at least as high as $1. 601dnl $3 = code to use if AC_ACVERSION is older than $1. 602define(CF_ACVERSION_CHECK, 603[ 604ifdef([m4_version_compare], 605[m4_if(m4_version_compare(m4_defn([AC_ACVERSION]), [$1]), -1, [$3], [$2])], 606[CF_ACVERSION_COMPARE( 607AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), 608AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), AC_ACVERSION, [$2], [$3])])])dnl 609dnl --------------------------------------------------------------------------- 610dnl CF_ACVERSION_COMPARE version: 2 updated: 2011/04/14 20:56:50 611dnl -------------------- 612dnl CF_ACVERSION_COMPARE(MAJOR1, MINOR1, TERNARY1, 613dnl MAJOR2, MINOR2, TERNARY2, 614dnl PRINTABLE2, not FOUND, FOUND) 615define(CF_ACVERSION_COMPARE, 616[ifelse(builtin([eval], [$2 < $5]), 1, 617[ifelse([$8], , ,[$8])], 618[ifelse([$9], , ,[$9])])])dnl 619dnl --------------------------------------------------------------------------- 620dnl CF_AC_PREREQ version: 2 updated: 1997/09/06 13:24:56 621dnl ------------ 622dnl Conditionally generate script according to whether we're using the release 623dnl version of autoconf, or a patched version (using the ternary component as 624dnl the patch-version). 625define(CF_AC_PREREQ, 626[CF_PREREQ_COMPARE( 627AC_PREREQ_CANON(AC_PREREQ_SPLIT(AC_ACVERSION)), 628AC_PREREQ_CANON(AC_PREREQ_SPLIT([$1])), [$1], [$2], [$3])])dnl 629dnl --------------------------------------------------------------------------- 630dnl CF_ADD_CFLAGS version: 10 updated: 2010/05/26 05:38:42 631dnl ------------- 632dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS 633dnl The second parameter if given makes this macro verbose. 634dnl 635dnl Put any preprocessor definitions that use quoted strings in $EXTRA_CPPFLAGS, 636dnl to simplify use of $CPPFLAGS in compiler checks, etc., that are easily 637dnl confused by the quotes (which require backslashes to keep them usable). 638AC_DEFUN([CF_ADD_CFLAGS], 639[ 640cf_fix_cppflags=no 641cf_new_cflags= 642cf_new_cppflags= 643cf_new_extra_cppflags= 644 645for cf_add_cflags in $1 646do 647case $cf_fix_cppflags in 648no) 649 case $cf_add_cflags in #(vi 650 -undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi 651 case $cf_add_cflags in 652 -D*) 653 cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^-D[[^=]]*='\''\"[[^"]]*//'` 654 655 test "${cf_add_cflags}" != "${cf_tst_cflags}" \ 656 && test -z "${cf_tst_cflags}" \ 657 && cf_fix_cppflags=yes 658 659 if test $cf_fix_cppflags = yes ; then 660 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" 661 continue 662 elif test "${cf_tst_cflags}" = "\"'" ; then 663 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" 664 continue 665 fi 666 ;; 667 esac 668 case "$CPPFLAGS" in 669 *$cf_add_cflags) #(vi 670 ;; 671 *) #(vi 672 case $cf_add_cflags in #(vi 673 -D*) 674 cf_tst_cppflags=`echo "x$cf_add_cflags" | sed -e 's/^...//' -e 's/=.*//'` 675 CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags) 676 ;; 677 esac 678 cf_new_cppflags="$cf_new_cppflags $cf_add_cflags" 679 ;; 680 esac 681 ;; 682 *) 683 cf_new_cflags="$cf_new_cflags $cf_add_cflags" 684 ;; 685 esac 686 ;; 687yes) 688 cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags" 689 690 cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'` 691 692 test "${cf_add_cflags}" != "${cf_tst_cflags}" \ 693 && test -z "${cf_tst_cflags}" \ 694 && cf_fix_cppflags=no 695 ;; 696esac 697done 698 699if test -n "$cf_new_cflags" ; then 700 ifelse([$2],,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)]) 701 CFLAGS="$CFLAGS $cf_new_cflags" 702fi 703 704if test -n "$cf_new_cppflags" ; then 705 ifelse([$2],,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)]) 706 CPPFLAGS="$CPPFLAGS $cf_new_cppflags" 707fi 708 709if test -n "$cf_new_extra_cppflags" ; then 710 ifelse([$2],,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)]) 711 EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS" 712fi 713 714AC_SUBST(EXTRA_CPPFLAGS) 715 716])dnl 717dnl --------------------------------------------------------------------------- 718dnl CF_ADD_INCDIR version: 13 updated: 2010/05/26 16:44:57 719dnl ------------- 720dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's 721dnl redundant. We don't normally need to add -I/usr/local/include for gcc, 722dnl but old versions (and some misinstalled ones) need that. To make things 723dnl worse, gcc 3.x may give error messages if -I/usr/local/include is added to 724dnl the include-path). 725AC_DEFUN([CF_ADD_INCDIR], 726[ 727if test -n "$1" ; then 728 for cf_add_incdir in $1 729 do 730 while test $cf_add_incdir != /usr/include 731 do 732 if test -d $cf_add_incdir 733 then 734 cf_have_incdir=no 735 if test -n "$CFLAGS$CPPFLAGS" ; then 736 # a loop is needed to ensure we can add subdirs of existing dirs 737 for cf_test_incdir in $CFLAGS $CPPFLAGS ; do 738 if test ".$cf_test_incdir" = ".-I$cf_add_incdir" ; then 739 cf_have_incdir=yes; break 740 fi 741 done 742 fi 743 744 if test "$cf_have_incdir" = no ; then 745 if test "$cf_add_incdir" = /usr/local/include ; then 746 if test "$GCC" = yes 747 then 748 cf_save_CPPFLAGS=$CPPFLAGS 749 CPPFLAGS="$CPPFLAGS -I$cf_add_incdir" 750 AC_TRY_COMPILE([#include <stdio.h>], 751 [printf("Hello")], 752 [], 753 [cf_have_incdir=yes]) 754 CPPFLAGS=$cf_save_CPPFLAGS 755 fi 756 fi 757 fi 758 759 if test "$cf_have_incdir" = no ; then 760 CF_VERBOSE(adding $cf_add_incdir to include-path) 761 ifelse([$2],,CPPFLAGS,[$2])="$ifelse([$2],,CPPFLAGS,[$2]) -I$cf_add_incdir" 762 763 cf_top_incdir=`echo $cf_add_incdir | sed -e 's%/include/.*$%/include%'` 764 test "$cf_top_incdir" = "$cf_add_incdir" && break 765 cf_add_incdir="$cf_top_incdir" 766 else 767 break 768 fi 769 fi 770 done 771 done 772fi 773])dnl 774dnl --------------------------------------------------------------------------- 775dnl CF_ADD_LIB version: 2 updated: 2010/06/02 05:03:05 776dnl ---------- 777dnl Add a library, used to enforce consistency. 778dnl 779dnl $1 = library to add, without the "-l" 780dnl $2 = variable to update (default $LIBS) 781AC_DEFUN([CF_ADD_LIB],[CF_ADD_LIBS(-l$1,ifelse($2,,LIBS,[$2]))])dnl 782dnl --------------------------------------------------------------------------- 783dnl CF_ADD_LIBDIR version: 9 updated: 2010/05/26 16:44:57 784dnl ------------- 785dnl Adds to the library-path 786dnl 787dnl Some machines have trouble with multiple -L options. 788dnl 789dnl $1 is the (list of) directory(s) to add 790dnl $2 is the optional name of the variable to update (default LDFLAGS) 791dnl 792AC_DEFUN([CF_ADD_LIBDIR], 793[ 794if test -n "$1" ; then 795 for cf_add_libdir in $1 796 do 797 if test $cf_add_libdir = /usr/lib ; then 798 : 799 elif test -d $cf_add_libdir 800 then 801 cf_have_libdir=no 802 if test -n "$LDFLAGS$LIBS" ; then 803 # a loop is needed to ensure we can add subdirs of existing dirs 804 for cf_test_libdir in $LDFLAGS $LIBS ; do 805 if test ".$cf_test_libdir" = ".-L$cf_add_libdir" ; then 806 cf_have_libdir=yes; break 807 fi 808 done 809 fi 810 if test "$cf_have_libdir" = no ; then 811 CF_VERBOSE(adding $cf_add_libdir to library-path) 812 ifelse([$2],,LDFLAGS,[$2])="-L$cf_add_libdir $ifelse([$2],,LDFLAGS,[$2])" 813 fi 814 fi 815 done 816fi 817])dnl 818dnl --------------------------------------------------------------------------- 819dnl CF_ADD_LIBS version: 1 updated: 2010/06/02 05:03:05 820dnl ----------- 821dnl Add one or more libraries, used to enforce consistency. 822dnl 823dnl $1 = libraries to add, with the "-l", etc. 824dnl $2 = variable to update (default $LIBS) 825AC_DEFUN([CF_ADD_LIBS],[ifelse($2,,LIBS,[$2])="$1 [$]ifelse($2,,LIBS,[$2])"])dnl 826dnl --------------------------------------------------------------------------- 827dnl CF_ADD_OPTIONAL_PATH version: 1 updated: 2007/07/29 12:33:33 828dnl -------------------- 829dnl Add an optional search-path to the compile/link variables. 830dnl See CF_WITH_PATH 831dnl 832dnl $1 = shell variable containing the result of --with-XXX=[DIR] 833dnl $2 = module to look for. 834AC_DEFUN([CF_ADD_OPTIONAL_PATH],[ 835 case "$1" in #(vi 836 no) #(vi 837 ;; 838 yes) #(vi 839 ;; 840 *) 841 CF_ADD_SEARCHPATH([$1], [AC_MSG_ERROR(cannot find $2 under $1)]) 842 ;; 843 esac 844])dnl 845dnl --------------------------------------------------------------------------- 846dnl CF_ADD_SEARCHPATH version: 5 updated: 2009/01/11 20:40:21 847dnl ----------------- 848dnl Set $CPPFLAGS and $LDFLAGS with the directories given via the parameter. 849dnl They can be either the common root of include- and lib-directories, or the 850dnl lib-directory (to allow for things like lib64 directories). 851dnl See also CF_FIND_LINKAGE. 852dnl 853dnl $1 is the list of colon-separated directory names to search. 854dnl $2 is the action to take if a parameter does not yield a directory. 855AC_DEFUN([CF_ADD_SEARCHPATH], 856[ 857AC_REQUIRE([CF_PATHSEP]) 858for cf_searchpath in `echo "$1" | tr $PATH_SEPARATOR ' '`; do 859 if test -d $cf_searchpath/include; then 860 CF_ADD_INCDIR($cf_searchpath/include) 861 elif test -d $cf_searchpath/../include ; then 862 CF_ADD_INCDIR($cf_searchpath/../include) 863 ifelse([$2],,,[else 864$2]) 865 fi 866 if test -d $cf_searchpath/lib; then 867 CF_ADD_LIBDIR($cf_searchpath/lib) 868 elif test -d $cf_searchpath ; then 869 CF_ADD_LIBDIR($cf_searchpath) 870 ifelse([$2],,,[else 871$2]) 872 fi 873done 874]) 875dnl --------------------------------------------------------------------------- 876dnl CF_ADD_SUBDIR_PATH version: 3 updated: 2010/07/03 20:58:12 877dnl ------------------ 878dnl Append to a search-list for a nonstandard header/lib-file 879dnl $1 = the variable to return as result 880dnl $2 = the package name 881dnl $3 = the subdirectory, e.g., bin, include or lib 882dnl $4 = the directory under which we will test for subdirectories 883dnl $5 = a directory that we do not want $4 to match 884AC_DEFUN([CF_ADD_SUBDIR_PATH], 885[ 886test "$4" != "$5" && \ 887test -d "$4" && \ 888ifelse([$5],NONE,,[(test $5 = NONE || test "$4" != "$5") &&]) { 889 test -n "$verbose" && echo " ... testing for $3-directories under $4" 890 test -d $4/$3 && $1="[$]$1 $4/$3" 891 test -d $4/$3/$2 && $1="[$]$1 $4/$3/$2" 892 test -d $4/$3/$2/$3 && $1="[$]$1 $4/$3/$2/$3" 893 test -d $4/$2/$3 && $1="[$]$1 $4/$2/$3" 894 test -d $4/$2/$3/$2 && $1="[$]$1 $4/$2/$3/$2" 895} 896])dnl 897dnl --------------------------------------------------------------------------- 898dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31 899dnl -------------- 900dnl Allow user to disable a normally-on option. 901AC_DEFUN([CF_ARG_DISABLE], 902[CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl 903dnl --------------------------------------------------------------------------- 904dnl CF_ARG_ENABLE version: 3 updated: 1999/03/30 17:24:31 905dnl ------------- 906dnl Allow user to enable a normally-off option. 907AC_DEFUN([CF_ARG_ENABLE], 908[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl 909dnl --------------------------------------------------------------------------- 910dnl CF_ARG_MSG_ENABLE version: 2 updated: 2000/07/29 19:32:03 911dnl ----------------- 912dnl Verbose form of AC_ARG_ENABLE: 913dnl 914dnl Parameters: 915dnl $1 = message 916dnl $2 = option name 917dnl $3 = help-string 918dnl $4 = action to perform if option is enabled 919dnl $5 = action if perform if option is disabled 920dnl $6 = default option value (either 'yes' or 'no') 921AC_DEFUN([CF_ARG_MSG_ENABLE],[ 922AC_MSG_CHECKING($1) 923AC_ARG_ENABLE($2,[$3],,enableval=ifelse($6,,no,$6)) 924AC_MSG_RESULT($enableval) 925if test "$enableval" != no ; then 926ifelse($4,,[ :],$4) 927else 928ifelse($5,,[ :],$5) 929fi 930])dnl 931dnl --------------------------------------------------------------------------- 932dnl CF_ARG_OPTION version: 4 updated: 2010/05/26 05:38:42 933dnl ------------- 934dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus 935dnl values. 936dnl 937dnl Parameters: 938dnl $1 = option name 939dnl $2 = help-string 940dnl $3 = action to perform if option is not default 941dnl $4 = action if perform if option is default 942dnl $5 = default option value (either 'yes' or 'no') 943AC_DEFUN([CF_ARG_OPTION], 944[AC_ARG_ENABLE([$1],[$2],[test "$enableval" != ifelse([$5],no,yes,no) && enableval=ifelse([$5],no,no,yes) 945 if test "$enableval" != "$5" ; then 946ifelse([$3],,[ :]dnl 947,[ $3]) ifelse([$4],,,[ 948 else 949 $4]) 950 fi],[enableval=$5 ifelse([$4],,,[ 951 $4 952])dnl 953 ])])dnl 954dnl --------------------------------------------------------------------------- 955dnl CF_BUNDLED_INTL version: 16 updated: 2010/10/23 15:55:05 956dnl --------------- 957dnl Top-level macro for configuring an application with a bundled copy of 958dnl the intl and po directories for gettext. 959dnl 960dnl $1 specifies either Makefile or makefile, defaulting to the former. 961dnl $2 if nonempty sets the option to --enable-nls rather than to --disable-nls 962dnl 963dnl Sets variables which can be used to substitute in makefiles: 964dnl GT_YES - "#" comment unless building intl library, otherwise empty 965dnl GT_NO - "#" comment if building intl library, otherwise empty 966dnl INTLDIR_MAKE - to make ./intl directory 967dnl MSG_DIR_MAKE - to make ./po directory 968dnl SUB_MAKEFILE - list of makefiles in ./intl, ./po directories 969dnl 970dnl Defines: 971dnl HAVE_LIBGETTEXT_H if we're using ./intl 972dnl NLS_TEXTDOMAIN 973dnl 974dnl Environment: 975dnl ALL_LINGUAS if set, lists the root names of the ".po" files. 976dnl CONFIG_H assumed to be "config.h" 977dnl PACKAGE must be set, used as default for textdomain 978dnl VERSION may be set, otherwise extract from "VERSION" file. 979dnl 980AC_DEFUN([CF_BUNDLED_INTL],[ 981cf_makefile=ifelse($1,,Makefile,$1) 982 983dnl Set of available languages (based on source distribution). Note that 984dnl setting $LINGUAS overrides $ALL_LINGUAS. Some environments set $LINGUAS 985dnl rather than $LC_ALL 986test -z "$ALL_LINGUAS" && ALL_LINGUAS=`test -d $srcdir/po && cd $srcdir/po && echo *.po|sed -e 's/\.po//g' -e 's/*//'` 987 988# Allow override of "config.h" definition: 989: ${CONFIG_H:=config.h} 990AC_SUBST(CONFIG_H) 991 992if test -z "$PACKAGE" ; then 993 AC_MSG_ERROR([[CF_BUNDLED_INTL] used without setting [PACKAGE] variable]) 994fi 995 996if test -z "$VERSION" ; then 997if test -f $srcdir/VERSION ; then 998 VERSION=`sed -e '2,$d' $srcdir/VERSION|cut -f1` 999else 1000 VERSION=unknown 1001fi 1002fi 1003AC_SUBST(VERSION) 1004 1005AM_GNU_GETTEXT(,,,[$2]) 1006 1007if test "$USE_NLS" = yes ; then 1008 AC_ARG_WITH(textdomain, 1009 [ --with-textdomain=PKG NLS text-domain (default is package name)], 1010 [NLS_TEXTDOMAIN=$withval], 1011 [NLS_TEXTDOMAIN=$PACKAGE]) 1012 AC_DEFINE_UNQUOTED(NLS_TEXTDOMAIN,"$NLS_TEXTDOMAIN") 1013 AC_SUBST(NLS_TEXTDOMAIN) 1014fi 1015 1016INTLDIR_MAKE= 1017MSG_DIR_MAKE= 1018SUB_MAKEFILE= 1019 1020dnl this updates SUB_MAKEFILE and MSG_DIR_MAKE: 1021CF_OUR_MESSAGES($1) 1022 1023if test "$USE_INCLUDED_LIBINTL" = yes ; then 1024 if test "$nls_cv_force_use_gnu_gettext" = yes ; then 1025 : 1026 elif test "$nls_cv_use_gnu_gettext" = yes ; then 1027 : 1028 else 1029 INTLDIR_MAKE="#" 1030 fi 1031 if test -z "$INTLDIR_MAKE"; then 1032 AC_DEFINE(HAVE_LIBGETTEXT_H) 1033 for cf_makefile in \ 1034 $srcdir/intl/Makefile.in \ 1035 $srcdir/intl/makefile.in 1036 do 1037 if test -f "$cf_makefile" ; then 1038 SUB_MAKEFILE="$SUB_MAKEFILE `echo \"${cf_makefile}\"|sed -e 's,^'$srcdir/',,' -e 's/\.in$//'`:${cf_makefile}" 1039 break 1040 fi 1041 done 1042 fi 1043else 1044 INTLDIR_MAKE="#" 1045 if test "$USE_NLS" = yes ; then 1046 AC_CHECK_HEADERS(libintl.h) 1047 fi 1048fi 1049 1050if test -z "$INTLDIR_MAKE" ; then 1051 CPPFLAGS="$CPPFLAGS -I../intl" 1052fi 1053 1054dnl FIXME: we use this in lynx (the alternative is a spurious dependency upon 1055dnl GNU make) 1056if test "$BUILD_INCLUDED_LIBINTL" = yes ; then 1057 GT_YES="#" 1058 GT_NO= 1059else 1060 GT_YES= 1061 GT_NO="#" 1062fi 1063 1064AC_SUBST(INTLDIR_MAKE) 1065AC_SUBST(MSG_DIR_MAKE) 1066AC_SUBST(GT_YES) 1067AC_SUBST(GT_NO) 1068 1069dnl FIXME: the underlying AM_GNU_GETTEXT macro either needs some fixes or a 1070dnl little documentation. It doesn't define anything so that we can ifdef our 1071dnl own code, except ENABLE_NLS, which is too vague to be of any use. 1072 1073if test "$USE_INCLUDED_LIBINTL" = yes ; then 1074 if test "$nls_cv_force_use_gnu_gettext" = yes ; then 1075 AC_DEFINE(HAVE_GETTEXT) 1076 elif test "$nls_cv_use_gnu_gettext" = yes ; then 1077 AC_DEFINE(HAVE_GETTEXT) 1078 fi 1079 if test -n "$nls_cv_header_intl" ; then 1080 AC_DEFINE(HAVE_LIBINTL_H) 1081 fi 1082fi 1083])dnl 1084dnl --------------------------------------------------------------------------- 1085dnl CF_CHECK_CACHE version: 11 updated: 2008/03/23 14:45:59 1086dnl -------------- 1087dnl Check if we're accidentally using a cache from a different machine. 1088dnl Derive the system name, as a check for reusing the autoconf cache. 1089dnl 1090dnl If we've packaged config.guess and config.sub, run that (since it does a 1091dnl better job than uname). Normally we'll use AC_CANONICAL_HOST, but allow 1092dnl an extra parameter that we may override, e.g., for AC_CANONICAL_SYSTEM 1093dnl which is useful in cross-compiles. 1094dnl 1095dnl Note: we would use $ac_config_sub, but that is one of the places where 1096dnl autoconf 2.5x broke compatibility with autoconf 2.13 1097AC_DEFUN([CF_CHECK_CACHE], 1098[ 1099if test -f $srcdir/config.guess || test -f $ac_aux_dir/config.guess ; then 1100 ifelse([$1],,[AC_CANONICAL_HOST],[$1]) 1101 system_name="$host_os" 1102else 1103 system_name="`(uname -s -r) 2>/dev/null`" 1104 if test -z "$system_name" ; then 1105 system_name="`(hostname) 2>/dev/null`" 1106 fi 1107fi 1108test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name") 1109AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"]) 1110 1111test -z "$system_name" && system_name="$cf_cv_system_name" 1112test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name) 1113 1114if test ".$system_name" != ".$cf_cv_system_name" ; then 1115 AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name)) 1116 AC_MSG_ERROR("Please remove config.cache and try again.") 1117fi 1118])dnl 1119dnl --------------------------------------------------------------------------- 1120dnl CF_CURSES_CHTYPE version: 7 updated: 2010/10/23 15:54:49 1121dnl ---------------- 1122dnl Test if curses defines 'chtype' (usually a 'long' type for SysV curses). 1123AC_DEFUN([CF_CURSES_CHTYPE], 1124[ 1125AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 1126AC_CACHE_CHECK(for chtype typedef,cf_cv_chtype_decl,[ 1127 AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>], 1128 [chtype foo], 1129 [cf_cv_chtype_decl=yes], 1130 [cf_cv_chtype_decl=no])]) 1131if test $cf_cv_chtype_decl = yes ; then 1132 AC_DEFINE(HAVE_TYPE_CHTYPE) 1133 AC_CACHE_CHECK(if chtype is scalar or struct,cf_cv_chtype_type,[ 1134 AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>], 1135 [chtype foo; long x = foo], 1136 [cf_cv_chtype_type=scalar], 1137 [cf_cv_chtype_type=struct])]) 1138 if test $cf_cv_chtype_type = scalar ; then 1139 AC_DEFINE(TYPE_CHTYPE_IS_SCALAR) 1140 fi 1141fi 1142])dnl 1143dnl --------------------------------------------------------------------------- 1144dnl CF_CURSES_CONFIG version: 2 updated: 2006/10/29 11:06:27 1145dnl ---------------- 1146dnl Tie together the configure-script macros for curses. It may be ncurses, 1147dnl but unless asked, we do not make a special search for ncurses. However, 1148dnl still check for the ncurses version number, for use in other macros. 1149AC_DEFUN([CF_CURSES_CONFIG], 1150[ 1151CF_CURSES_CPPFLAGS 1152CF_NCURSES_VERSION 1153CF_CURSES_LIBS 1154])dnl 1155dnl --------------------------------------------------------------------------- 1156dnl CF_CURSES_CPPFLAGS version: 11 updated: 2011/04/09 14:51:08 1157dnl ------------------ 1158dnl Look for the curses headers. 1159AC_DEFUN([CF_CURSES_CPPFLAGS],[ 1160 1161AC_CACHE_CHECK(for extra include directories,cf_cv_curses_incdir,[ 1162cf_cv_curses_incdir=no 1163case $host_os in #(vi 1164hpux10.*) #(vi 1165 if test "x$cf_cv_screen" = "xcurses_colr" 1166 then 1167 test -d /usr/include/curses_colr && \ 1168 cf_cv_curses_incdir="-I/usr/include/curses_colr" 1169 fi 1170 ;; 1171sunos3*|sunos4*) 1172 if test "x$cf_cv_screen" = "xcurses_5lib" 1173 then 1174 test -d /usr/5lib && \ 1175 test -d /usr/5include && \ 1176 cf_cv_curses_incdir="-I/usr/5include" 1177 fi 1178 ;; 1179esac 1180]) 1181test "$cf_cv_curses_incdir" != no && CPPFLAGS="$CPPFLAGS $cf_cv_curses_incdir" 1182 1183CF_CURSES_HEADER 1184CF_TERM_HEADER 1185])dnl 1186dnl --------------------------------------------------------------------------- 1187dnl CF_CURSES_FUNCS version: 17 updated: 2011/05/14 16:07:29 1188dnl --------------- 1189dnl Curses-functions are a little complicated, since a lot of them are macros. 1190AC_DEFUN([CF_CURSES_FUNCS], 1191[ 1192AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 1193AC_REQUIRE([CF_XOPEN_CURSES]) 1194AC_REQUIRE([CF_CURSES_TERM_H]) 1195AC_REQUIRE([CF_CURSES_UNCTRL_H]) 1196for cf_func in $1 1197do 1198 CF_UPPER(cf_tr_func,$cf_func) 1199 AC_MSG_CHECKING(for ${cf_func}) 1200 CF_MSG_LOG(${cf_func}) 1201 AC_CACHE_VAL(cf_cv_func_$cf_func,[ 1202 eval cf_result='$ac_cv_func_'$cf_func 1203 if test ".$cf_result" != ".no"; then 1204 AC_TRY_LINK(CF__CURSES_HEAD, 1205 [ 1206#ifndef ${cf_func} 1207long foo = (long)(&${cf_func}); 1208if (foo + 1234 > 5678) 1209 ${cf_cv_main_return:-return}(foo); 1210#endif 1211 ], 1212 [cf_result=yes], 1213 [cf_result=no]) 1214 fi 1215 eval 'cf_cv_func_'$cf_func'=$cf_result' 1216 ]) 1217 # use the computed/retrieved cache-value: 1218 eval 'cf_result=$cf_cv_func_'$cf_func 1219 AC_MSG_RESULT($cf_result) 1220 if test $cf_result != no; then 1221 AC_DEFINE_UNQUOTED(HAVE_${cf_tr_func}) 1222 fi 1223done 1224])dnl 1225dnl --------------------------------------------------------------------------- 1226dnl CF_CURSES_HEADER version: 3 updated: 2011/05/01 19:47:45 1227dnl ---------------- 1228dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common 1229dnl variations of ncurses' installs. 1230dnl 1231dnl $1 = ncurses when looking for ncurses, or is empty 1232AC_DEFUN([CF_CURSES_HEADER],[ 1233AC_CACHE_CHECK(if we have identified curses headers,cf_cv_ncurses_header,[ 1234cf_cv_ncurses_header=none 1235for cf_header in ifelse($1,,,[ \ 1236 $1/ncurses.h \ 1237 $1/curses.h]) \ 1238 ncurses.h \ 1239 curses.h ifelse($1,,[ncurses/ncurses.h ncurses/curses.h]) 1240do 1241AC_TRY_COMPILE([#include <${cf_header}>], 1242 [initscr(); tgoto("?", 0,0)], 1243 [cf_cv_ncurses_header=$cf_header; break],[]) 1244done 1245]) 1246 1247if test "$cf_cv_ncurses_header" = none ; then 1248 AC_MSG_ERROR(No curses header-files found) 1249fi 1250 1251# cheat, to get the right #define's for HAVE_NCURSES_H, etc. 1252AC_CHECK_HEADERS($cf_cv_ncurses_header) 1253])dnl 1254dnl --------------------------------------------------------------------------- 1255dnl CF_CURSES_LIBS version: 35 updated: 2011/08/09 21:06:37 1256dnl -------------- 1257dnl Look for the curses libraries. Older curses implementations may require 1258dnl termcap/termlib to be linked as well. Call CF_CURSES_CPPFLAGS first. 1259AC_DEFUN([CF_CURSES_LIBS],[ 1260 1261AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 1262AC_MSG_CHECKING(if we have identified curses libraries) 1263AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], 1264 [initscr(); tgoto("?", 0,0)], 1265 cf_result=yes, 1266 cf_result=no) 1267AC_MSG_RESULT($cf_result) 1268 1269if test "$cf_result" = no ; then 1270case $host_os in #(vi 1271freebsd*) #(vi 1272 AC_CHECK_LIB(mytinfo,tgoto,[CF_ADD_LIBS(-lmytinfo)]) 1273 ;; 1274hpux10.*) #(vi 1275 # Looking at HPUX 10.20, the Hcurses library is the oldest (1997), cur_colr 1276 # next (1998), and xcurses "newer" (2000). There is no header file for 1277 # Hcurses; the subdirectory curses_colr has the headers (curses.h and 1278 # term.h) for cur_colr 1279 if test "x$cf_cv_screen" = "xcurses_colr" 1280 then 1281 AC_CHECK_LIB(cur_colr,initscr,[ 1282 CF_ADD_LIBS(-lcur_colr) 1283 ac_cv_func_initscr=yes 1284 ],[ 1285 AC_CHECK_LIB(Hcurses,initscr,[ 1286 # HP's header uses __HP_CURSES, but user claims _HP_CURSES. 1287 CF_ADD_LIBS(-lHcurses) 1288 CPPFLAGS="$CPPFLAGS -D__HP_CURSES -D_HP_CURSES" 1289 ac_cv_func_initscr=yes 1290 ])]) 1291 fi 1292 ;; 1293linux*) 1294 case `arch 2>/dev/null` in 1295 x86_64) 1296 if test -d /lib64 1297 then 1298 CF_ADD_LIBDIR(/lib64) 1299 else 1300 CF_ADD_LIBDIR(/lib) 1301 fi 1302 ;; 1303 *) 1304 CF_ADD_LIBDIR(/lib) 1305 ;; 1306 esac 1307 ;; 1308sunos3*|sunos4*) 1309 if test "x$cf_cv_screen" = "xcurses_5lib" 1310 then 1311 if test -d /usr/5lib ; then 1312 CF_ADD_LIBDIR(/usr/5lib) 1313 CF_ADD_LIBS(-lcurses -ltermcap) 1314 fi 1315 fi 1316 ac_cv_func_initscr=yes 1317 ;; 1318esac 1319 1320if test ".$ac_cv_func_initscr" != .yes ; then 1321 cf_save_LIBS="$LIBS" 1322 cf_term_lib="" 1323 cf_curs_lib="" 1324 1325 if test ".${cf_cv_ncurses_version:-no}" != .no 1326 then 1327 cf_check_list="ncurses curses cursesX" 1328 else 1329 cf_check_list="cursesX curses ncurses" 1330 fi 1331 1332 # Check for library containing tgoto. Do this before curses library 1333 # because it may be needed to link the test-case for initscr. 1334 AC_CHECK_FUNC(tgoto,[cf_term_lib=predefined],[ 1335 for cf_term_lib in $cf_check_list otermcap termcap termlib unknown 1336 do 1337 AC_CHECK_LIB($cf_term_lib,tgoto,[break]) 1338 done 1339 ]) 1340 1341 # Check for library containing initscr 1342 test "$cf_term_lib" != predefined && test "$cf_term_lib" != unknown && LIBS="-l$cf_term_lib $cf_save_LIBS" 1343 for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown 1344 do 1345 AC_CHECK_LIB($cf_curs_lib,initscr,[break]) 1346 done 1347 test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found) 1348 1349 LIBS="-l$cf_curs_lib $cf_save_LIBS" 1350 if test "$cf_term_lib" = unknown ; then 1351 AC_MSG_CHECKING(if we can link with $cf_curs_lib library) 1352 AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], 1353 [initscr()], 1354 [cf_result=yes], 1355 [cf_result=no]) 1356 AC_MSG_RESULT($cf_result) 1357 test $cf_result = no && AC_MSG_ERROR(Cannot link curses library) 1358 elif test "$cf_curs_lib" = "$cf_term_lib" ; then 1359 : 1360 elif test "$cf_term_lib" != predefined ; then 1361 AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries) 1362 AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], 1363 [initscr(); tgoto((char *)0, 0, 0);], 1364 [cf_result=no], 1365 [ 1366 LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS" 1367 AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], 1368 [initscr()], 1369 [cf_result=yes], 1370 [cf_result=error]) 1371 ]) 1372 AC_MSG_RESULT($cf_result) 1373 fi 1374fi 1375fi 1376 1377])dnl 1378dnl --------------------------------------------------------------------------- 1379dnl CF_CURSES_TERM_H version: 9 updated: 2011/04/09 18:19:55 1380dnl ---------------- 1381dnl SVr4 curses should have term.h as well (where it puts the definitions of 1382dnl the low-level interface). This may not be true in old/broken implementations, 1383dnl as well as in misconfigured systems (e.g., gcc configured for Solaris 2.4 1384dnl running with Solaris 2.5.1). 1385AC_DEFUN([CF_CURSES_TERM_H], 1386[ 1387AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 1388 1389AC_CACHE_CHECK(for term.h, cf_cv_term_header,[ 1390 1391# If we found <ncurses/curses.h>, look for <ncurses/term.h>, but always look 1392# for <term.h> if we do not find the variant. 1393 1394cf_header_list="term.h ncurses/term.h ncursesw/term.h" 1395 1396case ${cf_cv_ncurses_header:-curses.h} in #(vi 1397*/*) 1398 cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`term.h 1399 cf_header_list="$cf_header_item $cf_header_list" 1400 ;; 1401esac 1402 1403for cf_header in $cf_header_list 1404do 1405 AC_TRY_COMPILE([ 1406#include <${cf_cv_ncurses_header:-curses.h}> 1407#include <${cf_header}>], 1408 [WINDOW *x], 1409 [cf_cv_term_header=$cf_header 1410 break], 1411 [cf_cv_term_header=no]) 1412done 1413 1414case $cf_cv_term_header in #(vi 1415no) 1416 # If curses is ncurses, some packagers still mess it up by trying to make 1417 # us use GNU termcap. This handles the most common case. 1418 for cf_header in ncurses/term.h ncursesw/term.h 1419 do 1420 AC_TRY_COMPILE([ 1421#include <${cf_cv_ncurses_header:-curses.h}> 1422#ifdef NCURSES_VERSION 1423#include <${cf_header}> 1424#else 1425make an error 1426#endif], 1427 [WINDOW *x], 1428 [cf_cv_term_header=$cf_header 1429 break], 1430 [cf_cv_term_header=no]) 1431 done 1432 ;; 1433esac 1434]) 1435 1436case $cf_cv_term_header in #(vi 1437term.h) #(vi 1438 AC_DEFINE(HAVE_TERM_H) 1439 ;; 1440ncurses/term.h) #(vi 1441 AC_DEFINE(HAVE_NCURSES_TERM_H) 1442 ;; 1443ncursesw/term.h) 1444 AC_DEFINE(HAVE_NCURSESW_TERM_H) 1445 ;; 1446esac 1447])dnl 1448dnl --------------------------------------------------------------------------- 1449dnl CF_CURSES_UNCTRL_H version: 1 updated: 2011/04/09 18:19:55 1450dnl ------------------ 1451dnl Any X/Open curses implementation must have unctrl.h, but ncurses packages 1452dnl may put it in a subdirectory (along with ncurses' other headers, of 1453dnl course). Packages which put the headers in inconsistent locations are 1454dnl broken). 1455AC_DEFUN([CF_CURSES_UNCTRL_H], 1456[ 1457AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 1458 1459AC_CACHE_CHECK(for unctrl.h, cf_cv_unctrl_header,[ 1460 1461# If we found <ncurses/curses.h>, look for <ncurses/unctrl.h>, but always look 1462# for <unctrl.h> if we do not find the variant. 1463 1464cf_header_list="unctrl.h ncurses/unctrl.h ncursesw/unctrl.h" 1465 1466case ${cf_cv_ncurses_header:-curses.h} in #(vi 1467*/*) 1468 cf_header_item=`echo ${cf_cv_ncurses_header:-curses.h} | sed -e 's%\..*%%' -e 's%/.*%/%'`unctrl.h 1469 cf_header_list="$cf_header_item $cf_header_list" 1470 ;; 1471esac 1472 1473for cf_header in $cf_header_list 1474do 1475 AC_TRY_COMPILE([ 1476#include <${cf_cv_ncurses_header:-curses.h}> 1477#include <${cf_header}>], 1478 [WINDOW *x], 1479 [cf_cv_unctrl_header=$cf_header 1480 break], 1481 [cf_cv_unctrl_header=no]) 1482done 1483 1484case $cf_cv_unctrl_header in #(vi 1485no) 1486 AC_MSG_WARN(unctrl.h header not found) 1487 ;; 1488esac 1489]) 1490 1491case $cf_cv_unctrl_header in #(vi 1492unctrl.h) #(vi 1493 AC_DEFINE(HAVE_UNCTRL_H) 1494 ;; 1495ncurses/unctrl.h) #(vi 1496 AC_DEFINE(HAVE_NCURSES_UNCTRL_H) 1497 ;; 1498ncursesw/unctrl.h) 1499 AC_DEFINE(HAVE_NCURSESW_UNCTRL_H) 1500 ;; 1501esac 1502])dnl 1503dnl --------------------------------------------------------------------------- 1504dnl CF_CURSES_WACS_MAP version: 5 updated: 2011/01/15 11:28:59 1505dnl ------------------ 1506dnl Check for likely values of wacs_map[]. 1507AC_DEFUN([CF_CURSES_WACS_MAP], 1508[ 1509AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[ 1510 cf_cv_curses_wacs_map=unknown 1511 for name in wacs_map _wacs_map __wacs_map _nc_wacs _wacs_char 1512 do 1513 AC_TRY_LINK([ 1514#ifndef _XOPEN_SOURCE_EXTENDED 1515#define _XOPEN_SOURCE_EXTENDED 1516#endif 1517#include <${cf_cv_ncurses_header:-curses.h}>], 1518 [void *foo = &($name['k'])], 1519 [cf_cv_curses_wacs_map=$name 1520 break]) 1521 done]) 1522 1523test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map) 1524])dnl 1525dnl --------------------------------------------------------------------------- 1526dnl CF_CURSES_WACS_SYMBOLS version: 1 updated: 2011/01/15 11:28:59 1527dnl ---------------------- 1528dnl Do a check to see if the WACS_xxx constants are defined compatibly with 1529dnl X/Open Curses. In particular, NetBSD's implementation of the WACS_xxx 1530dnl constants is broken since those constants do not point to cchar_t's. 1531AC_DEFUN([CF_CURSES_WACS_SYMBOLS], 1532[ 1533AC_REQUIRE([CF_CURSES_WACS_MAP]) 1534 1535AC_CACHE_CHECK(for wide alternate character constants, cf_cv_curses_wacs_symbols,[ 1536cf_cv_curses_wacs_symbols=no 1537if test "$cf_cv_curses_wacs_map" != unknown 1538then 1539 AC_TRY_LINK([ 1540#ifndef _XOPEN_SOURCE_EXTENDED 1541#define _XOPEN_SOURCE_EXTENDED 1542#endif 1543#include <${cf_cv_ncurses_header:-curses.h}>], 1544 [cchar_t *foo = WACS_PLUS; 1545 $cf_cv_curses_wacs_map['k'] = *WACS_PLUS], 1546 [cf_cv_curses_wacs_symbols=yes]) 1547else 1548 AC_TRY_LINK([ 1549#ifndef _XOPEN_SOURCE_EXTENDED 1550#define _XOPEN_SOURCE_EXTENDED 1551#endif 1552#include <${cf_cv_ncurses_header:-curses.h}>], 1553 [cchar_t *foo = WACS_PLUS], 1554 [cf_cv_curses_wacs_symbols=yes]) 1555fi 1556]) 1557 1558test "$cf_cv_curses_wacs_symbols" != no && AC_DEFINE(CURSES_WACS_SYMBOLS) 1559])dnl 1560dnl --------------------------------------------------------------------------- 1561dnl CF_CURSES_WGETPARENT version: 2 updated: 2011/10/17 20:12:04 1562dnl -------------------- 1563dnl Check for curses support for directly determining the parent of a given 1564dnl window. Some implementations make this difficult, so we provide for 1565dnl defining an application-specific function that gives this functionality. 1566dnl 1567dnl $1 = name of function to use if the feature is missing 1568AC_DEFUN([CF_CURSES_WGETPARENT],[ 1569CF_CURSES_FUNCS(wgetparent) 1570if test "x$cf_cv_func_wgetparent" != xyes 1571then 1572 AC_MSG_CHECKING(if WINDOW has _parent member) 1573 AC_TRY_COMPILE([#include <${cf_cv_ncurses_header:-curses.h}>], 1574 [WINDOW *p = stdscr->_parent], 1575 [cf_window__parent=yes], 1576 [cf_window__parent=no]) 1577 AC_MSG_RESULT($cf_window__parent) 1578 if test "$cf_window__parent" = yes 1579 then 1580 AC_DEFINE(HAVE_WINDOW__PARENT) 1581 fi 1582fi 1583])dnl 1584dnl --------------------------------------------------------------------------- 1585dnl CF_DIRNAME version: 4 updated: 2002/12/21 19:25:52 1586dnl ---------- 1587dnl "dirname" is not portable, so we fake it with a shell script. 1588AC_DEFUN([CF_DIRNAME],[$1=`echo $2 | sed -e 's%/[[^/]]*$%%'`])dnl 1589dnl --------------------------------------------------------------------------- 1590dnl CF_DISABLE_ECHO version: 11 updated: 2009/12/13 13:16:57 1591dnl --------------- 1592dnl You can always use "make -n" to see the actual options, but it's hard to 1593dnl pick out/analyze warning messages when the compile-line is long. 1594dnl 1595dnl Sets: 1596dnl ECHO_LT - symbol to control if libtool is verbose 1597dnl ECHO_LD - symbol to prefix "cc -o" lines 1598dnl RULE_CC - symbol to put before implicit "cc -c" lines (e.g., .c.o) 1599dnl SHOW_CC - symbol to put before explicit "cc -c" lines 1600dnl ECHO_CC - symbol to put before any "cc" line 1601dnl 1602AC_DEFUN([CF_DISABLE_ECHO],[ 1603AC_MSG_CHECKING(if you want to see long compiling messages) 1604CF_ARG_DISABLE(echo, 1605 [ --disable-echo display "compiling" commands], 1606 [ 1607 ECHO_LT='--silent' 1608 ECHO_LD='@echo linking [$]@;' 1609 RULE_CC='@echo compiling [$]<' 1610 SHOW_CC='@echo compiling [$]@' 1611 ECHO_CC='@' 1612],[ 1613 ECHO_LT='' 1614 ECHO_LD='' 1615 RULE_CC='' 1616 SHOW_CC='' 1617 ECHO_CC='' 1618]) 1619AC_MSG_RESULT($enableval) 1620AC_SUBST(ECHO_LT) 1621AC_SUBST(ECHO_LD) 1622AC_SUBST(RULE_CC) 1623AC_SUBST(SHOW_CC) 1624AC_SUBST(ECHO_CC) 1625])dnl 1626dnl --------------------------------------------------------------------------- 1627dnl CF_DISABLE_LIBTOOL_VERSION version: 1 updated: 2010/05/15 15:45:59 1628dnl -------------------------- 1629dnl Check if we should use the libtool 1.5 feature "-version-number" instead of 1630dnl the older "-version-info" feature. The newer feature allows us to use 1631dnl version numbering on shared libraries which make them compatible with 1632dnl various systems. 1633AC_DEFUN([CF_DISABLE_LIBTOOL_VERSION], 1634[ 1635AC_MSG_CHECKING(if libtool -version-number should be used) 1636CF_ARG_DISABLE(libtool-version, 1637 [ --disable-libtool-version enable to use libtool's incompatible naming scheme], 1638 [cf_libtool_version=no], 1639 [cf_libtool_version=yes]) 1640AC_MSG_RESULT($cf_libtool_version) 1641 1642if test "$cf_libtool_version" = yes ; then 1643 LIBTOOL_VERSION="-version-number" 1644else 1645 LIBTOOL_VERSION="-version-info" 1646fi 1647 1648AC_SUBST(LIBTOOL_VERSION) 1649])dnl 1650dnl --------------------------------------------------------------------------- 1651dnl CF_DISABLE_RPATH_HACK version: 2 updated: 2011/02/13 13:31:33 1652dnl --------------------- 1653dnl The rpath-hack makes it simpler to build programs, particularly with the 1654dnl *BSD ports which may have essential libraries in unusual places. But it 1655dnl can interfere with building an executable for the base system. Use this 1656dnl option in that case. 1657AC_DEFUN([CF_DISABLE_RPATH_HACK], 1658[ 1659AC_MSG_CHECKING(if rpath-hack should be disabled) 1660CF_ARG_DISABLE(rpath-hack, 1661 [ --disable-rpath-hack don't add rpath options for additional libraries], 1662 [cf_disable_rpath_hack=yes], 1663 [cf_disable_rpath_hack=no]) 1664AC_MSG_RESULT($cf_disable_rpath_hack) 1665if test "$cf_disable_rpath_hack" = no ; then 1666 CF_RPATH_HACK 1667fi 1668]) 1669dnl --------------------------------------------------------------------------- 1670dnl CF_FIND_HEADER version: 2 updated: 2007/07/29 11:32:00 1671dnl -------------- 1672dnl Find a header file, searching for it if it is not already in the include 1673dnl path. 1674dnl 1675dnl $1 = the header filename 1676dnl $2 = the package name 1677dnl $3 = action to perform if successful 1678dnl $4 = action to perform if not successful 1679AC_DEFUN([CF_FIND_HEADER],[ 1680AC_CHECK_HEADER([$1], 1681 cf_find_header=yes,[ 1682 cf_find_header=no 1683CF_HEADER_PATH(cf_search,$2) 1684for cf_incdir in $cf_search 1685do 1686 if test -f $cf_incdir/$1 ; then 1687 CF_ADD_INCDIR($cf_incdir) 1688 CF_VERBOSE(... found in $cf_incdir) 1689 cf_find_header=yes 1690 break 1691 fi 1692 CF_VERBOSE(... tested $cf_incdir) 1693done 1694]) 1695if test "$cf_find_header" = yes ; then 1696ifelse([$3],,:,[$3]) 1697ifelse([$4],,,[else 1698$4]) 1699fi 1700])dnl 1701dnl --------------------------------------------------------------------------- 1702dnl CF_FIND_LIBRARY version: 9 updated: 2008/03/23 14:48:54 1703dnl --------------- 1704dnl Look for a non-standard library, given parameters for AC_TRY_LINK. We 1705dnl prefer a standard location, and use -L options only if we do not find the 1706dnl library in the standard library location(s). 1707dnl $1 = library name 1708dnl $2 = library class, usually the same as library name 1709dnl $3 = includes 1710dnl $4 = code fragment to compile/link 1711dnl $5 = corresponding function-name 1712dnl $6 = flag, nonnull if failure should not cause an error-exit 1713dnl 1714dnl Sets the variable "$cf_libdir" as a side-effect, so we can see if we had 1715dnl to use a -L option. 1716AC_DEFUN([CF_FIND_LIBRARY], 1717[ 1718 eval 'cf_cv_have_lib_'$1'=no' 1719 cf_libdir="" 1720 AC_CHECK_FUNC($5, 1721 eval 'cf_cv_have_lib_'$1'=yes',[ 1722 cf_save_LIBS="$LIBS" 1723 AC_MSG_CHECKING(for $5 in -l$1) 1724 LIBS="-l$1 $LIBS" 1725 AC_TRY_LINK([$3],[$4], 1726 [AC_MSG_RESULT(yes) 1727 eval 'cf_cv_have_lib_'$1'=yes' 1728 ], 1729 [AC_MSG_RESULT(no) 1730 CF_LIBRARY_PATH(cf_search,$2) 1731 for cf_libdir in $cf_search 1732 do 1733 AC_MSG_CHECKING(for -l$1 in $cf_libdir) 1734 LIBS="-L$cf_libdir -l$1 $cf_save_LIBS" 1735 AC_TRY_LINK([$3],[$4], 1736 [AC_MSG_RESULT(yes) 1737 eval 'cf_cv_have_lib_'$1'=yes' 1738 break], 1739 [AC_MSG_RESULT(no) 1740 LIBS="$cf_save_LIBS"]) 1741 done 1742 ]) 1743 ]) 1744eval 'cf_found_library=[$]cf_cv_have_lib_'$1 1745ifelse($6,,[ 1746if test $cf_found_library = no ; then 1747 AC_MSG_ERROR(Cannot link $1 library) 1748fi 1749]) 1750])dnl 1751dnl --------------------------------------------------------------------------- 1752dnl CF_FIND_LINKAGE version: 19 updated: 2010/05/29 16:31:02 1753dnl --------------- 1754dnl Find a library (specifically the linkage used in the code fragment), 1755dnl searching for it if it is not already in the library path. 1756dnl See also CF_ADD_SEARCHPATH. 1757dnl 1758dnl Parameters (4-on are optional): 1759dnl $1 = headers for library entrypoint 1760dnl $2 = code fragment for library entrypoint 1761dnl $3 = the library name without the "-l" option or ".so" suffix. 1762dnl $4 = action to perform if successful (default: update CPPFLAGS, etc) 1763dnl $5 = action to perform if not successful 1764dnl $6 = module name, if not the same as the library name 1765dnl $7 = extra libraries 1766dnl 1767dnl Sets these variables: 1768dnl $cf_cv_find_linkage_$3 - yes/no according to whether linkage is found 1769dnl $cf_cv_header_path_$3 - include-directory if needed 1770dnl $cf_cv_library_path_$3 - library-directory if needed 1771dnl $cf_cv_library_file_$3 - library-file if needed, e.g., -l$3 1772AC_DEFUN([CF_FIND_LINKAGE],[ 1773 1774# If the linkage is not already in the $CPPFLAGS/$LDFLAGS configuration, these 1775# will be set on completion of the AC_TRY_LINK below. 1776cf_cv_header_path_$3= 1777cf_cv_library_path_$3= 1778 1779CF_MSG_LOG([Starting [FIND_LINKAGE]($3,$6)]) 1780 1781cf_save_LIBS="$LIBS" 1782 1783AC_TRY_LINK([$1],[$2],[ 1784 cf_cv_find_linkage_$3=yes 1785 cf_cv_header_path_$3=/usr/include 1786 cf_cv_library_path_$3=/usr/lib 1787],[ 1788 1789LIBS="-l$3 $7 $cf_save_LIBS" 1790 1791AC_TRY_LINK([$1],[$2],[ 1792 cf_cv_find_linkage_$3=yes 1793 cf_cv_header_path_$3=/usr/include 1794 cf_cv_library_path_$3=/usr/lib 1795 cf_cv_library_file_$3="-l$3" 1796],[ 1797 cf_cv_find_linkage_$3=no 1798 LIBS="$cf_save_LIBS" 1799 1800 CF_VERBOSE(find linkage for $3 library) 1801 CF_MSG_LOG([Searching for headers in [FIND_LINKAGE]($3,$6)]) 1802 1803 cf_save_CPPFLAGS="$CPPFLAGS" 1804 cf_test_CPPFLAGS="$CPPFLAGS" 1805 1806 CF_HEADER_PATH(cf_search,ifelse([$6],,[$3],[$6])) 1807 for cf_cv_header_path_$3 in $cf_search 1808 do 1809 if test -d $cf_cv_header_path_$3 ; then 1810 CF_VERBOSE(... testing $cf_cv_header_path_$3) 1811 CPPFLAGS="$cf_save_CPPFLAGS -I$cf_cv_header_path_$3" 1812 AC_TRY_COMPILE([$1],[$2],[ 1813 CF_VERBOSE(... found $3 headers in $cf_cv_header_path_$3) 1814 cf_cv_find_linkage_$3=maybe 1815 cf_test_CPPFLAGS="$CPPFLAGS" 1816 break],[ 1817 CPPFLAGS="$cf_save_CPPFLAGS" 1818 ]) 1819 fi 1820 done 1821 1822 if test "$cf_cv_find_linkage_$3" = maybe ; then 1823 1824 CF_MSG_LOG([Searching for $3 library in [FIND_LINKAGE]($3,$6)]) 1825 1826 cf_save_LIBS="$LIBS" 1827 cf_save_LDFLAGS="$LDFLAGS" 1828 1829 ifelse([$6],,,[ 1830 CPPFLAGS="$cf_test_CPPFLAGS" 1831 LIBS="-l$3 $7 $cf_save_LIBS" 1832 AC_TRY_LINK([$1],[$2],[ 1833 CF_VERBOSE(... found $3 library in system) 1834 cf_cv_find_linkage_$3=yes]) 1835 CPPFLAGS="$cf_save_CPPFLAGS" 1836 LIBS="$cf_save_LIBS" 1837 ]) 1838 1839 if test "$cf_cv_find_linkage_$3" != yes ; then 1840 CF_LIBRARY_PATH(cf_search,$3) 1841 for cf_cv_library_path_$3 in $cf_search 1842 do 1843 if test -d $cf_cv_library_path_$3 ; then 1844 CF_VERBOSE(... testing $cf_cv_library_path_$3) 1845 CPPFLAGS="$cf_test_CPPFLAGS" 1846 LIBS="-l$3 $7 $cf_save_LIBS" 1847 LDFLAGS="$cf_save_LDFLAGS -L$cf_cv_library_path_$3" 1848 AC_TRY_LINK([$1],[$2],[ 1849 CF_VERBOSE(... found $3 library in $cf_cv_library_path_$3) 1850 cf_cv_find_linkage_$3=yes 1851 cf_cv_library_file_$3="-l$3" 1852 break],[ 1853 CPPFLAGS="$cf_save_CPPFLAGS" 1854 LIBS="$cf_save_LIBS" 1855 LDFLAGS="$cf_save_LDFLAGS" 1856 ]) 1857 fi 1858 done 1859 CPPFLAGS="$cf_save_CPPFLAGS" 1860 LDFLAGS="$cf_save_LDFLAGS" 1861 fi 1862 1863 else 1864 cf_cv_find_linkage_$3=no 1865 fi 1866 ],$7) 1867]) 1868 1869LIBS="$cf_save_LIBS" 1870 1871if test "$cf_cv_find_linkage_$3" = yes ; then 1872ifelse([$4],,[ 1873 CF_ADD_INCDIR($cf_cv_header_path_$3) 1874 CF_ADD_LIBDIR($cf_cv_library_path_$3) 1875 CF_ADD_LIB($3) 1876],[$4]) 1877else 1878ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5]) 1879fi 1880])dnl 1881dnl --------------------------------------------------------------------------- 1882dnl CF_FUNC_WAIT version: 2 updated: 1997/10/21 19:45:33 1883dnl ------------ 1884dnl Test for the presence of <sys/wait.h>, 'union wait', arg-type of 'wait()' 1885dnl and/or 'waitpid()'. 1886dnl 1887dnl Note that we cannot simply grep for 'union wait' in the wait.h file, 1888dnl because some Posix systems turn this on only when a BSD variable is 1889dnl defined. 1890dnl 1891dnl I don't use AC_HEADER_SYS_WAIT, because it defines HAVE_SYS_WAIT_H, which 1892dnl would conflict with an attempt to test that header directly. 1893dnl 1894AC_DEFUN([CF_FUNC_WAIT], 1895[ 1896AC_REQUIRE([CF_UNION_WAIT]) 1897if test $cf_cv_type_unionwait = yes; then 1898 1899 AC_MSG_CHECKING(if union wait can be used as wait-arg) 1900 AC_CACHE_VAL(cf_cv_arg_union_wait,[ 1901 AC_TRY_COMPILE($cf_wait_headers, 1902 [union wait x; wait(&x)], 1903 [cf_cv_arg_union_wait=yes], 1904 [cf_cv_arg_union_wait=no]) 1905 ]) 1906 AC_MSG_RESULT($cf_cv_arg_union_wait) 1907 test $cf_cv_arg_union_wait = yes && AC_DEFINE(WAIT_USES_UNION) 1908 1909 AC_MSG_CHECKING(if union wait can be used as waitpid-arg) 1910 AC_CACHE_VAL(cf_cv_arg_union_waitpid,[ 1911 AC_TRY_COMPILE($cf_wait_headers, 1912 [union wait x; waitpid(0, &x, 0)], 1913 [cf_cv_arg_union_waitpid=yes], 1914 [cf_cv_arg_union_waitpid=no]) 1915 ]) 1916 AC_MSG_RESULT($cf_cv_arg_union_waitpid) 1917 test $cf_cv_arg_union_waitpid = yes && AC_DEFINE(WAITPID_USES_UNION) 1918 1919fi 1920])dnl 1921dnl --------------------------------------------------------------------------- 1922dnl CF_GCC_ATTRIBUTES version: 14 updated: 2010/10/23 15:52:32 1923dnl ----------------- 1924dnl Test for availability of useful gcc __attribute__ directives to quiet 1925dnl compiler warnings. Though useful, not all are supported -- and contrary 1926dnl to documentation, unrecognized directives cause older compilers to barf. 1927AC_DEFUN([CF_GCC_ATTRIBUTES], 1928[ 1929if test "$GCC" = yes 1930then 1931cat > conftest.i <<EOF 1932#ifndef GCC_PRINTF 1933#define GCC_PRINTF 0 1934#endif 1935#ifndef GCC_SCANF 1936#define GCC_SCANF 0 1937#endif 1938#ifndef GCC_NORETURN 1939#define GCC_NORETURN /* nothing */ 1940#endif 1941#ifndef GCC_UNUSED 1942#define GCC_UNUSED /* nothing */ 1943#endif 1944EOF 1945if test "$GCC" = yes 1946then 1947 AC_CHECKING([for $CC __attribute__ directives]) 1948cat > conftest.$ac_ext <<EOF 1949#line __oline__ "${as_me:-configure}" 1950#include "confdefs.h" 1951#include "conftest.h" 1952#include "conftest.i" 1953#if GCC_PRINTF 1954#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) 1955#else 1956#define GCC_PRINTFLIKE(fmt,var) /*nothing*/ 1957#endif 1958#if GCC_SCANF 1959#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) 1960#else 1961#define GCC_SCANFLIKE(fmt,var) /*nothing*/ 1962#endif 1963extern void wow(char *,...) GCC_SCANFLIKE(1,2); 1964extern void oops(char *,...) GCC_PRINTFLIKE(1,2) GCC_NORETURN; 1965extern void foo(void) GCC_NORETURN; 1966int main(int argc GCC_UNUSED, char *argv[[]] GCC_UNUSED) { return 0; } 1967EOF 1968 cf_printf_attribute=no 1969 cf_scanf_attribute=no 1970 for cf_attribute in scanf printf unused noreturn 1971 do 1972 CF_UPPER(cf_ATTRIBUTE,$cf_attribute) 1973 cf_directive="__attribute__(($cf_attribute))" 1974 echo "checking for $CC $cf_directive" 1>&AC_FD_CC 1975 1976 case $cf_attribute in #(vi 1977 printf) #(vi 1978 cf_printf_attribute=yes 1979 cat >conftest.h <<EOF 1980#define GCC_$cf_ATTRIBUTE 1 1981EOF 1982 ;; 1983 scanf) #(vi 1984 cf_scanf_attribute=yes 1985 cat >conftest.h <<EOF 1986#define GCC_$cf_ATTRIBUTE 1 1987EOF 1988 ;; 1989 *) #(vi 1990 cat >conftest.h <<EOF 1991#define GCC_$cf_ATTRIBUTE $cf_directive 1992EOF 1993 ;; 1994 esac 1995 1996 if AC_TRY_EVAL(ac_compile); then 1997 test -n "$verbose" && AC_MSG_RESULT(... $cf_attribute) 1998 cat conftest.h >>confdefs.h 1999 case $cf_attribute in #(vi 2000 printf) #(vi 2001 if test "$cf_printf_attribute" = no ; then 2002 cat >>confdefs.h <<EOF 2003#define GCC_PRINTFLIKE(fmt,var) /* nothing */ 2004EOF 2005 else 2006 cat >>confdefs.h <<EOF 2007#define GCC_PRINTFLIKE(fmt,var) __attribute__((format(printf,fmt,var))) 2008EOF 2009 fi 2010 ;; 2011 scanf) #(vi 2012 if test "$cf_scanf_attribute" = no ; then 2013 cat >>confdefs.h <<EOF 2014#define GCC_SCANFLIKE(fmt,var) /* nothing */ 2015EOF 2016 else 2017 cat >>confdefs.h <<EOF 2018#define GCC_SCANFLIKE(fmt,var) __attribute__((format(scanf,fmt,var))) 2019EOF 2020 fi 2021 ;; 2022 esac 2023 fi 2024 done 2025else 2026 fgrep define conftest.i >>confdefs.h 2027fi 2028rm -rf conftest* 2029fi 2030])dnl 2031dnl --------------------------------------------------------------------------- 2032dnl CF_GCC_VERSION version: 5 updated: 2010/04/24 11:02:31 2033dnl -------------- 2034dnl Find version of gcc 2035AC_DEFUN([CF_GCC_VERSION],[ 2036AC_REQUIRE([AC_PROG_CC]) 2037GCC_VERSION=none 2038if test "$GCC" = yes ; then 2039 AC_MSG_CHECKING(version of $CC) 2040 GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`" 2041 test -z "$GCC_VERSION" && GCC_VERSION=unknown 2042 AC_MSG_RESULT($GCC_VERSION) 2043fi 2044])dnl 2045dnl --------------------------------------------------------------------------- 2046dnl CF_GCC_WARNINGS version: 27 updated: 2010/10/23 15:52:32 2047dnl --------------- 2048dnl Check if the compiler supports useful warning options. There's a few that 2049dnl we don't use, simply because they're too noisy: 2050dnl 2051dnl -Wconversion (useful in older versions of gcc, but not in gcc 2.7.x) 2052dnl -Wredundant-decls (system headers make this too noisy) 2053dnl -Wtraditional (combines too many unrelated messages, only a few useful) 2054dnl -Wwrite-strings (too noisy, but should review occasionally). This 2055dnl is enabled for ncurses using "--enable-const". 2056dnl -pedantic 2057dnl 2058dnl Parameter: 2059dnl $1 is an optional list of gcc warning flags that a particular 2060dnl application might want to use, e.g., "no-unused" for 2061dnl -Wno-unused 2062dnl Special: 2063dnl If $with_ext_const is "yes", add a check for -Wwrite-strings 2064dnl 2065AC_DEFUN([CF_GCC_WARNINGS], 2066[ 2067AC_REQUIRE([CF_GCC_VERSION]) 2068CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS) 2069 2070cat > conftest.$ac_ext <<EOF 2071#line __oline__ "${as_me:-configure}" 2072int main(int argc, char *argv[[]]) { return (argv[[argc-1]] == 0) ; } 2073EOF 2074 2075if test "$INTEL_COMPILER" = yes 2076then 2077# The "-wdXXX" options suppress warnings: 2078# remark #1419: external declaration in primary source file 2079# remark #1683: explicit conversion of a 64-bit integral type to a smaller integral type (potential portability problem) 2080# remark #1684: conversion from pointer to same-sized integral type (potential portability problem) 2081# remark #193: zero used for undefined preprocessing identifier 2082# remark #593: variable "curs_sb_left_arrow" was set but never used 2083# remark #810: conversion from "int" to "Dimension={unsigned short}" may lose significant bits 2084# remark #869: parameter "tw" was never referenced 2085# remark #981: operands are evaluated in unspecified order 2086# warning #279: controlling expression is constant 2087 2088 AC_CHECKING([for $CC warning options]) 2089 cf_save_CFLAGS="$CFLAGS" 2090 EXTRA_CFLAGS="-Wall" 2091 for cf_opt in \ 2092 wd1419 \ 2093 wd1683 \ 2094 wd1684 \ 2095 wd193 \ 2096 wd593 \ 2097 wd279 \ 2098 wd810 \ 2099 wd869 \ 2100 wd981 2101 do 2102 CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" 2103 if AC_TRY_EVAL(ac_compile); then 2104 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt) 2105 EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" 2106 fi 2107 done 2108 CFLAGS="$cf_save_CFLAGS" 2109 2110elif test "$GCC" = yes 2111then 2112 AC_CHECKING([for $CC warning options]) 2113 cf_save_CFLAGS="$CFLAGS" 2114 EXTRA_CFLAGS= 2115 cf_warn_CONST="" 2116 test "$with_ext_const" = yes && cf_warn_CONST="Wwrite-strings" 2117 for cf_opt in W Wall \ 2118 Wbad-function-cast \ 2119 Wcast-align \ 2120 Wcast-qual \ 2121 Winline \ 2122 Wmissing-declarations \ 2123 Wmissing-prototypes \ 2124 Wnested-externs \ 2125 Wpointer-arith \ 2126 Wshadow \ 2127 Wstrict-prototypes \ 2128 Wundef $cf_warn_CONST $1 2129 do 2130 CFLAGS="$cf_save_CFLAGS $EXTRA_CFLAGS -$cf_opt" 2131 if AC_TRY_EVAL(ac_compile); then 2132 test -n "$verbose" && AC_MSG_RESULT(... -$cf_opt) 2133 case $cf_opt in #(vi 2134 Wcast-qual) #(vi 2135 CPPFLAGS="$CPPFLAGS -DXTSTRINGDEFINES" 2136 ;; 2137 Winline) #(vi 2138 case $GCC_VERSION in 2139 [[34]].*) 2140 CF_VERBOSE(feature is broken in gcc $GCC_VERSION) 2141 continue;; 2142 esac 2143 ;; 2144 esac 2145 EXTRA_CFLAGS="$EXTRA_CFLAGS -$cf_opt" 2146 fi 2147 done 2148 CFLAGS="$cf_save_CFLAGS" 2149fi 2150rm -rf conftest* 2151 2152AC_SUBST(EXTRA_CFLAGS) 2153])dnl 2154dnl --------------------------------------------------------------------------- 2155dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07 2156dnl ------------- 2157dnl Check if we must define _GNU_SOURCE to get a reasonable value for 2158dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect 2159dnl (or misfeature) of glibc2, which breaks portability of many applications, 2160dnl since it is interwoven with GNU extensions. 2161dnl 2162dnl Well, yes we could work around it... 2163AC_DEFUN([CF_GNU_SOURCE], 2164[ 2165AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[ 2166AC_TRY_COMPILE([#include <sys/types.h>],[ 2167#ifndef _XOPEN_SOURCE 2168make an error 2169#endif], 2170 [cf_cv_gnu_source=no], 2171 [cf_save="$CPPFLAGS" 2172 CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" 2173 AC_TRY_COMPILE([#include <sys/types.h>],[ 2174#ifdef _XOPEN_SOURCE 2175make an error 2176#endif], 2177 [cf_cv_gnu_source=no], 2178 [cf_cv_gnu_source=yes]) 2179 CPPFLAGS="$cf_save" 2180 ]) 2181]) 2182test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE" 2183])dnl 2184dnl --------------------------------------------------------------------------- 2185dnl CF_HEADERS_SH version: 1 updated: 2007/07/04 15:37:05 2186dnl ------------- 2187dnl Setup variables needed to construct headers-sh 2188AC_DEFUN([CF_HEADERS_SH],[ 2189PACKAGE_PREFIX=$1 2190PACKAGE_CONFIG=$2 2191AC_SUBST(PACKAGE_PREFIX) 2192AC_SUBST(PACKAGE_CONFIG) 2193EXTRA_OUTPUT="$EXTRA_OUTPUT headers-sh:$srcdir/headers-sh.in" 2194]) 2195dnl --------------------------------------------------------------------------- 2196dnl CF_HEADER_PATH version: 12 updated: 2010/05/05 05:22:40 2197dnl -------------- 2198dnl Construct a search-list of directories for a nonstandard header-file 2199dnl 2200dnl Parameters 2201dnl $1 = the variable to return as result 2202dnl $2 = the package name 2203AC_DEFUN([CF_HEADER_PATH], 2204[ 2205$1= 2206 2207# collect the current set of include-directories from compiler flags 2208cf_header_path_list="" 2209if test -n "${CFLAGS}${CPPFLAGS}" ; then 2210 for cf_header_path in $CPPFLAGS $CFLAGS 2211 do 2212 case $cf_header_path in #(vi 2213 -I*) 2214 cf_header_path=`echo ".$cf_header_path" |sed -e 's/^...//' -e 's,/include$,,'` 2215 CF_ADD_SUBDIR_PATH($1,$2,include,$cf_header_path,NONE) 2216 cf_header_path_list="$cf_header_path_list [$]$1" 2217 ;; 2218 esac 2219 done 2220fi 2221 2222# add the variations for the package we are looking for 2223CF_SUBDIR_PATH($1,$2,include) 2224 2225test "$includedir" != NONE && \ 2226test "$includedir" != "/usr/include" && \ 2227test -d "$includedir" && { 2228 test -d $includedir && $1="[$]$1 $includedir" 2229 test -d $includedir/$2 && $1="[$]$1 $includedir/$2" 2230} 2231 2232test "$oldincludedir" != NONE && \ 2233test "$oldincludedir" != "/usr/include" && \ 2234test -d "$oldincludedir" && { 2235 test -d $oldincludedir && $1="[$]$1 $oldincludedir" 2236 test -d $oldincludedir/$2 && $1="[$]$1 $oldincludedir/$2" 2237} 2238 2239$1="[$]$1 $cf_header_path_list" 2240])dnl 2241dnl --------------------------------------------------------------------------- 2242dnl CF_HELP_MESSAGE version: 3 updated: 1998/01/14 10:56:23 2243dnl --------------- 2244dnl Insert text into the help-message, for readability, from AC_ARG_WITH. 2245AC_DEFUN([CF_HELP_MESSAGE], 2246[AC_DIVERT_HELP([$1])dnl 2247])dnl 2248dnl --------------------------------------------------------------------------- 2249dnl CF_INCLUDE_DIRS version: 6 updated: 2009/01/06 19:37:40 2250dnl --------------- 2251dnl Construct the list of include-options according to whether we're building 2252dnl in the source directory or using '--srcdir=DIR' option. If we're building 2253dnl with gcc, don't append the includedir if it happens to be /usr/include, 2254dnl since that usually breaks gcc's shadow-includes. 2255AC_DEFUN([CF_INCLUDE_DIRS], 2256[ 2257CPPFLAGS="$CPPFLAGS -I. -I../include" 2258if test "$srcdir" != "."; then 2259 CPPFLAGS="$CPPFLAGS -I\${srcdir}/../include" 2260fi 2261if test "$GCC" != yes; then 2262 CPPFLAGS="$CPPFLAGS -I\${includedir}" 2263elif test "$includedir" != "/usr/include"; then 2264 if test "$includedir" = '${prefix}/include' ; then 2265 if test $prefix != /usr ; then 2266 CPPFLAGS="$CPPFLAGS -I\${includedir}" 2267 fi 2268 else 2269 CPPFLAGS="$CPPFLAGS -I\${includedir}" 2270 fi 2271fi 2272AC_SUBST(CPPFLAGS) 2273])dnl 2274dnl --------------------------------------------------------------------------- 2275dnl CF_INCLUDE_PATH version: 5 updated: 2010/01/17 20:36:17 2276dnl --------------- 2277dnl Adds to the include-path 2278dnl 2279dnl Autoconf 1.11 should have provided a way to add include path options to 2280dnl the cpp-tests. 2281dnl 2282AC_DEFUN([CF_INCLUDE_PATH], 2283[ 2284$1= 2285for cf_path in $1 2286do 2287 cf_result="no" 2288 AC_MSG_CHECKING(for directory $cf_path) 2289 if test -d $cf_path 2290 then 2291 INCLUDES="$INCLUDES -I$cf_path" 2292 ac_cpp="${ac_cpp} -I$cf_path" 2293 CFLAGS="$CFLAGS -I$cf_path" 2294 cf_result="yes" 2295 case $cf_path in 2296 /usr/include|/usr/include/*) 2297 ;; 2298 *) 2299 CF_DIRNAME(cf_temp,$cf_path) 2300 case $cf_temp in 2301 */include) 2302 INCLUDES="$INCLUDES -I$cf_temp" 2303 ac_cpp="${ac_cpp} -I$cf_temp" 2304 CFLAGS="$CFLAGS -I$cf_temp" 2305 ;; 2306 esac 2307 esac 2308 fi 2309 AC_MSG_RESULT($cf_result) 2310done 2311])dnl 2312dnl --------------------------------------------------------------------------- 2313dnl CF_INTEL_COMPILER version: 4 updated: 2010/05/26 05:38:42 2314dnl ----------------- 2315dnl Check if the given compiler is really the Intel compiler for Linux. It 2316dnl tries to imitate gcc, but does not return an error when it finds a mismatch 2317dnl between prototypes, e.g., as exercised by CF_MISSING_CHECK. 2318dnl 2319dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to 2320dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from 2321dnl the wrappers for gcc and g++ warnings. 2322dnl 2323dnl $1 = GCC (default) or GXX 2324dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS 2325dnl $3 = CFLAGS (default) or CXXFLAGS 2326AC_DEFUN([CF_INTEL_COMPILER],[ 2327ifelse([$2],,INTEL_COMPILER,[$2])=no 2328 2329if test "$ifelse([$1],,[$1],GCC)" = yes ; then 2330 case $host_os in 2331 linux*|gnu*) 2332 AC_MSG_CHECKING(if this is really Intel ifelse([$1],GXX,C++,C) compiler) 2333 cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])" 2334 ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -no-gcc" 2335 AC_TRY_COMPILE([],[ 2336#ifdef __INTEL_COMPILER 2337#else 2338make an error 2339#endif 2340],[ifelse([$2],,INTEL_COMPILER,[$2])=yes 2341cf_save_CFLAGS="$cf_save_CFLAGS -we147 -no-gcc" 2342],[]) 2343 ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS" 2344 AC_MSG_RESULT($ifelse([$2],,INTEL_COMPILER,[$2])) 2345 ;; 2346 esac 2347fi 2348])dnl 2349dnl --------------------------------------------------------------------------- 2350dnl CF_LARGEFILE version: 7 updated: 2007/06/02 11:58:50 2351dnl ------------ 2352dnl Add checks for large file support. 2353AC_DEFUN([CF_LARGEFILE],[ 2354ifdef([AC_FUNC_FSEEKO],[ 2355 AC_SYS_LARGEFILE 2356 if test "$enable_largefile" != no ; then 2357 AC_FUNC_FSEEKO 2358 2359 # Normally we would collect these definitions in the config.h, 2360 # but (like _XOPEN_SOURCE), some environments rely on having these 2361 # defined before any of the system headers are included. Another 2362 # case comes up with C++, e.g., on AIX the compiler compiles the 2363 # header files by themselves before looking at the body files it is 2364 # told to compile. For ncurses, those header files do not include 2365 # the config.h 2366 test "$ac_cv_sys_large_files" != no && CPPFLAGS="$CPPFLAGS -D_LARGE_FILES " 2367 test "$ac_cv_sys_largefile_source" != no && CPPFLAGS="$CPPFLAGS -D_LARGEFILE_SOURCE " 2368 test "$ac_cv_sys_file_offset_bits" != no && CPPFLAGS="$CPPFLAGS -D_FILE_OFFSET_BITS=$ac_cv_sys_file_offset_bits " 2369 2370 AC_CACHE_CHECK(whether to use struct dirent64, cf_cv_struct_dirent64,[ 2371 AC_TRY_COMPILE([ 2372#include <sys/types.h> 2373#include <dirent.h> 2374 ],[ 2375 /* if transitional largefile support is setup, this is true */ 2376 extern struct dirent64 * readdir(DIR *); 2377 struct dirent64 *x = readdir((DIR *)0); 2378 struct dirent *y = readdir((DIR *)0); 2379 int z = x - y; 2380 ], 2381 [cf_cv_struct_dirent64=yes], 2382 [cf_cv_struct_dirent64=no]) 2383 ]) 2384 test "$cf_cv_struct_dirent64" = yes && AC_DEFINE(HAVE_STRUCT_DIRENT64) 2385 fi 2386]) 2387]) 2388dnl --------------------------------------------------------------------------- 2389dnl CF_LD_RPATH_OPT version: 5 updated: 2011/07/17 14:48:41 2390dnl --------------- 2391dnl For the given system and compiler, find the compiler flags to pass to the 2392dnl loader to use the "rpath" feature. 2393AC_DEFUN([CF_LD_RPATH_OPT], 2394[ 2395AC_REQUIRE([CF_CHECK_CACHE]) 2396 2397LD_RPATH_OPT= 2398AC_MSG_CHECKING(for an rpath option) 2399case $cf_cv_system_name in #(vi 2400irix*) #(vi 2401 if test "$GCC" = yes; then 2402 LD_RPATH_OPT="-Wl,-rpath," 2403 else 2404 LD_RPATH_OPT="-rpath " 2405 fi 2406 ;; 2407linux*|gnu*|k*bsd*-gnu) #(vi 2408 LD_RPATH_OPT="-Wl,-rpath," 2409 ;; 2410openbsd[[2-9]].*|mirbsd*) #(vi 2411 LD_RPATH_OPT="-Wl,-rpath," 2412 ;; 2413dragonfly*|freebsd*) #(vi 2414 LD_RPATH_OPT="-rpath " 2415 ;; 2416netbsd*) #(vi 2417 LD_RPATH_OPT="-Wl,-rpath," 2418 ;; 2419osf*|mls+*) #(vi 2420 LD_RPATH_OPT="-rpath " 2421 ;; 2422solaris2*) #(vi 2423 LD_RPATH_OPT="-R" 2424 ;; 2425*) 2426 ;; 2427esac 2428AC_MSG_RESULT($LD_RPATH_OPT) 2429 2430case "x$LD_RPATH_OPT" in #(vi 2431x-R*) 2432 AC_MSG_CHECKING(if we need a space after rpath option) 2433 cf_save_LIBS="$LIBS" 2434 CF_ADD_LIBS(${LD_RPATH_OPT}$libdir) 2435 AC_TRY_LINK(, , cf_rpath_space=no, cf_rpath_space=yes) 2436 LIBS="$cf_save_LIBS" 2437 AC_MSG_RESULT($cf_rpath_space) 2438 test "$cf_rpath_space" = yes && LD_RPATH_OPT="$LD_RPATH_OPT " 2439 ;; 2440esac 2441])dnl 2442dnl --------------------------------------------------------------------------- 2443dnl CF_LIBRARY_PATH version: 9 updated: 2010/03/28 12:52:50 2444dnl --------------- 2445dnl Construct a search-list of directories for a nonstandard library-file 2446dnl 2447dnl Parameters 2448dnl $1 = the variable to return as result 2449dnl $2 = the package name 2450AC_DEFUN([CF_LIBRARY_PATH], 2451[ 2452$1= 2453cf_library_path_list="" 2454if test -n "${LDFLAGS}${LIBS}" ; then 2455 for cf_library_path in $LDFLAGS $LIBS 2456 do 2457 case $cf_library_path in #(vi 2458 -L*) 2459 cf_library_path=`echo ".$cf_library_path" |sed -e 's/^...//' -e 's,/lib$,,'` 2460 CF_ADD_SUBDIR_PATH($1,$2,lib,$cf_library_path,NONE) 2461 cf_library_path_list="$cf_library_path_list [$]$1" 2462 ;; 2463 esac 2464 done 2465fi 2466 2467CF_SUBDIR_PATH($1,$2,lib) 2468 2469$1="$cf_library_path_list [$]$1" 2470])dnl 2471dnl --------------------------------------------------------------------------- 2472dnl CF_LIB_PREFIX version: 9 updated: 2012/01/21 19:28:10 2473dnl ------------- 2474dnl Compute the library-prefix for the given host system 2475dnl $1 = variable to set 2476define([CF_LIB_PREFIX], 2477[ 2478 case $cf_cv_system_name in #(vi 2479 OS/2*|os2*) #(vi 2480 LIB_PREFIX='' 2481 ;; 2482 *) LIB_PREFIX='lib' 2483 ;; 2484 esac 2485ifelse($1,,,[$1=$LIB_PREFIX]) 2486 AC_SUBST(LIB_PREFIX) 2487])dnl 2488dnl --------------------------------------------------------------------------- 2489dnl CF_MAKEFLAGS version: 14 updated: 2011/03/31 19:29:46 2490dnl ------------ 2491dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make' 2492dnl options to lower-levels. It's very useful for "make -n" -- if we have it. 2493dnl (GNU 'make' does both, something POSIX 'make', which happens to make the 2494dnl ${MAKEFLAGS} variable incompatible because it adds the assignments :-) 2495AC_DEFUN([CF_MAKEFLAGS], 2496[ 2497AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[ 2498 cf_cv_makeflags='' 2499 for cf_option in '-${MAKEFLAGS}' '${MFLAGS}' 2500 do 2501 cat >cf_makeflags.tmp <<CF_EOF 2502SHELL = /bin/sh 2503all : 2504 @ echo '.$cf_option' 2505CF_EOF 2506 cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp 2>/dev/null | fgrep -v "ing directory" | sed -e 's,[[ ]]*$,,'` 2507 case "$cf_result" in 2508 .*k) 2509 cf_result=`${MAKE:-make} -k -f cf_makeflags.tmp CC=cc 2>/dev/null` 2510 case "$cf_result" in 2511 .*CC=*) cf_cv_makeflags= 2512 ;; 2513 *) cf_cv_makeflags=$cf_option 2514 ;; 2515 esac 2516 break 2517 ;; 2518 .-) ;; 2519 *) echo "given option \"$cf_option\", no match \"$cf_result\"" 2520 ;; 2521 esac 2522 done 2523 rm -f cf_makeflags.tmp 2524]) 2525 2526AC_SUBST(cf_cv_makeflags) 2527])dnl 2528dnl --------------------------------------------------------------------------- 2529dnl CF_MAKE_TAGS version: 6 updated: 2010/10/23 15:52:32 2530dnl ------------ 2531dnl Generate tags/TAGS targets for makefiles. Do not generate TAGS if we have 2532dnl a monocase filesystem. 2533AC_DEFUN([CF_MAKE_TAGS],[ 2534AC_REQUIRE([CF_MIXEDCASE_FILENAMES]) 2535 2536AC_CHECK_PROGS(CTAGS, exctags ctags) 2537AC_CHECK_PROGS(ETAGS, exetags etags) 2538 2539AC_CHECK_PROG(MAKE_LOWER_TAGS, ${CTAGS:-ctags}, yes, no) 2540 2541if test "$cf_cv_mixedcase" = yes ; then 2542 AC_CHECK_PROG(MAKE_UPPER_TAGS, ${ETAGS:-etags}, yes, no) 2543else 2544 MAKE_UPPER_TAGS=no 2545fi 2546 2547if test "$MAKE_UPPER_TAGS" = yes ; then 2548 MAKE_UPPER_TAGS= 2549else 2550 MAKE_UPPER_TAGS="#" 2551fi 2552 2553if test "$MAKE_LOWER_TAGS" = yes ; then 2554 MAKE_LOWER_TAGS= 2555else 2556 MAKE_LOWER_TAGS="#" 2557fi 2558 2559AC_SUBST(CTAGS) 2560AC_SUBST(ETAGS) 2561 2562AC_SUBST(MAKE_UPPER_TAGS) 2563AC_SUBST(MAKE_LOWER_TAGS) 2564])dnl 2565dnl --------------------------------------------------------------------------- 2566dnl CF_MATH_LIB version: 8 updated: 2010/05/29 16:31:02 2567dnl ----------- 2568dnl Checks for libraries. At least one UNIX system, Apple Macintosh 2569dnl Rhapsody 5.5, does not have -lm. We cannot use the simpler 2570dnl AC_CHECK_LIB(m,sin), because that fails for C++. 2571AC_DEFUN([CF_MATH_LIB], 2572[ 2573AC_CACHE_CHECK(if -lm needed for math functions, 2574 cf_cv_need_libm,[ 2575 AC_TRY_LINK([ 2576 #include <stdio.h> 2577 #include <math.h> 2578 ], 2579 [double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)], 2580 [cf_cv_need_libm=no], 2581 [cf_cv_need_libm=yes])]) 2582if test "$cf_cv_need_libm" = yes 2583then 2584ifelse($1,,[ 2585 CF_ADD_LIB(m) 2586],[$1=-lm]) 2587fi 2588]) 2589dnl --------------------------------------------------------------------------- 2590dnl CF_MBSTATE_T version: 3 updated: 2007/03/25 15:55:36 2591dnl ------------ 2592dnl Check if mbstate_t is declared, and if so, which header file. 2593dnl This (including wchar.h) is needed on Tru64 5.0 to declare mbstate_t, 2594dnl as well as include stdio.h to work around a misuse of varargs in wchar.h 2595AC_DEFUN([CF_MBSTATE_T], 2596[ 2597AC_CACHE_CHECK(if we must include wchar.h to declare mbstate_t,cf_cv_mbstate_t,[ 2598AC_TRY_COMPILE([ 2599#include <stdlib.h> 2600#include <stdio.h> 2601#ifdef HAVE_LIBUTF8_H 2602#include <libutf8.h> 2603#endif], 2604 [mbstate_t state], 2605 [cf_cv_mbstate_t=no], 2606 [AC_TRY_COMPILE([ 2607#include <stdlib.h> 2608#include <stdio.h> 2609#include <wchar.h> 2610#ifdef HAVE_LIBUTF8_H 2611#include <libutf8.h> 2612#endif], 2613 [mbstate_t value], 2614 [cf_cv_mbstate_t=yes], 2615 [cf_cv_mbstate_t=unknown])])]) 2616 2617if test "$cf_cv_mbstate_t" = yes ; then 2618 AC_DEFINE(NEED_WCHAR_H) 2619fi 2620 2621if test "$cf_cv_mbstate_t" != unknown ; then 2622 AC_DEFINE(HAVE_MBSTATE_T) 2623fi 2624])dnl 2625dnl --------------------------------------------------------------------------- 2626dnl CF_MIXEDCASE_FILENAMES version: 3 updated: 2003/09/20 17:07:55 2627dnl ---------------------- 2628dnl Check if the file-system supports mixed-case filenames. If we're able to 2629dnl create a lowercase name and see it as uppercase, it doesn't support that. 2630AC_DEFUN([CF_MIXEDCASE_FILENAMES], 2631[ 2632AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[ 2633if test "$cross_compiling" = yes ; then 2634 case $target_alias in #(vi 2635 *-os2-emx*|*-msdosdjgpp*|*-cygwin*|*-mingw32*|*-uwin*) #(vi 2636 cf_cv_mixedcase=no 2637 ;; 2638 *) 2639 cf_cv_mixedcase=yes 2640 ;; 2641 esac 2642else 2643 rm -f conftest CONFTEST 2644 echo test >conftest 2645 if test -f CONFTEST ; then 2646 cf_cv_mixedcase=no 2647 else 2648 cf_cv_mixedcase=yes 2649 fi 2650 rm -f conftest CONFTEST 2651fi 2652]) 2653test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES) 2654])dnl 2655dnl --------------------------------------------------------------------------- 2656dnl CF_MSG_LOG version: 5 updated: 2010/10/23 15:52:32 2657dnl ---------- 2658dnl Write a debug message to config.log, along with the line number in the 2659dnl configure script. 2660AC_DEFUN([CF_MSG_LOG],[ 2661echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC 2662])dnl 2663dnl --------------------------------------------------------------------------- 2664dnl CF_NCURSES_CC_CHECK version: 4 updated: 2007/07/29 10:39:05 2665dnl ------------------- 2666dnl Check if we can compile with ncurses' header file 2667dnl $1 is the cache variable to set 2668dnl $2 is the header-file to include 2669dnl $3 is the root name (ncurses or ncursesw) 2670AC_DEFUN([CF_NCURSES_CC_CHECK],[ 2671 AC_TRY_COMPILE([ 2672]ifelse($3,ncursesw,[ 2673#define _XOPEN_SOURCE_EXTENDED 2674#undef HAVE_LIBUTF8_H /* in case we used CF_UTF8_LIB */ 2675#define HAVE_LIBUTF8_H /* to force ncurses' header file to use cchar_t */ 2676])[ 2677#include <$2>],[ 2678#ifdef NCURSES_VERSION 2679]ifelse($3,ncursesw,[ 2680#ifndef WACS_BSSB 2681 make an error 2682#endif 2683])[ 2684printf("%s\n", NCURSES_VERSION); 2685#else 2686#ifdef __NCURSES_H 2687printf("old\n"); 2688#else 2689 make an error 2690#endif 2691#endif 2692 ] 2693 ,[$1=$2] 2694 ,[$1=no]) 2695])dnl 2696dnl --------------------------------------------------------------------------- 2697dnl CF_NCURSES_CONFIG version: 9 updated: 2011/11/26 15:42:05 2698dnl ----------------- 2699dnl Tie together the configure-script macros for ncurses. 2700dnl Prefer the "-config" script from ncurses 6.x, to simplify analysis. 2701dnl Allow that to be overridden using the $NCURSES_CONFIG environment variable. 2702dnl 2703dnl $1 is the root library name (default: "ncurses") 2704AC_DEFUN([CF_NCURSES_CONFIG], 2705[ 2706cf_ncuconfig_root=ifelse($1,,ncurses,$1) 2707 2708echo "Looking for ${cf_ncuconfig_root}-config" 2709 2710CF_ACVERSION_CHECK(2.52, 2711 [AC_CHECK_TOOLS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)], 2712 [AC_PATH_PROGS(NCURSES_CONFIG, ${cf_ncuconfig_root}6-config ${cf_ncuconfig_root}5-config, none)]) 2713 2714if test "$NCURSES_CONFIG" != none ; then 2715 2716CPPFLAGS="$CPPFLAGS `$NCURSES_CONFIG --cflags`" 2717CF_ADD_LIBS(`$NCURSES_CONFIG --libs`) 2718 2719# even with config script, some packages use no-override for curses.h 2720CF_CURSES_HEADER(ifelse($1,,ncurses,$1)) 2721 2722dnl like CF_NCURSES_CPPFLAGS 2723AC_DEFINE(NCURSES) 2724 2725dnl like CF_NCURSES_LIBS 2726CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_ncuconfig_root) 2727AC_DEFINE_UNQUOTED($cf_nculib_ROOT) 2728 2729dnl like CF_NCURSES_VERSION 2730cf_cv_ncurses_version=`$NCURSES_CONFIG --version` 2731 2732else 2733 2734CF_NCURSES_CPPFLAGS(ifelse($1,,ncurses,$1)) 2735CF_NCURSES_LIBS(ifelse($1,,ncurses,$1)) 2736 2737fi 2738])dnl 2739dnl --------------------------------------------------------------------------- 2740dnl CF_NCURSES_CPPFLAGS version: 20 updated: 2010/11/20 17:02:38 2741dnl ------------------- 2742dnl Look for the SVr4 curses clone 'ncurses' in the standard places, adjusting 2743dnl the CPPFLAGS variable so we can include its header. 2744dnl 2745dnl The header files may be installed as either curses.h, or ncurses.h (would 2746dnl be obsolete, except that some packagers prefer this name to distinguish it 2747dnl from a "native" curses implementation). If not installed for overwrite, 2748dnl the curses.h file would be in an ncurses subdirectory (e.g., 2749dnl /usr/include/ncurses), but someone may have installed overwriting the 2750dnl vendor's curses. Only very old versions (pre-1.9.2d, the first autoconf'd 2751dnl version) of ncurses don't define either __NCURSES_H or NCURSES_VERSION in 2752dnl the header. 2753dnl 2754dnl If the installer has set $CFLAGS or $CPPFLAGS so that the ncurses header 2755dnl is already in the include-path, don't even bother with this, since we cannot 2756dnl easily determine which file it is. In this case, it has to be <curses.h>. 2757dnl 2758dnl The optional parameter gives the root name of the library, in case it is 2759dnl not installed as the default curses library. That is how the 2760dnl wide-character version of ncurses is installed. 2761AC_DEFUN([CF_NCURSES_CPPFLAGS], 2762[AC_REQUIRE([CF_WITH_CURSES_DIR]) 2763 2764AC_PROVIDE([CF_CURSES_CPPFLAGS])dnl 2765cf_ncuhdr_root=ifelse($1,,ncurses,$1) 2766 2767test -n "$cf_cv_curses_dir" && \ 2768test "$cf_cv_curses_dir" != "no" && { \ 2769 CF_ADD_INCDIR($cf_cv_curses_dir/include/$cf_ncuhdr_root) 2770} 2771 2772AC_CACHE_CHECK(for $cf_ncuhdr_root header in include-path, cf_cv_ncurses_h,[ 2773 cf_header_list="$cf_ncuhdr_root/curses.h $cf_ncuhdr_root/ncurses.h" 2774 ( test "$cf_ncuhdr_root" = ncurses || test "$cf_ncuhdr_root" = ncursesw ) && cf_header_list="$cf_header_list curses.h ncurses.h" 2775 for cf_header in $cf_header_list 2776 do 2777 CF_NCURSES_CC_CHECK(cf_cv_ncurses_h,$cf_header,$1) 2778 test "$cf_cv_ncurses_h" != no && break 2779 done 2780]) 2781 2782CF_NCURSES_HEADER 2783CF_TERM_HEADER 2784 2785# some applications need this, but should check for NCURSES_VERSION 2786AC_DEFINE(NCURSES) 2787 2788CF_NCURSES_VERSION 2789])dnl 2790dnl --------------------------------------------------------------------------- 2791dnl CF_NCURSES_HEADER version: 2 updated: 2008/03/23 14:48:54 2792dnl ----------------- 2793dnl Find a "curses" header file, e.g,. "curses.h", or one of the more common 2794dnl variations of ncurses' installs. 2795dnl 2796dnl See also CF_CURSES_HEADER, which sets the same cache variable. 2797AC_DEFUN([CF_NCURSES_HEADER],[ 2798 2799if test "$cf_cv_ncurses_h" != no ; then 2800 cf_cv_ncurses_header=$cf_cv_ncurses_h 2801else 2802 2803AC_CACHE_CHECK(for $cf_ncuhdr_root include-path, cf_cv_ncurses_h2,[ 2804 test -n "$verbose" && echo 2805 CF_HEADER_PATH(cf_search,$cf_ncuhdr_root) 2806 test -n "$verbose" && echo search path $cf_search 2807 cf_save2_CPPFLAGS="$CPPFLAGS" 2808 for cf_incdir in $cf_search 2809 do 2810 CF_ADD_INCDIR($cf_incdir) 2811 for cf_header in \ 2812 ncurses.h \ 2813 curses.h 2814 do 2815 CF_NCURSES_CC_CHECK(cf_cv_ncurses_h2,$cf_header,$1) 2816 if test "$cf_cv_ncurses_h2" != no ; then 2817 cf_cv_ncurses_h2=$cf_incdir/$cf_header 2818 test -n "$verbose" && echo $ac_n " ... found $ac_c" 1>&AC_FD_MSG 2819 break 2820 fi 2821 test -n "$verbose" && echo " ... tested $cf_incdir/$cf_header" 1>&AC_FD_MSG 2822 done 2823 CPPFLAGS="$cf_save2_CPPFLAGS" 2824 test "$cf_cv_ncurses_h2" != no && break 2825 done 2826 test "$cf_cv_ncurses_h2" = no && AC_MSG_ERROR(not found) 2827 ]) 2828 2829 CF_DIRNAME(cf_1st_incdir,$cf_cv_ncurses_h2) 2830 cf_cv_ncurses_header=`basename $cf_cv_ncurses_h2` 2831 if test `basename $cf_1st_incdir` = $cf_ncuhdr_root ; then 2832 cf_cv_ncurses_header=$cf_ncuhdr_root/$cf_cv_ncurses_header 2833 fi 2834 CF_ADD_INCDIR($cf_1st_incdir) 2835 2836fi 2837 2838# Set definitions to allow ifdef'ing for ncurses.h 2839 2840case $cf_cv_ncurses_header in # (vi 2841*ncurses.h) 2842 AC_DEFINE(HAVE_NCURSES_H) 2843 ;; 2844esac 2845 2846case $cf_cv_ncurses_header in # (vi 2847ncurses/curses.h|ncurses/ncurses.h) 2848 AC_DEFINE(HAVE_NCURSES_NCURSES_H) 2849 ;; 2850ncursesw/curses.h|ncursesw/ncurses.h) 2851 AC_DEFINE(HAVE_NCURSESW_NCURSES_H) 2852 ;; 2853esac 2854 2855])dnl 2856dnl --------------------------------------------------------------------------- 2857dnl CF_NCURSES_LIBS version: 16 updated: 2010/11/20 17:02:38 2858dnl --------------- 2859dnl Look for the ncurses library. This is a little complicated on Linux, 2860dnl because it may be linked with the gpm (general purpose mouse) library. 2861dnl Some distributions have gpm linked with (bsd) curses, which makes it 2862dnl unusable with ncurses. However, we don't want to link with gpm unless 2863dnl ncurses has a dependency, since gpm is normally set up as a shared library, 2864dnl and the linker will record a dependency. 2865dnl 2866dnl The optional parameter gives the root name of the library, in case it is 2867dnl not installed as the default curses library. That is how the 2868dnl wide-character version of ncurses is installed. 2869AC_DEFUN([CF_NCURSES_LIBS], 2870[AC_REQUIRE([CF_NCURSES_CPPFLAGS]) 2871 2872cf_nculib_root=ifelse($1,,ncurses,$1) 2873 # This works, except for the special case where we find gpm, but 2874 # ncurses is in a nonstandard location via $LIBS, and we really want 2875 # to link gpm. 2876cf_ncurses_LIBS="" 2877cf_ncurses_SAVE="$LIBS" 2878AC_CHECK_LIB(gpm,Gpm_Open, 2879 [AC_CHECK_LIB(gpm,initscr, 2880 [LIBS="$cf_ncurses_SAVE"], 2881 [cf_ncurses_LIBS="-lgpm"])]) 2882 2883case $host_os in #(vi 2884freebsd*) 2885 # This is only necessary if you are linking against an obsolete 2886 # version of ncurses (but it should do no harm, since it's static). 2887 if test "$cf_nculib_root" = ncurses ; then 2888 AC_CHECK_LIB(mytinfo,tgoto,[cf_ncurses_LIBS="-lmytinfo $cf_ncurses_LIBS"]) 2889 fi 2890 ;; 2891esac 2892 2893CF_ADD_LIBS($cf_ncurses_LIBS) 2894 2895if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) 2896then 2897 CF_ADD_LIBS(-l$cf_nculib_root) 2898else 2899 CF_FIND_LIBRARY($cf_nculib_root,$cf_nculib_root, 2900 [#include <${cf_cv_ncurses_header:-curses.h}>], 2901 [initscr()], 2902 initscr) 2903fi 2904 2905if test -n "$cf_ncurses_LIBS" ; then 2906 AC_MSG_CHECKING(if we can link $cf_nculib_root without $cf_ncurses_LIBS) 2907 cf_ncurses_SAVE="$LIBS" 2908 for p in $cf_ncurses_LIBS ; do 2909 q=`echo $LIBS | sed -e "s%$p %%" -e "s%$p$%%"` 2910 if test "$q" != "$LIBS" ; then 2911 LIBS="$q" 2912 fi 2913 done 2914 AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>], 2915 [initscr(); mousemask(0,0); tgoto((char *)0, 0, 0);], 2916 [AC_MSG_RESULT(yes)], 2917 [AC_MSG_RESULT(no) 2918 LIBS="$cf_ncurses_SAVE"]) 2919fi 2920 2921CF_UPPER(cf_nculib_ROOT,HAVE_LIB$cf_nculib_root) 2922AC_DEFINE_UNQUOTED($cf_nculib_ROOT) 2923])dnl 2924dnl --------------------------------------------------------------------------- 2925dnl CF_NCURSES_VERSION version: 13 updated: 2010/10/23 15:54:49 2926dnl ------------------ 2927dnl Check for the version of ncurses, to aid in reporting bugs, etc. 2928dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS. We don't use 2929dnl AC_REQUIRE since that does not work with the shell's if/then/else/fi. 2930AC_DEFUN([CF_NCURSES_VERSION], 2931[ 2932AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 2933AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[ 2934 cf_cv_ncurses_version=no 2935 cf_tempfile=out$$ 2936 rm -f $cf_tempfile 2937 AC_TRY_RUN([ 2938#include <${cf_cv_ncurses_header:-curses.h}> 2939#include <stdio.h> 2940int main() 2941{ 2942 FILE *fp = fopen("$cf_tempfile", "w"); 2943#ifdef NCURSES_VERSION 2944# ifdef NCURSES_VERSION_PATCH 2945 fprintf(fp, "%s.%d\n", NCURSES_VERSION, NCURSES_VERSION_PATCH); 2946# else 2947 fprintf(fp, "%s\n", NCURSES_VERSION); 2948# endif 2949#else 2950# ifdef __NCURSES_H 2951 fprintf(fp, "old\n"); 2952# else 2953 make an error 2954# endif 2955#endif 2956 ${cf_cv_main_return:-return}(0); 2957}],[ 2958 cf_cv_ncurses_version=`cat $cf_tempfile`],,[ 2959 2960 # This will not work if the preprocessor splits the line after the 2961 # Autoconf token. The 'unproto' program does that. 2962 cat > conftest.$ac_ext <<EOF 2963#include <${cf_cv_ncurses_header:-curses.h}> 2964#undef Autoconf 2965#ifdef NCURSES_VERSION 2966Autoconf NCURSES_VERSION 2967#else 2968#ifdef __NCURSES_H 2969Autoconf "old" 2970#endif 2971; 2972#endif 2973EOF 2974 cf_try="$ac_cpp conftest.$ac_ext 2>&AC_FD_CC | grep '^Autoconf ' >conftest.out" 2975 AC_TRY_EVAL(cf_try) 2976 if test -f conftest.out ; then 2977 cf_out=`cat conftest.out | sed -e 's%^Autoconf %%' -e 's%^[[^"]]*"%%' -e 's%".*%%'` 2978 test -n "$cf_out" && cf_cv_ncurses_version="$cf_out" 2979 rm -f conftest.out 2980 fi 2981]) 2982 rm -f $cf_tempfile 2983]) 2984test "$cf_cv_ncurses_version" = no || AC_DEFINE(NCURSES) 2985])dnl 2986dnl --------------------------------------------------------------------------- 2987dnl CF_NO_LEAKS_OPTION version: 4 updated: 2006/12/16 14:24:05 2988dnl ------------------ 2989dnl see CF_WITH_NO_LEAKS 2990AC_DEFUN([CF_NO_LEAKS_OPTION],[ 2991AC_MSG_CHECKING(if you want to use $1 for testing) 2992AC_ARG_WITH($1, 2993 [$2], 2994 [AC_DEFINE($3)ifelse([$4],,[ 2995 $4 2996]) 2997 : ${with_cflags:=-g} 2998 : ${with_no_leaks:=yes} 2999 with_$1=yes], 3000 [with_$1=]) 3001AC_MSG_RESULT(${with_$1:-no}) 3002 3003case .$with_cflags in #(vi 3004.*-g*) 3005 case .$CFLAGS in #(vi 3006 .*-g*) #(vi 3007 ;; 3008 *) 3009 CF_ADD_CFLAGS([-g]) 3010 ;; 3011 esac 3012 ;; 3013esac 3014])dnl 3015dnl --------------------------------------------------------------------------- 3016dnl CF_OUR_MESSAGES version: 7 updated: 2004/09/12 19:45:55 3017dnl --------------- 3018dnl Check if we use the messages included with this program 3019dnl 3020dnl $1 specifies either Makefile or makefile, defaulting to the former. 3021dnl 3022dnl Sets variables which can be used to substitute in makefiles: 3023dnl MSG_DIR_MAKE - to make ./po directory 3024dnl SUB_MAKEFILE - makefile in ./po directory (see CF_BUNDLED_INTL) 3025dnl 3026AC_DEFUN([CF_OUR_MESSAGES], 3027[ 3028cf_makefile=ifelse($1,,Makefile,$1) 3029 3030use_our_messages=no 3031if test "$USE_NLS" = yes ; then 3032if test -d $srcdir/po ; then 3033AC_MSG_CHECKING(if we should use included message-library) 3034 AC_ARG_ENABLE(included-msgs, 3035 [ --disable-included-msgs use included messages, for i18n support], 3036 [use_our_messages=$enableval], 3037 [use_our_messages=yes]) 3038fi 3039AC_MSG_RESULT($use_our_messages) 3040fi 3041 3042MSG_DIR_MAKE="#" 3043if test "$use_our_messages" = yes 3044then 3045 SUB_MAKEFILE="$SUB_MAKEFILE po/$cf_makefile.in:$srcdir/po/$cf_makefile.inn" 3046 MSG_DIR_MAKE= 3047fi 3048 3049AC_SUBST(MSG_DIR_MAKE) 3050AC_SUBST(SUB_MAKEFILE) 3051])dnl 3052dnl --------------------------------------------------------------------------- 3053dnl CF_PATHSEP version: 5 updated: 2010/05/26 05:38:42 3054dnl ---------- 3055dnl Provide a value for the $PATH and similar separator 3056AC_DEFUN([CF_PATHSEP], 3057[ 3058 case $cf_cv_system_name in 3059 os2*) PATH_SEPARATOR=';' ;; 3060 *) PATH_SEPARATOR=':' ;; 3061 esac 3062ifelse([$1],,,[$1=$PATH_SEPARATOR]) 3063 AC_SUBST(PATH_SEPARATOR) 3064])dnl 3065dnl --------------------------------------------------------------------------- 3066dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42 3067dnl -------------- 3068dnl Check the argument to see that it looks like a pathname. Rewrite it if it 3069dnl begins with one of the prefix/exec_prefix variables, and then again if the 3070dnl result begins with 'NONE'. This is necessary to work around autoconf's 3071dnl delayed evaluation of those symbols. 3072AC_DEFUN([CF_PATH_SYNTAX],[ 3073if test "x$prefix" != xNONE; then 3074 cf_path_syntax="$prefix" 3075else 3076 cf_path_syntax="$ac_default_prefix" 3077fi 3078 3079case ".[$]$1" in #(vi 3080.\[$]\(*\)*|.\'*\'*) #(vi 3081 ;; 3082..|./*|.\\*) #(vi 3083 ;; 3084.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX 3085 ;; 3086.\[$]{*prefix}*) #(vi 3087 eval $1="[$]$1" 3088 case ".[$]$1" in #(vi 3089 .NONE/*) 3090 $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%` 3091 ;; 3092 esac 3093 ;; #(vi 3094.no|.NONE/*) 3095 $1=`echo [$]$1 | sed -e s%NONE%$cf_path_syntax%` 3096 ;; 3097*) 3098 ifelse([$2],,[AC_MSG_ERROR([expected a pathname, not \"[$]$1\"])],$2) 3099 ;; 3100esac 3101])dnl 3102dnl --------------------------------------------------------------------------- 3103dnl CF_POSIX_C_SOURCE version: 8 updated: 2010/05/26 05:38:42 3104dnl ----------------- 3105dnl Define _POSIX_C_SOURCE to the given level, and _POSIX_SOURCE if needed. 3106dnl 3107dnl POSIX.1-1990 _POSIX_SOURCE 3108dnl POSIX.1-1990 and _POSIX_SOURCE and 3109dnl POSIX.2-1992 C-Language _POSIX_C_SOURCE=2 3110dnl Bindings Option 3111dnl POSIX.1b-1993 _POSIX_C_SOURCE=199309L 3112dnl POSIX.1c-1996 _POSIX_C_SOURCE=199506L 3113dnl X/Open 2000 _POSIX_C_SOURCE=200112L 3114dnl 3115dnl Parameters: 3116dnl $1 is the nominal value for _POSIX_C_SOURCE 3117AC_DEFUN([CF_POSIX_C_SOURCE], 3118[ 3119cf_POSIX_C_SOURCE=ifelse([$1],,199506L,[$1]) 3120 3121cf_save_CFLAGS="$CFLAGS" 3122cf_save_CPPFLAGS="$CPPFLAGS" 3123 3124CF_REMOVE_DEFINE(cf_trim_CFLAGS,$cf_save_CFLAGS,_POSIX_C_SOURCE) 3125CF_REMOVE_DEFINE(cf_trim_CPPFLAGS,$cf_save_CPPFLAGS,_POSIX_C_SOURCE) 3126 3127AC_CACHE_CHECK(if we should define _POSIX_C_SOURCE,cf_cv_posix_c_source,[ 3128 CF_MSG_LOG(if the symbol is already defined go no further) 3129 AC_TRY_COMPILE([#include <sys/types.h>],[ 3130#ifndef _POSIX_C_SOURCE 3131make an error 3132#endif], 3133 [cf_cv_posix_c_source=no], 3134 [cf_want_posix_source=no 3135 case .$cf_POSIX_C_SOURCE in #(vi 3136 .[[12]]??*) #(vi 3137 cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" 3138 ;; 3139 .2) #(vi 3140 cf_cv_posix_c_source="-D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE" 3141 cf_want_posix_source=yes 3142 ;; 3143 .*) 3144 cf_want_posix_source=yes 3145 ;; 3146 esac 3147 if test "$cf_want_posix_source" = yes ; then 3148 AC_TRY_COMPILE([#include <sys/types.h>],[ 3149#ifdef _POSIX_SOURCE 3150make an error 3151#endif],[], 3152 cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE") 3153 fi 3154 CF_MSG_LOG(ifdef from value $cf_POSIX_C_SOURCE) 3155 CFLAGS="$cf_trim_CFLAGS" 3156 CPPFLAGS="$cf_trim_CPPFLAGS $cf_cv_posix_c_source" 3157 CF_MSG_LOG(if the second compile does not leave our definition intact error) 3158 AC_TRY_COMPILE([#include <sys/types.h>],[ 3159#ifndef _POSIX_C_SOURCE 3160make an error 3161#endif],, 3162 [cf_cv_posix_c_source=no]) 3163 CFLAGS="$cf_save_CFLAGS" 3164 CPPFLAGS="$cf_save_CPPFLAGS" 3165 ]) 3166]) 3167 3168if test "$cf_cv_posix_c_source" != no ; then 3169 CFLAGS="$cf_trim_CFLAGS" 3170 CPPFLAGS="$cf_trim_CPPFLAGS" 3171 CF_ADD_CFLAGS($cf_cv_posix_c_source) 3172fi 3173 3174])dnl 3175dnl --------------------------------------------------------------------------- 3176dnl CF_PROG_CC_U_D version: 1 updated: 2005/07/14 16:59:30 3177dnl -------------- 3178dnl Check if C (preprocessor) -U and -D options are processed in the order 3179dnl given rather than by type of option. Some compilers insist on apply all 3180dnl of the -U options after all of the -D options. Others allow mixing them, 3181dnl and may predefine symbols that conflict with those we define. 3182AC_DEFUN([CF_PROG_CC_U_D], 3183[ 3184AC_CACHE_CHECK(if $CC -U and -D options work together,cf_cv_cc_u_d_options,[ 3185 cf_save_CPPFLAGS="$CPPFLAGS" 3186 CPPFLAGS="-UU_D_OPTIONS -DU_D_OPTIONS -DD_U_OPTIONS -UD_U_OPTIONS" 3187 AC_TRY_COMPILE([],[ 3188#ifndef U_D_OPTIONS 3189make an undefined-error 3190#endif 3191#ifdef D_U_OPTIONS 3192make a defined-error 3193#endif 3194 ],[ 3195 cf_cv_cc_u_d_options=yes],[ 3196 cf_cv_cc_u_d_options=no]) 3197 CPPFLAGS="$cf_save_CPPFLAGS" 3198]) 3199])dnl 3200dnl --------------------------------------------------------------------------- 3201dnl CF_PROG_EXT version: 10 updated: 2004/01/03 19:28:18 3202dnl ----------- 3203dnl Compute $PROG_EXT, used for non-Unix ports, such as OS/2 EMX. 3204AC_DEFUN([CF_PROG_EXT], 3205[ 3206AC_REQUIRE([CF_CHECK_CACHE]) 3207case $cf_cv_system_name in 3208os2*) 3209 CFLAGS="$CFLAGS -Zmt" 3210 CPPFLAGS="$CPPFLAGS -D__ST_MT_ERRNO__" 3211 CXXFLAGS="$CXXFLAGS -Zmt" 3212 # autoconf's macro sets -Zexe and suffix both, which conflict:w 3213 LDFLAGS="$LDFLAGS -Zmt -Zcrtdll" 3214 ac_cv_exeext=.exe 3215 ;; 3216esac 3217 3218AC_EXEEXT 3219AC_OBJEXT 3220 3221PROG_EXT="$EXEEXT" 3222AC_SUBST(PROG_EXT) 3223test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT") 3224])dnl 3225dnl --------------------------------------------------------------------------- 3226dnl CF_PROG_LINT version: 2 updated: 2009/08/12 04:43:14 3227dnl ------------ 3228AC_DEFUN([CF_PROG_LINT], 3229[ 3230AC_CHECK_PROGS(LINT, tdlint lint alint splint lclint) 3231AC_SUBST(LINT_OPTS) 3232])dnl 3233dnl --------------------------------------------------------------------------- 3234dnl CF_REMOVE_DEFINE version: 3 updated: 2010/01/09 11:05:50 3235dnl ---------------- 3236dnl Remove all -U and -D options that refer to the given symbol from a list 3237dnl of C compiler options. This works around the problem that not all 3238dnl compilers process -U and -D options from left-to-right, so a -U option 3239dnl cannot be used to cancel the effect of a preceding -D option. 3240dnl 3241dnl $1 = target (which could be the same as the source variable) 3242dnl $2 = source (including '$') 3243dnl $3 = symbol to remove 3244define([CF_REMOVE_DEFINE], 3245[ 3246$1=`echo "$2" | \ 3247 sed -e 's/-[[UD]]'"$3"'\(=[[^ ]]*\)\?[[ ]]/ /g' \ 3248 -e 's/-[[UD]]'"$3"'\(=[[^ ]]*\)\?[$]//g'` 3249])dnl 3250dnl --------------------------------------------------------------------------- 3251dnl CF_RPATH_HACK version: 9 updated: 2011/02/13 13:31:33 3252dnl ------------- 3253AC_DEFUN([CF_RPATH_HACK], 3254[ 3255AC_REQUIRE([CF_LD_RPATH_OPT]) 3256AC_MSG_CHECKING(for updated LDFLAGS) 3257if test -n "$LD_RPATH_OPT" ; then 3258 AC_MSG_RESULT(maybe) 3259 3260 AC_CHECK_PROGS(cf_ldd_prog,ldd,no) 3261 cf_rpath_list="/usr/lib /lib" 3262 if test "$cf_ldd_prog" != no 3263 then 3264 cf_rpath_oops= 3265 3266AC_TRY_LINK([#include <stdio.h>], 3267 [printf("Hello");], 3268 [cf_rpath_oops=`$cf_ldd_prog conftest$ac_exeext | fgrep ' not found' | sed -e 's% =>.*$%%' |sort -u` 3269 cf_rpath_list=`$cf_ldd_prog conftest$ac_exeext | fgrep / | sed -e 's%^.*[[ ]]/%/%' -e 's%/[[^/]][[^/]]*$%%' |sort -u`]) 3270 3271 # If we passed the link-test, but get a "not found" on a given library, 3272 # this could be due to inept reconfiguration of gcc to make it only 3273 # partly honor /usr/local/lib (or whatever). Sometimes this behavior 3274 # is intentional, e.g., installing gcc in /usr/bin and suppressing the 3275 # /usr/local libraries. 3276 if test -n "$cf_rpath_oops" 3277 then 3278 for cf_rpath_src in $cf_rpath_oops 3279 do 3280 for cf_rpath_dir in \ 3281 /usr/local \ 3282 /usr/pkg \ 3283 /opt/sfw 3284 do 3285 if test -f $cf_rpath_dir/lib/$cf_rpath_src 3286 then 3287 CF_VERBOSE(...adding -L$cf_rpath_dir/lib to LDFLAGS for $cf_rpath_src) 3288 LDFLAGS="$LDFLAGS -L$cf_rpath_dir/lib" 3289 break 3290 fi 3291 done 3292 done 3293 fi 3294 fi 3295 3296 CF_VERBOSE(...checking EXTRA_LDFLAGS $EXTRA_LDFLAGS) 3297 3298 CF_RPATH_HACK_2(LDFLAGS) 3299 CF_RPATH_HACK_2(LIBS) 3300 3301 CF_VERBOSE(...checked EXTRA_LDFLAGS $EXTRA_LDFLAGS) 3302fi 3303AC_SUBST(EXTRA_LDFLAGS) 3304])dnl 3305dnl --------------------------------------------------------------------------- 3306dnl CF_RPATH_HACK_2 version: 6 updated: 2010/04/17 16:31:24 3307dnl --------------- 3308dnl Do one set of substitutions for CF_RPATH_HACK, adding an rpath option to 3309dnl EXTRA_LDFLAGS for each -L option found. 3310dnl 3311dnl $cf_rpath_list contains a list of directories to ignore. 3312dnl 3313dnl $1 = variable name to update. The LDFLAGS variable should be the only one, 3314dnl but LIBS often has misplaced -L options. 3315AC_DEFUN([CF_RPATH_HACK_2], 3316[ 3317CF_VERBOSE(...checking $1 [$]$1) 3318 3319cf_rpath_dst= 3320for cf_rpath_src in [$]$1 3321do 3322 case $cf_rpath_src in #(vi 3323 -L*) #(vi 3324 3325 # check if this refers to a directory which we will ignore 3326 cf_rpath_skip=no 3327 if test -n "$cf_rpath_list" 3328 then 3329 for cf_rpath_item in $cf_rpath_list 3330 do 3331 if test "x$cf_rpath_src" = "x-L$cf_rpath_item" 3332 then 3333 cf_rpath_skip=yes 3334 break 3335 fi 3336 done 3337 fi 3338 3339 if test "$cf_rpath_skip" = no 3340 then 3341 # transform the option 3342 if test "$LD_RPATH_OPT" = "-R " ; then 3343 cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%-R %"` 3344 else 3345 cf_rpath_tmp=`echo "$cf_rpath_src" |sed -e "s%-L%$LD_RPATH_OPT%"` 3346 fi 3347 3348 # if we have not already added this, add it now 3349 cf_rpath_tst=`echo "$EXTRA_LDFLAGS" | sed -e "s%$cf_rpath_tmp %%"` 3350 if test "x$cf_rpath_tst" = "x$EXTRA_LDFLAGS" 3351 then 3352 CF_VERBOSE(...Filter $cf_rpath_src ->$cf_rpath_tmp) 3353 EXTRA_LDFLAGS="$cf_rpath_tmp $EXTRA_LDFLAGS" 3354 fi 3355 fi 3356 ;; 3357 esac 3358 cf_rpath_dst="$cf_rpath_dst $cf_rpath_src" 3359done 3360$1=$cf_rpath_dst 3361 3362CF_VERBOSE(...checked $1 [$]$1) 3363AC_SUBST(EXTRA_LDFLAGS) 3364])dnl 3365dnl --------------------------------------------------------------------------- 3366dnl CF_SUBDIR_PATH version: 6 updated: 2010/04/21 06:20:50 3367dnl -------------- 3368dnl Construct a search-list for a nonstandard header/lib-file 3369dnl $1 = the variable to return as result 3370dnl $2 = the package name 3371dnl $3 = the subdirectory, e.g., bin, include or lib 3372AC_DEFUN([CF_SUBDIR_PATH], 3373[ 3374$1= 3375 3376CF_ADD_SUBDIR_PATH($1,$2,$3,/usr,$prefix) 3377CF_ADD_SUBDIR_PATH($1,$2,$3,$prefix,NONE) 3378CF_ADD_SUBDIR_PATH($1,$2,$3,/usr/local,$prefix) 3379CF_ADD_SUBDIR_PATH($1,$2,$3,/opt,$prefix) 3380CF_ADD_SUBDIR_PATH($1,$2,$3,[$]HOME,$prefix) 3381])dnl 3382dnl --------------------------------------------------------------------------- 3383dnl CF_SUBST version: 4 updated: 2006/06/17 12:33:03 3384dnl -------- 3385dnl Shorthand macro for substituting things that the user may override 3386dnl with an environment variable. 3387dnl 3388dnl $1 = long/descriptive name 3389dnl $2 = environment variable 3390dnl $3 = default value 3391AC_DEFUN([CF_SUBST], 3392[AC_CACHE_VAL(cf_cv_subst_$2,[ 3393AC_MSG_CHECKING(for $1 (symbol $2)) 3394CF_SUBST_IF([-z "[$]$2"], [$2], [$3]) 3395cf_cv_subst_$2=[$]$2 3396AC_MSG_RESULT([$]$2) 3397]) 3398])dnl 3399dnl --------------------------------------------------------------------------- 3400dnl CF_SYSTYPE version: 3 updated: 2001/02/03 00:14:59 3401dnl ---------- 3402dnl Derive the system-type (our main clue to the method of building shared 3403dnl libraries). 3404AC_DEFUN([CF_SYSTYPE], 3405[ 3406AC_MSG_CHECKING(for system type) 3407AC_CACHE_VAL(cf_cv_systype,[ 3408AC_ARG_WITH(system-type, 3409[ --with-system-type=XXX test: override derived host system-type], 3410[cf_cv_systype=$withval], 3411[ 3412cf_cv_systype="`(uname -s || hostname || echo unknown) 2>/dev/null |sed -e s'/[[:\/.-]]/_/'g | sed 1q`" 3413if test -z "$cf_cv_systype"; then cf_cv_systype=unknown;fi 3414])]) 3415AC_MSG_RESULT($cf_cv_systype) 3416])dnl 3417dnl --------------------------------------------------------------------------- 3418dnl CF_SYS_NAME version: 3 updated: 2008/03/23 14:48:54 3419dnl ----------- 3420dnl Derive the system name, as a check for reusing the autoconf cache 3421AC_DEFUN([CF_SYS_NAME], 3422[ 3423SYS_NAME=`(uname -s -r || uname -a || hostname) 2>/dev/null | sed 1q` 3424test -z "$SYS_NAME" && SYS_NAME=unknown 3425AC_DEFINE_UNQUOTED(SYS_NAME,"$SYS_NAME") 3426 3427AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$SYS_NAME"]) 3428 3429if test ".$SYS_NAME" != ".$cf_cv_system_name" ; then 3430 AC_MSG_RESULT("Cached system name does not agree with actual") 3431 AC_MSG_ERROR("Please remove config.cache and try again.") 3432fi]) 3433dnl --------------------------------------------------------------------------- 3434dnl CF_TERM_HEADER version: 2 updated: 2010/10/23 15:54:49 3435dnl -------------- 3436dnl Look for term.h, which is part of X/Open curses. It defines the interface 3437dnl to terminfo database. Usually it is in the same include-path as curses.h, 3438dnl but some packagers change this, breaking various applications. 3439AC_DEFUN([CF_TERM_HEADER],[ 3440AC_CACHE_CHECK(for terminfo header, cf_cv_term_header,[ 3441case ${cf_cv_ncurses_header} in #(vi 3442*/ncurses.h|*/ncursesw.h) #(vi 3443 cf_term_header=`echo "$cf_cv_ncurses_header" | sed -e 's%ncurses[[^.]]*\.h$%term.h%'` 3444 ;; 3445*) 3446 cf_term_header=term.h 3447 ;; 3448esac 3449 3450for cf_test in $cf_term_header "ncurses/term.h" "ncursesw/term.h" 3451do 3452AC_TRY_COMPILE([#include <stdio.h> 3453#include <${cf_cv_ncurses_header:-curses.h}> 3454#include <$cf_test> 3455],[int x = auto_left_margin],[ 3456 cf_cv_term_header="$cf_test"],[ 3457 cf_cv_term_header=unknown 3458 ]) 3459 test "$cf_cv_term_header" != unknown && break 3460done 3461]) 3462 3463# Set definitions to allow ifdef'ing to accommodate subdirectories 3464 3465case $cf_cv_term_header in # (vi 3466*term.h) 3467 AC_DEFINE(HAVE_TERM_H) 3468 ;; 3469esac 3470 3471case $cf_cv_term_header in # (vi 3472ncurses/term.h) #(vi 3473 AC_DEFINE(HAVE_NCURSES_TERM_H) 3474 ;; 3475ncursesw/term.h) 3476 AC_DEFINE(HAVE_NCURSESW_TERM_H) 3477 ;; 3478esac 3479])dnl 3480dnl --------------------------------------------------------------------------- 3481dnl CF_TRY_XOPEN_SOURCE version: 1 updated: 2011/10/30 17:09:50 3482dnl ------------------- 3483dnl If _XOPEN_SOURCE is not defined in the compile environment, check if we 3484dnl can define it successfully. 3485AC_DEFUN([CF_TRY_XOPEN_SOURCE],[ 3486AC_CACHE_CHECK(if we should define _XOPEN_SOURCE,cf_cv_xopen_source,[ 3487 AC_TRY_COMPILE([ 3488#include <stdlib.h> 3489#include <string.h> 3490#include <sys/types.h> 3491],[ 3492#ifndef _XOPEN_SOURCE 3493make an error 3494#endif], 3495 [cf_cv_xopen_source=no], 3496 [cf_save="$CPPFLAGS" 3497 CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" 3498 AC_TRY_COMPILE([ 3499#include <stdlib.h> 3500#include <string.h> 3501#include <sys/types.h> 3502],[ 3503#ifdef _XOPEN_SOURCE 3504make an error 3505#endif], 3506 [cf_cv_xopen_source=no], 3507 [cf_cv_xopen_source=$cf_XOPEN_SOURCE]) 3508 CPPFLAGS="$cf_save" 3509 ]) 3510]) 3511 3512if test "$cf_cv_xopen_source" != no ; then 3513 CF_REMOVE_DEFINE(CFLAGS,$CFLAGS,_XOPEN_SOURCE) 3514 CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,_XOPEN_SOURCE) 3515 cf_temp_xopen_source="-D_XOPEN_SOURCE=$cf_cv_xopen_source" 3516 CF_ADD_CFLAGS($cf_temp_xopen_source) 3517fi 3518]) 3519dnl --------------------------------------------------------------------------- 3520dnl CF_UNION_WAIT version: 5 updated: 1997/11/23 14:49:44 3521dnl ------------- 3522dnl Check to see if the BSD-style union wait is declared. Some platforms may 3523dnl use this, though it is deprecated in favor of the 'int' type in Posix. 3524dnl Some vendors provide a bogus implementation that declares union wait, but 3525dnl uses the 'int' type instead; we try to spot these by checking for the 3526dnl associated macros. 3527dnl 3528dnl Ahem. Some implementers cast the status value to an int*, as an attempt to 3529dnl use the macros for either union wait or int. So we do a check compile to 3530dnl see if the macros are defined and apply to an int. 3531dnl 3532dnl Sets: $cf_cv_type_unionwait 3533dnl Defines: HAVE_TYPE_UNIONWAIT 3534AC_DEFUN([CF_UNION_WAIT], 3535[ 3536AC_REQUIRE([CF_WAIT_HEADERS]) 3537AC_MSG_CHECKING([for union wait]) 3538AC_CACHE_VAL(cf_cv_type_unionwait,[ 3539 AC_TRY_LINK($cf_wait_headers, 3540 [int x; 3541 int y = WEXITSTATUS(x); 3542 int z = WTERMSIG(x); 3543 wait(&x); 3544 ], 3545 [cf_cv_type_unionwait=no 3546 echo compiles ok w/o union wait 1>&AC_FD_CC 3547 ],[ 3548 AC_TRY_LINK($cf_wait_headers, 3549 [union wait x; 3550#ifdef WEXITSTATUS 3551 int y = WEXITSTATUS(x); 3552#endif 3553#ifdef WTERMSIG 3554 int z = WTERMSIG(x); 3555#endif 3556 wait(&x); 3557 ], 3558 [cf_cv_type_unionwait=yes 3559 echo compiles ok with union wait and possibly macros too 1>&AC_FD_CC 3560 ], 3561 [cf_cv_type_unionwait=no])])]) 3562AC_MSG_RESULT($cf_cv_type_unionwait) 3563test $cf_cv_type_unionwait = yes && AC_DEFINE(HAVE_TYPE_UNIONWAIT) 3564])dnl 3565dnl --------------------------------------------------------------------------- 3566dnl CF_UPPER version: 5 updated: 2001/01/29 23:40:59 3567dnl -------- 3568dnl Make an uppercase version of a variable 3569dnl $1=uppercase($2) 3570AC_DEFUN([CF_UPPER], 3571[ 3572$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%` 3573])dnl 3574dnl --------------------------------------------------------------------------- 3575dnl CF_UTF8_LIB version: 7 updated: 2010/06/20 09:24:28 3576dnl ----------- 3577dnl Check for multibyte support, and if not found, utf8 compatibility library 3578AC_DEFUN([CF_UTF8_LIB], 3579[ 3580AC_CACHE_CHECK(for multibyte character support,cf_cv_utf8_lib,[ 3581 cf_save_LIBS="$LIBS" 3582 AC_TRY_LINK([ 3583#include <stdlib.h>],[putwc(0,0);], 3584 [cf_cv_utf8_lib=yes], 3585 [CF_FIND_LINKAGE([ 3586#include <libutf8.h>],[putwc(0,0);],utf8, 3587 [cf_cv_utf8_lib=add-on], 3588 [cf_cv_utf8_lib=no]) 3589])]) 3590 3591# HAVE_LIBUTF8_H is used by ncurses if curses.h is shared between 3592# ncurses/ncursesw: 3593if test "$cf_cv_utf8_lib" = "add-on" ; then 3594 AC_DEFINE(HAVE_LIBUTF8_H) 3595 CF_ADD_INCDIR($cf_cv_header_path_utf8) 3596 CF_ADD_LIBDIR($cf_cv_library_path_utf8) 3597 CF_ADD_LIBS($cf_cv_library_file_utf8) 3598fi 3599])dnl 3600dnl --------------------------------------------------------------------------- 3601dnl CF_VERBOSE version: 3 updated: 2007/07/29 09:55:12 3602dnl ---------- 3603dnl Use AC_VERBOSE w/o the warnings 3604AC_DEFUN([CF_VERBOSE], 3605[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG 3606CF_MSG_LOG([$1]) 3607])dnl 3608dnl --------------------------------------------------------------------------- 3609dnl CF_VERSION_INFO version: 4 updated: 2011/01/02 19:09:47 3610dnl --------------- 3611dnl Define several useful symbols derived from the VERSION file. A separate 3612dnl file is preferred to embedding the version numbers in various scripts. 3613dnl (automake is a textbook-example of why the latter is a bad idea, but there 3614dnl are others). 3615dnl 3616dnl The file contents are: 3617dnl libtool-version release-version patch-version 3618dnl or 3619dnl release-version 3620dnl where 3621dnl libtool-version (see ?) consists of 3 integers separated by '.' 3622dnl release-version consists of a major version and minor version 3623dnl separated by '.', optionally followed by a patch-version 3624dnl separated by '-'. The minor version need not be an 3625dnl integer (but it is preferred). 3626dnl patch-version is an integer in the form yyyymmdd, so ifdef's and 3627dnl scripts can easily compare versions. 3628dnl 3629dnl If libtool is used, the first form is required, since CF_WITH_LIBTOOL 3630dnl simply extracts the first field using 'cut -f1'. 3631dnl 3632dnl Optional parameters: 3633dnl $1 = internal name for package 3634dnl $2 = external name for package 3635AC_DEFUN([CF_VERSION_INFO], 3636[ 3637if test -f $srcdir/VERSION ; then 3638 AC_MSG_CHECKING(for package version) 3639 3640 # if there are not enough fields, cut returns the last one... 3641 cf_field1=`sed -e '2,$d' $srcdir/VERSION|cut -f1` 3642 cf_field2=`sed -e '2,$d' $srcdir/VERSION|cut -f2` 3643 cf_field3=`sed -e '2,$d' $srcdir/VERSION|cut -f3` 3644 3645 # this is how CF_BUNDLED_INTL uses $VERSION: 3646 VERSION="$cf_field1" 3647 3648 VERSION_MAJOR=`echo "$cf_field2" | sed -e 's/\..*//'` 3649 test -z "$VERSION_MAJOR" && AC_MSG_ERROR(missing major-version) 3650 3651 VERSION_MINOR=`echo "$cf_field2" | sed -e 's/^[[^.]]*\.//' -e 's/-.*//'` 3652 test -z "$VERSION_MINOR" && AC_MSG_ERROR(missing minor-version) 3653 3654 AC_MSG_RESULT(${VERSION_MAJOR}.${VERSION_MINOR}) 3655 3656 AC_MSG_CHECKING(for package patch date) 3657 VERSION_PATCH=`echo "$cf_field3" | sed -e 's/^[[^-]]*-//'` 3658 case .$VERSION_PATCH in 3659 .) 3660 AC_MSG_ERROR(missing patch-date $VERSION_PATCH) 3661 ;; 3662 .[[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]][[0-9]]) 3663 ;; 3664 *) 3665 AC_MSG_ERROR(illegal patch-date $VERSION_PATCH) 3666 ;; 3667 esac 3668 AC_MSG_RESULT($VERSION_PATCH) 3669else 3670 AC_MSG_ERROR(did not find $srcdir/VERSION) 3671fi 3672 3673# show the actual data that we have for versions: 3674CF_VERBOSE(VERSION $VERSION) 3675CF_VERBOSE(VERSION_MAJOR $VERSION_MAJOR) 3676CF_VERBOSE(VERSION_MINOR $VERSION_MINOR) 3677CF_VERBOSE(VERSION_PATCH $VERSION_PATCH) 3678 3679AC_SUBST(VERSION) 3680AC_SUBST(VERSION_MAJOR) 3681AC_SUBST(VERSION_MINOR) 3682AC_SUBST(VERSION_PATCH) 3683 3684dnl if a package name is given, define its corresponding version info. We 3685dnl need the package name to ensure that the defined symbols are unique. 3686ifelse($1,,,[ 3687 cf_PACKAGE=$1 3688 PACKAGE=ifelse($2,,$1,$2) 3689 AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE") 3690 AC_SUBST(PACKAGE) 3691 CF_UPPER(cf_PACKAGE,$cf_PACKAGE) 3692 AC_DEFINE_UNQUOTED(${cf_PACKAGE}_VERSION,"${VERSION_MAJOR}.${VERSION_MINOR}") 3693 AC_DEFINE_UNQUOTED(${cf_PACKAGE}_PATCHDATE,${VERSION_PATCH}) 3694]) 3695])dnl 3696dnl --------------------------------------------------------------------------- 3697dnl CF_WAIT_HEADERS version: 2 updated: 1997/10/21 19:45:33 3698dnl --------------- 3699dnl Build up an expression $cf_wait_headers with the header files needed to 3700dnl compile against the prototypes for 'wait()', 'waitpid()', etc. Assume it's 3701dnl Posix, which uses <sys/types.h> and <sys/wait.h>, but allow SVr4 variation 3702dnl with <wait.h>. 3703AC_DEFUN([CF_WAIT_HEADERS], 3704[ 3705AC_HAVE_HEADERS(sys/wait.h) 3706cf_wait_headers="#include <sys/types.h> 3707" 3708if test $ac_cv_header_sys_wait_h = yes; then 3709cf_wait_headers="$cf_wait_headers 3710#include <sys/wait.h> 3711" 3712else 3713AC_HAVE_HEADERS(wait.h) 3714AC_HAVE_HEADERS(waitstatus.h) 3715if test $ac_cv_header_wait_h = yes; then 3716cf_wait_headers="$cf_wait_headers 3717#include <wait.h> 3718" 3719fi 3720if test $ac_cv_header_waitstatus_h = yes; then 3721cf_wait_headers="$cf_wait_headers 3722#include <waitstatus.h> 3723" 3724fi 3725fi 3726])dnl 3727dnl --------------------------------------------------------------------------- 3728dnl CF_WITH_CURSES_DIR version: 3 updated: 2010/11/20 17:02:38 3729dnl ------------------ 3730dnl Wrapper for AC_ARG_WITH to specify directory under which to look for curses 3731dnl libraries. 3732AC_DEFUN([CF_WITH_CURSES_DIR],[ 3733 3734AC_MSG_CHECKING(for specific curses-directory) 3735AC_ARG_WITH(curses-dir, 3736 [ --with-curses-dir=DIR directory in which (n)curses is installed], 3737 [cf_cv_curses_dir=$withval], 3738 [cf_cv_curses_dir=no]) 3739AC_MSG_RESULT($cf_cv_curses_dir) 3740 3741if ( test -n "$cf_cv_curses_dir" && test "$cf_cv_curses_dir" != "no" ) 3742then 3743 CF_PATH_SYNTAX(withval) 3744 if test -d "$cf_cv_curses_dir" 3745 then 3746 CF_ADD_INCDIR($cf_cv_curses_dir/include) 3747 CF_ADD_LIBDIR($cf_cv_curses_dir/lib) 3748 fi 3749fi 3750])dnl 3751dnl --------------------------------------------------------------------------- 3752dnl CF_WITH_DBMALLOC version: 7 updated: 2010/06/21 17:26:47 3753dnl ---------------- 3754dnl Configure-option for dbmalloc. The optional parameter is used to override 3755dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests. 3756AC_DEFUN([CF_WITH_DBMALLOC],[ 3757CF_NO_LEAKS_OPTION(dbmalloc, 3758 [ --with-dbmalloc test: use Conor Cahill's dbmalloc library], 3759 [USE_DBMALLOC]) 3760 3761if test "$with_dbmalloc" = yes ; then 3762 AC_CHECK_HEADER(dbmalloc.h, 3763 [AC_CHECK_LIB(dbmalloc,[debug_malloc]ifelse([$1],,[],[,$1]))]) 3764fi 3765])dnl 3766dnl --------------------------------------------------------------------------- 3767dnl CF_WITH_DMALLOC version: 7 updated: 2010/06/21 17:26:47 3768dnl --------------- 3769dnl Configure-option for dmalloc. The optional parameter is used to override 3770dnl the updating of $LIBS, e.g., to avoid conflict with subsequent tests. 3771AC_DEFUN([CF_WITH_DMALLOC],[ 3772CF_NO_LEAKS_OPTION(dmalloc, 3773 [ --with-dmalloc test: use Gray Watson's dmalloc library], 3774 [USE_DMALLOC]) 3775 3776if test "$with_dmalloc" = yes ; then 3777 AC_CHECK_HEADER(dmalloc.h, 3778 [AC_CHECK_LIB(dmalloc,[dmalloc_debug]ifelse([$1],,[],[,$1]))]) 3779fi 3780])dnl 3781dnl --------------------------------------------------------------------------- 3782dnl CF_WITH_LIBTOOL version: 28 updated: 2011/07/02 15:40:32 3783dnl --------------- 3784dnl Provide a configure option to incorporate libtool. Define several useful 3785dnl symbols for the makefile rules. 3786dnl 3787dnl The reference to AC_PROG_LIBTOOL does not normally work, since it uses 3788dnl macros from libtool.m4 which is in the aclocal directory of automake. 3789dnl Following is a simple script which turns on the AC_PROG_LIBTOOL macro. 3790dnl But that still does not work properly since the macro is expanded outside 3791dnl the CF_WITH_LIBTOOL macro: 3792dnl 3793dnl #!/bin/sh 3794dnl ACLOCAL=`aclocal --print-ac-dir` 3795dnl if test -z "$ACLOCAL" ; then 3796dnl echo cannot find aclocal directory 3797dnl exit 1 3798dnl elif test ! -f $ACLOCAL/libtool.m4 ; then 3799dnl echo cannot find libtool.m4 file 3800dnl exit 1 3801dnl fi 3802dnl 3803dnl LOCAL=aclocal.m4 3804dnl ORIG=aclocal.m4.orig 3805dnl 3806dnl trap "mv $ORIG $LOCAL" 0 1 2 5 15 3807dnl rm -f $ORIG 3808dnl mv $LOCAL $ORIG 3809dnl 3810dnl # sed the LIBTOOL= assignment to omit the current directory? 3811dnl sed -e 's/^LIBTOOL=.*/LIBTOOL=${LIBTOOL:-libtool}/' $ACLOCAL/libtool.m4 >>$LOCAL 3812dnl cat $ORIG >>$LOCAL 3813dnl 3814dnl autoconf-257 $* 3815dnl 3816AC_DEFUN([CF_WITH_LIBTOOL], 3817[ 3818AC_REQUIRE([CF_DISABLE_LIBTOOL_VERSION]) 3819ifdef([AC_PROG_LIBTOOL],,[ 3820LIBTOOL= 3821]) 3822# common library maintenance symbols that are convenient for libtool scripts: 3823LIB_CREATE='${AR} -cr' 3824LIB_OBJECT='${OBJECTS}' 3825LIB_SUFFIX=.a 3826LIB_PREP="$RANLIB" 3827 3828# symbols used to prop libtool up to enable it to determine what it should be 3829# doing: 3830LIB_CLEAN= 3831LIB_COMPILE= 3832LIB_LINK='${CC}' 3833LIB_INSTALL= 3834LIB_UNINSTALL= 3835 3836AC_MSG_CHECKING(if you want to build libraries with libtool) 3837AC_ARG_WITH(libtool, 3838 [ --with-libtool generate libraries with libtool], 3839 [with_libtool=$withval], 3840 [with_libtool=no]) 3841AC_MSG_RESULT($with_libtool) 3842if test "$with_libtool" != "no"; then 3843ifdef([AC_PROG_LIBTOOL],[ 3844 # missing_content_AC_PROG_LIBTOOL{{ 3845 AC_PROG_LIBTOOL 3846 # missing_content_AC_PROG_LIBTOOL}} 3847],[ 3848 if test "$with_libtool" != "yes" ; then 3849 CF_PATH_SYNTAX(with_libtool) 3850 LIBTOOL=$with_libtool 3851 else 3852 AC_PATH_PROG(LIBTOOL,libtool) 3853 fi 3854 if test -z "$LIBTOOL" ; then 3855 AC_MSG_ERROR(Cannot find libtool) 3856 fi 3857])dnl 3858 LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o' 3859 LIB_OBJECT='${OBJECTS:.o=.lo}' 3860 LIB_SUFFIX=.la 3861 LIB_CLEAN='${LIBTOOL} --mode=clean' 3862 LIB_COMPILE='${LIBTOOL} --mode=compile' 3863 LIB_LINK='${LIBTOOL} --mode=link ${CC} ${LIBTOOL_OPTS}' 3864 LIB_INSTALL='${LIBTOOL} --mode=install' 3865 LIB_UNINSTALL='${LIBTOOL} --mode=uninstall' 3866 LIB_PREP=: 3867 3868 # Show the version of libtool 3869 AC_MSG_CHECKING(version of libtool) 3870 3871 # Save the version in a cache variable - this is not entirely a good 3872 # thing, but the version string from libtool is very ugly, and for 3873 # bug reports it might be useful to have the original string. "(" 3874 cf_cv_libtool_version=`$LIBTOOL --version 2>&1 | sed -e '/^$/d' |sed -e '2,$d' -e 's/([[^)]]*)//g' -e 's/^[[^1-9]]*//' -e 's/[[^0-9.]].*//'` 3875 AC_MSG_RESULT($cf_cv_libtool_version) 3876 if test -z "$cf_cv_libtool_version" ; then 3877 AC_MSG_ERROR(This is not GNU libtool) 3878 fi 3879 3880 # special hack to add -no-undefined (which libtool should do for itself) 3881 LT_UNDEF= 3882 case "$cf_cv_system_name" in #(vi 3883 cygwin*|mingw32*|uwin*|aix[[4-7]]) #(vi 3884 LT_UNDEF=-no-undefined 3885 ;; 3886 esac 3887 AC_SUBST([LT_UNDEF]) 3888 3889 # special hack to add --tag option for C++ compiler 3890 case $cf_cv_libtool_version in #(vi 3891 1.[[5-9]]*|[[2-9]].[[0-9.a-z]]*) #(vi 3892 LIBTOOL_CXX="$LIBTOOL --tag=CXX" 3893 LIBTOOL="$LIBTOOL --tag=CC" 3894 ;; 3895 *) 3896 LIBTOOL_CXX="$LIBTOOL" 3897 ;; 3898 esac 3899else 3900 LIBTOOL="" 3901 LIBTOOL_CXX="" 3902fi 3903 3904test -z "$LIBTOOL" && ECHO_LT= 3905 3906AC_SUBST(LIBTOOL) 3907AC_SUBST(LIBTOOL_CXX) 3908AC_SUBST(LIBTOOL_OPTS) 3909 3910AC_SUBST(LIB_CREATE) 3911AC_SUBST(LIB_OBJECT) 3912AC_SUBST(LIB_SUFFIX) 3913AC_SUBST(LIB_PREP) 3914 3915AC_SUBST(LIB_CLEAN) 3916AC_SUBST(LIB_COMPILE) 3917AC_SUBST(LIB_LINK) 3918AC_SUBST(LIB_INSTALL) 3919AC_SUBST(LIB_UNINSTALL) 3920 3921])dnl 3922dnl --------------------------------------------------------------------------- 3923dnl CF_WITH_LIBTOOL_OPTS version: 2 updated: 2007/04/08 18:14:54 3924dnl -------------------- 3925dnl Allow user to pass additional libtool options into the library creation 3926dnl and link steps. The main use for this is to do something like 3927dnl ./configure --with-libtool-opts=-static 3928dnl to get the same behavior as automake-flavored 3929dnl ./configure --enable-static 3930AC_DEFUN([CF_WITH_LIBTOOL_OPTS],[ 3931AC_MSG_CHECKING(for additional libtool options) 3932AC_ARG_WITH(libtool-opts, 3933 [ --with-libtool-opts=XXX specify additional libtool options], 3934 [with_libtool_opts=$withval], 3935 [with_libtool_opts=no]) 3936AC_MSG_RESULT($with_libtool_opts) 3937 3938case .$with_libtool_opts in 3939.yes|.no|.) 3940 ;; 3941*) 3942 LIBTOOL_OPTS=$with_libtool_opts 3943 ;; 3944esac 3945 3946AC_SUBST(LIBTOOL_OPTS) 3947])dnl 3948dnl --------------------------------------------------------------------------- 3949dnl CF_WITH_NO_LEAKS version: 1 updated: 2006/12/14 18:00:21 3950dnl ---------------- 3951AC_DEFUN([CF_WITH_NO_LEAKS],[ 3952 3953AC_REQUIRE([CF_WITH_DMALLOC]) 3954AC_REQUIRE([CF_WITH_DBMALLOC]) 3955AC_REQUIRE([CF_WITH_PURIFY]) 3956AC_REQUIRE([CF_WITH_VALGRIND]) 3957 3958AC_MSG_CHECKING(if you want to perform memory-leak testing) 3959AC_ARG_WITH(no-leaks, 3960 [ --with-no-leaks test: free permanent memory, analyze leaks], 3961 [AC_DEFINE(NO_LEAKS) 3962 cf_doalloc=".${with_dmalloc}${with_dbmalloc}${with_purify}${with_valgrind}" 3963 case ${cf_doalloc} in #(vi 3964 *yes*) ;; 3965 *) AC_DEFINE(DOALLOC,10000) ;; 3966 esac 3967 with_no_leaks=yes], 3968 [with_no_leaks=]) 3969AC_MSG_RESULT($with_no_leaks) 3970])dnl 3971dnl --------------------------------------------------------------------------- 3972dnl CF_WITH_PURIFY version: 2 updated: 2006/12/14 18:43:43 3973dnl -------------- 3974AC_DEFUN([CF_WITH_PURIFY],[ 3975CF_NO_LEAKS_OPTION(purify, 3976 [ --with-purify test: use Purify], 3977 [USE_PURIFY], 3978 [LINK_PREFIX="$LINK_PREFIX purify"]) 3979AC_SUBST(LINK_PREFIX) 3980])dnl 3981dnl --------------------------------------------------------------------------- 3982dnl CF_WITH_VALGRIND version: 1 updated: 2006/12/14 18:00:21 3983dnl ---------------- 3984AC_DEFUN([CF_WITH_VALGRIND],[ 3985CF_NO_LEAKS_OPTION(valgrind, 3986 [ --with-valgrind test: use valgrind], 3987 [USE_VALGRIND]) 3988])dnl 3989dnl --------------------------------------------------------------------------- 3990dnl CF_WITH_WARNINGS version: 5 updated: 2004/07/23 14:40:34 3991dnl ---------------- 3992dnl Combine the checks for gcc features into a configure-script option 3993dnl 3994dnl Parameters: 3995dnl $1 - see CF_GCC_WARNINGS 3996AC_DEFUN([CF_WITH_WARNINGS], 3997[ 3998if ( test "$GCC" = yes || test "$GXX" = yes ) 3999then 4000AC_MSG_CHECKING(if you want to check for gcc warnings) 4001AC_ARG_WITH(warnings, 4002 [ --with-warnings test: turn on gcc warnings], 4003 [cf_opt_with_warnings=$withval], 4004 [cf_opt_with_warnings=no]) 4005AC_MSG_RESULT($cf_opt_with_warnings) 4006if test "$cf_opt_with_warnings" != no ; then 4007 CF_GCC_ATTRIBUTES 4008 CF_GCC_WARNINGS([$1]) 4009fi 4010fi 4011])dnl 4012dnl --------------------------------------------------------------------------- 4013dnl CF_XOPEN_CURSES version: 11 updated: 2011/01/18 18:15:30 4014dnl --------------- 4015dnl Test if we should define X/Open source for curses, needed on Digital Unix 4016dnl 4.x, to see the extended functions, but breaks on IRIX 6.x. 4017dnl 4018dnl The getbegyx() check is needed for HPUX, which omits legacy macros such 4019dnl as getbegy(). The latter is better design, but the former is standard. 4020AC_DEFUN([CF_XOPEN_CURSES], 4021[ 4022AC_REQUIRE([CF_CURSES_CPPFLAGS])dnl 4023AC_CACHE_CHECK(if we must define _XOPEN_SOURCE_EXTENDED,cf_cv_need_xopen_extension,[ 4024AC_TRY_LINK([ 4025#include <stdlib.h> 4026#include <${cf_cv_ncurses_header:-curses.h}>],[ 4027#if defined(NCURSES_VERSION_PATCH) 4028#if (NCURSES_VERSION_PATCH < 20100501) && (NCURSES_VERSION_PATCH >= 20100403) 4029 make an error 4030#endif 4031#endif 4032 long x = winnstr(stdscr, "", 0); 4033 int x1, y1; 4034 getbegyx(stdscr, y1, x1)], 4035 [cf_cv_need_xopen_extension=no], 4036 [AC_TRY_LINK([ 4037#define _XOPEN_SOURCE_EXTENDED 4038#include <stdlib.h> 4039#include <${cf_cv_ncurses_header:-curses.h}>],[ 4040#ifdef NCURSES_VERSION 4041 cchar_t check; 4042 int check2 = curs_set((int)sizeof(check)); 4043#endif 4044 long x = winnstr(stdscr, "", 0); 4045 int x1, y1; 4046 getbegyx(stdscr, y1, x1)], 4047 [cf_cv_need_xopen_extension=yes], 4048 [cf_cv_need_xopen_extension=unknown])])]) 4049test $cf_cv_need_xopen_extension = yes && CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE_EXTENDED" 4050])dnl 4051dnl --------------------------------------------------------------------------- 4052dnl CF_XOPEN_SOURCE version: 42 updated: 2012/01/07 08:26:49 4053dnl --------------- 4054dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions, 4055dnl or adapt to the vendor's definitions to get equivalent functionality, 4056dnl without losing the common non-POSIX features. 4057dnl 4058dnl Parameters: 4059dnl $1 is the nominal value for _XOPEN_SOURCE 4060dnl $2 is the nominal value for _POSIX_C_SOURCE 4061AC_DEFUN([CF_XOPEN_SOURCE],[ 4062 4063cf_XOPEN_SOURCE=ifelse([$1],,500,[$1]) 4064cf_POSIX_C_SOURCE=ifelse([$2],,199506L,[$2]) 4065cf_xopen_source= 4066 4067case $host_os in #(vi 4068aix[[4-7]]*) #(vi 4069 cf_xopen_source="-D_ALL_SOURCE" 4070 ;; 4071cygwin) #(vi 4072 cf_XOPEN_SOURCE=600 4073 ;; 4074darwin[[0-8]].*) #(vi 4075 cf_xopen_source="-D_APPLE_C_SOURCE" 4076 ;; 4077darwin*) #(vi 4078 cf_xopen_source="-D_DARWIN_C_SOURCE" 4079 cf_XOPEN_SOURCE= 4080 ;; 4081freebsd*|dragonfly*) #(vi 4082 # 5.x headers associate 4083 # _XOPEN_SOURCE=600 with _POSIX_C_SOURCE=200112L 4084 # _XOPEN_SOURCE=500 with _POSIX_C_SOURCE=199506L 4085 cf_POSIX_C_SOURCE=200112L 4086 cf_XOPEN_SOURCE=600 4087 cf_xopen_source="-D_BSD_TYPES -D__BSD_VISIBLE -D_POSIX_C_SOURCE=$cf_POSIX_C_SOURCE -D_XOPEN_SOURCE=$cf_XOPEN_SOURCE" 4088 ;; 4089hpux11*) #(vi 4090 cf_xopen_source="-D_HPUX_SOURCE -D_XOPEN_SOURCE=500" 4091 ;; 4092hpux*) #(vi 4093 cf_xopen_source="-D_HPUX_SOURCE" 4094 ;; 4095irix[[56]].*) #(vi 4096 cf_xopen_source="-D_SGI_SOURCE" 4097 cf_XOPEN_SOURCE= 4098 ;; 4099linux*|gnu*|mint*|k*bsd*-gnu) #(vi 4100 CF_GNU_SOURCE 4101 ;; 4102mirbsd*) #(vi 4103 # setting _XOPEN_SOURCE or _POSIX_SOURCE breaks <sys/select.h> and other headers which use u_int / u_short types 4104 cf_XOPEN_SOURCE= 4105 CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) 4106 ;; 4107netbsd*) #(vi 4108 cf_xopen_source="-D_NETBSD_SOURCE" # setting _XOPEN_SOURCE breaks IPv6 for lynx on NetBSD 1.6, breaks xterm, is not needed for ncursesw 4109 ;; 4110openbsd[[4-9]]*) #(vi 4111 # setting _XOPEN_SOURCE lower than 500 breaks g++ compile with wchar.h, needed for ncursesw 4112 cf_xopen_source="-D_BSD_SOURCE" 4113 cf_XOPEN_SOURCE=600 4114 ;; 4115openbsd*) #(vi 4116 # setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw 4117 ;; 4118osf[[45]]*) #(vi 4119 cf_xopen_source="-D_OSF_SOURCE" 4120 ;; 4121nto-qnx*) #(vi 4122 cf_xopen_source="-D_QNX_SOURCE" 4123 ;; 4124sco*) #(vi 4125 # setting _XOPEN_SOURCE breaks Lynx on SCO Unix / OpenServer 4126 ;; 4127solaris2.*) #(vi 4128 cf_xopen_source="-D__EXTENSIONS__" 4129 ;; 4130*) 4131 CF_TRY_XOPEN_SOURCE 4132 CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE) 4133 ;; 4134esac 4135 4136if test -n "$cf_xopen_source" ; then 4137 CF_ADD_CFLAGS($cf_xopen_source) 4138fi 4139 4140dnl In anything but the default case, we may have system-specific setting 4141dnl which is still not guaranteed to provide all of the entrypoints that 4142dnl _XOPEN_SOURCE would yield. 4143if test -n "$cf_XOPEN_SOURCE" && test -z "$cf_cv_xopen_source" ; then 4144 AC_MSG_CHECKING(if _XOPEN_SOURCE really is set) 4145 AC_TRY_COMPILE([#include <stdlib.h>],[ 4146#ifndef _XOPEN_SOURCE 4147make an error 4148#endif], 4149 [cf_XOPEN_SOURCE_set=yes], 4150 [cf_XOPEN_SOURCE_set=no]) 4151 AC_MSG_RESULT($cf_XOPEN_SOURCE_set) 4152 if test $cf_XOPEN_SOURCE_set = yes 4153 then 4154 AC_TRY_COMPILE([#include <stdlib.h>],[ 4155#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE 4156make an error 4157#endif], 4158 [cf_XOPEN_SOURCE_set_ok=yes], 4159 [cf_XOPEN_SOURCE_set_ok=no]) 4160 if test $cf_XOPEN_SOURCE_set_ok = no 4161 then 4162 AC_MSG_WARN(_XOPEN_SOURCE is lower than requested) 4163 fi 4164 else 4165 CF_TRY_XOPEN_SOURCE 4166 fi 4167fi 4168]) 4169dnl --------------------------------------------------------------------------- 4170dnl CF__CURSES_HEAD version: 2 updated: 2010/10/23 15:54:49 4171dnl --------------- 4172dnl Define a reusable chunk which includes <curses.h> and <term.h> when they 4173dnl are both available. 4174define([CF__CURSES_HEAD],[ 4175#ifdef HAVE_XCURSES 4176#include <xcurses.h> 4177char * XCursesProgramName = "test"; 4178#else 4179#include <${cf_cv_ncurses_header:-curses.h}> 4180#if defined(NCURSES_VERSION) && defined(HAVE_NCURSESW_TERM_H) 4181#include <ncursesw/term.h> 4182#elif defined(NCURSES_VERSION) && defined(HAVE_NCURSES_TERM_H) 4183#include <ncurses/term.h> 4184#elif defined(HAVE_TERM_H) 4185#include <term.h> 4186#endif 4187#endif 4188]) 4189dnl --------------------------------------------------------------------------- 4190dnl CF__ICONV_BODY version: 2 updated: 2007/07/26 17:35:47 4191dnl -------------- 4192dnl Test-code needed for iconv compile-checks 4193define([CF__ICONV_BODY],[ 4194 iconv_t cd = iconv_open("",""); 4195 iconv(cd,NULL,NULL,NULL,NULL); 4196 iconv_close(cd);] 4197)dnl 4198dnl --------------------------------------------------------------------------- 4199dnl CF__ICONV_HEAD version: 1 updated: 2007/07/26 15:57:03 4200dnl -------------- 4201dnl Header-files needed for iconv compile-checks 4202define([CF__ICONV_HEAD],[ 4203#include <stdlib.h> 4204#include <iconv.h>] 4205)dnl 4206dnl --------------------------------------------------------------------------- 4207dnl CF__INTL_BODY version: 1 updated: 2007/07/26 17:35:47 4208dnl ------------- 4209dnl Test-code needed for libintl compile-checks 4210dnl $1 = parameter 2 from AM_WITH_NLS 4211define([CF__INTL_BODY],[ 4212 bindtextdomain ("", ""); 4213 return (int) gettext ("") 4214 ifelse([$1], need-ngettext, [ + (int) ngettext ("", "", 0)], []) 4215 [ + _nl_msg_cat_cntr] 4216]) 4217dnl --------------------------------------------------------------------------- 4218dnl CF__INTL_HEAD version: 1 updated: 2007/07/26 17:35:47 4219dnl ------------- 4220dnl Header-files needed for libintl compile-checks 4221define([CF__INTL_HEAD],[ 4222#include <libintl.h> 4223extern int _nl_msg_cat_cntr; 4224])dnl 4225dnl --------------------------------------------------------------------------- 4226dnl jm_GLIBC21 version: 3 updated: 2002/10/27 23:21:42 4227dnl ---------- 4228dnl Inserted as requested by gettext 0.10.40 4229dnl File from /usr/share/aclocal 4230dnl glibc21.m4 4231dnl ==================== 4232dnl serial 2 4233dnl 4234dnl Test for the GNU C Library, version 2.1 or newer. 4235dnl From Bruno Haible. 4236AC_DEFUN([jm_GLIBC21], 4237 [ 4238 AC_CACHE_CHECK(whether we are using the GNU C Library 2.1 or newer, 4239 ac_cv_gnu_library_2_1, 4240 [AC_EGREP_CPP([Lucky GNU user], 4241 [ 4242#include <features.h> 4243#ifdef __GNU_LIBRARY__ 4244 #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 1) || (__GLIBC__ > 2) 4245 Lucky GNU user 4246 #endif 4247#endif 4248 ], 4249 ac_cv_gnu_library_2_1=yes, 4250 ac_cv_gnu_library_2_1=no) 4251 ] 4252 ) 4253 AC_SUBST(GLIBC21) 4254 GLIBC21="$ac_cv_gnu_library_2_1" 4255 ] 4256) 4257