]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - configure.in
ncurses 6.3 - patch 20220416
[ncurses.git] / configure.in
index aa90570ab9c54bfc87c0fb49ee2bbff99a7351d2..81b66235691d40746fdca8db491edde49f20c206 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright 2018-2020,2021 Thomas E. Dickey                                *
+dnl Copyright 2018-2021,2022 Thomas E. Dickey                                *
 dnl Copyright 1998-2017,2018 Free Software Foundation, Inc.                  *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
@@ -29,7 +29,7 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1995-on
 dnl
-dnl $Id: configure.in,v 1.734 2021/07/03 14:51:53 tom Exp $
+dnl $Id: configure.in,v 1.744 2022/04/17 00:26:25 tom Exp $
 dnl Process this file with autoconf to produce a configure script.
 dnl
 dnl For additional information, see
@@ -38,7 +38,7 @@ dnl     https://invisible-island.net/autoconf/my-autoconf.html
 dnl
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.52.20210101)
-AC_REVISION($Revision: 1.734 $)
+AC_REVISION($Revision: 1.744 $)
 AC_INIT(ncurses/base/lib_initscr.c)
 AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
 
@@ -693,6 +693,15 @@ AC_MSG_RESULT($with_xterm_new)
 WHICH_XTERM=$with_xterm_new
 AC_SUBST(WHICH_XTERM)
 
+case $host_os in
+(*linux-gnu|*cygwin|*mingw32|*msys)
+       want_xterm_kbs=DEL
+       ;;
+(*)
+       want_xterm_kbs=BS
+       ;;
+esac
+
 AC_MSG_CHECKING(if xterm backspace sends BS or DEL)
 AC_ARG_WITH(xterm-kbs,
        [  --with-xterm-kbs=XXX    specify if xterm backspace sends BS or DEL],
@@ -713,6 +722,11 @@ AC_MSG_RESULT($with_xterm_kbs)
 XTERM_KBS=$with_xterm_kbs
 AC_SUBST(XTERM_KBS)
 
+if test "x$with_xterm_kbs" != "x$want_xterm_kbs"
+then
+       AC_MSG_WARN(expected --with-xterm-kbs=$want_xterm_kbs for $host_os)
+fi
+
 MAKE_TERMINFO=
 if test "$use_database" = no ; then
        TERMINFO="${datadir}/terminfo"
@@ -1019,18 +1033,18 @@ else
        with_tic_depends=no
 fi
 
-###   use option --disable-wattr-macros to suppress wattr* macros from curses.h
-AC_MSG_CHECKING(if you want to suppress wattr* macros to help with ncurses5/ncurses6 transition)
+###   use option --enable-wattr-macros to enable wattr* macros in curses.h
+AC_MSG_CHECKING(if you want to enable wattr* macros)
 AC_ARG_ENABLE(wattr-macros,
-       [  --disable-wattr-macros  suppress wattr* macros to help with ncurses5/ncurses6 transition],
+       [  --enable-wattr-macros   enable wattr* macros],
        [with_wattr_macros=$enableval],
-       [with_wattr_macros=yes])
+       [with_wattr_macros=no])
 if [[ "x$with_wattr_macros" != xyes ]]; then
        NCURSES_WATTR_MACROS=0
-       AC_MSG_RESULT(yes)
+       AC_MSG_RESULT(no)
 else
        NCURSES_WATTR_MACROS=1
-       AC_MSG_RESULT(no)
+       AC_MSG_RESULT(yes)
 fi
 AC_SUBST(NCURSES_WATTR_MACROS)
 
@@ -1050,7 +1064,11 @@ AC_ARG_WITH(caps,
        [  --with-caps=alt         compile with alternate Caps file],
        [TERMINFO_CAPS=Caps.$withval],
        [TERMINFO_CAPS=Caps])
-test -f "${srcdir}/include/${TERMINFO_CAPS}" || TERMINFO_CAPS=Caps
+if test ! -f "${srcdir}/include/${TERMINFO_CAPS}"
+then
+       AC_MSG_WARN(file not found: "${srcdir}/include/${TERMINFO_CAPS}")
+       TERMINFO_CAPS=Caps
+fi
 AC_MSG_RESULT($TERMINFO_CAPS)
 AC_SUBST(TERMINFO_CAPS)
 
@@ -1084,7 +1102,7 @@ AC_MSG_CHECKING(for size CCHARW_MAX)
 AC_ARG_WITH(ccharw-max,
        [  --with-ccharw-max=XXX   override size CCHARW_MAX],
        [NCURSES_CCHARW_MAX="$withval"],
-       [NCURSES_CCHARW_MAX=5])
+       [NCURSES_CCHARW_MAX=$cf_dft_ccharw_max])
 AC_MSG_RESULT($NCURSES_CCHARW_MAX)
 AC_SUBST(NCURSES_CCHARW_MAX)
 
@@ -1098,7 +1116,7 @@ AC_MSG_CHECKING(if you want to use signed Boolean array in term.h)
 AC_ARG_ENABLE(signed-char,
        [  --enable-signed-char    compile using signed Boolean's in term.h],
        [with_signed_char=$enableval],
-       [with_signed_char=no])
+       [with_signed_char=$cf_dft_signed_char])
 AC_MSG_RESULT($with_signed_char)
 test "x$with_signed_char" != xyes && NCURSES_SBOOL="char"
 AC_SUBST(NCURSES_SBOOL)
@@ -1234,11 +1252,22 @@ AC_ARG_ENABLE(ext-mouse,
        [with_ext_mouse=$enableval],
        [with_ext_mouse=$cf_dft_ext_mouse])
 AC_MSG_RESULT($with_ext_mouse)
-NCURSES_MOUSE_VERSION=1
 if test "x$with_ext_mouse" = xyes ; then
-       NCURSES_MOUSE_VERSION=2
        CF_NCURSES_ABI_6
 fi
+
+case $cf_cv_abi_version in
+(5)
+       NCURSES_MOUSE_VERSION=1
+       ;;
+(6)
+       NCURSES_MOUSE_VERSION=2
+       ;;
+([789])
+       NCURSES_MOUSE_VERSION=3
+       ;;
+esac
+
 AC_SUBST(NCURSES_MOUSE_VERSION)
 
 ###   use option --enable-ext-putwin to turn on extended screendumps
@@ -1367,7 +1396,7 @@ if test "x$with_reentrant" = xyes ; then
 else
        cf_cv_enable_reentrant=0
        cf_cv_enable_opaque="NCURSES_OPAQUE"
-       NCURSES_SIZE_T=short
+       NCURSES_SIZE_T=$cf_dft_ordinate_type
 fi
 AC_SUBST(cf_cv_enable_reentrant)
 AC_SUBST(cf_cv_enable_opaque)
@@ -1379,7 +1408,7 @@ CF_ARG_ENABLE(opaque-curses,
        [  --enable-opaque-curses  make curses WINDOW, etc., "opaque"],
        [enable_opaque_curses=yes],[
         test "$cf_cv_enable_reentrant" = 1 && enable_opaque_curses=yes
-        test "$cf_cv_enable_reentrant" = 1 || enable_opaque_curses=no
+        test "$cf_cv_enable_reentrant" = 1 || enable_opaque_curses=$cf_dft_opaque_curses
        ])
 AC_MSG_RESULT($enable_opaque_curses)
 
@@ -1625,7 +1654,7 @@ AC_SUBST(INSTALL_OPT_P)
 CF_ENABLE_WARNINGS(Wno-unknown-pragmas Wswitch-enum,yes)
 
 if test "x$enable_warnings" = "xyes"; then
-       CF_ADD_ADAFLAGS(-gnatg)
+       CF_ADD_ADAFLAGS(-gnatwa -gnatyg)
        if test "x$cf_with_cxx" = xyes ; then
                CF_GXX_WARNINGS(Wno-unused)
        fi
@@ -1696,12 +1725,13 @@ CF_DISABLE_GNAT_PROJECTS
 ###    Checks for libraries.
 case "$cf_cv_system_name" in
 (*mingw32*|*mingw64*)
+       # Note: WINVER may be a problem with Windows 10
        if test "x$with_exp_win32" = xyes ; then
-       CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN"
+               CPPFLAGS="$CPPFLAGS -DWINVER=0x0600 -DWIN32_LEAN_AND_MEAN"
        else
-       CPPFLAGS="$CPPFLAGS -DWINVER=0x0501 -DWIN32_LEAN_AND_MEAN"
+               CPPFLAGS="$CPPFLAGS -DWINVER=0x0501 -DWIN32_LEAN_AND_MEAN"
        fi
-       # Note: WINVER may be a problem with Windows 10
+       CF_CHECK_LIBSSP
        ;;
 (*)
 AC_CHECK_FUNC(gettimeofday,
@@ -1736,7 +1766,6 @@ sys/poll.h \
 sys/select.h \
 sys/time.h \
 sys/times.h \
-ttyent.h \
 unistd.h \
 wctype.h \
 )
@@ -1791,7 +1820,6 @@ getcwd \
 getegid \
 geteuid \
 getopt \
-getttynam \
 issetugid \
 localeconv \
 poll \
@@ -1815,6 +1843,8 @@ tsearch \
 vsnprintf \
 )
 
+CF_FUNC_GETTTYNAM
+
 if test "x$ac_cv_func_getopt" = xno && \
    test "x$cf_with_progs$cf_with_tests" != xnono; then
        AC_MSG_ERROR(getopt is required for building programs)