]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - aclocal.m4
ncurses 6.1 - patch 20180519
[ncurses.git] / aclocal.m4
index 3deb5918873359fccb6b9e7f1312277b5c1f6bfe..e5e9292e5c443dbdb3b052b6204fdbd4a3f5cd79 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 1998-2014,2015 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2017,2018 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            *
@@ -28,14 +28,14 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1995-on
 dnl
-dnl $Id: aclocal.m4,v 1.765 2015/08/22 21:12:39 tom Exp $
+dnl $Id: aclocal.m4,v 1.833 2018/01/16 21:45:49 tom Exp $
 dnl Macros used in NCURSES auto-configuration script.
 dnl
 dnl These macros are maintained separately from NCURSES.  The copyright on
 dnl this file applies to the aggregation of macros and does not affect use of
 dnl these macros in other applications.
 dnl
-dnl See http://invisible-island.net/autoconf/ for additional information.
+dnl See https://invisible-island.net/autoconf/ for additional information.
 dnl
 dnl ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
@@ -155,7 +155,7 @@ AC_DEFUN([CF_ADD_ADAFLAGS],[
        AC_SUBST(ADAFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_ADD_CFLAGS version: 12 updated: 2015/04/12 15:39:00
+dnl CF_ADD_CFLAGS version: 13 updated: 2017/02/25 18:57:40
 dnl -------------
 dnl Copy non-preprocessor flags to $CFLAGS, preprocessor flags to $CPPFLAGS
 dnl The second parameter if given makes this macro verbose.
@@ -185,10 +185,10 @@ case $cf_fix_cppflags in
                                && cf_fix_cppflags=yes
 
                        if test $cf_fix_cppflags = yes ; then
-                               cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+                               CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
                                continue
                        elif test "${cf_tst_cflags}" = "\"'" ; then
-                               cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+                               CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
                                continue
                        fi
                        ;;
@@ -203,17 +203,17 @@ case $cf_fix_cppflags in
                                CF_REMOVE_DEFINE(CPPFLAGS,$CPPFLAGS,$cf_tst_cppflags)
                                ;;
                        esac
-                       cf_new_cppflags="$cf_new_cppflags $cf_add_cflags"
+                       CF_APPEND_TEXT(cf_new_cppflags,$cf_add_cflags)
                        ;;
                esac
                ;;
        (*)
-               cf_new_cflags="$cf_new_cflags $cf_add_cflags"
+               CF_APPEND_TEXT(cf_new_cflags,$cf_add_cflags)
                ;;
        esac
        ;;
 (yes)
-       cf_new_extra_cppflags="$cf_new_extra_cppflags $cf_add_cflags"
+       CF_APPEND_TEXT(cf_new_extra_cppflags,$cf_add_cflags)
 
        cf_tst_cflags=`echo ${cf_add_cflags} |sed -e 's/^[[^"]]*"'\''//'`
 
@@ -226,17 +226,17 @@ done
 
 if test -n "$cf_new_cflags" ; then
        ifelse([$2],,,[CF_VERBOSE(add to \$CFLAGS $cf_new_cflags)])
-       CFLAGS="$CFLAGS $cf_new_cflags"
+       CF_APPEND_TEXT(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"
+       CF_APPEND_TEXT(CPPFLAGS,$cf_new_cppflags)
 fi
 
 if test -n "$cf_new_extra_cppflags" ; then
        ifelse([$2],,,[CF_VERBOSE(add to \$EXTRA_CPPFLAGS $cf_new_extra_cppflags)])
-       EXTRA_CPPFLAGS="$cf_new_extra_cppflags $EXTRA_CPPFLAGS"
+       CF_APPEND_TEXT(EXTRA_CPPFLAGS,$cf_new_extra_cppflags)
 fi
 
 AC_SUBST(EXTRA_CPPFLAGS)
@@ -394,12 +394,28 @@ ifelse([$5],NONE,,[(test -z "$5" || test x$5 = xNONE || test "x$4" != "x$5") &&]
 }
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_APPEND_TEXT version: 1 updated: 2017/02/25 18:58:55
+dnl --------------
+dnl use this macro for appending text without introducing an extra blank at
+dnl the beginning
+define([CF_APPEND_TEXT],
+[
+       test -n "[$]$1" && $1="[$]$1 "
+       $1="[$]{$1}$2"
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_ARG_DISABLE version: 3 updated: 1999/03/30 17:24:31
 dnl --------------
 dnl Allow user to disable a normally-on option.
 AC_DEFUN([CF_ARG_DISABLE],
 [CF_ARG_OPTION($1,[$2],[$3],[$4],yes)])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_ARG_ENABLE version: 3 updated: 1999/03/30 17:24:31
+dnl -------------
+dnl Allow user to enable a normally-off option.
+AC_DEFUN([CF_ARG_ENABLE],
+[CF_ARG_OPTION($1,[$2],[$3],[$4],no)])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_ARG_OPTION version: 5 updated: 2015/05/10 19:52:14
 dnl -------------
 dnl Restricted form of AC_ARG_ENABLE that ensures user doesn't give bogus
@@ -423,15 +439,19 @@ ifelse([$3],,[    :]dnl
 ])dnl
 ])])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_AR_FLAGS version: 5 updated: 2010/05/20 20:24:29
+dnl CF_AR_FLAGS version: 6 updated: 2015/10/10 15:25:05
 dnl -----------
 dnl Check for suitable "ar" (archiver) options for updating an archive.
+dnl
+dnl In particular, handle some obsolete cases where the "-" might be omitted,
+dnl as well as a workaround for breakage of make's archive rules by the GNU
+dnl binutils "ar" program.
 AC_DEFUN([CF_AR_FLAGS],[
 AC_REQUIRE([CF_PROG_AR])
 
 AC_CACHE_CHECK(for options to update archives, cf_cv_ar_flags,[
        cf_cv_ar_flags=unknown
-       for cf_ar_flags in -curv curv -crv crv -cqv cqv -rv rv
+       for cf_ar_flags in -curvU -curv curv -crv crv -cqv cqv -rv rv
        do
 
                # check if $ARFLAGS already contains this choice
@@ -547,7 +567,7 @@ else        AC_MSG_RESULT(no)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_BOOL_SIZE version: 14 updated: 2015/04/17 21:13:04
+dnl CF_BOOL_SIZE version: 15 updated: 2017/01/21 11:06:25
 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.
@@ -581,7 +601,7 @@ AC_CACHE_VAL(cf_cv_type_of_bool,[
 
 #endif
 
-int main()
+int main(void)
 {
        FILE *fp = fopen("cf_test.out", "w");
        if (fp != 0) {
@@ -615,7 +635,7 @@ if test "$cf_cv_type_of_bool" = unknown ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_BUILD_CC version: 7 updated: 2012/10/06 15:31:55
+dnl CF_BUILD_CC version: 8 updated: 2018/01/04 20:31:04
 dnl -----------
 dnl If we're cross-compiling, allow the user to override the tools and their
 dnl options.  The configure script is oriented toward identifying the host
@@ -640,7 +660,7 @@ if test "$cross_compiling" = yes ; then
        AC_ARG_WITH(build-cc,
                [  --with-build-cc=XXX     the build C compiler ($BUILD_CC)],
                [BUILD_CC="$withval"],
-               [AC_CHECK_PROGS(BUILD_CC, gcc cc cl)])
+               [AC_CHECK_PROGS(BUILD_CC, [gcc clang c99 c89 cc cl],none)])
        AC_MSG_CHECKING(for native build C compiler)
        AC_MSG_RESULT($BUILD_CC)
 
@@ -707,11 +727,18 @@ AC_SUBST(BUILD_EXEEXT)
 AC_SUBST(BUILD_OBJEXT)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 2 updated: 2015/04/12 15:39:00
+dnl CF_CC_ENV_FLAGS version: 8 updated: 2017/09/23 08:50:24
 dnl ---------------
 dnl Check for user's environment-breakage by stuffing CFLAGS/CPPFLAGS content
-dnl into CC.  This will not help with broken scripts that wrap the compiler with
-dnl options, but eliminates a more common category of user confusion.
+dnl into CC.  This will not help with broken scripts that wrap the compiler
+dnl with options, but eliminates a more common category of user confusion.
+dnl
+dnl In particular, it addresses the problem of being able to run the C
+dnl preprocessor in a consistent manner.
+dnl
+dnl Caveat: this also disallows blanks in the pathname for the compiler, but
+dnl the nuisance of having inconsistent settings for compiler and preprocessor
+dnl outweighs that limitation.
 AC_DEFUN([CF_CC_ENV_FLAGS],
 [
 # This should have been defined by AC_PROG_CC
@@ -719,13 +746,27 @@ AC_DEFUN([CF_CC_ENV_FLAGS],
 
 AC_MSG_CHECKING(\$CC variable)
 case "$CC" in
-(*[[\ \        ]]-[[IUD]]*)
+(*[[\ \        ]]-*)
        AC_MSG_RESULT(broken)
        AC_MSG_WARN(your environment misuses the CC variable to hold CFLAGS/CPPFLAGS options)
        # humor him...
-       cf_flags=`echo "$CC" | sed -e 's/^[[^   ]]*[[   ]]//'`
-       CC=`echo "$CC" | sed -e 's/[[   ]].*//'`
-       CF_ADD_CFLAGS($cf_flags)
+       cf_prog=`echo "$CC" | sed -e 's/        / /g' -e 's/[[ ]]* / /g' -e 's/[[ ]]*[[ ]]-[[^ ]].*//'`
+       cf_flags=`echo "$CC" | ${AWK:-awk} -v prog="$cf_prog" '{ printf("%s", [substr]([$]0,1+length(prog))); }'`
+       CC="$cf_prog"
+       for cf_arg in $cf_flags
+       do
+               case "x$cf_arg" in
+               (x-[[IUDfgOW]]*)
+                       CF_ADD_CFLAGS($cf_arg)
+                       ;;
+               (*)
+                       CC="$CC $cf_arg"
+                       ;;
+               esac
+       done
+       CF_VERBOSE(resulting CC: '$CC')
+       CF_VERBOSE(resulting CFLAGS: '$CFLAGS')
+       CF_VERBOSE(resulting CPPFLAGS: '$CPPFLAGS')
        ;;
 (*)
        AC_MSG_RESULT(ok)
@@ -787,7 +828,7 @@ AC_MSG_RESULT($includedir)
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CGETENT version: 5 updated: 2012/10/06 17:56:13
+dnl CF_CGETENT version: 6 updated: 2017/01/21 11:06:25
 dnl ----------
 dnl Check if the terminal-capability database functions are available.  If not,
 dnl ncurses has a much-reduced version.
@@ -811,6 +852,7 @@ then
        AC_DEFINE(HAVE_BSD_CGETENT,1,[Define to 1 if we have BSD cgetent])
 AC_CACHE_CHECK(if cgetent uses const parameter,cf_cv_cgetent_const,[
 AC_TRY_LINK([
+#pragma GCC diagnostic error "-Wincompatible-pointer-types-discards-qualifiers"
 #include <stdlib.h>],[
        char temp[128];
        char *buf = temp;
@@ -923,7 +965,7 @@ fi
 
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_GPM_WGETCH version: 2 updated: 2010/08/14 18:25:37
+dnl CF_CHECK_GPM_WGETCH version: 3 updated: 2017/01/21 11:06:25
 dnl -------------------
 dnl Check if GPM is already linked with curses.  If so - and if the linkage
 dnl is not "weak" - warn about this because it can create problems linking
@@ -937,7 +979,7 @@ if test "$cross_compiling" != yes ; then
 
 cat >conftest.$ac_ext <<CF_EOF
 #include <gpm.h>
-int main()
+int main(void)
 {
        Gpm_Wgetch();
        ${cf_cv_main_return:-return}(0);
@@ -988,15 +1030,24 @@ else
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_WCHAR_H version: 1 updated: 2011/10/29 15:01:05
+dnl CF_CHECK_WCHAR_H version: 2 updated: 2017/01/21 11:06:25
 dnl ----------------
 dnl Check if wchar.h can be used, i.e., without defining _XOPEN_SOURCE_EXTENDED
 AC_DEFUN([CF_CHECK_WCHAR_H],[
+AC_CHECK_HEADERS( \
+wchar.h \
+wctype.h \
+)
 AC_CACHE_CHECK(if wchar.h can be used as is,cf_cv_wchar_h_okay,[
 AC_TRY_COMPILE(
 [
 #include <stdlib.h>
+#ifdef HAVE_WCHAR_H
 #include <wchar.h>
+#endif
+#ifdef HAVE_WCTYPE_H
+#include <wctype.h>
+#endif
 ],[
        wint_t foo = 0;
        int bar = iswpunct(foo)],
@@ -1009,6 +1060,149 @@ then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_CHECK_WCWIDTH_GRAPHICS version: 1 updated: 2015/12/19 17:47:56
+dnl -------------------------
+dnl Most "modern" terminal emulators are based to some degree on VT100, and
+dnl should support line-drawing.  Even with Unicode.  There is a problem.
+dnl
+dnl While most of the VT100 graphics characters were incorporated into Unicode,
+dnl all of those were combined into a page of useful graphics characters.
+dnl
+dnl So far, so good.
+dnl
+dnl However, while they are useful, there are other considerations.  CJK
+dnl is (because of poor device resolution) often rendered as double-width
+dnl characters.  So... for these generally-useful characters, what should
+dnl be the width (to make them consistent with adjacent characters)?
+dnl
+dnl The obvious choice would have been to make this locale-dependent, and use
+dnl wcwidth() to tell applications what the actual width is.  That was too
+dnl obvious.  Instead, we have a slew of "ambiguous-width" characters.
+dnl See for example
+dnl            http://www.unicode.org/reports/tr11/tr11-29.html
+dnl            http://www.cl.cam.ac.uk/~mgk25/ucs/scw-proposal.html
+dnl
+dnl The EastAsianWidth-6.2.0.txt file from the Unicode organization lists
+dnl more than 22,000 characters, with 1281 of those as ambiguous-width.  For
+dnl instance, it lists half (44/96) of the Latin-1 characters as
+dnl ambiguous-width.  Also, all of the box-characters at 0x2500 are ambiguous.
+dnl
+dnl What this means for the implementor is that on some systems wcwidth() can
+dnl give bad advice.  On Solaris, some of the ambiguous widths are returned as
+dnl 1 (the Latin-1 characters), while others are returned as 2 (line-drawing
+dnl characters).  These do not necessarily match the behavior of the terminal
+dnl emulator.  xterm, for instance, does an optional startup check to find if
+dnl this problem (or similar) exists with the system's locale tables, rejecting
+dnl them if they are too unreliable.
+AC_DEFUN([CF_CHECK_WCWIDTH_GRAPHICS],[
+AC_CACHE_CHECK(if wcwidth agrees graphics are single-width, cf_cv_wcwidth_graphics,[
+cat >conftest.in <<CF_EOF
+-      VT100 symbols
+0x250c upper left corner
+0x2514 lower left corner
+0x2510 upper right corner
+0x2518 lower right corner
+0x251c tee pointing left
+0x2524 tee pointing right
+0x2534 tee pointing up
+0x252c tee pointing down
+0x2500 horizontal line
+0x2502 vertical line
+0x253c large plus or crossover
+0x23ba scan line 1
+0x23bd scan line 9
+0x25c6 diamond
+0x2592 checker board (stipple)
+0x00b0 degree symbol
+0x00b1 plus/minus
+0x00b7 bullet
+-      Teletype 5410v1 symbols
+0x2190 arrow pointing left
+0x2192 arrow pointing right
+0x2193 arrow pointing down
+0x2191 arrow pointing up
+0x2592 board of squares
+0x2603 lantern symbol
+0x25ae solid square block
+-      these defaults were invented for ncurses
+0x23bb scan line 3
+0x23bc scan line 7
+0x2264 less-than-or-equal-to
+0x2265 greater-than-or-equal-to
+0x03c0 greek pi
+0x2260 not-equal
+0x00a3 pound-sterling symbol
+-      thick-line-drawing
+0x250f upper left corner
+0x2517 lower left corner
+0x2513 upper right corner
+0x251b lower right corner
+0x2523 tee pointing left
+0x252b tee pointing right
+0x253b tee pointing up
+0x2533 tee pointing down
+0x2501 horizontal line
+0x2503 vertical line
+0x254b large plus or crossover
+-      double-line-drawing
+0x2554 upper left corner
+0x255a lower left corner
+0x2557 upper right corner
+0x255d lower right corner
+0x2563 tee pointing left
+0x2560 tee pointing right
+0x2569 tee pointing up
+0x2566 tee pointing down
+0x2550 horizontal line
+0x2551 vertical line
+0x256c large plus or crossover
+CF_EOF
+AC_TRY_RUN([
+#include <locale.h>
+#include <stdio.h>
+#include <wchar.h>
+
+#define MY_LEN 80
+
+int
+main(void)
+{
+       FILE *fp;
+       int value;
+       char buffer[MY_LEN + 1];
+       char notes[MY_LEN + 1];
+       int totals = 0;
+       int passed = 0;
+
+       if (setlocale(LC_ALL, "en_US.UTF8") ||
+               setlocale(LC_ALL, "en_US.UTF-8") ||
+               setlocale(LC_ALL, "en_US.utf8") ||
+               setlocale(LC_ALL, "en_US.utf-8")) {
+               if ((fp = fopen("conftest.in", "r")) != 0) {
+                       while (fgets(buffer, MY_LEN, fp) != 0) {
+                               if (*buffer == '-') {
+                                       fprintf(stderr, "\t%s", buffer);
+                               } else if (sscanf(buffer, "%x %s", &value, notes) == 2) {
+                                       ++totals;
+                                       if (wcwidth(value) == 1)
+                                               ++passed;
+                                       fprintf(stderr, "%d\t%s", wcwidth(value), buffer);
+                               } else {
+                                       fprintf(stderr, "?\t%s", buffer);
+                               }
+                       }
+               }
+       }
+       fprintf(stderr, "%d/%d passed wcwidth/graphics check\n", passed, totals);
+       return (totals == passed) ? 0 : 1;
+}
+],
+[cf_cv_wcwidth_graphics=yes],
+[cf_cv_wcwidth_graphics=no],
+[cf_cv_wcwidth_graphics=unknown])
+])
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_CLANG_COMPILER version: 2 updated: 2013/11/19 19:23:35
 dnl -----------------
 dnl Check if the given compiler is really clang.  clang's C driver defines
@@ -1042,7 +1236,7 @@ cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_CPP_PARAM_INIT version: 6 updated: 2012/10/06 17:56:13
+dnl CF_CPP_PARAM_INIT version: 7 updated: 2017/01/21 11:06:25
 dnl -----------------
 dnl Check if the C++ compiler accepts duplicate parameter initialization.  This
 dnl is a late feature for the standard and is not in some recent compilers
@@ -1066,7 +1260,7 @@ TEST::TEST(int x = 1)     // some compilers do not like second initializer
 {
        value = x;
 }
-int main() { }
+int main(void) { }
 ],
        [cf_cv_cpp_param_init=yes],
        [cf_cv_cpp_param_init=no],
@@ -1373,7 +1567,7 @@ if test "$cf_disable_rpath_hack" = no ; then
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_PC_FILES version: 12 updated: 2015/04/17 21:13:04
+dnl CF_ENABLE_PC_FILES version: 13 updated: 2015/11/01 05:27:39
 dnl ------------------
 dnl This is the "--enable-pc-files" option, which is available if there is a
 dnl pkg-config configuration on the local machine.
@@ -1396,14 +1590,13 @@ AC_MSG_RESULT($enable_pc_files)
 
 if test "x$enable_pc_files" != xno
 then
+       MAKE_PC_FILES=
        case "x$PKG_CONFIG_LIBDIR" in
        (xno|xyes)
                AC_MSG_WARN(no PKG_CONFIG_LIBDIR was found)
-               MAKE_PC_FILES="#"
                ;;
        (*)
                CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR)
-               MAKE_PC_FILES=
                ;;
        esac
 else
@@ -1426,7 +1619,7 @@ AC_ARG_ENABLE(rpath,
 AC_MSG_RESULT($cf_cv_enable_rpath)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_STRING_HACKS version: 3 updated: 2013/01/26 16:26:12
+dnl CF_ENABLE_STRING_HACKS version: 5 updated: 2016/10/08 17:34:11
 dnl ----------------------
 dnl On a few platforms, the compiler and/or loader nags with untruthful
 dnl comments stating that "most" uses of strcat/strcpy/sprintf are incorrect,
@@ -1453,7 +1646,16 @@ AC_MSG_RESULT($with_string_hacks)
 if test "x$with_string_hacks" = "xyes"; then
        AC_DEFINE(USE_STRING_HACKS,1,[Define to 1 to work around bogus compiler/loader warnings])
        AC_MSG_WARN(enabling string-hacks to work around bogus compiler/loader warnings)
-       AC_CHECK_FUNCS( strlcat strlcpy snprintf )
+       AC_CHECK_FUNC(strlcat,[
+               AC_DEFINE(HAVE_STRLCAT,1,[Define to 1 if we have strlcat function])
+               ],[
+               AC_CHECK_LIB(bsd,strlcat,[
+                       CF_ADD_LIB(bsd)
+                       AC_CHECK_HEADERS(bsd/string.h)
+                       AC_DEFINE(HAVE_STRLCAT,1,[Define to 1 if we have strlcat function])
+                       ])
+               ])
+       AC_CHECK_FUNCS( strlcpy snprintf )
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -1693,7 +1895,7 @@ unset ac_ct_$1
 unset $1
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_DLSYM version: 3 updated: 2012/10/06 11:17:15
+dnl CF_FUNC_DLSYM version: 4 updated: 2015/09/12 14:46:44
 dnl -------------
 dnl Test for dlsym() and related functions, as well as libdl.
 dnl
@@ -1710,7 +1912,7 @@ AC_CHECK_LIB(dl,dlsym,[
        cf_have_libdl=yes])])
 
 if test "$cf_have_dlsym" = yes ; then
-       test "$cf_have_libdl" = yes && CF_ADD_LIB(dl)
+       test "$cf_have_libdl" = yes && { CF_ADD_LIB(dl) }
 
        AC_MSG_CHECKING(whether able to link to dl*() functions)
        AC_TRY_LINK([#include <dlfcn.h>],[
@@ -1728,7 +1930,7 @@ else
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_MEMMOVE version: 8 updated: 2012/10/04 20:12:20
+dnl CF_FUNC_MEMMOVE version: 9 updated: 2017/01/21 11:06:25
 dnl ---------------
 dnl Check for memmove, or a bcopy that can handle overlapping copy.  If neither
 dnl is found, add our own version of memmove to the list of objects.
@@ -1738,7 +1940,7 @@ AC_CHECK_FUNC(memmove,,[
 AC_CHECK_FUNC(bcopy,[
        AC_CACHE_CHECK(if bcopy does overlapping moves,cf_cv_good_bcopy,[
                AC_TRY_RUN([
-int main() {
+int main(void) {
        static char data[] = "abcdefghijklmnopqrstuwwxyz";
        char temp[40];
        bcopy(data, temp, sizeof(data));
@@ -1759,7 +1961,7 @@ int main() {
        fi
 ])])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_NANOSLEEP version: 4 updated: 2012/10/06 17:56:13
+dnl CF_FUNC_NANOSLEEP version: 5 updated: 2017/01/21 11:06:25
 dnl -----------------
 dnl Check for existence of workable nanosleep() function.  Some systems, e.g.,
 dnl AIX 4.x, provide a non-working version.
@@ -1774,7 +1976,7 @@ AC_TRY_RUN([
 #include <sys/time.h>
 #endif
 
-int main() {
+int main(void) {
        struct timespec ts1, ts2;
        int code;
        ts1.tv_sec  = 0;
@@ -1793,7 +1995,7 @@ int main() {
 test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP,1,[Define to 1 if we have nanosleep()])
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_OPENPTY version: 4 updated: 2015/04/18 08:56:57
+dnl CF_FUNC_OPENPTY version: 5 updated: 2015/09/12 14:46:50
 dnl ---------------
 dnl Check for openpty() function, along with <pty.h> header.  It may need the
 dnl "util" library as well.
@@ -1802,7 +2004,7 @@ AC_DEFUN([CF_FUNC_OPENPTY],
 AC_CHECK_LIB(util,openpty,cf_cv_lib_util=yes,cf_cv_lib_util=no)
 AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
        cf_save_LIBS="$LIBS"
-       test $cf_cv_lib_util = yes && CF_ADD_LIB(util)
+       test $cf_cv_lib_util = yes && { CF_ADD_LIB(util) }
        for cf_header in pty.h libutil.h util.h
        do
        AC_TRY_LINK([
@@ -1821,11 +2023,12 @@ AC_CACHE_CHECK(for openpty header,cf_cv_func_openpty,[
 ])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_POLL version: 8 updated: 2012/10/04 05:24:07
+dnl CF_FUNC_POLL version: 9 updated: 2015/10/10 13:27:32
 dnl ------------
 dnl See if the poll function really works.  Some platforms have poll(), but
 dnl it does not work for terminals or files.
 AC_DEFUN([CF_FUNC_POLL],[
+tty 2>&1 >/dev/null || { AC_CHECK_FUNCS(posix_openpt) }
 AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
 AC_TRY_RUN([
 #include <stdlib.h>
@@ -1837,7 +2040,7 @@ AC_TRY_RUN([
 #else
 #include <sys/poll.h>
 #endif
-int main() {
+int main(void) {
        struct pollfd myfds;
        int ret;
 
@@ -1857,6 +2060,11 @@ int main() {
                if (!isatty(fd)) {
                        fd = open("/dev/tty", 2);       /* O_RDWR */
                }
+#ifdef HAVE_POSIX_OPENPT
+               if (fd < 0) {
+                       fd = posix_openpt(O_RDWR);
+               }
+#endif
 
                if (fd >= 0) {
                        /* also check with standard input */
@@ -2262,7 +2470,7 @@ AC_SUBST(cf_compile_generics)
 AC_SUBST(cf_generic_objects)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_GNAT_PROJECTS version: 8 updated: 2015/04/17 21:13:04
+dnl CF_GNAT_PROJECTS version: 9 updated: 2018/01/14 15:46:09
 dnl ----------------
 dnl GNAT projects are configured with ".gpr" project files.
 dnl GNAT libraries are a further development, using the project feature.
@@ -2284,10 +2492,12 @@ case $cf_gnat_version in
        (cygwin*|msys*)
                ;;
        (*)
-               mkdir conftest.src conftest.bin conftest.lib
-               cd conftest.src
                rm -rf conftest* *~conftest*
-               cat >>library.gpr <<CF_EOF
+               if mkdir conftest.src conftest.bin conftest.lib
+               then
+                       cd conftest.src
+                       rm -rf conftest* *~conftest*
+                       cat >>library.gpr <<CF_EOF
 project Library is
   Kind := External ("LIB_KIND");
   for Library_Name use "ConfTest";
@@ -2300,12 +2510,12 @@ project Library is
   for Source_Dirs use (Source_Dir);
 end Library;
 CF_EOF
-               cat >>confpackage.ads <<CF_EOF
+                       cat >>confpackage.ads <<CF_EOF
 package ConfPackage is
    procedure conftest;
 end ConfPackage;
 CF_EOF
-               cat >>confpackage.adb <<CF_EOF
+                       cat >>confpackage.adb <<CF_EOF
 with Text_IO;
 package body ConfPackage is
    procedure conftest is
@@ -2315,16 +2525,17 @@ package body ConfPackage is
    end conftest;
 end ConfPackage;
 CF_EOF
-               if ( $cf_ada_make $ADAFLAGS \
-                               -Plibrary.gpr \
-                               -XBUILD_DIR=`cd ../conftest.bin;pwd` \
-                               -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
-                               -XSOURCE_DIR=`pwd` \
-                               -XSONAME=libConfTest.so.1 \
-                               -XLIB_KIND=static 1>&AC_FD_CC 2>&1 ) ; then
-                       cf_gnat_projects=yes
+                       if ( $cf_ada_make $ADAFLAGS \
+                                       -Plibrary.gpr \
+                                       -XBUILD_DIR=`cd ../conftest.bin;pwd` \
+                                       -XLIBRARY_DIR=`cd ../conftest.lib;pwd` \
+                                       -XSOURCE_DIR=`pwd` \
+                                       -XSONAME=libConfTest.so.1 \
+                                       -XLIB_KIND=static 1>&AC_FD_CC 2>&1 ) ; then
+                               cf_gnat_projects=yes
+                       fi
+                       cd ..
                fi
-               cd ..
                if test -f conftest.lib/confpackage.ali
                then
                        cf_gnat_libraries=yes
@@ -2491,7 +2702,7 @@ case $cf_gnat_version in
 esac
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_GNU_SOURCE version: 6 updated: 2005/07/09 13:23:07
+dnl CF_GNU_SOURCE version: 7 updated: 2016/08/05 05:15:37
 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
@@ -2518,7 +2729,20 @@ make an error
        CPPFLAGS="$cf_save"
        ])
 ])
-test "$cf_cv_gnu_source" = yes && CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+
+if test "$cf_cv_gnu_source" = yes
+then
+AC_CACHE_CHECK(if we should also define _DEFAULT_SOURCE,cf_cv_default_source,[
+CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+       AC_TRY_COMPILE([#include <sys/types.h>],[
+#ifdef _DEFAULT_SOURCE
+make an error
+#endif],
+               [cf_cv_default_source=no],
+               [cf_cv_default_source=yes])
+       ])
+test "$cf_cv_default_source" = yes && CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE"
+fi
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl CF_GPP_LIBRARY version: 12 updated: 2015/04/17 21:13:04
@@ -2565,7 +2789,7 @@ if test "$GXX" = yes; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_GXX_VERSION version: 7 updated: 2012/06/16 14:55:39
+dnl CF_GXX_VERSION version: 8 updated: 2017/02/11 14:48:57
 dnl --------------
 dnl Check for version of g++
 AC_DEFUN([CF_GXX_VERSION],[
@@ -2574,7 +2798,11 @@ GXX_VERSION=none
 if test "$GXX" = yes; then
        AC_MSG_CHECKING(version of ${CXX:-g++})
        GXX_VERSION="`${CXX:-g++} --version| sed -e '2,$d' -e 's/^.*(GCC) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
-       test -z "$GXX_VERSION" && GXX_VERSION=unknown
+       if test -z "$GXX_VERSION"
+       then
+               GXX_VERSION=unknown
+               GXX=no
+       fi
        AC_MSG_RESULT($GXX_VERSION)
 fi
 ])dnl
@@ -2922,6 +3150,64 @@ CPPFLAGS="-I. $CPPFLAGS"
 AC_SUBST(CPPFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_INSTALL_OPTS version: 1 updated: 2014/07/21 18:19:51
+dnl ---------------
+dnl prompt for/fill-in useful install-program options
+AC_DEFUN([CF_INSTALL_OPTS],
+[
+CF_INSTALL_OPT_S
+CF_INSTALL_OPT_O
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_INSTALL_OPT_O version: 2 updated: 2015/05/15 19:45:35
+dnl ----------------
+dnl Almost all "install" programs default to the current user's ownership.
+dnl Almost - MINIX is an exception.
+AC_DEFUN([CF_INSTALL_OPT_O],
+[
+AC_MSG_CHECKING(if install needs to be told about ownership)
+case `$ac_config_guess` in
+(*minix)
+       with_install_o=yes
+       ;;
+(*)
+       with_install_o=no
+       ;;
+esac
+
+AC_MSG_RESULT($with_install_o)
+if test "x$with_install_o" = xyes
+then
+       INSTALL_OPT_O=`id root|sed -e 's/uid=[[0-9]]*(/ -o /' -e 's/gid=[[0-9]]*(/ -g /' -e 's/ [[^=[:space:]]][[^=[:space:]]]*=.*/ /' -e 's/)//g'`
+else
+       INSTALL_OPT_O=
+fi
+
+AC_SUBST(INSTALL_OPT_O)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_INSTALL_OPT_S version: 1 updated: 2014/07/21 18:19:51
+dnl ----------------
+dnl By default, we should strip executables which are installed, but leave the
+dnl ability to suppress that for unit-testing.
+AC_DEFUN([CF_INSTALL_OPT_S],
+[
+AC_MSG_CHECKING(if you want to install stripped executables)
+CF_ARG_DISABLE(stripping,
+       [  --disable-stripping     do not strip installed executables],
+       [with_stripping=no],
+       [with_stripping=yes])
+AC_MSG_RESULT($with_stripping)
+
+if test "$with_stripping" = yes
+then
+       INSTALL_OPT_S="-s"
+else
+       INSTALL_OPT_S=
+fi
+AC_SUBST(INSTALL_OPT_S)
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_INTEL_COMPILER version: 7 updated: 2015/04/12 15:39:00
 dnl -----------------
 dnl Check if the given compiler is really the Intel compiler for Linux.  It
@@ -2975,7 +3261,7 @@ AC_MSG_RESULT($cf_cv_have_isascii)
 test "$cf_cv_have_isascii" = yes && AC_DEFINE(HAVE_ISASCII,1,[Define to 1 if we have isascii()])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LARGEFILE version: 9 updated: 2015/04/18 08:56:57
+dnl CF_LARGEFILE version: 10 updated: 2017/01/21 11:06:25
 dnl ------------
 dnl Add checks for large file support.
 AC_DEFUN([CF_LARGEFILE],[
@@ -2997,6 +3283,7 @@ ifdef([AC_FUNC_FSEEKO],[
 
        AC_CACHE_CHECK(whether to use struct dirent64, cf_cv_struct_dirent64,[
                AC_TRY_COMPILE([
+#pragma GCC diagnostic error "-Wincompatible-pointer-types"
 #include <sys/types.h>
 #include <dirent.h>
                ],[
@@ -3116,7 +3403,7 @@ AC_SUBST(LDFLAGS_STATIC)
 AC_SUBST(LDFLAGS_SHARED)
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_LD_RPATH_OPT version: 6 updated: 2015/04/12 15:39:00
+dnl CF_LD_RPATH_OPT version: 7 updated: 2016/02/20 18:01:19
 dnl ---------------
 dnl For the given system and compiler, find the compiler flags to pass to the
 dnl loader to use the "rpath" feature.
@@ -3134,13 +3421,13 @@ case $cf_cv_system_name in
                LD_RPATH_OPT="-rpath "
        fi
        ;;
-(linux*|gnu*|k*bsd*-gnu)
+(linux*|gnu*|k*bsd*-gnu|freebsd*)
        LD_RPATH_OPT="-Wl,-rpath,"
        ;;
 (openbsd[[2-9]].*|mirbsd*)
        LD_RPATH_OPT="-Wl,-rpath,"
        ;;
-(dragonfly*|freebsd*)
+(dragonfly*)
        LD_RPATH_OPT="-rpath "
        ;;
 (netbsd*)
@@ -3211,7 +3498,7 @@ fi
 test -z "$cf_cv_libtool_version" && unset cf_cv_libtool_version
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LIB_PREFIX version: 11 updated: 2015/04/18 08:56:57
+dnl CF_LIB_PREFIX version: 12 updated: 2015/10/17 19:03:33
 dnl -------------
 dnl Compute the library-prefix for the given host system
 dnl $1 = variable to set
@@ -3219,7 +3506,11 @@ define([CF_LIB_PREFIX],
 [
        case $cf_cv_system_name in
        (OS/2*|os2*)
-               LIB_PREFIX=''
+               if test "$DFT_LWR_MODEL" = libtool; then
+                       LIB_PREFIX='lib'
+               else
+                       LIB_PREFIX=''
+               fi
                ;;
        (*)     LIB_PREFIX='lib'
                ;;
@@ -3228,7 +3519,7 @@ ifelse($1,,,[$1=$LIB_PREFIX])
        AC_SUBST(LIB_PREFIX)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 83 updated: 2015/08/05 20:44:28
+dnl CF_LIB_RULES version: 87 updated: 2017/07/26 17:08:35
 dnl ------------
 dnl Append definitions and rules for the given models to the subdirectory
 dnl Makefiles, and the recursion rule for the top-level Makefile.  If the
@@ -3280,28 +3571,35 @@ do
 
                SHARED_LIB=
                Libs_To_Make=
-
-               cf_sed_options=
+               cf_awk_program=
                if test -n "${cf_cv_abi_version}" && test "x${cf_cv_abi_version}" != "x5"
                then
-                       cf_sed_options="$cf_sed_options -e \"s/NCURSES\\([[WT]]\\+\\)\?_/NCURSES\\1${cf_cv_abi_version}_/g\""
-                       cf_sed_options="$cf_sed_options -e \"/deprecated in ABI${cf_cv_abi_version}/d\""
+                       cf_awk_program="$cf_awk_program\
+/deprecated in ABI${cf_cv_abi_version}/ { next; }\
+{ sub(\"NCURSES([[WT]]+)?\", \"&${cf_cv_abi_version}\"); }\
+"
                fi
 
                if test "x$WILDCARD_SYMS" = xno
                then
-                       cf_sed_options="$cf_sed_options -e \"s/_\*;//g\""
+                       cf_awk_program="$cf_awk_program\
+/[[    ]]_\\*;/ { skip=1; next; }\
+"
                fi
 
-               if test "x$cf_sed_options" != "x"
+               if test "x$cf_awk_program" != "x"
                then
                        cat >>$cf_dir/Makefile <<CF_EOF
 
 # Generated by CF_LIB_RULES
 resulting.map: $UNALTERED_SYMS
-       sed $cf_sed_options < $UNALTERED_SYMS >\[$]@
+       $AWK 'BEGIN { skip = 1; last=""; } \
+$cf_awk_program \
+{ if ( last != "" && ( skip == 0 || \[$]\[$]0 !~ /}/ ) ) { print last; }\
+ skip = 0; last = \[$]\[$]0; } \
+END { print last; }' < $UNALTERED_SYMS >\[$]@
 
-clean::
+distclean::
        rm -f resulting.map
 CF_EOF
                fi
@@ -3677,8 +3975,7 @@ CF_EOF
 
 # Special case: tack's manpage lives in its own directory.
 if test "x$cf_with_manpages" = xyes; then
-if test -d tack ; then
-if test -f $srcdir/$tack.h; then
+if test "x$cf_with_tack" = "xyes"; then
 cat >> Makefile <<CF_EOF
 
 install.man \\
@@ -3687,7 +3984,6 @@ uninstall.man ::
 CF_EOF
 fi
 fi
-fi
 
 dnl If we're installing into a subdirectory of /usr/include, etc., we should
 dnl prepend the subdirectory's name to the "#include" paths.  It won't hurt
@@ -3804,7 +4100,7 @@ done
 AC_SUBST(Libs_To_Make)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LIB_SONAME version: 5 updated: 2010/08/14 18:25:37
+dnl CF_LIB_SONAME version: 6 updated: 2017/01/21 11:06:25
 dnl -------------
 dnl Find the and soname for the given shared library.  Set the cache variable
 dnl cf_cv_$3_soname to this, unless it is not found.  Then set the cache
@@ -3821,7 +4117,7 @@ cf_cv_$3_soname=unknown
 if test "$cross_compiling" != yes ; then
 cat >conftest.$ac_ext <<CF_EOF
 $1
-int main()
+int main(void)
 {
 $2
        ${cf_cv_main_return:-return}(0);
@@ -3925,7 +4221,7 @@ AC_DEFUN([CF_LIB_TYPE],
        test -n "$LIB_SUFFIX" && $2="${LIB_SUFFIX}[$]{$2}"
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LINK_DATAONLY version: 10 updated: 2012/10/06 17:41:51
+dnl CF_LINK_DATAONLY version: 12 updated: 2017/07/23 17:46:07
 dnl ----------------
 dnl Some systems have a non-ANSI linker that doesn't pull in modules that have
 dnl only data (i.e., no functions), for example NeXT.  On those systems we'll
@@ -3947,7 +4243,7 @@ EOF
        rm -f conftest.$ac_ext data.o
        cat >conftest.$ac_ext <<EOF
 #line __oline__ "configure"
-int    testfunc()
+int    testfunc(void)
 {
 #if defined(NeXT)
        ${cf_cv_main_return:-return}(1);        /* I'm told this linker is broken */
@@ -3968,7 +4264,7 @@ EOF
        cf_saveLIBS="$LIBS"
        LIBS="conftest.a $LIBS"
        AC_TRY_RUN([
-       int main()
+       int main(void)
        {
                extern int testfunc();
                ${cf_cv_main_return:-return} (!testfunc());
@@ -3988,13 +4284,16 @@ fi
 
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_LINK_FUNCS version: 8 updated: 2012/10/06 17:56:13
+dnl CF_LINK_FUNCS version: 9 updated: 2017/01/21 11:11:02
 dnl -------------
 dnl Most Unix systems have both link and symlink, a few don't have symlink.
 dnl A few non-Unix systems implement symlink, but not link.
 dnl A few non-systems implement neither (or have nonfunctional versions).
 AC_DEFUN([CF_LINK_FUNCS],
 [
+AC_CHECK_HEADERS( \
+unistd.h \
+)
 AC_CHECK_FUNCS( \
        remove \
        unlink )
@@ -4013,7 +4312,7 @@ else
 #ifdef HAVE_UNISTD_H
 #include <unistd.h>
 #endif
-int main()
+int main(void)
 {
        int fail = 0;
        char *src = "config.log";
@@ -4340,7 +4639,7 @@ AC_ARG_WITH(manpage-tbl,
 AC_MSG_RESULT($MANPAGE_TBL)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_MAN_PAGES version: 46 updated: 2015/08/05 20:44:28
+dnl CF_MAN_PAGES version: 47 updated: 2017/08/12 07:58:51
 dnl ------------
 dnl Try to determine if the man-pages on the system are compressed, and if
 dnl so, what format is used.  Use this information to construct a script that
@@ -4413,7 +4712,7 @@ INSTALL_DATA="$INSTALL_DATA"
 transform="$program_transform_name"
 
 TMP=\${TMPDIR:=/tmp}/man\$\$
-trap "rm -f \$TMP" 0 1 2 5 15
+trap "rm -f \$TMP" 0 1 2 3 15
 
 form=\[$]1
 shift || exit 1
@@ -4682,7 +4981,7 @@ chmod 755 $cf_edit_man
 
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_MATH_LIB version: 8 updated: 2010/05/29 16:31:02
+dnl CF_MATH_LIB version: 9 updated: 2017/01/21 11:06:25
 dnl -----------
 dnl Checks for libraries.  At least one UNIX system, Apple Macintosh
 dnl Rhapsody 5.5, does not have -lm.  We cannot use the simpler
@@ -4693,6 +4992,7 @@ AC_CACHE_CHECK(if -lm needed for math functions,
        cf_cv_need_libm,[
        AC_TRY_LINK([
        #include <stdio.h>
+       #include <stdlib.h>
        #include <math.h>
        ],
        [double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)],
@@ -4736,20 +5036,26 @@ fi
 test "$cf_cv_mixedcase" = yes && AC_DEFINE(MIXEDCASE_FILENAMES,1,[Define to 1 if filesystem supports mixed-case filenames.])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_MKSTEMP version: 9 updated: 2012/10/03 04:34:49
+dnl CF_MKSTEMP version: 10 updated: 2017/01/21 11:12:16
 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_CHECK_HEADERS( \
+unistd.h \
+)
 AC_CACHE_CHECK(for working mkstemp, cf_cv_func_mkstemp,[
 rm -rf conftest*
 AC_TRY_RUN([
 #include <sys/types.h>
+#ifdef HAVE_UNISTD_H
+#include <unistd.h>
+#endif
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>
 #include <sys/stat.h>
-int main()
+int main(void)
 {
        char *tmpl = "conftestXXXXXX";
        char name[2][80];
@@ -4812,6 +5118,26 @@ if test "${with_abi_version+set}" != set; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
+dnl CF_NCURSES_WITH_ABI_VERSION version: 2 updated: 2015/12/19 17:51:52
+dnl ---------------------------
+dnl Allow ncurses's ABI to be overridden.  Generally this happens when a
+dnl packager has incremented the ABI past that used in the original package,
+dnl and wishes to keep doing this.
+dnl
+dnl $1 is the package name, if any, to derive a corresponding {package}_ABI
+dnl symbol.
+AC_DEFUN([CF_NCURSES_WITH_ABI_VERSION],[
+CF_WITH_ABI_VERSION($1)
+if test "x$cf_cv_abi_version" != "x$with_abi_version"
+then
+       case $cf_cv_rel_version in
+       (5.*)
+               cf_cv_rel_version=$with_abi_version.0
+               ;;
+       esac
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
 dnl CF_NO_LEAKS_OPTION version: 6 updated: 2015/04/12 15:39:00
 dnl ------------------
 dnl see CF_WITH_NO_LEAKS
@@ -5128,7 +5454,7 @@ CF_ACVERSION_CHECK(2.52,
 CF_CC_ENV_FLAGS
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_PROG_CC_C_O version: 3 updated: 2010/08/14 18:25:37
+dnl CF_PROG_CC_C_O version: 5 updated: 2017/01/21 11:06:25
 dnl --------------
 dnl Analogous to AC_PROG_CC_C_O, but more useful: tests only $CC, ensures that
 dnl the output file can be renamed, and allows for a shell variable that can
@@ -5136,21 +5462,23 @@ dnl be used later.  The parameter is either CC or CXX.  The result is the
 dnl cache variable:
 dnl    $cf_cv_prog_CC_c_o
 dnl    $cf_cv_prog_CXX_c_o
+dnl
+dnl $1 = compiler
+dnl $2 = compiler options, if any
 AC_DEFUN([CF_PROG_CC_C_O],
 [AC_REQUIRE([AC_PROG_CC])dnl
 AC_MSG_CHECKING([whether [$]$1 understands -c and -o together])
 AC_CACHE_VAL(cf_cv_prog_$1_c_o,
 [
 cat > conftest.$ac_ext <<CF_EOF
-#include <stdio.h>
-int main()
+int main(void)
 {
        ${cf_cv_main_return:-return}(0);
 }
 CF_EOF
 # We do the test twice because some compilers refuse to overwrite an
 # existing .o file with -o, though they will create one.
-ac_try='[$]$1 -c conftest.$ac_ext -o conftest2.$ac_objext >&AC_FD_CC'
+ac_try='[$]$1 $2 -c conftest.$ac_ext -o conftest2.$ac_objext >&AC_FD_CC'
 if AC_TRY_EVAL(ac_try) &&
   test -f conftest2.$ac_objext && AC_TRY_EVAL(ac_try);
 then
@@ -5182,25 +5510,57 @@ AC_DEFUN([CF_PROG_EGREP],
        test -z "$EGREP" && AC_MSG_ERROR(No egrep program found)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_PROG_GNAT version: 3 updated: 2015/04/18 08:56:57
+dnl CF_PROG_GNAT version: 5 updated: 2018/01/15 15:28:49
 dnl ------------
 dnl Check for gnatmake, ensure that it is complete.
 AC_DEFUN([CF_PROG_GNAT],[
 cf_ada_make=gnatmake
-AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no)
-if test "$ac_cv_prog_gnat_exists" = no; then
+cf_ada_config="#"
+AC_CHECK_PROG(gnatmake_exists, $cf_ada_make, yes, no)
+if test "$ac_cv_prog_gnatmake_exists" = no; then
        cf_ada_make=
        cf_cv_prog_gnat_correct=no
 else
-       CF_GNAT_VERSION
-       AC_CHECK_PROG(M4_exists, m4, yes, no)
-       if test "$ac_cv_prog_M4_exists" = no; then
-               cf_cv_prog_gnat_correct=no
-               echo Ada95 binding required program m4 not found. Ada95 binding disabled.
+       AC_CHECK_PROG(gprconfig_exists, gprconfig, yes, no)
+       if test "$ac_cv_prog_gprconfig_exists" = yes
+       then
+               rm -rf conftest* *~conftest*
+               if mkdir conftest.src
+               then
+                       cf_ada_config=""
+                       cd conftest.src
+                       for cf_gprconfig in Ada C
+                       do
+                               AC_MSG_CHECKING(for gprconfig name for $cf_gprconfig)
+                               cf_gprconfig_value=`echo s| gprconfig --config=$cf_gprconfig 2>&AC_FD_CC | ${AWK:-awk} '/^\*/{print [$]3;}' | head -n 1`
+                               if test -n "$cf_gprconfig_value"
+                               then
+                                       eval cf_ada_config_[$]cf_gprconfig=[$]cf_gprconfig_value
+                                       AC_MSG_RESULT($cf_gprconfig_value)
+                               else
+                                       AC_MSG_RESULT(missing)
+                                       cf_ada_config="#"
+                                       break
+                               fi
+                       done
+                       cd ..
+                       rm -rf conftest* *~conftest*
+               fi
+       else
+               # gprconfig is newer than gnatmake; we can continue...
+               cf_ada_config="##"
        fi
-       if test "$cf_cv_prog_gnat_correct" = yes; then
-               AC_MSG_CHECKING(if GNAT works)
-               CF_GNAT_TRY_RUN([procedure conftest;],
+       if test "x$cf_ada_config" != "x#"
+       then
+               CF_GNAT_VERSION
+               AC_CHECK_PROG(M4_exists, m4, yes, no)
+               if test "$ac_cv_prog_M4_exists" = no; then
+                       cf_cv_prog_gnat_correct=no
+                       echo Ada95 binding required program m4 not found. Ada95 binding disabled.
+               fi
+               if test "$cf_cv_prog_gnat_correct" = yes; then
+                       AC_MSG_CHECKING(if GNAT works)
+                       CF_GNAT_TRY_RUN([procedure conftest;],
 [with Text_IO;
 with GNAT.OS_Lib;
 procedure conftest is
@@ -5209,11 +5569,17 @@ begin
    Text_IO.New_Line;
    GNAT.OS_Lib.OS_Exit (0);
 end conftest;],[cf_cv_prog_gnat_correct=yes],[cf_cv_prog_gnat_correct=no])
-               AC_MSG_RESULT($cf_cv_prog_gnat_correct)
+                       AC_MSG_RESULT($cf_cv_prog_gnat_correct)
+               fi
+       else
+               cf_cv_prog_gnat_correct=no
        fi
 fi
 
 AC_SUBST(cf_ada_make)
+AC_SUBST(cf_ada_config)
+AC_SUBST(cf_ada_config_Ada)
+AC_SUBST(cf_ada_config_C)
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl CF_PROG_INSTALL version: 7 updated: 2015/04/18 08:56:57
@@ -5254,11 +5620,11 @@ fi
 AC_SUBST(LDCONFIG)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_PROG_LINT version: 2 updated: 2009/08/12 04:43:14
+dnl CF_PROG_LINT version: 3 updated: 2016/05/22 15:25:54
 dnl ------------
 AC_DEFUN([CF_PROG_LINT],
 [
-AC_CHECK_PROGS(LINT, tdlint lint alint splint lclint)
+AC_CHECK_PROGS(LINT, lint cppcheck splint)
 AC_SUBST(LINT_OPTS)
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -5511,7 +5877,7 @@ CF_VERBOSE(...checked $1 [$]$1)
 AC_SUBST(EXTRA_LDFLAGS)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 89 updated: 2015/08/15 18:38:59
+dnl CF_SHARED_OPTS version: 92 updated: 2017/12/30 17:26:05
 dnl --------------
 dnl --------------
 dnl Attempt to determine the appropriate CC/LD options for creating a shared
@@ -5580,7 +5946,20 @@ AC_DEFUN([CF_SHARED_OPTS],
 
        # Some less-capable ports of gcc support only -fpic
        CC_SHARED_OPTS=
+
+       cf_try_fPIC=no
        if test "$GCC" = yes
+       then
+               cf_try_fPIC=yes
+       else
+               case $cf_cv_system_name in
+               (*linux*)       # e.g., PGI compiler
+                       cf_try_fPIC=yes
+                       ;;
+               esac
+       fi
+
+       if test "$cf_try_fPIC" = yes
        then
                AC_MSG_CHECKING(which $CC option to use)
                cf_save_CFLAGS="$CFLAGS"
@@ -5599,15 +5978,15 @@ AC_DEFUN([CF_SHARED_OPTS],
        (aix4.[3-9]*|aix[[5-7]]*)
                if test "$GCC" = yes; then
                        CC_SHARED_OPTS='-Wl,-brtl'
-                       MK_SHARED_LIB='${CC} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
                else
                        CC_SHARED_OPTS='-brtl'
                        # as well as '-qpic=large -G' or perhaps "-bM:SRE -bnoentry -bexpall"
-                       MK_SHARED_LIB='${CC} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -G -Wl,-brtl -Wl,-blibpath:${RPATH_LIST}:/usr/lib -o [$]@'
                fi
                ;;
        (beos*)
-               MK_SHARED_LIB='${CC} ${CFLAGS} -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -o $[@] -Xlinker -soname=`basename $[@]` -nostart -e 0'
                ;;
        (cygwin*)
                CC_SHARED_OPTS=
@@ -5627,7 +6006,7 @@ AC_DEFUN([CF_SHARED_OPTS],
                ** SHARED_LIB \[$]SHARED_LIB
                ** IMPORT_LIB \[$]IMPORT_LIB
 EOF
-               exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
+               exec \[$]* ${LDFLAGS} -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
 CF_EOF
                chmod +x mk_shared_lib.sh
                ;;
@@ -5649,14 +6028,14 @@ CF_EOF
                ** SHARED_LIB \[$]SHARED_LIB
                ** IMPORT_LIB \[$]IMPORT_LIB
 EOF
-               exec \[$]* -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
+               exec \[$]* ${LDFLAGS} -shared -Wl,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
 CF_EOF
                chmod +x mk_shared_lib.sh
                ;;
        (darwin*)
                cf_try_cflags="no-cpp-precomp"
                CC_SHARED_OPTS="-dynamic"
-               MK_SHARED_LIB='${CC} ${CFLAGS} -dynamiclib -install_name ${libdir}/`basename $[@]` -compatibility_version ${ABI_VERSION} -current_version ${ABI_VERSION} -o $[@]'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -dynamiclib -install_name ${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
                AC_CACHE_CHECK([if ld -search_paths_first works], cf_cv_ldflags_search_paths_first, [
@@ -5673,7 +6052,7 @@ CF_EOF
                if test "$GCC" != yes; then
                        CC_SHARED_OPTS='+Z'
                fi
-               MK_SHARED_LIB='${LD} -b -o $[@]'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} -b -o $[@]'
                INSTALL_LIB="-m 555"
                ;;
        (hpux*)
@@ -5684,7 +6063,7 @@ CF_EOF
                        CC_SHARED_OPTS='+Z'
                        LD_SHARED_OPTS='-Wl,+b,${libdir}'
                fi
-               MK_SHARED_LIB='${LD} +b ${libdir} -b -o $[@]'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} +b ${libdir} -b -o $[@]'
                # HP-UX shared libraries must be executable, and should be
                # readonly to exploit a quirk in the memory manager.
                INSTALL_LIB="-m 555"
@@ -5692,12 +6071,12 @@ CF_EOF
        (interix*)
                test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                if test "$cf_cv_shlib_version" = rel; then
-                       cf_shared_soname='`basename $@ .${REL_VERSION}`.${ABI_VERSION}'
+                       cf_shared_soname='`basename $[@] .${REL_VERSION}`.${ABI_VERSION}'
                else
-                       cf_shared_soname='`basename $@`'
+                       cf_shared_soname='`basename $[@]`'
                fi
                CC_SHARED_OPTS=
-               MK_SHARED_LIB='${CC} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $@'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-rpath,${RPATH_LIST} -Wl,-h,'$cf_shared_soname' -o $[@]'
                ;;
        (irix*)
                if test "$cf_cv_enable_rpath" = yes ; then
@@ -5706,9 +6085,9 @@ CF_EOF
                # tested with IRIX 5.2 and 'cc'.
                if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
-                       MK_SHARED_LIB='${CC} -shared -rdata_shared -soname `basename $[@]` -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -rdata_shared -soname `basename $[@]` -o $[@]'
                else
-                       MK_SHARED_LIB='${CC} -shared -Wl,-soname,`basename $[@]` -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,`basename $[@]` -o $[@]'
                fi
                cf_cv_rm_so_locs=yes
                ;;
@@ -5721,7 +6100,7 @@ CF_EOF
                        EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
                fi
                CF_SHARED_SONAME
-               MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
                ;;
        (mingw*)
                cf_cv_shlib_version=mingw
@@ -5746,7 +6125,7 @@ CF_EOF
                ** SHARED_LIB \[$]SHARED_LIB
                ** IMPORT_LIB \[$]IMPORT_LIB
 EOF
-               exec \[$]* -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
+               exec \[$]* ${LDFLAGS} -shared -Wl,--enable-auto-import,--out-implib=\[$]{IMPORT_LIB} -Wl,--export-all-symbols -o \[$]{SHARED_LIB}
 CF_EOF
                chmod +x mk_shared_lib.sh
                ;;
@@ -5760,11 +6139,11 @@ CF_EOF
                fi
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
                CF_SHARED_SONAME
-               MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-Bshareable,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
                ;;
        (nto-qnx*|openbsd*|freebsd[[12]].*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
-               MK_SHARED_LIB='${LD} -Bshareable -o $[@]'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} -Bshareable -o $[@]'
                test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        (dragonfly*|freebsd*)
@@ -5775,7 +6154,7 @@ CF_EOF
                        EXTRA_LDFLAGS="${cf_ld_rpath_opt}\${RPATH_LIST} $EXTRA_LDFLAGS"
                fi
                CF_SHARED_SONAME
-               MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
+               MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname',-stats,-lc -o $[@]'
                ;;
        (netbsd*)
                CC_SHARED_OPTS="$CC_SHARED_OPTS -DPIC"
@@ -5791,16 +6170,16 @@ CF_EOF
                        fi
                        fi
                        CF_SHARED_SONAME
-                       MK_SHARED_LIB='${CC} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -Wl,-soname,'$cf_cv_shared_soname' -o $[@]'
                else
-                       MK_SHARED_LIB='${CC} -Wl,-shared -Wl,-Bshareable -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -Wl,-shared -Wl,-Bshareable -o $[@]'
                fi
                ;;
        (osf*|mls+*)
                # 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} ${LDFLAGS} -set_version ${REL_VERSION}:${ABI_VERSION} -expect_unresolved "*" -shared -soname `basename $[@]`'
                case $host_os in
                (osf4*)
                        MK_SHARED_LIB="${MK_SHARED_LIB} -msym"
@@ -5818,7 +6197,7 @@ CF_EOF
                if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-belf -KPIC'
                fi
-               MK_SHARED_LIB='${LD} -dy -G -h `basename $[@] .${REL_VERSION}`.${ABI_VERSION} -o [$]@'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} -dy -G -h `basename $[@] .${REL_VERSION}`.${ABI_VERSION} -o [$]@'
                if test "$cf_cv_enable_rpath" = yes ; then
                        # only way is to set LD_RUN_PATH but no switch for it
                        RUN_PATH=$libdir
@@ -5832,7 +6211,7 @@ CF_EOF
                if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
-               MK_SHARED_LIB='${LD} -assert pure-text -o $[@]'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} -assert pure-text -o $[@]'
                test "$cf_cv_shlib_version" = auto && cf_cv_shlib_version=rel
                ;;
        (solaris2*)
@@ -5855,9 +6234,9 @@ CF_EOF
                        done
                        CFLAGS="$cf_save_CFLAGS"
                        CC_SHARED_OPTS=$cf_shared_opts
-                       MK_SHARED_LIB='${CC} -dy -G -h '$cf_cv_shared_soname' -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -dy -G -h '$cf_cv_shared_soname' -o $[@]'
                else
-                       MK_SHARED_LIB='${CC} -shared -dy -G -h '$cf_cv_shared_soname' -o $[@]'
+                       MK_SHARED_LIB='${CC} ${LDFLAGS} ${CFLAGS} -shared -dy -G -h '$cf_cv_shared_soname' -o $[@]'
                fi
                ;;
        (sysv5uw7*|unix_sv*)
@@ -5865,7 +6244,7 @@ CF_EOF
                if test "$GCC" != yes; then
                        CC_SHARED_OPTS='-KPIC'
                fi
-               MK_SHARED_LIB='${LD} -d y -G -o [$]@'
+               MK_SHARED_LIB='${LD} ${LDFLAGS} -d y -G -o [$]@'
                ;;
        (*)
                CC_SHARED_OPTS='unknown'
@@ -6122,7 +6501,7 @@ if test "$cf_cv_sizechange" != no ; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_SRC_MODULES version: 29 updated: 2015/04/12 11:42:01
+dnl CF_SRC_MODULES version: 30 updated: 2017/07/26 17:08:35
 dnl --------------
 dnl For each parameter, test if the source-directory exists, and if it contains
 dnl a 'modules' file.  If so, add to the list $cf_cv_src_modules which we'll
@@ -6154,7 +6533,7 @@ do
                # We may/may not have tack in the distribution, though the
                # makefile is.
                if test $cf_dir = tack ; then
-                       if test ! -f $srcdir/${cf_dir}/${cf_dir}.h; then
+                       if test "x$cf_with_tack" != "xyes"; then
                                continue
                        fi
                fi
@@ -6247,33 +6626,55 @@ if test -n "$ADA_SUBDIRS"; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_STDCPP_LIBRARY version: 8 updated: 2015/04/17 21:13:04
+dnl CF_STDCPP_LIBRARY version: 11 updated: 2015/10/17 19:03:33
 dnl -----------------
 dnl Check for -lstdc++, which is GNU's standard C++ library.
+dnl If $CXXLIBS is set, add that to the libraries used for test-linking.
+dnl If -lstdc++ was not already added to $LIBS or $CXXLIBS, and is needed,
+dnl add it to $CXXLIBS.
 AC_DEFUN([CF_STDCPP_LIBRARY],
 [
 if test -n "$GXX" ; then
-case $cf_cv_system_name in
-(os2*)
-       cf_stdcpp_libname=stdcpp
-       ;;
-(*)
-       cf_stdcpp_libname=stdc++
-       ;;
-esac
-AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[
+
        cf_save="$LIBS"
-       CF_ADD_LIB($cf_stdcpp_libname)
-AC_TRY_LINK([
-#include <strstream.h>],[
-char buf[80];
-strstreambuf foo(buf, sizeof(buf))
-],
-       [cf_cv_libstdcpp=yes],
-       [cf_cv_libstdcpp=no])
+       LIBS="$LIBS $CXXLIBS"
+       AC_MSG_CHECKING(if we already have C++ library)
+       AC_TRY_LINK([
+                       #include <iostream>],[
+                       std::cout << "Hello World!" << std::endl;],
+               [cf_have_libstdcpp=yes],
+               [cf_have_libstdcpp=no])
+       AC_MSG_RESULT($cf_have_libstdcpp)
        LIBS="$cf_save"
-])
-test "$cf_cv_libstdcpp" = yes && CF_ADD_LIB($cf_stdcpp_libname,CXXLIBS)
+
+       if test $cf_have_libstdcpp != yes
+       then
+               case $cf_cv_system_name in
+               (os2*)
+                       if test -z "`g++ -dM -E - < /dev/null | grep __KLIBC__`"; then
+                               cf_stdcpp_libname=stdcpp
+                       else
+                               cf_stdcpp_libname=stdc++
+                       fi
+                       ;;
+               (*)
+                       cf_stdcpp_libname=stdc++
+                       ;;
+               esac
+
+               AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[
+                       cf_save="$LIBS"
+                       LIBS="$LIBS $CXXLIBS"
+                       CF_ADD_LIB($cf_stdcpp_libname)
+               AC_TRY_LINK([
+                               #include <iostream>],[
+                               std::cout << "Hello World!" << std::endl;],
+                       [cf_cv_libstdcpp=yes],
+                       [cf_cv_libstdcpp=no])
+                       LIBS="$cf_save"
+               ])
+               test "$cf_cv_libstdcpp" = yes && { CF_ADD_LIB($cf_stdcpp_libname,CXXLIBS) }
+       fi
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
@@ -6488,7 +6889,7 @@ if test "$cf_cv_xopen_source" != no ; then
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_TYPEOF_CHTYPE version: 9 updated: 2012/10/06 17:56:13
+dnl CF_TYPEOF_CHTYPE version: 10 updated: 2017/01/21 11:06:25
 dnl ----------------
 dnl Determine the type we should use for chtype (and attr_t, which is treated
 dnl as the same thing).  We want around 32 bits, so on most machines want a
@@ -6501,7 +6902,7 @@ AC_CACHE_VAL(cf_cv_typeof_chtype,[
                AC_TRY_RUN([
 #define WANT_BITS 31
 #include <stdio.h>
-int main()
+int main(void)
 {
        FILE *fp = fopen("cf_test.out", "w");
        if (fp != 0) {
@@ -6839,28 +7240,6 @@ $1_ABI=$cf_cv_abi_version
 ])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_WITH_ABI_VERSION version: 1 updated: 2015/06/06 13:49:58
-dnl ---------------------------
-dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49
-dnl -------------------
-dnl Allow ncurses's ABI to be overridden.  Generally this happens when a
-dnl packager has incremented the ABI past that used in the original package,
-dnl and wishes to keep doing this.
-dnl
-dnl $1 is the package name, if any, to derive a corresponding {package}_ABI
-dnl symbol.
-AC_DEFUN([CF_NCURSES_WITH_ABI_VERSION],[
-CF_WITH_ABI_VERSION($1)
-if test "x$cf_cv_abi_version" != "x$with_abi_version"
-then
-       case $cf_cv_rel_version in
-       (5.*)
-               cf_cv_rel_version=$with_abi_version.0
-               ;;
-       esac
-fi
-])dnl
-dnl ---------------------------------------------------------------------------
 dnl CF_WITH_ADA_COMPILER version: 2 updated: 2010/06/26 17:35:58
 dnl --------------------
 dnl Command-line option to specify the Ada95 compiler.
@@ -6986,7 +7365,7 @@ then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_WITH_GPM version: 8 updated: 2012/10/06 17:56:13
+dnl CF_WITH_GPM version: 10 updated: 2017/04/29 18:32:18
 dnl -----------
 dnl
 dnl The option parameter (if neither yes/no) is assumed to be the name of
@@ -7006,12 +7385,17 @@ if test "$with_gpm" != no ; then
                if test "$with_gpm" != yes && test "$with_gpm" != maybe ; then
                        CF_VERBOSE(assuming we really have GPM library)
                        AC_DEFINE(HAVE_LIBGPM,1,[Define to 1 if we have the gpm library])
+                       with_gpm=yes
                else
-                       AC_CHECK_LIB(gpm,Gpm_Open,[:],[
-                               AC_MSG_ERROR(Cannot link with GPM library)
+                       AC_CHECK_LIB(gpm,Gpm_Open,[with_gpm=yes],[
+                               if test "$with_gpm" = maybe; then
+                                       AC_MSG_WARN(Cannot link with GPM library)
+                                       with_gpm=no
+                               else
+                                       AC_MSG_ERROR(Cannot link with GPM library)
+                               fi
+                       ])
                fi
-               with_gpm=yes
-               ])
        ],[
                test "$with_gpm" != maybe && AC_MSG_WARN(Cannot find GPM header)
                with_gpm=no
@@ -7019,7 +7403,7 @@ if test "$with_gpm" != no ; then
 fi
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIBTOOL version: 32 updated: 2015/04/17 21:13:04
+dnl CF_WITH_LIBTOOL version: 35 updated: 2017/08/12 07:58:51
 dnl ---------------
 dnl Provide a configure option to incorporate libtool.  Define several useful
 dnl symbols for the makefile rules.
@@ -7043,7 +7427,7 @@ dnl
 dnl    LOCAL=aclocal.m4
 dnl    ORIG=aclocal.m4.orig
 dnl
-dnl    trap "mv $ORIG $LOCAL" 0 1 2 5 15
+dnl    trap "mv $ORIG $LOCAL" 0 1 2 3 15
 dnl    rm -f $ORIG
 dnl    mv $LOCAL $ORIG
 dnl
@@ -7102,7 +7486,7 @@ ifdef([AC_PROG_LIBTOOL],[
                AC_MSG_ERROR(Cannot find libtool)
        fi
 ])dnl
-       LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${DESTDIR}${libdir} ${LIBTOOL_VERSION} `cut -f1 ${top_srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
+       LIB_CREATE='${LIBTOOL} --mode=link ${CC} -rpath ${libdir} ${LIBTOOL_VERSION} `cut -f1 ${top_srcdir}/VERSION` ${LIBTOOL_OPTS} ${LT_UNDEF} $(LIBS) -o'
        LIB_OBJECT='${OBJECTS:.o=.lo}'
        LIB_SUFFIX=.la
        LIB_CLEAN='${LIBTOOL} --mode=clean'
@@ -7117,7 +7501,7 @@ ifdef([AC_PROG_LIBTOOL],[
        # special hack to add -no-undefined (which libtool should do for itself)
        LT_UNDEF=
        case "$cf_cv_system_name" in
-       (cygwin*|msys*|mingw32*|uwin*|aix[[4-7]])
+       (cygwin*|msys*|mingw32*|os2*|uwin*|aix[[4-7]])
                LT_UNDEF=-no-undefined
                ;;
        esac
@@ -7488,7 +7872,7 @@ CF_NO_LEAKS_OPTION(valgrind,
        [USE_VALGRIND])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_WITH_VERSIONED_SYMS version: 5 updated: 2015/04/17 21:13:04
+dnl CF_WITH_VERSIONED_SYMS version: 7 updated: 2015/10/24 20:50:26
 dnl ----------------------
 dnl Use this when building shared library with ELF, to markup symbols with the
 dnl version identifier from the given input file.  Generally that identifier is
@@ -7602,8 +7986,8 @@ EOF
                # compile source, make library
                if make -f conftest.mk 2>&AC_FD_CC >/dev/null
                then
-                       # test for missing symbol
-                       cf_missing=`nm -P conftest.so 2>&AC_FD_CC |fgrep _ismissing | egrep '[[         ]]T[[   ]]'`
+                       # test for missing symbol in either Data or Text section
+                       cf_missing=`nm -P conftest.so 2>&AC_FD_CC |fgrep _ismissing | egrep '[[         ]][[DT]][[      ]]'`
                        test -n "$cf_missing" && WILDCARD_SYMS=yes
                fi
                AC_MSG_RESULT($WILDCARD_SYMS)
@@ -7615,7 +7999,93 @@ AC_SUBST(VERSIONED_SYMS)
 AC_SUBST(WILDCARD_SYMS)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 49 updated: 2015/04/12 15:39:00
+dnl CF_WITH_X11_RGB version: 1 updated: 2017/11/25 17:32:16
+dnl ---------------
+dnl Handle configure option "--with-x11-rgb", setting these shell
+dnl variables:
+dnl
+dnl $RGB_PATH is the option value, used for finding the X11 rgb file.
+dnl $no_x11_rgb is a "#" (comment) if "--without-x11-rgb" is given.
+dnl
+dnl Most Linux's use this:
+dnl    /usr/share/X11/rgb.txt
+dnl Debian uses this:
+dnl    /etc/X11/rgb.txt
+dnl DragonFlyBSD ports uses this:
+dnl    /usr/pkg/lib/X11/rgb.txt
+dnl FreeBSD ports use these:
+dnl    /usr/local/lib/X11/rgb.txt
+dnl    /usr/local/share/X11/rgb.txt
+dnl Mandriva has these:
+dnl    /usr/lib/X11/rgb.txt
+dnl    /usr/lib64/X11/rgb.txt
+dnl NetBSD has these
+dnl    /usr/X11R7/lib/X11/rgb.txt
+dnl OpenSolaris uses
+dnl    32-bit:
+dnl    /usr/X11/etc/X11/rgb.txt
+dnl    /usr/X11/share/X11/rgb.txt
+dnl    /usr/X11/lib/X11/rgb.txt
+dnl OSX uses
+dnl            /opt/local/share/X11/rgb.txt (MacPorts)
+dnl            /opt/X11/share/X11/rgb.txt (non-ports)
+dnl    64-bit:
+dnl    /usr/X11/etc/X11/rgb.txt
+dnl    /usr/X11/share/X11/rgb.txt (perhaps)
+dnl    /usr/X11/lib/amd64/X11/rgb.txt
+dnl Solaris10 uses (in this order):
+dnl    /usr/openwin/lib/X11/rgb.txt
+dnl    /usr/X11/lib/X11/rgb.txt
+AC_DEFUN([CF_WITH_X11_RGB],[
+AC_MSG_CHECKING(for X11 rgb file)
+AC_ARG_WITH(x11-rgb,
+       [  --with-x11-rgb=FILE   file containing X11 rgb information (EPREFIX/lib/X11/rgb.txt)],
+       [RGB_PATH=$withval],
+       [RGB_PATH=auto])
+
+if test "x[$]RGB_PATH" = xauto
+then
+       RGB_PATH='${exec_prefix}/lib/X11/rgb.txt'
+       for cf_path in \
+               /opt/local/share/X11/rgb.txt \
+               /opt/X11/share/X11/rgb.txt \
+               /usr/share/X11/rgb.txt \
+               /usr/X11/share/X11/rgb.txt \
+               /usr/X11/lib/X11/rgb.txt \
+               /usr/lib/X11/rgb.txt \
+               /etc/X11/rgb.txt \
+               /usr/pkg/lib/X11/rgb.txt \
+               /usr/X11R7/lib/X11/rgb.txt \
+               /usr/X11R6/lib/X11/rgb.txt \
+               /usr/X11R5/lib/X11/rgb.txt \
+               /usr/X11R4/lib/X11/rgb.txt \
+               /usr/local/lib/X11/rgb.txt \
+               /usr/local/share/X11/rgb.txt \
+               /usr/lib64/X11/rgb.txt
+       do
+               if test -f "$cf_path" ; then
+                       RGB_PATH="$cf_path"
+                       break
+               fi
+       done
+else
+       cf_path=$RGB_PATH
+       CF_PATH_SYNTAX(cf_path)
+fi
+
+AC_MSG_RESULT($RGB_PATH)
+AC_SUBST(RGB_PATH)
+AC_DEFINE_UNQUOTED(RGB_PATH,"$cf_path")
+
+no_x11_rgb=
+if test "$RGB_PATH" = no
+then
+       no_x11_rgb="#"
+fi
+AC_SUBST(no_x11_rgb)
+])dnl
+dnl ---------------------------------------------------------------------------
+dnl CF_XOPEN_SOURCE version: 52 updated: 2016/08/27 12:21:42
 dnl ---------------
 dnl Try to get _XOPEN_SOURCE defined properly that we can use POSIX functions,
 dnl or adapt to the vendor's definitions to get equivalent functionality,
@@ -7635,7 +8105,7 @@ case $host_os in
 (aix[[4-7]]*)
        cf_xopen_source="-D_ALL_SOURCE"
        ;;
-(cygwin|msys)
+(msys)
        cf_XOPEN_SOURCE=600
        ;;
 (darwin[[0-8]].*)
@@ -7663,7 +8133,7 @@ case $host_os in
        cf_xopen_source="-D_SGI_SOURCE"
        cf_XOPEN_SOURCE=
        ;;
-(linux*|gnu*|mint*|k*bsd*-gnu)
+(linux*|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin)
        CF_GNU_SOURCE
        ;;
 (minix*)