aboutsummaryrefslogtreecommitdiff
path: root/contrib/ncurses/aclocal.m4
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/ncurses/aclocal.m4')
-rw-r--r--contrib/ncurses/aclocal.m4610
1 files changed, 436 insertions, 174 deletions
diff --git a/contrib/ncurses/aclocal.m4 b/contrib/ncurses/aclocal.m4
index 382aa10629e9..bd1df2660e22 100644
--- a/contrib/ncurses/aclocal.m4
+++ b/contrib/ncurses/aclocal.m4
@@ -1,5 +1,5 @@
dnl***************************************************************************
-dnl Copyright (c) 1998-2000 Free Software Foundation, Inc. *
+dnl Copyright (c) 1998-2000,2001,2002 Free Software Foundation, Inc. *
dnl *
dnl Permission is hereby granted, free of charge, to any person obtaining a *
dnl copy of this software and associated documentation files (the *
@@ -26,9 +26,9 @@ dnl sale, use or other dealings in this Software without prior written *
dnl authorization. *
dnl***************************************************************************
dnl
-dnl Author: Thomas E. Dickey 1996,1997,1998,1999,2000
+dnl Author: Thomas E. Dickey 1996,1997,1998,1999,2000,2001
dnl
-dnl $Id: aclocal.m4,v 1.248 2001/04/21 19:40:04 tom Exp $
+dnl $Id: aclocal.m4,v 1.280 2002/04/27 19:31:30 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl See http://dickey.his.com/autoconf/ for additional information.
@@ -58,33 +58,46 @@ AC_SUBST(ACPPFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
+dnl The second parameter if given makes this macro verbose.
AC_DEFUN([CF_ADD_CFLAGS],
[
+cf_new_cflags=
+cf_new_cppflags=
for cf_add_cflags in $1
do
case $cf_add_cflags in #(vi
-undef|-nostdinc*|-I*|-D*|-U*|-E|-P|-C) #(vi
case "$CPPFLAGS" in
- *$cf_add_cflags)
+ *$cf_add_cflags) #(vi
;;
- *)
- CPPFLAGS="$CPPFLAGS $cf_add_cflags"
+ *) #(vi
+ cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
;;
esac
;;
*)
- CFLAGS="$CFLAGS $cf_add_cflags"
+ cf_new_cflags="$cf_new_cflags $cf_add_cflags"
;;
esac
done
+
+if test -n "$cf_new_cflags" ; then
+ ifelse($2,,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])
+ CFLAGS="$CFLAGS $cf_new_cflags"
+fi
+
+if test -n "$cf_new_cppflags" ; then
+ ifelse($2,,,[CF_VERBOSE(add to \$CPPFLAGS $cf_new_cppflags)])
+ CPPFLAGS="$CPPFLAGS $cf_new_cppflags"
+fi
+
])dnl
dnl ---------------------------------------------------------------------------
dnl This is adapted from the macros 'fp_PROG_CC_STDC' and 'fp_C_PROTOTYPES'
dnl in the sharutils 4.2 distribution.
AC_DEFUN([CF_ANSI_CC_CHECK],
[
-AC_MSG_CHECKING(for ${CC-cc} option to accept ANSI C)
-AC_CACHE_VAL(cf_cv_ansi_cc,[
+AC_CACHE_CHECK(for ${CC-cc} option to accept ANSI C, cf_cv_ansi_cc,[
cf_cv_ansi_cc=no
cf_save_CFLAGS="$CFLAGS"
cf_save_CPPFLAGS="$CPPFLAGS"
@@ -120,7 +133,6 @@ done
CFLAGS="$cf_save_CFLAGS"
CPPFLAGS="$cf_save_CPPFLAGS"
])
-AC_MSG_RESULT($cf_cv_ansi_cc)
if test "$cf_cv_ansi_cc" != "no"; then
if test ".$cf_cv_ansi_cc" != ".-DCC_HAS_PROTOS"; then
@@ -155,6 +167,9 @@ dnl Treat the configuration-variable specially here, since we're directly
dnl substituting its value (i.e., 1/0).
AC_DEFUN([CF_BOOL_DECL],
[
+AC_CHECK_HEADER(stdbool.h,
+ cf_cv_header_stdbool_h=1,
+ cf_cv_header_stdbool_h=0)
AC_MSG_CHECKING([for builtin bool type])
AC_CACHE_VAL(ifelse($1,,cf_cv_builtin_bool,[$1]),[
AC_TRY_COMPILE([
@@ -172,6 +187,9 @@ fi
dnl ---------------------------------------------------------------------------
dnl Test for the size of 'bool' in the configured C++ compiler (e.g., a type).
dnl Don't bother looking for bool.h, since it's been deprecated.
+dnl
+dnl If the current compiler is C rather than C++, we get the bool definition
+dnl from <stdbool.h>.
AC_DEFUN([CF_BOOL_SIZE],
[
AC_MSG_CHECKING([for size of bool])
@@ -180,6 +198,9 @@ AC_CACHE_VAL(cf_cv_type_of_bool,[
AC_TRY_RUN([
#include <stdlib.h>
#include <stdio.h>
+
+#if defined(__cplusplus)
+
#ifdef HAVE_GXX_BUILTIN_H
#include <g++/builtin.h>
#elif HAVE_GPP_BUILTIN_H
@@ -187,6 +208,15 @@ AC_CACHE_VAL(cf_cv_type_of_bool,[
#elif HAVE_BUILTIN_H
#include <builtin.h>
#endif
+
+#else
+
+#if $cf_cv_header_stdbool_h
+#include <stdbool.h>
+#endif
+
+#endif
+
main()
{
FILE *fp = fopen("cf_test.out", "w");
@@ -203,15 +233,21 @@ main()
exit(0);
}
],
- [cf_cv_type_of_bool=`cat cf_test.out`],
+ [cf_cv_type_of_bool=`cat cf_test.out`
+ if test -z "$cf_cv_type_of_bool"; then
+ cf_cv_type_of_bool=unknown
+ fi],
[cf_cv_type_of_bool=unknown],
[cf_cv_type_of_bool=unknown])
])
rm -f cf_test.out
AC_MSG_RESULT($cf_cv_type_of_bool)
if test "$cf_cv_type_of_bool" = unknown ; then
- AC_MSG_WARN(Assuming unsigned for type of bool)
- cf_cv_type_of_bool=unsigned
+ case .$NCURSES_BOOL in #(vi
+ .auto|.) NCURSES_BOOL=unsigned;;
+ esac
+ AC_MSG_WARN(Assuming $NCURSES_BOOL for type of bool)
+ cf_cv_type_of_bool=$NCURSES_BOOL
fi
])dnl
dnl ---------------------------------------------------------------------------
@@ -310,7 +346,7 @@ test -n "$system_name" && AC_DEFINE_UNQUOTED(SYSTEM_NAME,"$system_name")
AC_CACHE_VAL(cf_cv_system_name,[cf_cv_system_name="$system_name"])
test -z "$system_name" && system_name="$cf_cv_system_name"
-test -n "$cf_cv_system_name" && AC_MSG_RESULT("Configuring for $cf_cv_system_name")
+test -n "$cf_cv_system_name" && AC_MSG_RESULT(Configuring for $cf_cv_system_name)
if test ".$system_name" != ".$cf_cv_system_name" ; then
AC_MSG_RESULT(Cached system name ($system_name) does not agree with actual ($cf_cv_system_name))
@@ -322,14 +358,10 @@ dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it
dnl ourselves.
dnl
-dnl (I would use AC_CACHE_CHECK here, but it will not work when called in a
-dnl loop from CF_SYS_ERRLIST).
-dnl
dnl $1 = the name to check
AC_DEFUN([CF_CHECK_ERRNO],
[
-AC_MSG_CHECKING(if external $1 is declared)
-AC_CACHE_VAL(cf_cv_dcl_$1,[
+AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
AC_TRY_COMPILE([
#ifdef HAVE_STDLIB_H
#include <stdlib.h>
@@ -338,16 +370,12 @@ AC_CACHE_VAL(cf_cv_dcl_$1,[
#include <sys/types.h>
#include <errno.h> ],
[long x = (long) $1],
- [eval 'cf_cv_dcl_'$1'=yes'],
- [eval 'cf_cv_dcl_'$1'=no'])
+ [cf_cv_dcl_$1=yes],
+ [cf_cv_dcl_$1=no])
])
-eval 'cf_result=$cf_cv_dcl_'$1
-AC_MSG_RESULT($cf_result)
-
-if test "$cf_result" = no ; then
- eval 'cf_result=DECL_'$1
- CF_UPPER(cf_result,$cf_result)
+if test "$cf_cv_dcl_$1" = no ; then
+ CF_UPPER(cf_result,decl_$1)
AC_DEFINE_UNQUOTED($cf_result)
fi
@@ -361,22 +389,18 @@ dnl $1 = the name to check
dnl $2 = its type
AC_DEFUN([CF_CHECK_EXTERN_DATA],
[
-AC_MSG_CHECKING(if external $1 exists)
-AC_CACHE_VAL(cf_cv_have_$1,[
+AC_CACHE_CHECK(if external $1 exists, cf_cv_have_$1,[
AC_TRY_LINK([
#undef $1
extern $2 $1;
],
[$1 = 2],
- [eval 'cf_cv_have_'$1'=yes'],
- [eval 'cf_cv_have_'$1'=no'])])
-
-eval 'cf_result=$cf_cv_have_'$1
-AC_MSG_RESULT($cf_result)
+ [cf_cv_have_$1=yes],
+ [cf_cv_have_$1=no])
+])
-if test "$cf_result" = yes ; then
- eval 'cf_result=HAVE_'$1
- CF_UPPER(cf_result,$cf_result)
+if test "$cf_cv_have_$1" = yes ; then
+ CF_UPPER(cf_result,have_$1)
AC_DEFINE_UNQUOTED($cf_result)
fi
@@ -425,11 +449,12 @@ AC_LANG_CPLUSPLUS
AC_CHECK_HEADERS(strstream.h)
AC_CACHE_CHECK(if $CXX supports vscan function,cf_cv_cpp_vscan_func,[
- for cf_vscan_func in strstream stdio
+ for cf_vscan_func in strstream strstream_cast stdio
do
case $cf_vscan_func in #(vi
stdio) cf_vscan_defs=USE_STDIO_VSCAN ;; #(vi
strstream) cf_vscan_defs=USE_STRSTREAM_VSCAN ;;
+ strstream_cast) cf_vscan_defs=USE_STRSTREAM_VSCAN_CAST ;;
esac
AC_TRY_LINK([
#include <stdio.h>
@@ -443,25 +468,25 @@ AC_CACHE_CHECK(if $CXX supports vscan function,cf_cv_cpp_vscan_func,[
int scanw(const char* fmt, ...)
{
int result = -1;
-#if defined(__GNUG__)
char buf[BUFSIZ];
va_list args;
va_start(args, fmt);
#if defined(USE_STDIO_VSCAN)
- if (::vscanf(fmt, args) != -1)
+ if (::vsscanf(buf, fmt, args) != -1)
result = 0;
#elif defined(USE_STRSTREAM_VSCAN)
strstreambuf ss(buf, sizeof(buf));
+ if (ss.vscan(fmt, args) != -1)
+ result = 0;
+#elif defined(USE_STRSTREAM_VSCAN_CAST)
+ strstreambuf ss(buf, sizeof(buf));
if (ss.vscan(fmt, (_IO_va_list)args) != -1)
result = 0;
#else
#error case $cf_vscan_func failed
#endif
va_end(args);
-#else
-#error sorry, we only know about the GNU compiler case
-#endif
return result;
}
],[int tmp, foo = scanw("%d", &tmp)],
@@ -483,6 +508,10 @@ strstream)
AC_DEFINE(CPP_HAS_VSCAN_FUNC)
AC_DEFINE(USE_STRSTREAM_VSCAN)
;;
+strstream_cast)
+ AC_DEFINE(CPP_HAS_VSCAN_FUNC)
+ AC_DEFINE(USE_STRSTREAM_VSCAN_CAST)
+ ;;
esac
])dnl
dnl ---------------------------------------------------------------------------
@@ -495,7 +524,11 @@ DIRS_TO_MAKE="lib"
for cf_item in $cf_list_models
do
CF_OBJ_SUBDIR($cf_item,cf_subdir)
- DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir"
+ for cf_item2 in $DIRS_TO_MAKE
+ do
+ test $cf_item2 = $cf_subdir && break
+ done
+ test ".$cf_item2" != ".$cf_subdir" && DIRS_TO_MAKE="$DIRS_TO_MAKE $cf_subdir"
done
for cf_dir in $DIRS_TO_MAKE
do
@@ -621,6 +654,49 @@ tcgetattr(1, &foo);],
test "$cf_cv_have_tcgetattr" = yes && AC_DEFINE(HAVE_TCGETATTR)
])dnl
dnl ---------------------------------------------------------------------------
+dnl Check for vsscanf() function, which is in c9x but generally not in earlier
+dnl versions of C. It is in the GNU C library, and can often be simulated by
+dnl other functions.
+AC_DEFUN([CF_FUNC_VSSCANF],
+[
+AC_CACHE_CHECK(for vsscanf function or workaround,cf_cv_func_vsscanf,[
+AC_TRY_LINK([
+#include <stdarg.h>
+#include <stdio.h>],[
+ va_list ap;
+ vsscanf("from", "%d", ap)],[cf_cv_func_vsscanf=vsscanf],[
+AC_TRY_LINK([
+#include <stdarg.h>
+#include <stdio.h>],[
+ FILE strbuf;
+ char *str = "from";
+
+ strbuf._flag = _IOREAD;
+ strbuf._ptr = strbuf._base = (unsigned char *) str;
+ strbuf._cnt = strlen(str);
+ strbuf._file = _NFILE;
+ return (vfscanf(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=vfscanf],[
+AC_TRY_LINK([
+#include <stdarg.h>
+#include <stdio.h>],[
+ FILE strbuf;
+ char *str = "from";
+
+ strbuf._flag = _IOREAD;
+ strbuf._ptr = strbuf._base = (unsigned char *) str;
+ strbuf._cnt = strlen(str);
+ strbuf._file = _NFILE;
+ return (_doscan(&strbuf, "%d", ap))],[cf_cv_func_vsscanf=_doscan],[
+cf_cv_func_vsscanf=no])])])])
+
+case $cf_cv_func_vsscanf in #(vi
+vsscanf) AC_DEFINE(HAVE_VSSCANF);; #(vi
+vfscanf) AC_DEFINE(HAVE_VFSCANF);; #(vi
+_doscan) AC_DEFINE(HAVE__DOSCAN);;
+esac
+
+])dnl
+dnl ---------------------------------------------------------------------------
dnl Test for availability of useful gcc __attribute__ directives to quiet
dnl compiler warnings. Though useful, not all are supported -- and contrary
dnl to documentation, unrecognized directives cause older compilers to barf.
@@ -790,6 +866,34 @@ case $cf_cv_gnat_version in
esac
])
dnl ---------------------------------------------------------------------------
+dnl Check if we must define _GNU_SOURCE to get a reasonable value for
+dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect
+dnl (or misfeature) of glibc2, which breaks portability of many applications,
+dnl since it is interwoven with GNU extensions.
+dnl
+dnl Well, yes we could work around it...
+AC_DEFUN([CF_GNU_SOURCE],
+[
+AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
+AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifndef _XOPEN_SOURCE
+make an error
+#endif],
+ [cf_cv_gnu_source=no],
+ [cf_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+ AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _XOPEN_SOURCE
+make an error
+#endif],
+ [cf_cv_gnu_source=no],
+ [cf_cv_gnu_source=yes])
+ CPPFLAGS="$cf_save"
+ ])
+])
+test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+])dnl
+dnl ---------------------------------------------------------------------------
dnl If we're trying to use g++, test if libg++ is installed (a rather common
dnl problem :-). If we have the compiler but no library, we'll be able to
dnl configure, but won't be able to build the c++ demo program.
@@ -874,6 +978,25 @@ AC_MSG_RESULT($cf_cv_have_isascii)
test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII)
])dnl
dnl ---------------------------------------------------------------------------
+dnl Check for libutf8
+AC_DEFUN([CF_LIBUTF8],
+[
+AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[
+ cf_save_LIBS="$LIBS"
+ LIBS="-lutf8 $LIBS"
+AC_TRY_LINK([
+#include <libutf8.h>],[putwc(0,0);],
+ [cf_cv_libutf8=yes],
+ [cf_cv_libutf8=no])
+ LIBS="$cf_save_LIBS"
+])
+
+if test "$cf_cv_libutf8" = yes ; then
+ AC_DEFINE(HAVE_LIBUTF8_H)
+ LIBS="-lutf8 $LIBS"
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl Compute the library-prefix for the given host system
dnl $1 = variable to set
AC_DEFUN([CF_LIB_PREFIX],
@@ -906,43 +1029,70 @@ for cf_dir in $SRC_SUBDIRS
do
if test -f $srcdir/$cf_dir/modules; then
- cf_libs_to_make=
+ IMPORT_LIB=
+ SHARED_LIB=
+ LIBS_TO_MAKE=
for cf_item in $CF_LIST_MODELS
do
CF_LIB_SUFFIX($cf_item,cf_suffix)
if test $cf_item = shared ; then
if test "$cf_cv_do_symlinks" = yes ; then
case "$cf_cv_shlib_version" in #(vi
- rel) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;; #(vi
- abi) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;;
+ rel) #(vi
+ case "$cf_cv_system_name" in #(vi
+ darwin*) cf_suffix='.$(REL_VERSION)'"$cf_suffix" ;; #(vi
+ *) cf_suffix="$cf_suffix"'.$(REL_VERSION)' ;;
+ esac
+ ;;
+ abi)
+ case "$cf_cv_system_name" in #(vi
+ darwin*) cf_suffix='.$(ABI_VERSION)'"$cf_suffix" ;; #(vi
+ *) cf_suffix="$cf_suffix"'.$(ABI_VERSION)' ;;
+ esac
+ ;;
esac
fi
+ # cygwin needs import library, and has unique naming convention
+ if test $cf_cv_shlib_version = cygdll ; then
+ SHARED_LIB="../lib/${cf_prefix}${cf_dir}\$(ABI_VERSION).dll"
+ IMPORT_LIB="../lib/${cf_prefix}${cf_dir}.dll.a"
+ LIBS_TO_MAKE="$LIBS_TO_MAKE \$(SHARED_LIB) \$(IMPORT_LIB)"
+ continue
fi
- cf_libs_to_make="$cf_libs_to_make ../lib/${cf_prefix}${cf_dir}${cf_suffix}"
+ fi
+ LIBS_TO_MAKE="$LIBS_TO_MAKE ../lib/${cf_prefix}${cf_dir}${cf_suffix}"
done
if test $cf_dir = ncurses ; then
+ cf_subsets="$LIB_SUBSETS"
case "$LIB_SUBSETS" in #(vi
termlib+*) #(vi
;;
*) #(vi
- cf_item=`echo $cf_libs_to_make |sed -e s/$LIB_NAME/$TINFO_NAME/g`
- cf_libs_to_make="$cf_item $cf_libs_to_make"
+ cf_item=`echo $LIBS_TO_MAKE |sed -e s/$LIB_NAME/$TINFO_NAME/g`
+ LIBS_TO_MAKE="$cf_item $LIBS_TO_MAKE"
;;
esac
+ else
+ cf_subsets=`echo "$LIB_SUBSETS" | sed -e 's/^termlib //'`
fi
- sed -e "s@\@LIBS_TO_MAKE\@@$cf_libs_to_make@" \
+ sed -e "s@\@LIBS_TO_MAKE\@@$LIBS_TO_MAKE@" \
+ -e "s@\@IMPORT_LIB\@@$IMPORT_LIB@" \
+ -e "s@\@SHARED_LIB\@@$SHARED_LIB@" \
$cf_dir/Makefile >$cf_dir/Makefile.out
mv $cf_dir/Makefile.out $cf_dir/Makefile
$AWK -f $srcdir/mk-0th.awk \
- name=$cf_dir \
+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \
$srcdir/$cf_dir/modules >>$cf_dir/Makefile
- for cf_item in $CF_LIST_MODELS
+ for cf_subset in $cf_subsets
do
- echo 'Appending rules for '$cf_item' model ('$cf_dir')'
+ cf_subdirs=
+ for cf_item in $CF_LIST_MODELS
+ do
+ echo "Appending rules for ${cf_item} model (${cf_dir}: ${cf_subset})"
CF_UPPER(CF_ITEM,$cf_item)
CF_LIB_SUFFIX($cf_item,cf_suffix)
CF_OBJ_SUBDIR($cf_item,cf_subdir)
@@ -962,8 +1112,6 @@ do
cf_depend="$cf_depend $cf_reldir/curses.priv.h"
fi
- for cf_subset in $LIB_SUBSETS
- do
$AWK -f $srcdir/mk-1st.awk \
name=$cf_dir \
traces=$LIB_TRACING \
@@ -973,6 +1121,7 @@ do
suffix=$cf_suffix \
subset=$cf_subset \
ShlibVer=$cf_cv_shlib_version \
+ ShlibVerInfix=$cf_cv_shlib_version_infix \
DoLinks=$cf_cv_do_symlinks \
rmSoLocs=$cf_cv_rm_so_locs \
ldconfig="$LDCONFIG" \
@@ -980,7 +1129,11 @@ do
depend="$cf_depend" \
target="$target" \
$srcdir/$cf_dir/modules >>$cf_dir/Makefile
- test $cf_dir = ncurses && WITH_OVERWRITE=no
+ for cf_subdir2 in $cf_subdirs lib
+ do
+ test $cf_subdir = $cf_subdir2 && break
+ done
+ test "${cf_subset}.${cf_subdir2}" != "${cf_subset}.${cf_subdir}" && \
$AWK -f $srcdir/mk-2nd.awk \
name=$cf_dir \
traces=$LIB_TRACING \
@@ -990,6 +1143,7 @@ do
srcdir=$srcdir \
echo=$WITH_ECHO \
$srcdir/$cf_dir/modules >>$cf_dir/Makefile
+ cf_subdirs="$cf_subdirs $cf_subdir"
done
done
fi
@@ -1045,11 +1199,11 @@ done
cat >> Makefile <<CF_EOF
-install.data \
+install.data \\
uninstall.data ::
- cd misc && \$(MAKE) \$(CF_MFLAGS) \[$]@
+$MAKE_TERMINFO cd misc && \$(MAKE) \$(CF_MFLAGS) \[$]@
-install.man \
+install.man \\
uninstall.man ::
cd man && \$(MAKE) \$(CF_MFLAGS) \[$]@
@@ -1064,7 +1218,7 @@ if test -d tack ; then
if test -f $srcdir/$tack.h; then
cat >> Makefile <<CF_EOF
-install.man \
+install.man \\
uninstall.man ::
cd tack && \$(MAKE) \$(CF_MFLAGS) \[$]@
CF_EOF
@@ -1148,6 +1302,9 @@ test "\$NAME" = "curses.h" && NAME=ncurses.h
CF_EOF
fi
cat >>headers.sh <<CF_EOF
+# Just in case someone gzip'd manpages, remove the conflicting copy.
+test -f \$DST/\$NAME.gz && rm -f \$DST/\$NAME.gz
+
eval \$PRG \$TMPSRC \$DST/\$NAME
rm -f \$TMPSRC \$TMPSED
CF_EOF
@@ -1159,7 +1316,7 @@ do
if test -f $srcdir/$cf_dir/headers; then
cat >>$cf_dir/Makefile <<CF_EOF
\$(DESTDIR)\$(includedir) :
- \$(srcdir)/../mkinstalldirs \[$]@
+ sh \$(srcdir)/../mkinstalldirs \[$]@
install \\
install.libs \\
@@ -1191,6 +1348,17 @@ CF_EOF
test $i = curses.h && echo " -@ (cd \$(DESTDIR)\$(includedir) && rm -f ncurses.h)" >>$cf_dir/Makefile
done
fi
+
+ if test -f $srcdir/$cf_dir/modules; then
+ if test "$cf_dir" != "c++" ; then
+ cat >>$cf_dir/Makefile <<"CF_EOF"
+depend : $(AUTO_SRC)
+ makedepend -- $(CPPFLAGS) -- $(C_SRC)
+
+# DO NOT DELETE THIS LINE -- make depend depends on it.
+CF_EOF
+ fi
+ fi
done
])dnl
@@ -1209,6 +1377,8 @@ AC_DEFUN([CF_LIB_SUFFIX],
profile) $2='_p.a' ;;
shared)
case $cf_cv_system_name in
+ cygwin*) $2='.dll' ;;
+ darwin*) $2='.dylib' ;;
hpux*) $2='.sl' ;;
*) $2='.so' ;;
esac
@@ -1285,7 +1455,12 @@ EOF
LIBS="$cf_saveLIBS"
])
AC_MSG_RESULT($cf_cv_link_dataonly)
-test "$cf_cv_link_dataonly" = no && AC_DEFINE(BROKEN_LINKER)
+
+if test "$cf_cv_link_dataonly" = no ; then
+ AC_DEFINE(BROKEN_LINKER)
+ BROKEN_LINKER=1
+fi
+
])dnl
dnl ---------------------------------------------------------------------------
dnl Most Unix systems have both link and symlink, a few don't have symlink.
@@ -1349,12 +1524,12 @@ dnl (GNU 'make' does both, something POSIX 'make', which happens to make the
dnl $(MAKEFLAGS) variable incompatible because it adds the assignments :-)
AC_DEFUN([CF_MAKEFLAGS],
[
-AC_MSG_CHECKING([for makeflags variable])
-AC_CACHE_VAL(cf_cv_makeflags,[
+AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[
cf_cv_makeflags=''
for cf_option in '-$(MAKEFLAGS)' '$(MFLAGS)'
do
cat >cf_makeflags.tmp <<CF_EOF
+SHELL = /bin/sh
all :
@ echo '.$cf_option'
CF_EOF
@@ -1374,8 +1549,9 @@ CF_EOF
;;
esac
done
- rm -f cf_makeflags.tmp])
-AC_MSG_RESULT($cf_cv_makeflags)
+ rm -f cf_makeflags.tmp
+])
+
AC_SUBST(cf_cv_makeflags)
])dnl
dnl ---------------------------------------------------------------------------
@@ -1416,10 +1592,10 @@ AC_MSG_CHECKING(format of man-pages)
AC_ARG_WITH(manpage-format,
[ --with-manpage-format specify manpage-format: gzip/compress/BSDI/normal and
optionally formatted, e.g., gzip,formatted],
- [cf_manpage_form=$withval],
- [cf_manpage_form=unknown])
+ [MANPAGE_FORMAT=$withval],
+ [MANPAGE_FORMAT=unknown])
-case ".$cf_manpage_form" in
+case ".$MANPAGE_FORMAT" in
.gzip|.compress|.BSDI|.normal|.formatted) # (vi
;;
.unknown|.) # (vi
@@ -1428,7 +1604,7 @@ case ".$cf_manpage_form" in
fi
# look for the 'date' man-page (it's most likely to be installed!)
IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}"
- cf_manpage_form=unknown
+ MANPAGE_FORMAT=unknown
for cf_dir in $MANPATH; do
test -z "$cf_dir" && cf_dir=/usr/man
for cf_name in $cf_dir/*/date.[[01]]* $cf_dir/*/date
@@ -1436,15 +1612,15 @@ case ".$cf_manpage_form" in
cf_test=`echo $cf_name | sed -e 's/*//'`
if test "x$cf_test" = "x$cf_name" ; then
case "$cf_name" in
- *.gz) cf_manpage_form=gzip;;
- *.Z) cf_manpage_form=compress;;
- *.0) cf_manpage_form=BSDI,formatted;;
- *) cf_manpage_form=normal;;
+ *.gz) MANPAGE_FORMAT=gzip;;
+ *.Z) MANPAGE_FORMAT=compress;;
+ *.0) MANPAGE_FORMAT=BSDI,formatted;;
+ *) MANPAGE_FORMAT=normal;;
esac
break
fi
done
- if test "$cf_manpage_form" != "unknown" ; then
+ if test "$MANPAGE_FORMAT" != "unknown" ; then
break
fi
done
@@ -1455,7 +1631,7 @@ case ".$cf_manpage_form" in
;;
esac
-AC_MSG_RESULT($cf_manpage_form)
+AC_MSG_RESULT($MANPAGE_FORMAT)
])dnl
dnl ---------------------------------------------------------------------------
dnl The Debian people have their own naming convention for manpages. This
@@ -1467,37 +1643,40 @@ AC_MSG_CHECKING(for manpage renaming)
AC_ARG_WITH(manpage-renames,
[ --with-manpage-renames specify manpage-renaming],
- [cf_manpage_renames=$withval],
- [cf_manpage_renames=yes])
+ [MANPAGE_RENAMES=$withval],
+ [MANPAGE_RENAMES=yes])
-case ".$cf_manpage_renames" in #(vi
+case ".$MANPAGE_RENAMES" in #(vi
.no) #(vi
;;
.|.yes)
# Debian 'man' program?
if test -f /etc/debian_version ; then
- cf_manpage_renames=`cd $srcdir && pwd`/man/man_db.renames
+ MANPAGE_RENAMES=`cd $srcdir && pwd`/man/man_db.renames
else
- cf_manpage_renames=no
+ MANPAGE_RENAMES=no
fi
;;
esac
-if test "$cf_manpage_renames" != no ; then
- if test ! -f $cf_manpage_renames ; then
- AC_MSG_ERROR(not a filename: $cf_manpage_renames)
+if test "$MANPAGE_RENAMES" != no ; then
+ if test -f $srcdir/man/$MANPAGE_RENAMES ; then
+ MANPAGE_RENAMES=`cd $srcdir/man && pwd`/$MANPAGE_RENAMES
+ elif test ! -f $MANPAGE_RENAMES ; then
+ AC_MSG_ERROR(not a filename: $MANPAGE_RENAMES)
fi
test ! -d man && mkdir man
# Construct a sed-script to perform renaming within man-pages
- if test -n "$cf_manpage_renames" ; then
+ if test -n "$MANPAGE_RENAMES" ; then
test ! -d man && mkdir man
- $srcdir/man/make_sed.sh $cf_manpage_renames >man/edit_man.sed
+ sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >man/edit_man.sed
fi
fi
-AC_MSG_RESULT($cf_manpage_renames)
+AC_MSG_RESULT($MANPAGE_RENAMES)
+AC_SUBST(MANPAGE_RENAMES)
])dnl
dnl ---------------------------------------------------------------------------
dnl Some people expect each tool to make all aliases for manpages in the
@@ -1509,10 +1688,10 @@ AC_MSG_CHECKING(for manpage symlinks)
AC_ARG_WITH(manpage-symlinks,
[ --with-manpage-symlinks specify manpage-symlinks],
- [cf_manpage_symlinks=$withval],
- [cf_manpage_symlinks=yes])
+ [MANPAGE_SYMLINKS=$withval],
+ [MANPAGE_SYMLINKS=yes])
-AC_MSG_RESULT($cf_manpage_symlinks)
+AC_MSG_RESULT($MANPAGE_SYMLINKS)
])dnl
dnl ---------------------------------------------------------------------------
dnl This option causes manpages to be run through tbl(1) to generate tables
@@ -1523,10 +1702,10 @@ AC_MSG_CHECKING(for manpage tbl)
AC_ARG_WITH(manpage-tbl,
[ --with-manpage-tbl specify manpage processing with tbl],
- [cf_manpage_tbl=$withval],
- [cf_manpage_tbl=no])
+ [MANPAGE_TBL=$withval],
+ [MANPAGE_TBL=no])
-AC_MSG_RESULT($cf_manpage_tbl)
+AC_MSG_RESULT($MANPAGE_TBL)
])dnl
dnl ---------------------------------------------------------------------------
dnl Try to determine if the man-pages on the system are compressed, and if
@@ -1546,7 +1725,7 @@ CF_MANPAGE_TBL
cf_prefix="$prefix"
fi
- case "$cf_manpage_form" in # (vi
+ case "$MANPAGE_FORMAT" in # (vi
*formatted*) # (vi
cf_subdir='$mandir/cat'
cf_format=yes
@@ -1563,8 +1742,9 @@ cat >man/edit_man.sh <<CF_EOF
# this script is generated by the configure-script
prefix="$cf_prefix"
datadir="$datadir"
+NCURSES_OSPEED="$NCURSES_OSPEED"
TERMINFO="$TERMINFO"
-MKDIRS="`cd $srcdir && pwd`/mkinstalldirs"
+MKDIRS="sh `cd $srcdir && pwd`/mkinstalldirs"
INSTALL="$INSTALL"
INSTALL_DATA="$INSTALL_DATA"
transform="$program_transform_name"
@@ -1600,13 +1780,13 @@ case \$i in #(vi
continue
fi
CF_EOF
-if test "$cf_manpage_symlinks" = yes ; then
+if test "$MANPAGE_SYMLINKS" = yes ; then
cat >>man/edit_man.sh <<CF_EOF
aliases=\`sed -f \$srcdir/manlinks.sed \$inalias | sort -u\`
CF_EOF
fi
-if test "$cf_manpage_renames" = no ; then
+if test "$MANPAGE_RENAMES" = no ; then
cat >>man/edit_man.sh <<CF_EOF
# perform program transformations for section 1 man pages
if test \$section = 1 ; then
@@ -1617,7 +1797,7 @@ cat >>man/edit_man.sh <<CF_EOF
CF_EOF
else
cat >>man/edit_man.sh <<CF_EOF
- target=\`grep "^\$source" $cf_manpage_renames | $AWK '{print \[$]2}'\`
+ target=\`grep "^\$source" $MANPAGE_RENAMES | $AWK '{print \[$]2}'\`
if test -z "\$target" ; then
echo '? missing rename for '\$source
target="\$source"
@@ -1638,6 +1818,7 @@ CF_EOF
cat >>man/edit_man.sh <<CF_EOF
sed -e "s,@DATADIR@,\$datadir," \\
-e "s,@TERMINFO@,\$TERMINFO," \\
+ -e "s,@NCURSES_OSPEED@,\$NCURSES_OSPEED," \\
CF_EOF
ifelse($1,,,[
for cf_name in $1
@@ -1648,10 +1829,16 @@ cat >>man/edit_man.sh <<CF_EOF
CF_EOF
done
])
+if test -f $MANPAGE_RENAMES ; then
+cat >>man/edit_man.sh <<CF_EOF
+ < \$i | sed -f edit_man.sed >\$TMP
+CF_EOF
+else
cat >>man/edit_man.sh <<CF_EOF
< \$i >\$TMP
CF_EOF
-if test $cf_manpage_tbl = yes ; then
+fi
+if test $MANPAGE_TBL = yes ; then
cat >>man/edit_man.sh <<CF_EOF
tbl \$TMP >\$TMP.out
mv \$TMP.out \$TMP
@@ -1669,7 +1856,7 @@ cat >>man/edit_man.sh <<CF_EOF
mv \$TMP.out \$TMP
CF_EOF
fi
-case "$cf_manpage_form" in #(vi
+case "$MANPAGE_FORMAT" in #(vi
*compress*) #(vi
cat >>man/edit_man.sh <<CF_EOF
if test \$verb = installing ; then
@@ -1781,6 +1968,37 @@ ifelse($1,,[
fi
])
dnl ---------------------------------------------------------------------------
+dnl Check if mbstate_t is declared, and if so, which header file.
+AC_DEFUN([CF_MBSTATE_T],
+[
+# This is needed on Tru64 5.0 to declare mbstate_t
+AC_CACHE_CHECK(if we must include wchar.h to declare mbstate_t,cf_cv_mbstate_t,[
+AC_TRY_COMPILE([
+#include <stdlib.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif],
+ [mbstate_t state],
+ [cf_cv_mbstate_t=no],
+ [AC_TRY_COMPILE([
+#include <stdlib.h>
+#include <wchar.h>
+#ifdef HAVE_LIBUTF8_H
+#include <libutf8.h>
+#endif],
+ [mbstate_t value],
+ [cf_cv_mbstate_t=yes],
+ [cf_cv_mbstate_t=unknown])])])
+
+if test "$cf_cv_mbstate_t" = yes ; then
+ AC_DEFINE(NEED_WCHAR_H)
+fi
+
+if test "$cf_cv_mbstate_t" != unknown ; then
+ AC_DEFINE(HAVE_MBSTATE_T)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl Check if the file-system supports mixed-case filenames. If we're able to
dnl create a lowercase name and see it as uppercase, it doesn't support that.
AC_DEFUN([CF_MIXEDCASE_FILENAMES],
@@ -1798,6 +2016,54 @@ AC_CACHE_CHECK(if filesystem supports mixed-case filenames,cf_cv_mixedcase,[
test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES)
])dnl
dnl ---------------------------------------------------------------------------
+dnl Check for a working mkstemp. This creates two files, checks that they are
+dnl successfully created and distinct (AmigaOS apparently fails on the last).
+AC_DEFUN([CF_MKSTEMP],[
+AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[
+rm -f conftest*
+AC_TRY_RUN([
+#include <sys/types.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <sys/stat.h>
+int main()
+{
+ char *tmpl = "conftestXXXXXX";
+ char name[2][80];
+ int n;
+ int result = 0;
+ int fd;
+ struct stat sb;
+
+ umask(077);
+ for (n = 0; n < 2; ++n) {
+ strcpy(name[n], tmpl);
+ if ((fd = mkstemp(name[n])) >= 0) {
+ if (!strcmp(name[n], tmpl)
+ || stat(name[n], &sb) != 0
+ || (sb.st_mode & S_IFMT) != S_IFREG
+ || (sb.st_mode & 077) != 0) {
+ result = 1;
+ }
+ close(fd);
+ }
+ }
+ if (result == 0
+ && !strcmp(name[0], name[1]))
+ result = 1;
+ exit(result);
+}
+],[cf_cv_func_mkstemp=yes
+],[cf_cv_func_mkstemp=no
+],[AC_CHECK_FUNC(mkstemp)
+])
+])
+if test "$cf_cv_func_mkstemp" = yes ; then
+ AC_DEFINE(HAVE_MKSTEMP)
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl Compute the object-directory name from the given model name
AC_DEFUN([CF_OBJ_SUBDIR],
[
@@ -1806,7 +2072,13 @@ AC_DEFUN([CF_OBJ_SUBDIR],
normal) $2='objects' ;;
debug) $2='obj_g' ;;
profile) $2='obj_p' ;;
- shared) $2='obj_s' ;;
+ shared)
+ case $cf_cv_system_name in #(vi
+ cygwin) #(vi
+ $2='objects' ;;
+ *)
+ $2='obj_s' ;;
+ esac
esac
])dnl
dnl ---------------------------------------------------------------------------
@@ -1823,11 +2095,13 @@ ifelse($1,,,[$1=$PATHSEP])
dnl ---------------------------------------------------------------------------
dnl Check the argument to see that it looks like a pathname. Rewrite it if it
dnl begins with one of the prefix/exec_prefix variables, and then again if the
-dnl result begins with 'NONE'. This is necessary to workaround autoconf's
+dnl result begins with 'NONE'. This is necessary to work around autoconf's
dnl delayed evaluation of those symbols.
AC_DEFUN([CF_PATH_SYNTAX],[
case ".[$]$1" in #(vi
-./*) #(vi
+.\[$]\(*\)*|.\'*\'*) #(vi
+ ;;
+..|./*|.\\*) #(vi
;;
.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
;;
@@ -1843,7 +2117,7 @@ case ".[$]$1" in #(vi
$1=`echo [$]$1 | sed -e s@NONE@$ac_default_prefix@`
;;
*)
- AC_ERROR(expected a pathname, not "[$]$1")
+ ifelse($2,,[AC_ERROR([expected a pathname, not \"[$]$1\"])],$2)
;;
esac
])dnl
@@ -1867,6 +2141,7 @@ cygwin*)
;;
esac
AC_SUBST(PROG_EXT)
+test -n "$PROG_EXT" && AC_DEFINE_UNQUOTED(PROG_EXT,"$PROG_EXT")
])dnl
dnl ---------------------------------------------------------------------------
dnl Force $INSTALL to be an absolute-path. Otherwise, edit_man.sh and the
@@ -1933,12 +2208,16 @@ dnl
dnl The variable 'cf_cv_shlib_version' controls whether we use the rel or abi
dnl version when making symbolic links.
dnl
+dnl The variable 'cf_cv_shlib_version_infix' controls whether shared library
+dnl version numbers are infix (ex: libncurses.<ver>.dylib) or postfix
+dnl (ex: libncurses.so.<ver>).
+dnl
dnl Some loaders leave 'so_locations' lying around. It's nice to clean up.
AC_DEFUN([CF_SHARED_OPTS],
[
AC_REQUIRE([CF_SUBST_NCURSES_VERSION])
- LOCAL_LDFLAGS=
- LOCAL_LDFLAGS2=
+ LOCAL_LDFLAGS=
+ LOCAL_LDFLAGS2=
LD_SHARED_OPTS=
INSTALL_LIB="-m 644"
@@ -1979,10 +2258,25 @@ AC_DEFUN([CF_SHARED_OPTS],
CFLAGS="$cf_save_CFLAGS"
fi
+ cf_cv_shlib_version_infix=no
+
case $cf_cv_system_name in
beos*)
MK_SHARED_LIB='$(CC) -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0'
;;
+ cygwin*)
+ CC_SHARED_OPTS=
+ MK_SHARED_LIB='$(CC) -shared -Wl,--out-implib=$(IMPORT_LIB) -Wl,--export-all-symbols -o $(SHARED_LIB)'
+ cf_cv_shlib_version=cygdll
+ cf_cv_shlib_version_infix=cygdll
+ ;;
+ darwin*)
+ EXTRA_CFLAGS="-no-cpp-precomp"
+ CC_SHARED_OPTS="-dynamic"
+ MK_SHARED_LIB='$(CC) -dynamiclib -install_name $(DESTDIR)$(libdir)/`basename $[@]` -compatibility_version $(ABI_VERSION) -current_version $(ABI_VERSION) -o $[@]'
+ test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=abi
+ cf_cv_shlib_version_infix=yes
+ ;;
hpux*)
# (tested with gcc 2.7.2 -- I don't have c89)
if test "$GCC" = yes; then
@@ -2010,8 +2304,8 @@ AC_DEFUN([CF_SHARED_OPTS],
;;
linux*|gnu*)
if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
fi
if test "$cf_cv_ld_rpath" = yes ; then
cf_ld_rpath_opt="-Wl,-rpath,"
@@ -2033,8 +2327,8 @@ AC_DEFUN([CF_SHARED_OPTS],
CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
test "$cf_cv_ld_rpath" = yes && cf_ld_rpath_opt="-Wl,-rpath,"
if test "$DFT_LWR_MODEL" = "shared" && test "$cf_cv_ld_rpath" = yes ; then
- LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
EXTRA_LDFLAGS="-Wl,-rpath,\$(libdir) $EXTRA_LDFLAGS"
MK_SHARED_LIB='$(CC) -shared -Wl,-soname,`basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]'
if test "$cf_cv_shlib_version" = auto; then
@@ -2050,16 +2344,16 @@ AC_DEFUN([CF_SHARED_OPTS],
# tested with OSF/1 V3.2 and 'cc'
# tested with OSF/1 V3.2 and gcc 2.6.3 (but the c++ demo didn't
# link with shared libs).
- MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`'
+ MK_SHARED_LIB='$(LD) -set_version $(REL_VERSION):$(ABI_VERSION) -expect_unresolved "*" -shared -soname `basename $[@]`'
case $host_os in
osf4*)
- MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
+ MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
;;
esac
MK_SHARED_LIB="${MK_SHARED_LIB}"' -o $[@]'
if test "$DFT_LWR_MODEL" = "shared" ; then
- LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ LOCAL_LDFLAGS="-Wl,-rpath,`pwd`/lib"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
fi
if test "$cf_cv_ld_rpath" = yes ; then
cf_ld_rpath_opt="-rpath"
@@ -2097,7 +2391,7 @@ AC_DEFUN([CF_SHARED_OPTS],
MK_SHARED_LIB='$(LD) -dy -G -h `basename $[@] .$(REL_VERSION)`.$(ABI_VERSION) -o $[@]'
if test "$DFT_LWR_MODEL" = "shared" ; then
LOCAL_LDFLAGS="-R `pwd`/lib:\$(libdir)"
- LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
+ LOCAL_LDFLAGS2="$LOCAL_LDFLAGS"
fi
if test "$cf_cv_ld_rpath" = yes ; then
cf_ld_rpath_opt="-R"
@@ -2282,11 +2576,11 @@ do
fi
done
AC_MSG_RESULT($cf_cv_src_modules)
-TEST_ARGS="-L${LIB_DIR} -L\$(libdir) $TEST_ARGS"
+TEST_ARGS="-L${LIB_DIR} $TEST_ARGS"
AC_SUBST(TEST_DEPS)
AC_SUBST(TEST_ARGS)
-PROG_ARGS="-L${LIB_DIR} -L\$(libdir) $PROG_ARGS"
+PROG_ARGS="-L${LIB_DIR} $PROG_ARGS"
AC_SUBST(PROG_ARGS)
SRC_SUBDIRS="man include"
@@ -2294,7 +2588,8 @@ for cf_dir in $cf_cv_src_modules
do
SRC_SUBDIRS="$SRC_SUBDIRS $cf_dir"
done
-SRC_SUBDIRS="$SRC_SUBDIRS misc test"
+SRC_SUBDIRS="$SRC_SUBDIRS test"
+test -z "$MAKE_TERMINFO" && SRC_SUBDIRS="$SRC_SUBDIRS misc"
test "$cf_with_cxx_binding" != no && SRC_SUBDIRS="$SRC_SUBDIRS c++"
ADA_SUBDIRS=
@@ -2434,7 +2729,8 @@ NCURSES_PATCH="`egrep '^NCURSES_PATCH[[ ]]*=' $srcdir/dist.mk | sed -e 's/^[[^0
cf_cv_abi_version=${NCURSES_MAJOR}
cf_cv_rel_version=${NCURSES_MAJOR}.${NCURSES_MINOR}
dnl Show the computed version, for logging
-AC_MSG_RESULT(Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version (`date`))
+cf_cv_timestamp=`date`
+AC_MSG_RESULT(Configuring NCURSES $cf_cv_rel_version ABI $cf_cv_abi_version ($cf_cv_timestamp))
dnl We need these values in the generated headers
AC_SUBST(NCURSES_MAJOR)
AC_SUBST(NCURSES_MINOR)
@@ -2444,6 +2740,7 @@ AC_SUBST(cf_cv_rel_version)
AC_SUBST(cf_cv_abi_version)
AC_SUBST(cf_cv_cc_bool_type)
AC_SUBST(cf_cv_builtin_bool)
+AC_SUBST(cf_cv_header_stdbool_h)
AC_SUBST(cf_cv_type_of_bool)dnl
])dnl
dnl ---------------------------------------------------------------------------
@@ -2571,57 +2868,9 @@ AC_DEFUN([CF_UPPER],
$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
])dnl
dnl ---------------------------------------------------------------------------
-dnl Compute the shift-mask that we'll use for wide-character indices. We use
-dnl all but the index portion of chtype for storing attributes.
-AC_DEFUN([CF_WIDEC_SHIFT],
-[
-AC_REQUIRE([CF_TYPEOF_CHTYPE])
-AC_MSG_CHECKING([for number of bits in chtype])
-AC_CACHE_VAL(cf_cv_shift_limit,[
- AC_TRY_RUN([
-#include <stdio.h>
-int main()
-{
- FILE *fp = fopen("cf_test.out", "w");
- if (fp != 0) {
- int n;
- unsigned TYPEOF_CHTYPE x = 1L;
- for (n = 0; ; n++) {
- unsigned long y = (x >> n);
- if (y != 1 || x == 0)
- break;
- x <<= 1;
- }
- fprintf(fp, "%d", n);
- fclose(fp);
- }
- exit(0);
-}
- ],
- [cf_cv_shift_limit=`cat cf_test.out`],
- [cf_cv_shift_limit=32],
- [cf_cv_shift_limit=32])
- rm -f cf_test.out
- ])
-AC_MSG_RESULT($cf_cv_shift_limit)
-AC_SUBST(cf_cv_shift_limit)
-
-AC_MSG_CHECKING([for width of character-index])
-AC_CACHE_VAL(cf_cv_widec_shift,[
-if test ".$with_widec" = ".yes" ; then
- cf_attrs_width=39
- if ( expr $cf_cv_shift_limit \> $cf_attrs_width >/dev/null )
- then
- cf_cv_widec_shift=`expr 16 + $cf_cv_shift_limit - $cf_attrs_width`
- else
- cf_cv_widec_shift=16
- fi
-else
- cf_cv_widec_shift=8
-fi
-])
-AC_MSG_RESULT($cf_cv_widec_shift)
-AC_SUBST(cf_cv_widec_shift)
+dnl Use AC_VERBOSE w/o the warnings
+AC_DEFUN([CF_VERBOSE],
+[test -n "$verbose" && echo " $1" 1>&AC_FD_MSG
])dnl
dnl ---------------------------------------------------------------------------
dnl Wrapper for AC_ARG_WITH to ensure that user supplies a pathname, not just
@@ -2648,13 +2897,14 @@ dnl $2 = help-text
dnl $3 = environment variable to set
dnl $4 = default value, shown in the help-message, must be a constant
dnl $5 = default value, if it's an expression & cannot be in the help-message
+dnl $6 = flag to tell if we want to define or substitute
dnl
AC_DEFUN([CF_WITH_PATHLIST],[
AC_REQUIRE([CF_PATHSEP])
AC_ARG_WITH($1,[$2 ](default: ifelse($4,,empty,$4)),,
-ifelse($4,,[withval="${$3}"],[withval="${$3-ifelse($5,,$4,$5)}"]))dnl
+ifelse($4,,[withval=${$3}],[withval=${$3-ifelse($5,,$4,$5)}]))dnl
-IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${IFS}${PATHSEP}"
+IFS="${IFS= }"; ac_save_ifs="$IFS"; IFS="${PATHSEP}"
cf_dst_path=
for cf_src_path in $withval
do
@@ -2664,6 +2914,18 @@ do
done
IFS="$ac_save_ifs"
-eval $3="$cf_dst_path"
+ifelse($6,define,[
+# Strip single quotes from the value, e.g., when it was supplied as a literal
+# for $4 or $5.
+case $cf_dst_path in #(vi
+\'*)
+ cf_dst_path=`echo $cf_dst_path |sed -e s/\'// -e s/\'\$//`
+ ;;
+esac
+cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'`
+])
+
+eval '$3="$cf_dst_path"'
AC_SUBST($3)dnl
+
])dnl