1dnl*************************************************************************** 2dnl Copyright (c) 1998-2007,2008 Free Software Foundation, Inc. * 3dnl * 4dnl Permission is hereby granted, free of charge, to any person obtaining a * 5dnl copy of this software and associated documentation files (the * 6dnl "Software"), to deal in the Software without restriction, including * 7dnl without limitation the rights to use, copy, modify, merge, publish, * 8dnl distribute, distribute with modifications, sublicense, and/or sell * 9dnl copies of the Software, and to permit persons to whom the Software is * 10dnl furnished to do so, subject to the following conditions: * 11dnl * 12dnl The above copyright notice and this permission notice shall be included * 13dnl in all copies or substantial portions of the Software. * 14dnl * 15dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * 16dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF * 17dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. * 18dnl IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, * 19dnl DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR * 20dnl OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR * 21dnl THE USE OR OTHER DEALINGS IN THE SOFTWARE. * 22dnl * 23dnl Except as contained in this notice, the name(s) of the above copyright * 24dnl holders shall not be used in advertising or otherwise to promote the * 25dnl sale, use or other dealings in this Software without prior written * 26dnl authorization. * 27dnl*************************************************************************** 28dnl 29dnl Author: Thomas E. Dickey 1995-on 30dnl 31dnl $Id: configure.in,v 1.454 2008/10/18 14:53:32 tom Exp $ 32dnl Process this file with autoconf to produce a configure script. 33dnl 34dnl See http://invisible-island.net/autoconf/ for additional information. 35dnl 36dnl --------------------------------------------------------------------------- 37AC_PREREQ(2.13.20020210) 38AC_REVISION($Revision: 1.454 $) 39AC_INIT(ncurses/base/lib_initscr.c) 40AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) 41 42CF_TOP_BUILDDIR 43CF_SUBST_NCURSES_VERSION 44 45CF_WITH_REL_VERSION(NCURSES) 46CF_WITH_ABI_VERSION 47 48CF_CHECK_CACHE([AC_CANONICAL_SYSTEM]) 49AC_ARG_WITH(system-type, 50[ --with-system-type=XXX test: override derived host system-type], 51[AC_MSG_WARN(overriding system type to $withval) 52 cf_cv_system_name=$withval]) 53 54### Save the given $CFLAGS to allow user-override. 55cf_user_CFLAGS="$CFLAGS" 56 57### Default install-location 58CF_CFG_DEFAULTS 59 60### Checks for programs. 61AC_PROG_CC 62CF_GCC_VERSION 63 64AC_PROG_CPP 65AC_PROG_GCC_TRADITIONAL 66CF_PROG_CC_C_O(CC) 67AC_ISC_POSIX 68CF_ANSI_CC_REQD 69CF_PROG_EXT 70CF_PROG_LDCONFIG 71 72dnl DEFECT in autoconf 2.12: an attempt to set policy, this breaks the 73dnl configure script by not letting us test if C++ 74dnl is present, making this option necessary. 75AC_MSG_CHECKING(if you want to ensure bool is consistent with C++) 76AC_ARG_WITH(cxx, 77 [ --without-cxx do not adjust ncurses bool to match C++], 78 [cf_with_cxx=$withval], 79 [cf_with_cxx=yes]) 80AC_MSG_RESULT($cf_with_cxx) 81if test "X$cf_with_cxx" = Xno ; then 82 CXX="" 83 GXX="" 84else 85 # with autoconf 2.13, we can change the error to a warning: 86 pushdef([AC_MSG_ERROR], 87 [AC_MSG_RESULT(no) 88 AC_MSG_WARN([You don't have any C++ compiler, too bad]) 89 cf_with_cxx=no; CXX=""; GXX="";])dnl 90 AC_PROG_CXX 91 popdef([AC_MSG_ERROR])dnl 92 # autoconf 2.5x removed the error - by hardcoding it to g++. 93 if test "$CXX" = "g++" ; then 94 AC_PATH_PROG(CXX,g++) 95 fi 96 if test "$CXX" = "g++" ; then 97 AC_MSG_WARN(ignoring hardcoded g++) 98 cf_with_cxx=no; CXX=""; GXX=""; 99 fi 100fi 101 102CF_GXX_VERSION 103case $GXX_VERSION in 1041*|2.[[0-6]]*) 105 # GXX=""; CXX=""; ac_cv_prog_gxx=no 106 # cf_cxx_library=no 107 AC_MSG_WARN(templates do not work) 108 ;; 109esac 110 111AC_MSG_CHECKING(if you want to build C++ binding and demo) 112AC_ARG_WITH(cxx-binding, 113 [ --without-cxx-binding do not build C++ binding and demo], 114 [cf_with_cxx_binding=$withval], 115 [cf_with_cxx_binding=$cf_with_cxx]) 116AC_MSG_RESULT($cf_with_cxx_binding) 117 118AC_MSG_CHECKING(if you want to build with Ada95) 119AC_ARG_WITH(ada, 120 [ --without-ada suppress check for Ada95, don't build demo], 121 [cf_with_ada=$withval], 122 [cf_with_ada=yes]) 123AC_MSG_RESULT($cf_with_ada) 124 125AC_MSG_CHECKING(if you want to build programs such as tic) 126AC_ARG_WITH(progs, 127 [ --without-progs suppress build with programs (e.g., tic)], 128 [cf_with_progs=$withval], 129 [cf_with_progs=yes]) 130AC_MSG_RESULT($cf_with_progs) 131 132AC_MSG_CHECKING(if you wish to install curses.h) 133AC_ARG_WITH(curses-h, 134 [ --without-curses-h install curses.h as ncurses.h only], 135 [with_curses_h=$withval], 136 [with_curses_h=yes]) 137AC_MSG_RESULT($with_curses_h) 138 139modules_to_build="ncurses" 140if test "X$cf_with_progs" != Xno ; then 141modules_to_build="$modules_to_build progs tack" 142fi 143modules_to_build="$modules_to_build panel menu form" 144 145AC_ARG_PROGRAM 146 147CF_PROG_AWK 148CF_PROG_EGREP 149CF_PROG_INSTALL 150CF_PROG_LINT 151AC_PROG_LN_S 152 153AC_SYS_LONG_FILE_NAMES 154 155AC_MSG_CHECKING(if we should assume mixed-case filenames) 156AC_ARG_ENABLE(mixed-case, 157 [ --enable-mixed-case tic should assume mixed-case filenames], 158 [enable_mixedcase=$enableval], 159 [enable_mixedcase=auto]) 160AC_MSG_RESULT($enable_mixedcase) 161if test "$enable_mixedcase" = "auto" ; then 162 CF_MIXEDCASE_FILENAMES 163else 164 cf_cv_mixedcase=$enable_mixedcase 165 if test "$enable_mixedcase" = "yes" ; then 166 AC_DEFINE(MIXEDCASE_FILENAMES) 167 fi 168fi 169 170# do this after mixed-case option (tags/TAGS is not as important as tic). 171AC_PROG_MAKE_SET 172CF_MAKE_TAGS 173CF_MAKEFLAGS 174 175dnl These are standard among *NIX systems, but not when cross-compiling 176AC_CHECK_TOOL(RANLIB, ranlib, ':') 177AC_CHECK_TOOL(LD, ld, ld) 178AC_CHECK_TOOL(AR, ar, ar) 179CF_SUBST(archiver options,AR_OPTS,rv) 180 181dnl Special option for use by system-builders: the install-prefix is used to 182dnl adjust the location into which the actual install is done, so that an 183dnl archive can be built without modifying the host system's configuration. 184AC_MSG_CHECKING(if you have specified an install-prefix) 185AC_ARG_WITH(install-prefix, 186 [ --with-install-prefix prefixes actual install-location ($DESTDIR)], 187 [case "$withval" in #(vi 188 yes|no) #(vi 189 ;; 190 *) DESTDIR="$withval" 191 ;; 192 esac]) 193AC_MSG_RESULT($DESTDIR) 194AC_SUBST(DESTDIR) 195 196############################################################################### 197CF_HELP_MESSAGE(Build-Tools Needed to Compile Temporary Applications for Cross-compiling:) 198# If we're cross-compiling, allow the user to override the tools and their 199# options. The configure script is oriented toward identifying the host 200# compiler, etc., but we need a build compiler to generate parts of the source. 201CF_BUILD_CC 202 203############################################################################### 204CF_HELP_MESSAGE(Options to Specify the Libraries Built/Used:) 205 206### Options to allow the user to specify the set of libraries which are used. 207### Use "--without-normal --with-shared" to allow the default model to be 208### shared, for example. 209cf_list_models="" 210AC_SUBST(cf_list_models)dnl the complete list of models ("normal debug") 211 212CF_WITH_LIBTOOL 213if test "$with_libtool" != "no" ; then 214 215cf_list_models="$cf_list_models libtool" 216 217else 218 219AC_MSG_CHECKING(if you want to build shared libraries) 220AC_ARG_WITH(shared, 221 [ --with-shared generate shared-libraries], 222 [with_shared=$withval], 223 [with_shared=no]) 224AC_MSG_RESULT($with_shared) 225test "$with_shared" = "yes" && cf_list_models="$cf_list_models shared" 226 227AC_MSG_CHECKING(if you want to build static libraries) 228AC_ARG_WITH(normal, 229 [ --with-normal generate normal-libraries (default)], 230 [with_normal=$withval], 231 [with_normal=yes]) 232AC_MSG_RESULT($with_normal) 233test "$with_normal" = "yes" && cf_list_models="$cf_list_models normal" 234 235AC_MSG_CHECKING(if you want to build debug libraries) 236AC_ARG_WITH(debug, 237 [ --with-debug generate debug-libraries (default)], 238 [with_debug=$withval], 239 [with_debug=yes]) 240AC_MSG_RESULT($with_debug) 241test "$with_debug" = "yes" && cf_list_models="$cf_list_models debug" 242 243AC_MSG_CHECKING(if you want to build profiling libraries) 244AC_ARG_WITH(profile, 245 [ --with-profile generate profile-libraries], 246 [with_profile=$withval], 247 [with_profile=no]) 248AC_MSG_RESULT($with_profile) 249test "$with_profile" = "yes" && cf_list_models="$cf_list_models profile" 250 251fi 252 253############################################################################### 254 255AC_MSG_CHECKING(for specified models) 256test -z "$cf_list_models" && cf_list_models=normal 257dnl If we use libtool to generate libraries, then it must be the only 258dnl specified model. 259test "$with_libtool" != "no" && cf_list_models=libtool 260AC_MSG_RESULT($cf_list_models) 261 262### Use the first model as the default, and save its suffix for use in building 263### up test-applications. 264AC_MSG_CHECKING(for default model) 265DFT_LWR_MODEL=`echo "$cf_list_models" | $AWK '{print $1}'` 266AC_MSG_RESULT($DFT_LWR_MODEL) 267 268CF_UPPER(DFT_UPR_MODEL,$DFT_LWR_MODEL)dnl 269 270AC_SUBST(DFT_LWR_MODEL)dnl the default model ("normal") 271AC_SUBST(DFT_UPR_MODEL)dnl the default model ("NORMAL") 272 273TICS_NAME=tic 274AC_SUBST(TICS_NAME) 275 276TINFO_NAME=tinfo 277AC_SUBST(TINFO_NAME) 278 279LIB_NAME=ncurses 280AC_SUBST(LIB_NAME) 281 282LIB_DIR=../lib 283LIB_2ND=../../lib 284 285CF_LIB_PREFIX(cf_prefix) 286LIB_PREFIX=$cf_prefix 287AC_SUBST(LIB_PREFIX) 288 289LIB_SUFFIX= 290AC_SUBST(LIB_SUFFIX) 291 292############################################################################### 293 294AC_MSG_CHECKING(if you want to build a separate terminfo library) 295AC_ARG_WITH(termlib, 296 [ --with-termlib generate separate terminfo library], 297 [with_termlib=$withval], 298 [with_termlib=no]) 299AC_MSG_RESULT($with_termlib) 300 301AC_MSG_CHECKING(if you want to build a separate tic library) 302AC_ARG_WITH(ticlib, 303 [ --with-ticlib generate separate tic library], 304 [with_ticlib=$withval], 305 [with_ticlib=no]) 306AC_MSG_RESULT($with_ticlib) 307 308### Checks for special libraries, must be done up-front. 309SHLIB_LIST="" 310CF_WITH_GPM 311if test "$with_gpm" != no ; then 312 AC_MSG_CHECKING(if you want to load GPM dynamically) 313 AC_ARG_WITH(dlsym, 314 [ --without-dlsym do not use dlsym() to load GPM dynamically], 315 [with_dlsym=$withval], 316 [with_dlsym=yes]) 317 AC_MSG_RESULT($with_dlsym) 318 if test "$with_dlsym" = yes ; then 319 CF_FUNC_DLSYM 320 if test "$with_gpm" != yes ; then 321 CF_VERBOSE(assuming soname for gpm is $with_gpm) 322 cf_cv_gpm_soname="$with_gpm" 323 else 324 CF_LIB_SONAME([#include <gpm.h>],[if (Gpm_Open(0,0)) Gpm_Close();],gpm) 325 fi 326 test "$cf_cv_gpm_soname" != "unknown" && AC_DEFINE_UNQUOTED(LIBGPM_SONAME,"$cf_cv_gpm_soname") 327 SHLIB_LIST="-ldl $SHLIB_LIST" 328 else 329 SHLIB_LIST="-lgpm $SHLIB_LIST" 330 fi 331 AC_DEFINE(HAVE_LIBGPM) 332 CF_CHECK_GPM_WGETCH 333fi 334 335CF_WITH_SYSMOUSE 336 337dnl Not all ports of gcc support the -g option 338 339if test X"$CC_G_OPT" = X"" ; then 340 CC_G_OPT='-g' 341 test -n "$GCC" && test "${ac_cv_prog_cc_g}" != yes && CC_G_OPT='' 342fi 343AC_SUBST(CC_G_OPT) 344 345if test X"$CXX_G_OPT" = X"" ; then 346 CXX_G_OPT='-g' 347 test -n "$GXX" && test "${ac_cv_prog_cxx_g}" != yes && CXX_G_OPT='' 348fi 349AC_SUBST(CXX_G_OPT) 350 351AC_MSG_CHECKING(for default loader flags) 352case $DFT_LWR_MODEL in 353libtool) LD_MODEL='' ;; 354normal) LD_MODEL='' ;; 355debug) LD_MODEL=$CC_G_OPT ;; 356profile) LD_MODEL='-pg';; 357shared) LD_MODEL='' ;; 358esac 359AC_SUBST(LD_MODEL)dnl the type of link (e.g., -g or -pg) 360AC_MSG_RESULT($LD_MODEL) 361 362case $DFT_LWR_MODEL in 363shared) 364CF_ENABLE_RPATH 365AC_MSG_CHECKING(if shared libraries should be relinked during install) 366AC_ARG_ENABLE(relink, 367[ --disable-relink relink shared libraries during install], 368[cf_cv_do_relink=$enableval], 369[cf_cv_do_relink=yes]) 370AC_MSG_RESULT($cf_cv_do_relink) 371 ;; 372esac 373 374CF_SHARED_OPTS 375if test "$CC_SHARED_OPTS" = "unknown"; then 376 for model in $cf_list_models; do 377 if test "$model" = "shared"; then 378 AC_ERROR(Shared libraries are not supported in this version) 379 fi 380 done 381fi 382 383############################################################################### 384CF_HELP_MESSAGE(Fine-Tuning Your Configuration:) 385 386### use option --disable-overwrite to leave out the link to -lcurses 387AC_MSG_CHECKING(if you wish to install ncurses overwriting curses) 388AC_ARG_ENABLE(overwrite, 389 [ --disable-overwrite leave out the link to -lcurses], 390 [with_overwrite=$enableval], 391 [if test "$prefix" = "/usr" ; then with_overwrite=yes; else with_overwrite=no; fi]) 392AC_MSG_RESULT($with_overwrite) 393 394AC_MSG_CHECKING(if external terminfo-database is used) 395AC_ARG_ENABLE(database, 396 [ --disable-database do not use terminfo, only fallbacks/termcap], 397 [use_database=$enableval], 398 [use_database=yes]) 399AC_MSG_RESULT($use_database) 400 401case $host_os in #(vi 402os2*) #(vi 403 TERMINFO_SRC='${top_srcdir}/misc/emx.src' 404 ;; 405*) #(vi 406 TERMINFO_SRC='${top_srcdir}/misc/terminfo.src' 407 ;; 408esac 409AC_SUBST(TERMINFO_SRC) 410 411CF_PATHSEP 412if test "$use_database" != no ; then 413 AC_DEFINE(USE_DATABASE) 414 415 AC_MSG_CHECKING(which terminfo source-file will be installed) 416 AC_ARG_ENABLE(database, 417 [ --with-database=XXX specify terminfo source to install], 418 [TERMINFO_SRC=$withval]) 419 AC_MSG_RESULT($TERMINFO_SRC) 420 421 AC_MSG_CHECKING(whether to use hashed database instead of directory/tree) 422 AC_ARG_WITH(hashed-db, 423 [ --with-hashed-db specify hashed-database library],, 424 [with_hashed_db=no]) 425 AC_MSG_RESULT($with_hashed_db) 426else 427 with_hashed_db=no 428fi 429 430AC_MSG_CHECKING(for list of fallback descriptions) 431AC_ARG_WITH(fallbacks, 432 [ --with-fallbacks=XXX specify list of fallback terminal descriptions], 433 [with_fallback=$withval], 434 [with_fallback=]) 435AC_MSG_RESULT($with_fallback) 436FALLBACK_LIST=`echo "$with_fallback" | sed -e 's/,/ /g'` 437AC_SUBST(FALLBACK_LIST) 438 439AC_MSG_CHECKING(if you want modern xterm or antique) 440AC_ARG_WITH(xterm-new, 441 [ --without-xterm-new specify if xterm terminfo should be old version], 442 [with_xterm_new=$withval], 443 [with_xterm_new=yes]) 444case $with_xterm_new in 445no) with_xterm_new=xterm-old;; 446*) with_xterm_new=xterm-new;; 447esac 448AC_MSG_RESULT($with_xterm_new) 449WHICH_XTERM=$with_xterm_new 450AC_SUBST(WHICH_XTERM) 451 452MAKE_TERMINFO= 453if test "$use_database" = no ; then 454 TERMINFO="${datadir}/terminfo" 455 MAKE_TERMINFO="#" 456else 457 458AC_MSG_CHECKING(for list of terminfo directories) 459CF_WITH_PATHLIST(terminfo-dirs, 460 [ --with-terminfo-dirs=XXX specify list of terminfo directories], 461 TERMINFO_DIRS, 462 DATADIR/terminfo, 463 ${datadir}/terminfo) 464AC_MSG_RESULT($TERMINFO_DIRS) 465test -n "$TERMINFO_DIRS" && AC_DEFINE_UNQUOTED(TERMINFO_DIRS,"$TERMINFO_DIRS") 466 467AC_MSG_CHECKING(for default terminfo directory) 468CF_WITH_PATH(default-terminfo-dir, 469 [ --with-default-terminfo-dir=DIR default terminfo directory], 470 TERMINFO, 471 DATADIR/terminfo, 472 ${datadir}/terminfo) 473AC_MSG_RESULT($TERMINFO) 474AC_DEFINE_UNQUOTED(TERMINFO,"$TERMINFO") 475 476fi 477 478AC_SUBST(TERMINFO) 479AC_SUBST(MAKE_TERMINFO) 480 481### use option --disable-big-core to make tic run on small machines 482### We need 4Mb, check if we can allocate 50% more than that. 483AC_MSG_CHECKING(if big-core option selected) 484AC_ARG_ENABLE(big-core, 485 [ --disable-big-core assume machine has little memory], 486 [with_big_core=$enableval], 487 [AC_TRY_RUN([ 488#include <stdlib.h> 489#include <string.h> 490int main() { 491 unsigned long n = 6000000L; 492 char *s = malloc(n); 493 if (s != 0) 494 s[0] = s[n-1] = 0; 495 ${cf_cv_main_return:-return}(s == 0); 496}], 497 [with_big_core=yes], 498 [with_big_core=no], 499 [with_big_core=no])]) 500AC_MSG_RESULT($with_big_core) 501test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) 502 503### ISO C only guarantees 512-char strings, we have tables which load faster 504### when constructed using "big" strings. More than the C compiler, the awk 505### program is a limit on most vendor UNIX systems. Check that we can build. 506AC_MSG_CHECKING(if big-strings option selected) 507AC_ARG_ENABLE(big-strings, 508 [ --disable-big-strings assume compiler has only standard-size strings], 509 [with_big_strings=$enableval], 510 [CF_AWK_BIG_PRINTF(12000,with_big_strings)]) 511AC_MSG_RESULT($with_big_strings) 512 513USE_BIG_STRINGS=0 514test "$with_big_strings" = "yes" && USE_BIG_STRINGS=1 515AC_SUBST(USE_BIG_STRINGS) 516 517### use option --enable-termcap to compile in the termcap fallback support 518AC_MSG_CHECKING(if you want termcap-fallback support) 519AC_ARG_ENABLE(termcap, 520 [ --enable-termcap compile in termcap fallback support], 521 [with_termcap=$enableval], 522 [with_termcap=no]) 523AC_MSG_RESULT($with_termcap) 524 525if test "$with_termcap" != "yes" ; then 526 if test "$use_database" = no ; then 527 if test -z "$with_fallback" ; then 528 AC_ERROR(You have disabled the database w/o specifying fallbacks) 529 fi 530 fi 531 AC_DEFINE(PURE_TERMINFO) 532else 533 534if test "$with_ticlib" != no ; then 535 AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined) 536fi 537 538AC_DEFINE(USE_TERMCAP) 539AC_MSG_CHECKING(for list of termcap files) 540CF_WITH_PATHLIST(termpath, 541 [ --with-termpath=XXX specify list of termcap files], 542 TERMPATH, 543 /etc/termcap:/usr/share/misc/termcap) 544AC_MSG_RESULT($TERMPATH) 545test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH") 546 547### use option --enable-getcap to use a hacked getcap for reading termcaps 548AC_MSG_CHECKING(if fast termcap-loader is needed) 549AC_ARG_ENABLE(getcap, 550 [ --enable-getcap fast termcap load, no xrefs to terminfo], 551 [with_getcap=$enableval], 552 [with_getcap=no]) 553AC_MSG_RESULT($with_getcap) 554test "$with_getcap" = "yes" && AC_DEFINE(USE_GETCAP) 555 556AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo) 557AC_ARG_ENABLE(getcap-cache, 558 [ --enable-getcap-cache cache translated termcaps in ~/.terminfo], 559 [with_getcap_cache=$enableval], 560 [with_getcap_cache=no]) 561AC_MSG_RESULT($with_getcap_cache) 562test "$with_getcap_cache" = "yes" && AC_DEFINE(USE_GETCAP_CACHE) 563 564fi 565 566### Use option --disable-home-terminfo to completely remove ~/.terminfo 567AC_MSG_CHECKING(if ~/.terminfo is wanted) 568AC_ARG_ENABLE(home-terminfo, 569 [ --disable-home-terminfo drop ~/.terminfo from terminfo search-path], 570 [with_home_terminfo=$enableval], 571 [with_home_terminfo=yes]) 572AC_MSG_RESULT($with_home_terminfo) 573test "$with_home_terminfo" = "yes" && AC_DEFINE(USE_HOME_TERMINFO) 574 575AC_MSG_CHECKING(if you want to use restricted environment when running as root) 576AC_ARG_ENABLE(root-environ, 577 [ --disable-root-environ restrict environment when running as root], 578 [with_root_environ=$enableval], 579 [with_root_environ=yes]) 580AC_MSG_RESULT($with_root_environ) 581test "$with_root_environ" = yes && AC_DEFINE(USE_ROOT_ENVIRON) 582 583### Use option --enable-symlinks to make tic use symlinks, not hard links 584### to reduce storage requirements for the terminfo database. 585CF_LINK_FUNCS 586 587with_links=no 588with_symlinks=no 589 590# soft links (symbolic links) are useful for some systems where hard links do 591# not work, or to make it simpler to copy terminfo trees around. 592if test "$ac_cv_func_symlink" = yes ; then 593 AC_MSG_CHECKING(if tic should use symbolic links) 594 AC_ARG_ENABLE(symlinks, 595 [ --enable-symlinks make tic use symbolic links not hard links], 596 [with_symlinks=$enableval], 597 [with_symlinks=no]) 598 AC_MSG_RESULT($with_symlinks) 599fi 600 601# If we have hard links and did not choose to use soft links instead, there is 602# no reason to make this choice optional - use the hard links. 603if test "$with_symlinks" = no ; then 604 AC_MSG_CHECKING(if tic should use hard links) 605 if test "$ac_cv_func_link" = yes ; then 606 with_links=yes 607 else 608 with_links=no 609 fi 610 AC_MSG_RESULT($with_links) 611fi 612 613test "$with_links" = yes && AC_DEFINE(USE_LINKS) 614test "$with_symlinks" = yes && AC_DEFINE(USE_SYMLINKS) 615 616### use option --enable-broken-linker to force on use of broken-linker support 617AC_MSG_CHECKING(if you want broken-linker support code) 618AC_ARG_ENABLE(broken_linker, 619 [ --enable-broken_linker compile with broken-linker support code], 620 [with_broken_linker=$enableval], 621 [with_broken_linker=${BROKEN_LINKER-no}]) 622AC_MSG_RESULT($with_broken_linker) 623 624BROKEN_LINKER=0 625if test "$with_broken_linker" = yes ; then 626 AC_DEFINE(BROKEN_LINKER) 627 BROKEN_LINKER=1 628elif test "$DFT_LWR_MODEL" = shared ; then 629 case $cf_cv_system_name in #(vi 630 cygwin*) 631 AC_DEFINE(BROKEN_LINKER) 632 BROKEN_LINKER=1 633 CF_VERBOSE(cygwin linker is broken anyway) 634 ;; 635 esac 636fi 637AC_SUBST(BROKEN_LINKER) 638 639### use option --enable-bsdpad to have tputs process BSD-style prefix padding 640AC_MSG_CHECKING(if tputs should process BSD-style prefix padding) 641AC_ARG_ENABLE(bsdpad, 642 [ --enable-bsdpad recognize BSD-style prefix padding], 643 [with_bsdpad=$enableval], 644 [with_bsdpad=no]) 645AC_MSG_RESULT($with_bsdpad) 646test "$with_bsdpad" = yes && AC_DEFINE(BSD_TPUTS) 647 648### use option --enable-widec to turn on use of wide-character support 649NCURSES_CH_T=chtype 650NCURSES_LIBUTF8=0 651 652NEED_WCHAR_H=0 653NCURSES_MBSTATE_T=0 654NCURSES_WCHAR_T=0 655NCURSES_WINT_T=0 656 657# Check to define _XOPEN_SOURCE "automatically" 658CF_XOPEN_SOURCE 659 660# Work around breakage on OS X 661CF_SIGWINCH 662 663# Checks for CODESET support. 664AM_LANGINFO_CODESET 665 666# use these variables to work around a defect in gcc's fixincludes. 667NCURSES_OK_WCHAR_T= 668NCURSES_OK_WINT_T= 669 670AC_MSG_CHECKING(if you want wide-character code) 671AC_ARG_ENABLE(widec, 672 [ --enable-widec compile with wide-char/UTF-8 code], 673 [with_widec=$enableval], 674 [with_widec=no]) 675AC_MSG_RESULT($with_widec) 676if test "$with_widec" = yes ; then 677 LIB_SUFFIX="w${LIB_SUFFIX}" 678 AC_DEFINE(USE_WIDEC_SUPPORT) 679 CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED) 680 # with_overwrite=no 681 NCURSES_CH_T=cchar_t 682 AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs) 683 if test "$ac_cv_func_putwc" != yes ; then 684 CF_UTF8_LIB 685 if test "$cf_cv_utf8_lib" != no ; then 686 NCURSES_LIBUTF8=1 687 fi 688 fi 689 CF_WCHAR_TYPE(mbstate_t, NCURSES_MBSTATE_T) 690 CF_WCHAR_TYPE(wchar_t, NCURSES_WCHAR_T, NCURSES_OK_WCHAR_T) 691 CF_WCHAR_TYPE(wint_t, NCURSES_WINT_T, NCURSES_OK_WINT_T) 692 693 if test "$NCURSES_MBSTATE_T" != 0; then 694 AC_DEFINE(NEED_MBSTATE_T_DEF) 695 fi 696fi 697AC_SUBST(NCURSES_CH_T) 698AC_SUBST(NCURSES_LIBUTF8) 699 700AC_SUBST(NEED_WCHAR_H) 701AC_SUBST(NCURSES_MBSTATE_T) 702AC_SUBST(NCURSES_WCHAR_T) 703AC_SUBST(NCURSES_WINT_T) 704 705AC_SUBST(NCURSES_OK_WCHAR_T) 706AC_SUBST(NCURSES_OK_WINT_T) 707 708### use option --disable-lp64 to allow long chtype 709case $cf_cv_abi_version in 710[[345]]*) 711 default_with_lp64=no 712 ;; 713*) 714 default_with_lp64=yes 715 ;; 716esac 717 718AC_MSG_CHECKING(whether to enable _LP64 definition in curses.h) 719AC_ARG_ENABLE(lp64, 720 [ --disable-lp64 allow chtype to be long (ignore _LP64)], 721 [with_lp64=$enableval], 722 [with_lp64=$default_with_lp64]) 723AC_MSG_RESULT($with_lp64) 724 725if test "$with_lp64" = yes ; then 726 cf_cv_enable_lp64=1 727else 728 cf_cv_enable_lp64=0 729fi 730AC_SUBST(cf_cv_enable_lp64) 731 732CF_LARGEFILE 733 734### use option --disable-tparm-varargs to make tparm() conform to X/Open 735AC_MSG_CHECKING(if you want tparm not to use X/Open fixed-parameter list) 736AC_ARG_ENABLE(tparm-varargs, 737 [ --disable-tparm-varargs compile tparm() without varargs interface], 738 [with_tparm_varargs=$enableval], 739 [with_tparm_varargs=yes]) 740AC_MSG_RESULT($with_tparm_varargs) 741NCURSES_TPARM_VARARGS=0 742test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1 743AC_SUBST(NCURSES_TPARM_VARARGS) 744 745### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw 746if test "$with_ticlib" != no ; then 747AC_MSG_CHECKING(if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library) 748AC_ARG_ENABLE(tic-depends, 749 [ --disable-tic-depends link tic library without explicit dependency on ncurses library], 750 [with_tic_depends=$enableval], 751 [with_tic_depends=yes]) 752AC_MSG_RESULT($with_tic_depends) 753else 754 with_tic_depends=no 755fi 756 757### use option --with-bool to override bool's type 758AC_MSG_CHECKING(for type of bool) 759AC_ARG_WITH(bool, 760 [ --with-bool=TYPE override fallback type of bool variable], 761 [NCURSES_BOOL="$withval"], 762 [NCURSES_BOOL=auto]) 763AC_MSG_RESULT($NCURSES_BOOL) 764AC_SUBST(NCURSES_BOOL) 765 766AC_MSG_CHECKING(for alternate terminal capabilities file) 767AC_ARG_WITH(caps, 768 [ --with-caps=alt compile with alternate Caps file], 769 [TERMINFO_CAPS=Caps.$withval], 770 [TERMINFO_CAPS=Caps]) 771test -f "${srcdir}/include/${TERMINFO_CAPS}" || TERMINFO_CAPS=Caps 772AC_MSG_RESULT($TERMINFO_CAPS) 773AC_SUBST(TERMINFO_CAPS) 774 775### use option --with-chtype to override chtype's type 776AC_MSG_CHECKING(for type of chtype) 777AC_ARG_WITH(chtype, 778 [ --with-chtype=TYPE override type of chtype], 779 [NCURSES_CHTYPE="$withval"], 780 [NCURSES_CHTYPE=auto]) 781AC_MSG_RESULT($NCURSES_CHTYPE) 782 783### use option --with-ospeed to override ospeed's type 784AC_MSG_CHECKING(for type of ospeed) 785AC_ARG_WITH(ospeed, 786 [ --with-ospeed=TYPE override type of ospeed variable], 787 [NCURSES_OSPEED="$withval"], 788 [NCURSES_OSPEED=short]) 789AC_MSG_RESULT($NCURSES_OSPEED) 790AC_SUBST(NCURSES_OSPEED) 791 792### use option --with-mmask-t to override mmask_t's type 793AC_MSG_CHECKING(for type of mmask_t) 794AC_ARG_WITH(mmask-t, 795 [ --with-mmask-t=TYPE override type of mmask_t], 796 [NCURSES_MMASK_T="$withval"], 797 [NCURSES_MMASK_T=auto]) 798AC_MSG_RESULT($NCURSES_MMASK_T) 799 800### Enable compiling-in rcs id's 801AC_MSG_CHECKING(if RCS identifiers should be compiled-in) 802AC_ARG_WITH(rcs-ids, 803 [ --with-rcs-ids compile-in RCS identifiers], 804 [with_rcs_ids=$withval], 805 [with_rcs_ids=no]) 806AC_MSG_RESULT($with_rcs_ids) 807test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) 808 809############################################################################### 810CF_MAN_PAGES([ captoinfo clear infocmp infotocap tic toe tput ]) 811 812############################################################################### 813CF_HELP_MESSAGE(Extensions:) 814 815### Note that some functions (such as const) are normally disabled anyway. 816AC_MSG_CHECKING(if you want to build with function extensions) 817AC_ARG_ENABLE(ext-funcs, 818 [ --disable-ext-funcs disable function-extensions], 819 [with_ext_funcs=$enableval], 820 [with_ext_funcs=yes]) 821AC_MSG_RESULT($with_ext_funcs) 822if test "$with_ext_funcs" = yes ; then 823 NCURSES_EXT_FUNCS=1 824 AC_DEFINE(HAVE_CURSES_VERSION) 825 AC_DEFINE(HAVE_HAS_KEY) 826 AC_DEFINE(HAVE_RESIZETERM) 827 AC_DEFINE(HAVE_RESIZE_TERM) 828 AC_DEFINE(HAVE_USE_DEFAULT_COLORS) 829 AC_DEFINE(HAVE_WRESIZE) 830 AC_DEFINE(NCURSES_EXT_FUNCS) 831else 832 NCURSES_EXT_FUNCS=0 833fi 834AC_SUBST(NCURSES_EXT_FUNCS) 835 836### use option --enable-const to turn on use of const beyond that in XSI. 837AC_MSG_CHECKING(for extended use of const keyword) 838AC_ARG_ENABLE(const, 839 [ --enable-const compile with extra/non-standard const], 840 [with_ext_const=$enableval], 841 [with_ext_const=no]) 842AC_MSG_RESULT($with_ext_const) 843NCURSES_CONST='/*nothing*/' 844if test "$with_ext_const" = yes ; then 845 NCURSES_CONST=const 846fi 847AC_SUBST(NCURSES_CONST) 848 849### use option --enable-ext-colors to turn on use of colors beyond 16. 850AC_MSG_CHECKING(if you want to use extended colors) 851AC_ARG_ENABLE(ext-colors, 852 [ --enable-ext-colors compile for 256-color support], 853 [with_ext_colors=$enableval], 854 [with_ext_colors=no]) 855AC_MSG_RESULT($with_ext_colors) 856NCURSES_EXT_COLORS=0 857if test "$with_ext_colors" = yes ; then 858 if test "$with_widec" != yes ; then 859 AC_MSG_ERROR(This option applies only to wide-character library) 860 else 861 # cannot be ABI 5 since it changes sizeof(cchar_t) 862 CF_NCURSES_ABI_6 863 fi 864 NCURSES_EXT_COLORS=1 865 AC_DEFINE(NCURSES_EXT_COLORS) 866fi 867AC_SUBST(NCURSES_EXT_COLORS) 868 869### use option --enable-ext-mouse to modify coding to support 5-button mice 870AC_MSG_CHECKING(if you want to use extended mouse encoding) 871AC_ARG_ENABLE(ext-mouse, 872 [ --enable-ext-mouse compile for extended mouse-encoding], 873 [with_ext_mouse=$enableval], 874 [with_ext_mouse=no]) 875AC_MSG_RESULT($with_ext_mouse) 876NCURSES_MOUSE_VERSION=1 877if test "$with_ext_mouse" = yes ; then 878 NCURSES_MOUSE_VERSION=2 879 CF_NCURSES_ABI_6 880fi 881AC_SUBST(NCURSES_MOUSE_VERSION) 882 883AC_MSG_CHECKING(if you want \$NCURSES_NO_PADDING code) 884AC_ARG_ENABLE(no-padding, 885 [ --enable-no-padding compile with $NCURSES_NO_PADDING code], 886 [with_no_padding=$enableval], 887 [with_no_padding=$with_ext_funcs]) 888AC_MSG_RESULT($with_no_padding) 889test "$with_no_padding" = yes && AC_DEFINE(NCURSES_NO_PADDING) 890 891AC_CHECK_SIZEOF([signed char], 0) 892if test "$ac_cv_sizeof_signed_char" = 1 ; then 893 NCURSES_SBOOL="signed char" 894else 895 NCURSES_SBOOL="char" 896fi 897AC_MSG_CHECKING(if you want to use signed Boolean array in term.h) 898AC_ARG_ENABLE(signed-char, 899 [ --enable-signed-char compile using signed Boolean's in term.h], 900 [with_signed_char=$enableval], 901 [with_signed_char=no]) 902AC_MSG_RESULT($with_signed_char) 903test "$with_signed_char" != yes && NCURSES_SBOOL="char" 904AC_SUBST(NCURSES_SBOOL) 905 906### use option --enable-sigwinch to turn on use of SIGWINCH logic 907AC_MSG_CHECKING(if you want SIGWINCH handler) 908AC_ARG_ENABLE(sigwinch, 909 [ --enable-sigwinch compile with SIGWINCH handler], 910 [with_sigwinch=$enableval], 911 [with_sigwinch=$with_ext_funcs]) 912AC_MSG_RESULT($with_sigwinch) 913test "$with_sigwinch" = yes && AC_DEFINE(USE_SIGWINCH) 914 915### use option --enable-tcap-names to allow user to define new capabilities 916AC_MSG_CHECKING(if you want user-definable terminal capabilities like termcap) 917AC_ARG_ENABLE(tcap-names, 918 [ --enable-tcap-names compile with user-definable terminal capabilities], 919 [with_tcap_names=$enableval], 920 [with_tcap_names=$with_ext_funcs]) 921AC_MSG_RESULT($with_tcap_names) 922NCURSES_XNAMES=0 923test "$with_tcap_names" = yes && NCURSES_XNAMES=1 924AC_SUBST(NCURSES_XNAMES) 925 926############################################################################### 927# These options are relatively safe to experiment with. 928CF_HELP_MESSAGE(Development Code:) 929AC_MSG_CHECKING(if you want all development code) 930AC_ARG_WITH(develop, 931 [ --without-develop disable development options], 932 [with_develop=$withval], 933 [with_develop=no]) 934AC_MSG_RESULT($with_develop) 935 936### use option --enable-hard-tabs to turn on use of hard-tabs optimize 937AC_MSG_CHECKING(if you want hard-tabs code) 938AC_ARG_ENABLE(hard-tabs, 939 [ --enable-hard-tabs compile with hard-tabs code],, 940 [enable_hard_tabs=$with_develop]) 941AC_MSG_RESULT($enable_hard_tabs) 942test "$enable_hard_tabs" = yes && AC_DEFINE(USE_HARD_TABS) 943 944### use option --enable-xmc-glitch to turn on use of magic-cookie optimize 945AC_MSG_CHECKING(if you want limited support for xmc) 946AC_ARG_ENABLE(xmc-glitch, 947 [ --enable-xmc-glitch compile with support for xmc (magic-cookie)],, 948 [enable_xmc_glitch=$with_develop]) 949AC_MSG_RESULT($enable_xmc_glitch) 950test "$enable_xmc_glitch" = yes && AC_DEFINE(USE_XMC_SUPPORT) 951 952############################################################################### 953# These are just experimental, probably should not be in a package: 954CF_HELP_MESSAGE(Experimental Code:) 955 956AC_MSG_CHECKING(if you do not want to assume colors are white-on-black) 957AC_ARG_ENABLE(assumed-color, 958 [ --disable-assumed-color do not assume anything about default-colors], 959 [with_assumed_color=$enableval], 960 [with_assumed_color=yes]) 961AC_MSG_RESULT($with_assumed_color) 962test "$with_assumed_color" = yes && AC_DEFINE(USE_ASSUMED_COLOR) 963 964### use option --enable-hashmap to turn on use of hashmap scrolling logic 965AC_MSG_CHECKING(if you want hashmap scrolling-optimization code) 966AC_ARG_ENABLE(hashmap, 967 [ --disable-hashmap compile without hashmap scrolling-optimization], 968 [with_hashmap=$enableval], 969 [with_hashmap=yes]) 970AC_MSG_RESULT($with_hashmap) 971test "$with_hashmap" = yes && AC_DEFINE(USE_HASHMAP) 972 973### use option --enable-colorfgbg to turn on use of $COLORFGBG environment 974AC_MSG_CHECKING(if you want colorfgbg code) 975AC_ARG_ENABLE(colorfgbg, 976 [ --enable-colorfgbg compile with $COLORFGBG code], 977 [with_colorfgbg=$enableval], 978 [with_colorfgbg=no]) 979AC_MSG_RESULT($with_colorfgbg) 980test "$with_colorfgbg" = yes && AC_DEFINE(USE_COLORFGBG) 981 982# This is still experimental (20080329), but should ultimately be moved to 983# the script-block --with-normal, etc. 984CF_WITH_PTHREAD 985 986AC_MSG_CHECKING(if you want to use weak-symbols for pthreads) 987AC_ARG_ENABLE(weak-symbols, 988 [ --enable-weak-symbols enable weak-symbols for pthreads], 989 [use_weak_symbols=$withval], 990 [use_weak_symbols=no]) 991AC_MSG_RESULT($use_weak_symbols) 992if test "$use_weak_symbols" = yes ; then 993 CF_WEAK_SYMBOLS 994else 995 cf_cv_weak_symbols=no 996fi 997 998if test $cf_cv_weak_symbols = yes ; then 999 AC_DEFINE(USE_WEAK_SYMBOLS) 1000fi 1001 1002PTHREAD= 1003if test "$with_pthread" = "yes" ; then 1004 AC_DEFINE(USE_PTHREADS) 1005 enable_reentrant=yes 1006 if test $cf_cv_weak_symbols = yes ; then 1007 PTHREAD=-lpthread 1008 fi 1009fi 1010AC_SUBST(PTHREAD) 1011 1012# Reentrant code has to be opaque; there's little advantage to making ncurses 1013# opaque outside of that, so there is no --enable-opaque option. We can use 1014# this option without --with-pthreads, but this will be always set for 1015# pthreads. 1016AC_MSG_CHECKING(if you want experimental reentrant code) 1017AC_ARG_ENABLE(reentrant, 1018 [ --enable-reentrant compile with experimental reentrant code], 1019 [with_reentrant=$enableval], 1020 [with_reentrant=no]) 1021AC_MSG_RESULT($with_reentrant) 1022if test "$with_reentrant" = yes ; then 1023 cf_cv_enable_reentrant=1 1024 cf_cv_enable_opaque="NCURSES_INTERNALS" 1025 NCURSES_OPAQUE=1 1026 NCURSES_SIZE_T=int 1027 if test $cf_cv_weak_symbols = yes ; then 1028 CF_REMOVE_LIB(LIBS,$LIBS,pthread) 1029 else 1030 LIB_SUFFIX="t${LIB_SUFFIX}" 1031 fi 1032 AC_DEFINE(USE_REENTRANT) 1033 CF_NCURSES_ABI_6 1034else 1035 cf_cv_enable_reentrant=0 1036 cf_cv_enable_opaque="NCURSES_OPAQUE" 1037 NCURSES_OPAQUE=0 1038 NCURSES_SIZE_T=short 1039fi 1040AC_SUBST(cf_cv_enable_reentrant) 1041AC_SUBST(cf_cv_enable_opaque) 1042AC_SUBST(NCURSES_OPAQUE) 1043AC_SUBST(NCURSES_SIZE_T) 1044 1045AC_MSG_CHECKING(if you want experimental safe-sprintf code) 1046AC_ARG_ENABLE(safe-sprintf, 1047 [ --enable-safe-sprintf compile with experimental safe-sprintf code], 1048 [with_safe_sprintf=$enableval], 1049 [with_safe_sprintf=no]) 1050AC_MSG_RESULT($with_safe_sprintf) 1051test "$with_safe_sprintf" = yes && AC_DEFINE(USE_SAFE_SPRINTF) 1052 1053### use option --disable-scroll-hints to turn off use of scroll-hints scrolling logic 1054# when hashmap is used scroll hints are useless 1055if test "$with_hashmap" = no ; then 1056AC_MSG_CHECKING(if you want to experiment without scrolling-hints code) 1057AC_ARG_ENABLE(scroll-hints, 1058 [ --disable-scroll-hints compile without scroll-hints code], 1059 [with_scroll_hints=$enableval], 1060 [with_scroll_hints=yes]) 1061AC_MSG_RESULT($with_scroll_hints) 1062test "$with_scroll_hints" = yes && AC_DEFINE(USE_SCROLL_HINTS) 1063fi 1064 1065AC_MSG_CHECKING(if you want experimental wgetch-events code) 1066AC_ARG_ENABLE(wgetch-events, 1067 [ --enable-wgetch-events compile with experimental wgetch-events code], 1068 [with_wgetch_events=$enableval], 1069 [with_wgetch_events=no]) 1070AC_MSG_RESULT($with_wgetch_events) 1071test "$with_wgetch_events" = yes && AC_DEFINE(NCURSES_WGETCH_EVENTS) 1072 1073############################################################################### 1074CF_HELP_MESSAGE(Testing/development Options:) 1075 1076### use option --disable-echo to suppress full display compiling commands 1077AC_MSG_CHECKING(if you want to display full commands during build) 1078AC_ARG_ENABLE(echo, 1079 [ --enable-echo build: display "compiling" commands (default)], 1080 [with_echo=$enableval], 1081 [with_echo=yes]) 1082if test "$with_echo" = yes; then 1083 ECHO_LINK= 1084else 1085 ECHO_LINK='@ echo linking $@ ... ;' 1086 test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent" 1087 test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent" 1088fi 1089AC_MSG_RESULT($with_echo) 1090AC_SUBST(ECHO_LINK) 1091 1092### use option --enable-warnings to turn on all gcc warnings 1093AC_MSG_CHECKING(if you want to see compiler warnings) 1094AC_ARG_ENABLE(warnings, 1095 [ --enable-warnings build: turn on GCC compiler warnings], 1096 [with_warnings=$enableval]) 1097AC_MSG_RESULT($with_warnings) 1098 1099if test "x$with_warnings" = "xyes"; then 1100 ADAFLAGS="$ADAFLAGS -gnatg" 1101 CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum) 1102 if test "$cf_with_cxx" = yes ; then 1103 CF_GXX_WARNINGS(Wno-unused) 1104 fi 1105fi 1106CF_GCC_ATTRIBUTES 1107 1108### use option --enable-assertions to turn on generation of assertion code 1109AC_MSG_CHECKING(if you want to enable runtime assertions) 1110AC_ARG_ENABLE(assertions, 1111 [ --enable-assertions test: turn on generation of assertion code], 1112 [with_assertions=$enableval], 1113 [with_assertions=no]) 1114AC_MSG_RESULT($with_assertions) 1115if test -n "$GCC" 1116then 1117 if test "$with_assertions" = no 1118 then 1119 AC_DEFINE(NDEBUG) 1120 CPPFLAGS="$CPPFLAGS -DNDEBUG" 1121 else 1122 ADAFLAGS="$ADAFLAGS -gnata" 1123 fi 1124fi 1125 1126### use option --disable-leaks to suppress "permanent" leaks, for testing 1127CF_DISABLE_LEAKS 1128AC_DEFINE(HAVE_NC_ALLOC_H) 1129 1130### use option --enable-expanded to generate certain macros as functions 1131AC_ARG_ENABLE(expanded, 1132 [ --enable-expanded test: generate functions for certain macros], 1133 [test "$enableval" = yes && AC_DEFINE(NCURSES_EXPANDED)]) 1134 1135### use option --disable-macros to suppress macros in favor of functions 1136AC_ARG_ENABLE(macros, 1137 [ --disable-macros test: use functions rather than macros], 1138 [test "$enableval" = no && AC_DEFINE(NCURSES_NOMACROS)]) 1139 1140# Normally we only add trace() to the debug-library. Allow this to be 1141# extended to all models of the ncurses library: 1142cf_all_traces=no 1143case "$CFLAGS $CPPFLAGS" in 1144*-DTRACE*) 1145 cf_all_traces=yes 1146 ;; 1147esac 1148 1149AC_MSG_CHECKING(whether to add trace feature to all models) 1150AC_ARG_WITH(trace, 1151[ --with-trace test: add trace() function to all models of ncurses], 1152[cf_with_trace=$withval], 1153[cf_with_trace=$cf_all_traces]) 1154AC_MSG_RESULT($cf_with_trace) 1155 1156if test "$cf_with_trace" = yes ; then 1157 LIB_TRACING=all 1158 ADA_TRACE=TRUE 1159 CF_ADD_CFLAGS(-DTRACE) 1160else 1161 LIB_TRACING=DEBUG 1162 ADA_TRACE=FALSE 1163fi 1164 1165AC_SUBST(ADA_TRACE) 1166 1167### Checks for libraries. 1168AC_CHECK_FUNC(gettimeofday, 1169 AC_DEFINE(HAVE_GETTIMEOFDAY),[ 1170 1171AC_CHECK_LIB(bsd, gettimeofday, 1172 AC_DEFINE(HAVE_GETTIMEOFDAY) 1173 LIBS="$LIBS -lbsd")])dnl CLIX: bzero, select, gettimeofday 1174 1175CF_MATH_LIB(MATH_LIB,sin(x)) 1176AC_SUBST(MATH_LIB) 1177 1178### Checks for header files. 1179AC_STDC_HEADERS 1180AC_HEADER_DIRENT 1181AC_HEADER_TIME 1182CF_REGEX 1183 1184dnl These are some other potentially nonportable headers. 1185AC_CHECK_HEADERS( \ 1186fcntl.h \ 1187getopt.h \ 1188limits.h \ 1189locale.h \ 1190poll.h \ 1191sys/bsdtypes.h \ 1192sys/ioctl.h \ 1193sys/param.h \ 1194sys/poll.h \ 1195sys/select.h \ 1196sys/time.h \ 1197sys/times.h \ 1198ttyent.h \ 1199unistd.h \ 1200wctype.h \ 1201) 1202 1203# check for ISC (this may also define _POSIX_SOURCE) 1204# Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set 1205if test "$ISC" = yes ; then 1206 AC_CHECK_LIB(cposix,main) 1207 AC_CHECK_LIB(inet,bzero,LIBS="$LIBS -linet")dnl also 'select()' 1208fi 1209 1210CF_SYS_TIME_SELECT 1211 1212### checks for compiler characteristics 1213AC_LANG_C 1214AC_C_CONST 1215CF_C_INLINE(NCURSES_INLINE,1200) 1216CF_SIG_ATOMIC_T 1217 1218if test $NCURSES_CHTYPE = auto ; then 1219 CF_TYPEOF_CHTYPE 1220else 1221 cf_cv_typeof_chtype=$NCURSES_CHTYPE 1222fi 1223test "$cf_cv_typeof_chtype" = unsigned && cf_cv_typeof_chtype="" 1224AC_SUBST(cf_cv_typeof_chtype) 1225 1226CF_UNSIGNED_LITERALS 1227cf_cv_1UL="1" 1228test ".$cf_cv_unsigned_literals" = .yes && cf_cv_1UL="${cf_cv_1UL}U" 1229test ".$cf_cv_typeof_chtype" = .long && cf_cv_1UL="${cf_cv_1UL}L" 1230AC_SUBST(cf_cv_1UL) 1231 1232if test $NCURSES_MMASK_T = auto ; then 1233 cf_cv_typeof_mmask_t=long 1234else 1235 cf_cv_typeof_mmask_t=$NCURSES_MMASK_T 1236fi 1237test "$cf_cv_typeof_mmask_t" = unsigned && cf_cv_typeof_mmask_t="" 1238AC_SUBST(cf_cv_typeof_mmask_t) 1239 1240### Checks for external-data 1241CF_ERRNO 1242CF_LINK_DATAONLY 1243 1244### Checks for library functions. 1245AC_CHECK_FUNCS( \ 1246getcwd \ 1247getegid \ 1248geteuid \ 1249getttynam \ 1250issetugid \ 1251poll \ 1252remove \ 1253select \ 1254setbuf \ 1255setbuffer \ 1256setvbuf \ 1257sigaction \ 1258sigvec \ 1259strdup \ 1260strstr \ 1261tcgetpgrp \ 1262times \ 1263vsnprintf \ 1264) 1265if test "$with_getcap" = "yes" ; then 1266 CF_CGETENT 1267fi 1268 1269CF_ISASCII 1270CF_STRUCT_SIGACTION 1271CF_FUNC_NANOSLEEP 1272CF_FUNC_TERMIOS 1273CF_FUNC_VSSCANF 1274CF_MKSTEMP 1275 1276# setup for prototype of fallback for vsscanf() 1277CF_SUBST_IF(["$cf_cv_func_vsscanf" = vsscanf], HAVE_VSSCANF, 1, 0) 1278 1279dnl FIXME (may need this) AC_SYS_RESTARTABLE_SYSCALLS 1280if test "$cross_compiling" = yes ; then 1281 AC_MSG_WARN(cross compiling: assume setvbuf params not reversed) 1282else 1283 AC_FUNC_SETVBUF_REVERSED 1284fi 1285AC_TYPE_SIGNAL 1286CF_TYPE_SIGACTION 1287CF_SIZECHANGE 1288CF_FUNC_MEMMOVE 1289CF_FUNC_POLL 1290 1291# special check for test/ditto.c 1292CF_FUNC_OPENPTY 1293if test "$cf_cv_func_openpty" != no ; then 1294 AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>) 1295 AC_DEFINE(USE_XTERM_PTY) 1296 if test "$cf_cv_lib_util" = yes ; then 1297 TEST_LIBS="-lutil $TEST_LIBS" 1298 fi 1299fi 1300AC_SUBST(TEST_LIBS) 1301 1302if test "$with_hashed_db" != no ; then 1303 AC_DEFINE(USE_HASHED_DB) 1304 CF_HASHED_DB($with_hashed_db) 1305fi 1306 1307dnl We'll do our own -g libraries, unless the user's overridden via $CFLAGS 1308if test -z "$cf_user_CFLAGS" && test "$with_no_leaks" = no ; then 1309 CF_STRIP_G_OPT(CFLAGS) 1310 CF_STRIP_G_OPT(CXXFLAGS) 1311fi 1312 1313# Just in case, check if the C compiler has a bool type. 1314CF_BOOL_DECL(cf_cv_cc_bool_type) 1315 1316# Check for C++ compiler characteristics (and ensure that it's there!) 1317if test -n "$CXX" ; then 1318 AC_LANG_CPLUSPLUS 1319 CF_STDCPP_LIBRARY 1320 CF_PROG_CC_C_O(CXX) 1321 1322 case $GXX_VERSION in 1323 1*|2.[0-6]*) 1324 cf_cxx_library=yes 1325 ;; 1326 *-2.7*|2.7*) 1327 CF_GPP_LIBRARY 1328 ;; 1329 *) 1330 cf_cxx_library=no 1331 ;; 1332 esac 1333 1334 AC_CHECK_HEADERS(iostream typeinfo) 1335 1336 if test x"$ac_cv_header_iostream" = xyes ; then 1337 AC_MSG_CHECKING(if iostream uses std-namespace) 1338 AC_TRY_COMPILE([ 1339#include <iostream> 1340using std::endl; 1341using std::cerr;],[ 1342cerr << "testing" << endl; 1343],[cf_iostream_namespace=yes],[cf_iostream_namespace=no]) 1344 AC_MSG_RESULT($cf_iostream_namespace) 1345 if test "$cf_iostream_namespace" = yes ; then 1346 AC_DEFINE(IOSTREAM_NAMESPACE) 1347 fi 1348 fi 1349 1350 CF_BOOL_DECL 1351 CF_BOOL_SIZE 1352 CF_ETIP_DEFINES 1353 CF_CPP_PARAM_INIT 1354 CF_CPP_STATIC_CAST 1355 1356 CXX_AR='$(AR)' 1357 CXX_AR_OPTS='$(AR_OPTS)' 1358 case $cf_cv_system_name in #(vi 1359 irix*) #(vi 1360 if test "$GXX" != yes ; then 1361 CXX_AR='$(CXX)' 1362 CXX_AR_OPTS='-ar -o' 1363 fi 1364 ;; 1365 sco3.2v5*) #(vi 1366 CXXLDFLAGS="-u main" 1367 ;; 1368 solaris2*) 1369 if test "$GXX" != yes ; then 1370 CXX_AR='$(CXX)' 1371 CXX_AR_OPTS='-xar -o' 1372 fi 1373 ;; 1374 esac 1375 AC_SUBST(CXXLDFLAGS) 1376 AC_SUBST(CXX_AR) 1377 AC_SUBST(CXX_AR_OPTS) 1378else 1379 cf_cxx_library=no 1380 cf_cv_builtin_bool=1 1381 1382 # Just because we are not configuring against C++ right now does not 1383 # mean that a user will not want to use C++. Some distributors disable 1384 # the C++ portion of this configuration as a shortcut (or just to avoid 1385 # compiling the demo in the c++ directory). So we need a reasonable 1386 # default for the 'bool' type. 1387 # 1388 # Caveat: since the storage of the bool type is not standardized, it 1389 # may change. 1390 1391 if test "$NCURSES_BOOL" != auto ; then 1392 cf_cv_type_of_bool=$NCURSES_BOOL 1393 cf_cv_header_stdbool_h=0 1394 else 1395 if test "$cf_cv_header_stdbool_h" = 1 ; then 1396 CF_BOOL_SIZE 1397 else 1398 AC_MSG_CHECKING(for fallback type of bool) 1399 case "$host_cpu" in #(vi 1400 i?86) cf_cv_type_of_bool=char ;; #(vi 1401 *) cf_cv_type_of_bool=int ;; 1402 esac 1403 AC_MSG_RESULT($cf_cv_type_of_bool) 1404 fi 1405 fi 1406fi 1407AC_SUBST(CXXLIBS) 1408 1409# If the C compiler did not declare bool, and we did not determine that the C++ 1410# compiler does not declare bool, turn on an ifdef in curses.h that makes the 1411# ncurses library use the same type as C++ bool. Note that this allows one to 1412# specify the type of bool in a configure-script option and postpone 1413# integration with the C++ compiler provided that the types are compatible. 1414USE_CXX_BOOL=1 1415if test $cf_cv_cc_bool_type = 1 1416then 1417 # oops: C has a bool. Unlikely, but C++ could differ. 1418 USE_CXX_BOOL=0 1419elif test $cf_cv_builtin_bool = 0 1420then 1421 # C++ has no bool 1422 USE_CXX_BOOL=0 1423else 1424 # this is the normal case 1425 USE_CXX_BOOL='defined(__cplusplus)' 1426fi 1427AC_SUBST(USE_CXX_BOOL) 1428 1429CF_HELP_MESSAGE(Ada95 Binding Options:) 1430 1431dnl If the Ada95 source-tree is present, add that to the build unless it will 1432dnl not work, or was not requested. 1433if test -f "${srcdir}/Ada95/Makefile.in" ; then 1434 1435dnl libtool does not know anything about GNAT, though a change made in 1998 1436dnl provided for it "someday". Disable the ada subtree if we are using 1437dnl libtool -TD 20070714 1438if test "$cf_with_ada" != "no" ; then 1439 if test "$with_libtool" != "no"; then 1440 AC_MSG_WARN(libtool does not support Ada - disabling feature) 1441 cf_with_ada=no 1442 fi 1443fi 1444 1445dnl Check for availability of GNU Ada Translator (GNAT). 1446dnl At the moment we support no other Ada95 compiler. 1447if test "$cf_with_ada" != "no" ; then 1448cf_ada_make=gnatmake 1449AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no) 1450if test "$ac_cv_prog_gnat_exists" = no; then 1451 cf_ada_make= 1452else 1453 CF_GNAT_VERSION 1454 AC_CHECK_PROG(M4_exists, m4, yes, no) 1455 if test "$ac_cv_prog_M4_exists" = no; then 1456 cf_cv_prog_gnat_correct=no 1457 echo Ada95 binding required program m4 not found. Ada95 binding disabled. 1458 fi 1459 if test "$cf_cv_prog_gnat_correct" = yes; then 1460 AC_MSG_CHECKING(if GNAT works) 1461 CF_GNAT_TRY_RUN([procedure conftest;], 1462[with Text_IO; 1463with GNAT.OS_Lib; 1464procedure conftest is 1465begin 1466 Text_IO.Put ("Hello World"); 1467 Text_IO.New_Line; 1468 GNAT.OS_Lib.OS_Exit (0); 1469end conftest;],[cf_cv_prog_gnat_correct=yes],[cf_cv_prog_gnat_correct=no]) 1470 AC_MSG_RESULT($cf_cv_prog_gnat_correct) 1471 fi 1472fi 1473if test "$cf_cv_prog_gnat_correct" = yes; then 1474 ADAFLAGS="-O3 -gnatpn $ADAFLAGS" 1475 1476 AC_MSG_CHECKING(if GNAT pragma Unreferenced works) 1477 CF_GNAT_TRY_LINK([procedure conftest;], 1478[with Text_IO; 1479with GNAT.OS_Lib; 1480procedure conftest is 1481 test : Integer; 1482 pragma Unreferenced (test); 1483begin 1484 test := 1; 1485 Text_IO.Put ("Hello World"); 1486 Text_IO.New_Line; 1487 GNAT.OS_Lib.OS_Exit (0); 1488end conftest;],[cf_cv_pragma_unreferenced=yes],[cf_cv_pragma_unreferenced=no]) 1489 AC_MSG_RESULT($cf_cv_pragma_unreferenced) 1490 1491 # if the pragma is supported, use it (needed in the Trace code). 1492 if test $cf_cv_pragma_unreferenced = yes ; then 1493 PRAGMA_UNREF=TRUE 1494 else 1495 PRAGMA_UNREF=FALSE 1496 fi 1497 1498 AC_ARG_WITH(ada-compiler, 1499 [ --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)], 1500 [cf_ada_compiler=$withval], 1501 [cf_ada_compiler=gnatmake]) 1502 1503 cf_ada_package=terminal_interface 1504 1505 AC_SUBST(cf_ada_make) 1506 AC_SUBST(cf_ada_compiler) 1507 AC_SUBST(cf_ada_package) 1508 AC_SUBST(ADAFLAGS) 1509 AC_SUBST(cf_compile_generics) 1510 AC_SUBST(cf_generic_objects) 1511 AC_SUBST(PRAGMA_UNREF) 1512 1513 CF_WITH_PATH(ada-include, 1514 [ --with-ada-include=DIR Ada includes are in DIR], 1515 ADA_INCLUDE, 1516 PREFIX/lib/ada/adainclude, 1517 [$]prefix/lib/ada/adainclude) 1518 AC_SUBST(ADA_INCLUDE) 1519 1520 CF_WITH_PATH(ada-objects, 1521 [ --with-ada-objects=DIR Ada objects are in DIR], 1522 ADA_OBJECTS, 1523 PREFIX/lib/ada/adalib, 1524 [$]prefix/lib/ada/adalib) 1525 AC_SUBST(ADA_OBJECTS) 1526 1527fi 1528fi 1529else 1530 cf_with_ada=no 1531fi 1532 1533### Construct the ncurses library-subsets, if any, from this set of keywords: 1534### none, base, ext_funcs, ext_tinfo, ticlib, termlib, widechar 1535### 1536### ticlib modules may be a separate library, otherwise contained in termlib. 1537### termlib modules may be a separate library, otherwise contained in ncurses. 1538### 1539### The of "+" or " " between the tokens controls the way the script 1540### chooses to split module lists into libraries. 1541### 1542### (see CF_LIB_RULES). 1543AC_MSG_CHECKING(for library subsets) 1544LIB_SUBSETS= 1545 1546if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termcap" != no; then 1547 LIB_SUBSETS="${LIB_SUBSETS}ticlib" 1548 if test "$with_ticlib" != no ; then 1549 LIB_SUBSETS="${LIB_SUBSETS} " 1550 else 1551 LIB_SUBSETS="${LIB_SUBSETS}+" 1552 fi 1553fi 1554 1555LIB_SUBSETS="${LIB_SUBSETS}termlib" 1556test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo" 1557if test "$with_termlib" != no ; then 1558 LIB_SUBSETS="${LIB_SUBSETS} " 1559else 1560 LIB_SUBSETS="${LIB_SUBSETS}+" 1561fi 1562 1563LIB_SUBSETS="${LIB_SUBSETS}base" 1564test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" 1565test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" 1566 1567AC_MSG_RESULT($LIB_SUBSETS) 1568 1569### Construct the list of include-directories to be generated 1570CF_INCLUDE_DIRS 1571CF_ADA_INCLUDE_DIRS 1572 1573### Build up pieces for makefile rules 1574AC_MSG_CHECKING(default library suffix) 1575CF_LIB_TYPE($DFT_LWR_MODEL,DFT_ARG_SUFFIX)dnl 1576AC_SUBST(DFT_ARG_SUFFIX)dnl the string to append to "-lncurses" ("") 1577AC_MSG_RESULT($DFT_ARG_SUFFIX) 1578 1579AC_MSG_CHECKING(default library-dependency suffix) 1580CF_LIB_SUFFIX($DFT_LWR_MODEL,DFT_LIB_SUFFIX,DFT_DEP_SUFFIX)dnl 1581AC_SUBST(DFT_DEP_SUFFIX)dnl the corresponding library-suffix (".a") 1582AC_MSG_RESULT($DFT_DEP_SUFFIX) 1583 1584AC_MSG_CHECKING(default object directory) 1585CF_OBJ_SUBDIR($DFT_LWR_MODEL,DFT_OBJ_SUBDIR)dnl 1586AC_SUBST(DFT_OBJ_SUBDIR)dnl the default object-directory ("obj") 1587AC_MSG_RESULT($DFT_OBJ_SUBDIR) 1588 1589# libtool thinks it can make c++ shared libraries (perhaps only g++) 1590if test "$cf_with_cxx" = yes ; then 1591AC_MSG_CHECKING(c++ library-dependency suffix) 1592if test "$with_libtool" != "no"; then 1593 CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX 1594else 1595 CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX)dnl we normally make a static library 1596fi 1597AC_MSG_RESULT($CXX_LIB_SUFFIX) 1598AC_SUBST(CXX_LIB_SUFFIX) 1599fi 1600 1601# do not want -ldl in build except as needed for -lncurses dependency 1602if test "$with_dlsym" = yes ; then 1603if test $DFT_LWR_MODEL = shared || \ 1604 test $DFT_LWR_MODEL = libtool ; then 1605 CF_REMOVE_LIB(LIBS,$LIBS,dl) 1606fi 1607fi 1608### Set up low-level terminfo dependencies for makefiles. 1609 1610# TICS_LIST and TINFO_LIST are needed to build libtic.so and libterm.so, but 1611# do not need libdl 1612TICS_LIST= 1613if test "$with_dlsym" = yes ; then 1614 CF_REMOVE_LIB(TINFO_LIST,$SHLIB_LIST,dl) 1615fi 1616 1617if test "$with_ticlib" != no ; then 1618 1619 if test "$with_ticlib" != yes ; then 1620 TICS_NAME=$with_ticlib 1621 TICS_ARG_SUFFIX="${with_ticlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" 1622 TICS_DEP_SUFFIX="${with_ticlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" 1623 TICS_LIB_SUFFIX="${with_ticlib}" 1624 else 1625 TICS_ARG_SUFFIX="${TICS_NAME}${DFT_ARG_SUFFIX}" 1626 TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}" 1627 TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}" 1628 fi 1629 TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}" 1630else 1631 TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" 1632fi 1633AC_SUBST(TICS_ARG_SUFFIX) 1634AC_SUBST(TICS_DEP_SUFFIX) 1635AC_SUBST(TICS_LIB_SUFFIX) 1636AC_SUBST(TICS_ARGS) 1637 1638if test "$with_termlib" != no ; then 1639 1640 if test "$with_termlib" != yes ; then 1641 TINFO_NAME=$with_termlib 1642 TINFO_SUFFIX="`echo ${DFT_LIB_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" 1643 TINFO_ARG_SUFFIX="${with_termlib}`echo ${DFT_ARG_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" 1644 TINFO_DEP_SUFFIX="${with_termlib}`echo ${DFT_DEP_SUFFIX}|sed -e "s/^${LIB_SUFFIX}//"`" 1645 TINFO_LIB_SUFFIX="${with_termlib}" 1646 else 1647 TINFO_SUFFIX=${DFT_LIB_SUFFIX} 1648 TINFO_ARG_SUFFIX="${TINFO_NAME}${DFT_ARG_SUFFIX}" 1649 TINFO_DEP_SUFFIX="${TINFO_NAME}${DFT_DEP_SUFFIX}" 1650 TINFO_LIB_SUFFIX="${TINFO_NAME}${LIB_SUFFIX}" 1651 fi 1652 1653 TEST_DEPS="${LIB_DIR}/${LIB_PREFIX}${TINFO_DEP_SUFFIX}" 1654 TEST_DEP2="${LIB_2ND}/${LIB_PREFIX}${TINFO_DEP_SUFFIX}" 1655 if test "$DFT_LWR_MODEL" = "libtool"; then 1656 TEST_ARGS="${TEST_DEPS}" 1657 TEST_ARG2="${TEST_DEP2}" 1658 TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" 1659 else 1660 TEST_ARGS="-l${TINFO_ARG_SUFFIX}" 1661 TEST_ARG2="-l${TINFO_ARG_SUFFIX}" 1662 TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" 1663 TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" 1664 SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" 1665 fi 1666else 1667 # the next lines are needed for linking libtic over libncurses 1668 TINFO_NAME=${LIB_NAME} 1669 TINFO_SUFFIX=${DFT_LIB_SUFFIX} 1670 TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX} 1671 if test "$with_tic_depends" = yes ; then 1672 TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" 1673 else 1674 TICS_LIST="$SHLIB_LIST" 1675 fi 1676 1677 TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" 1678fi 1679 1680if test "$DFT_LWR_MODEL" = shared ; then 1681 case $cf_cv_system_name in #(vi 1682 cygwin*) 1683 # "lib" files have ".dll.a" suffix, "cyg" files have ".dll" 1684 TINFO_SUFFIX=.dll 1685 ;; 1686 esac 1687fi 1688 1689AC_SUBST(TINFO_ARG_SUFFIX) 1690AC_SUBST(TINFO_DEP_SUFFIX) 1691AC_SUBST(TINFO_LIB_SUFFIX) 1692AC_SUBST(TINFO_ARGS) 1693 1694if test "$with_dlsym" = yes ; then 1695 CF_REMOVE_LIB(TICS_LIST,$TICS_LIST,dl) 1696fi 1697 1698if test "$DFT_LWR_MODEL" = "libtool"; then 1699 OBJEXT=lo 1700fi 1701 1702# needed for Ada95 1703TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'` 1704AC_SUBST(TINFO_ARGS2) 1705 1706case $DFT_LWR_MODEL in 1707normal|debug|profile) 1708 CF_LDFLAGS_STATIC 1709 ;; 1710esac 1711 1712AC_MSG_CHECKING(where we will install curses.h) 1713test "$with_overwrite" = no && \ 1714test "x$includedir" = 'x${prefix}/include' && \ 1715 includedir='${prefix}/include/ncurses'${LIB_SUFFIX} 1716AC_MSG_RESULT($includedir) 1717 1718### Resolve a conflict between normal and wide-curses by forcing applications 1719### that will need libutf8 to add it to their configure script. 1720if test "$with_overwrite" != no ; then 1721if test "$NCURSES_LIBUTF8" = 1 ; then 1722 NCURSES_LIBUTF8='defined(HAVE_LIBUTF8_H)' 1723 AC_MSG_WARN(Wide-character applications must define HAVE_LIBUTF8_H to include curses.h) 1724fi 1725fi 1726 1727AC_SUBST(WITH_OVERWRITE) 1728AC_SUBST(TICS_LIST) 1729AC_SUBST(TINFO_LIST) 1730AC_SUBST(SHLIB_LIST) 1731 1732# used to separate tack out of the tree 1733NCURSES_TREE= 1734AC_SUBST(NCURSES_TREE) 1735 1736### predefined stuff for the test programs 1737AC_DEFINE(HAVE_SLK_COLOR) 1738 1739### Construct the list of subdirectories for which we'll customize makefiles 1740### with the appropriate compile-rules. 1741 1742CF_SRC_MODULES($modules_to_build) 1743 1744if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then 1745 SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses-config" 1746fi 1747 1748CF_DIRS_TO_MAKE 1749 1750AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATHSEP') 1751 1752AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}") 1753 1754### Now that we're done running tests, add the compiler-warnings, if any 1755CF_ADD_CFLAGS($EXTRA_CFLAGS) 1756 1757### If we're building with rpath, try to link non-standard libs that way too. 1758if test "$DFT_LWR_MODEL" = "shared"; then 1759 CF_RPATH_HACK 1760fi 1761 1762### Define substitutions for header files to avoid name-pollution 1763CF_SUBST_IF(["$cf_cv_have_tcgetattr" = yes], HAVE_TCGETATTR, 1, 0) 1764CF_SUBST_IF(["$ac_cv_header_termio_h" = yes], HAVE_TERMIO_H, 1, 0) 1765CF_SUBST_IF(["$ac_cv_header_termios_h" = yes], HAVE_TERMIOS_H, 1, 0) 1766 1767################################################################################ 1768test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" 1769SUB_MAKEFILES="$SUB_MAKEFILES misc/ncurses-config:misc/ncurses-config.in" 1770AC_OUTPUT( \ 1771 include/MKterm.h.awk \ 1772 include/curses.head:include/curses.h.in \ 1773 include/termcap.h \ 1774 include/unctrl.h \ 1775 $SUB_MAKEFILES \ 1776 Makefile,[ 1777CF_PRG_RULES([$srcdir/test/mk-test.awk ECHO_LINK="$ECHO_LINK"], test) 1778CF_LIB_RULES($SRC_SUBDIRS) 1779],[ 1780### Special initialization commands, used to pass information from the 1781### configuration-run into config.status 1782 1783AWK="$AWK" 1784DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" 1785DFT_LWR_MODEL="$DFT_LWR_MODEL" 1786ECHO_LINK="$ECHO_LINK" 1787LDCONFIG="$LDCONFIG" 1788LIB_NAME="$LIB_NAME" 1789LIB_SUBSETS="$LIB_SUBSETS" 1790LIB_SUFFIX="$LIB_SUFFIX" 1791LIB_TRACING="$LIB_TRACING" 1792MAKE_TERMINFO="$MAKE_TERMINFO" 1793NCURSES_MAJOR="$NCURSES_MAJOR" 1794NCURSES_MINOR="$NCURSES_MINOR" 1795NCURSES_OSPEED="$NCURSES_OSPEED" 1796NCURSES_PATCH="$NCURSES_PATCH" 1797SRC_SUBDIRS="$SRC_SUBDIRS" 1798TERMINFO="$TERMINFO" 1799TINFO_ARG_SUFFIX="$TINFO_ARG_SUFFIX" 1800TINFO_LIB_SUFFIX="$TINFO_LIB_SUFFIX" 1801TINFO_NAME="$TINFO_NAME" 1802TINFO_SUFFIX="$TINFO_SUFFIX" 1803TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX" 1804TICS_LIB_SUFFIX="$TICS_LIB_SUFFIX" 1805TICS_NAME="$TICS_NAME" 1806WITH_CURSES_H="$with_curses_h" 1807WITH_ECHO="$with_echo" 1808WITH_OVERWRITE="$with_overwrite" 1809cf_LIST_MODELS="$cf_list_models" 1810cf_cv_abi_version="$cf_cv_abi_version" 1811cf_cv_do_relink="$cf_cv_do_relink" 1812cf_cv_do_symlinks="$cf_cv_do_symlinks" 1813cf_cv_enable_lp64="$cf_cv_enable_lp64" 1814cf_cv_enable_opaque="$cf_cv_enable_opaque" 1815cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o 1816cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o 1817cf_cv_rel_version="$cf_cv_rel_version" 1818cf_cv_rm_so_locs="$cf_cv_rm_so_locs" 1819cf_cv_shared_soname='$cf_cv_shared_soname' 1820cf_cv_shlib_version="$cf_cv_shlib_version" 1821cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix" 1822cf_cv_system_name="$cf_cv_system_name" 1823cf_with_cxx_binding="$cf_with_cxx_binding" 1824host="$host" 1825target="$target" 1826 1827],cat)dnl 1828${MAKE-make} preinstall 1829