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