dnl***************************************************************************
-dnl Copyright 2018-2022,2023 Thomas E. Dickey *
+dnl Copyright 2018-2023,2024 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 *
dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: configure.in,v 1.770 2023/10/28 15:41:34 tom Exp $
+dnl $Id: configure.in,v 1.779 2024/04/10 08:04:00 tom Exp $
dnl Process this file with autoconf to produce a configure script.
dnl
dnl For additional information, see
dnl
dnl ---------------------------------------------------------------------------
AC_PREREQ(2.52.20210101)
-AC_REVISION($Revision: 1.770 $)
+AC_REVISION($Revision: 1.779 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
then
AC_MSG_CHECKING(for suffix to add to pkg-config files)
AC_ARG_WITH(pc-suffix,
- [ --with-pc-suffix=XXX suffix pkg-config files with XXX],
+ [[ --with-pc-suffix[=XXX] suffix pkg-config files with XXX]],
[case "x$withval" in
(xyes|xno)
PC_MODULE_SUFFIX=
AC_MSG_CHECKING(for extra suffix to append to header/library paths)
EXTRA_SUFFIX=
AC_ARG_WITH(extra-suffix,
- [ --with-extra-suffix=X append extra suffix X to header/library paths],
+ [[ --with-extra-suffix[=X] append extra suffix X to header/library paths]],
[case x$withval in
(xno)
;;
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],
+ [[ --with-xterm-kbs[=XXX] specify if xterm backspace sends BS or DEL]],
[with_xterm_kbs=$withval],
[with_xterm_kbs=auto])
case x$with_xterm_kbs in
[AC_TRY_RUN([
#include <stdlib.h>
#include <string.h>
-int main() {
+int main(void) {
unsigned long n = 6000000L;
char *s = malloc(n);
if (s != 0)
CF_WITH_X11_RGB
### use option --with-bool to override bool's type
-AC_MSG_CHECKING(for type of bool)
-AC_ARG_WITH(bool,
+CF_WITH_TYPE(bool,
[ --with-bool=TYPE fall back to TYPE for curses 'bool' typedef],
- [NCURSES_BOOL="$withval"],
- [NCURSES_BOOL=auto])
-AC_MSG_RESULT($NCURSES_BOOL)
-AC_SUBST(NCURSES_BOOL)
+ NCURSES_BOOL,
+ auto)
AC_MSG_CHECKING(for alternate terminal capabilities file)
AC_ARG_WITH(caps,
AC_SUBST(TERMINFO_CAPS)
### use option --with-chtype to override chtype's type
-AC_MSG_CHECKING(for type of chtype)
-AC_ARG_WITH(chtype,
+CF_WITH_TYPE(chtype,
[ --with-chtype=TYPE override type of chtype],
- [NCURSES_CHTYPE="$withval"],
- [NCURSES_CHTYPE=$cf_dft_chtype])
-AC_MSG_RESULT($NCURSES_CHTYPE)
+ NCURSES_CHTYPE,
+ $cf_dft_chtype)
### use option --with-ospeed to override ospeed's type
-AC_MSG_CHECKING(for type of ospeed)
-AC_ARG_WITH(ospeed,
+CF_WITH_TYPE(ospeed,
[ --with-ospeed=TYPE override type of ospeed variable],
- [NCURSES_OSPEED="$withval"],
- [NCURSES_OSPEED=short])
-AC_MSG_RESULT($NCURSES_OSPEED)
-AC_SUBST(NCURSES_OSPEED)
+ NCURSES_OSPEED,
+ short)
### use option --with-mmask-t to override mmask_t's type
-AC_MSG_CHECKING(for type of mmask_t)
-AC_ARG_WITH(mmask-t,
+CF_WITH_TYPE(mmask-t,
[ --with-mmask-t=TYPE override type of mmask_t],
- [NCURSES_MMASK_T="$withval"],
- [NCURSES_MMASK_T=$cf_dft_mmask_t])
-AC_MSG_RESULT($NCURSES_MMASK_T)
+ NCURSES_MMASK_T,
+ $cf_dft_mmask_t)
### use option --with-ccharw-max to override CCHARW_MAX size
AC_MSG_CHECKING(for size CCHARW_MAX)
AC_SUBST(NCURSES_SBOOL)
### use option --with-tparm-arg to override tparm's argument type
-AC_MSG_CHECKING(for type of tparm args)
-AC_ARG_WITH(tparm-arg,
+CF_WITH_TYPE(tparm-arg,
[ --with-tparm-arg=TYPE override parameter type of tparm],
- [NCURSES_TPARM_ARG="$withval"],
- [NCURSES_TPARM_ARG=$cf_dft_tparm_arg])
-AC_MSG_RESULT($NCURSES_TPARM_ARG)
-AC_SUBST(NCURSES_TPARM_ARG)
+ NCURSES_TPARM_ARG,
+ $cf_dft_tparm_arg)
### Enable compiling-in rcs id's
AC_MSG_CHECKING(if RCS identifiers should be compiled-in)
[with_sigwinch=$enableval],
[with_sigwinch=$with_ext_funcs])
AC_MSG_RESULT($with_sigwinch)
-test "x$with_sigwinch" = xyes && AC_DEFINE(USE_SIGWINCH,1,[Define to 1 to compile with SIGWINCH handler])
+if test "x$with_sigwinch" = xyes
+then
+ AC_DEFINE(USE_SIGWINCH,1,[Define to 1 to compile with SIGWINCH handler])
+ cf_cv_enable_sigwinch=1
+else
+ cf_cv_enable_sigwinch=0
+fi
+AC_SUBST(cf_cv_enable_sigwinch)
### use option --enable-tcap-names to allow user to define new capabilities
AC_MSG_CHECKING(if you want user-definable terminal capabilities like termcap)
AC_SUBST(NCURSES_SIZE_T)
AC_MSG_CHECKING(whether curses library structures should be opaque)
-CF_ARG_ENABLE(opaque-curses,
+CF_ARG_DISABLE(opaque-curses,
[ --disable-opaque-curses do not make WINDOW, etc., structures opaque],
- [enable_opaque_curses=yes],[
+ [enable_opaque_curses=no],[
test "$cf_cv_enable_reentrant" = 1 && enable_opaque_curses=yes
test "$cf_cv_enable_reentrant" = 1 || enable_opaque_curses=$cf_dft_opaque_curses
])
AC_MSG_ERROR(reentrant configuration requires opaque library)
AC_MSG_CHECKING(whether form library structures should be opaque)
-AC_ARG_ENABLE(opaque-form,
+CF_ARG_DISABLE(opaque-form,
[ --disable-opaque-form do not make form library structures opaque],
- [enable_opaque_form=yes],[enable_opaque_form=$cf_dft_opaque_curses])
+ [enable_opaque_form=no],[enable_opaque_form=$cf_dft_opaque_curses])
AC_MSG_RESULT($enable_opaque_form)
AC_MSG_CHECKING(whether menu library structures should be opaque)
-AC_ARG_ENABLE(opaque-menu,
+CF_ARG_DISABLE(opaque-menu,
[ --disable-opaque-menu do not make menu library structures opaque],
- [enable_opaque_menu=yes],[enable_opaque_menu=$cf_dft_opaque_curses])
+ [enable_opaque_menu=no],[enable_opaque_menu=$cf_dft_opaque_curses])
AC_MSG_RESULT($enable_opaque_menu)
AC_MSG_CHECKING(whether panel library structures should be opaque)
-AC_ARG_ENABLE(opaque-panel,
+CF_ARG_DISABLE(opaque-panel,
[ --disable-opaque-panel do not make panel library structures opaque],
- [enable_opaque_panel=yes],[enable_opaque_panel=$cf_dft_opaque_curses])
+ [enable_opaque_panel=no],[enable_opaque_panel=$cf_dft_opaque_curses])
AC_MSG_RESULT($enable_opaque_panel)
NCURSES_OPAQUE=0; test "$enable_opaque_curses" = yes && NCURSES_OPAQUE=1
[with_develop=no])
AC_MSG_RESULT($with_develop)
+### use option --enable-check-size to detect screensize with CPR
+AC_MSG_CHECKING(if you want to check screensize of serial terminals)
+AC_ARG_ENABLE(check-size,
+ [ --enable-check-size compile-in code to detect screensize of serial terminals],,
+ [enable_check_size=$with_develop])
+AC_MSG_RESULT($enable_check_size)
+test "x$enable_check_size" = xyes && AC_DEFINE(USE_CHECK_SIZE,1,[Define to 1 to compile-in code to detect screensize])
+
### use option --enable-hard-tabs to turn on use of hard-tabs optimize
AC_MSG_CHECKING(if you want hard-tabs code)
AC_ARG_ENABLE(hard-tabs,
AC_MSG_RESULT($with_hashmap)
test "x$with_hashmap" = xyes && AC_DEFINE(USE_HASHMAP,1,[Define to 1 to compile with hashmap scrolling-optimization])
-### use option --enable-colorfgbg to turn on use of $COLORFGBG environment
-AC_MSG_CHECKING(if you want code to check screensize)
-AC_ARG_ENABLE(check-size,
- [ --enable-check-size compile-in code to detect screensize],
- [with_check_size=$enableval],
- [with_check_size=no])
-AC_MSG_RESULT($with_check_size)
-test "x$with_check_size" = xyes && AC_DEFINE(USE_CHECK_SIZE,1,[Define to 1 to compile-in code to detect screensize])
-
### use option --enable-colorfgbg to turn on use of $COLORFGBG environment
AC_MSG_CHECKING(if you want colorfgbg code)
AC_ARG_ENABLE(colorfgbg,
issetugid \
localeconv \
poll \
-putenv \
remove \
select \
setbuf \
setbuffer \
-setenv \
setfsuid \
setvbuf \
sigaction \
CF_SIZECHANGE
CF_FUNC_MEMMOVE
CF_FUNC_POLL
+CF_MB_LEN_MAX
CF_VA_COPY
AC_FUNC_VFORK
CF_FOPEN_BIN_R