X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=aclocal.m4;h=e5e9292e5c443dbdb3b052b6204fdbd4a3f5cd79;hp=164ea18b3f627f1a87ec35f108f0fc7f7b76b793;hb=2017ab0e60ca857accae38a01252e0cbdf5f1efe;hpb=0819b56c3096ed77dd36312b0c4e8f37e7d46c88;ds=sidebyside diff --git a/aclocal.m4 b/aclocal.m4 index 164ea18b..e5e9292e 100644 --- a/aclocal.m4 +++ b/aclocal.m4 @@ -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.743 2015/04/18 13:01:42 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 --------------------------------------------------------------------------- @@ -62,6 +62,41 @@ AC_CACHE_CHECK([for nl_langinfo and CODESET], am_cv_langinfo_codeset, fi ])dnl dnl --------------------------------------------------------------------------- +dnl CF_ABI_DEFAULTS version: 2 updated: 2015/06/06 13:49:58 +dnl --------------- +dnl Provide configure-script defaults for different ncurses ABIs. +AC_DEFUN([CF_ABI_DEFAULTS],[ +AC_REQUIRE([CF_NCURSES_WITH_ABI_VERSION]) +case x$cf_cv_abi_version in +(x[[6789]]) + cf_dft_ext_colors=yes + cf_dft_ext_const=yes + cf_dft_ext_mouse=yes + cf_dft_ext_putwin=yes + cf_dft_ext_spfuncs=yes + cf_dft_filter_syms=yes + cf_dft_chtype=uint32_t + cf_dft_mmask_t=uint32_t + cf_dft_interop=yes + cf_dft_tparm_arg=intptr_t + cf_dft_with_lp64=yes + ;; +(*) + cf_dft_ext_colors=no + cf_dft_ext_const=no + cf_dft_ext_mouse=no + cf_dft_ext_putwin=no + cf_dft_ext_spfuncs=no + cf_dft_filter_syms=no + cf_dft_chtype=auto + cf_dft_mmask_t=auto + cf_dft_interop=no + cf_dft_tparm_arg=long + cf_dft_with_lp64=no + ;; +esac +])dnl +dnl --------------------------------------------------------------------------- dnl CF_ACVERSION_CHECK version: 5 updated: 2014/06/04 19:11:49 dnl ------------------ dnl Conditionally generate script according to whether we're using a given autoconf. @@ -120,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. @@ -150,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 ;; @@ -168,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/^[[^"]]*"'\''//'` @@ -191,24 +226,24 @@ 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) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_ADD_INCDIR version: 13 updated: 2010/05/26 16:44:57 +dnl CF_ADD_INCDIR version: 14 updated: 2015/05/25 20:53:04 dnl ------------- dnl Add an include-directory to $CPPFLAGS. Don't add /usr/include, since it's dnl redundant. We don't normally need to add -I/usr/local/include for gcc, @@ -259,6 +294,8 @@ if test -n "$1" ; then else break fi + else + break fi done done @@ -357,13 +394,29 @@ 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_OPTION version: 4 updated: 2010/05/26 05:38:42 +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 dnl values. @@ -376,25 +429,29 @@ dnl $4 = action if perform if option is default dnl $5 = default option value (either 'yes' or 'no') AC_DEFUN([CF_ARG_OPTION], [AC_ARG_ENABLE([$1],[$2],[test "$enableval" != ifelse([$5],no,yes,no) && enableval=ifelse([$5],no,no,yes) - if test "$enableval" != "$5" ; then + if test "$enableval" != "$5" ; then ifelse([$3],,[ :]dnl ,[ $3]) ifelse([$4],,,[ - else - $4]) - fi],[enableval=$5 ifelse([$4],,,[ - $4 + else + $4]) + fi],[enableval=$5 ifelse([$4],,,[ + $4 ])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 @@ -510,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. @@ -544,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) { @@ -578,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 @@ -603,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) @@ -670,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 @@ -682,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) @@ -750,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. @@ -774,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 ],[ char temp[128]; char *buf = temp; @@ -886,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 @@ -900,7 +979,7 @@ if test "$cross_compiling" != yes ; then cat >conftest.$ac_ext < -int main() +int main(void) { Gpm_Wgetch(); ${cf_cv_main_return:-return}(0); @@ -951,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 +#ifdef HAVE_WCHAR_H #include +#endif +#ifdef HAVE_WCTYPE_H +#include +#endif ],[ wint_t foo = 0; int bar = iswpunct(foo)], @@ -972,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 < +#include +#include + +#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 @@ -1005,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 @@ -1029,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], @@ -1336,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. @@ -1359,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 @@ -1389,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, @@ -1416,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 --------------------------------------------------------------------------- @@ -1656,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 @@ -1673,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 ],[ @@ -1691,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. @@ -1701,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)); @@ -1722,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. @@ -1737,7 +1976,7 @@ AC_TRY_RUN([ #include #endif -int main() { +int main(void) { struct timespec ts1, ts2; int code; ts1.tv_sec = 0; @@ -1756,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 header. It may need the dnl "util" library as well. @@ -1765,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([ @@ -1784,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 @@ -1800,7 +2040,7 @@ AC_TRY_RUN([ #else #include #endif -int main() { +int main(void) { struct pollfd myfds; int ret; @@ -1820,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 */ @@ -2225,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. @@ -2247,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 <>library.gpr <>confpackage.ads <>confpackage.ads <>confpackage.adb <>confpackage.adb <&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 @@ -2454,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 @@ -2481,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 ],[ +#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 @@ -2528,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],[ @@ -2537,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 @@ -2885,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 @@ -2938,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],[ @@ -2960,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 #include ],[ @@ -3079,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. @@ -3097,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*) @@ -3174,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 @@ -3182,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' ;; @@ -3191,7 +3519,7 @@ ifelse($1,,,[$1=$LIB_PREFIX]) AC_SUBST(LIB_PREFIX) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_LIB_RULES version: 80 updated: 2015/04/17 21:13:04 +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 @@ -3243,27 +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_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 <\[$]@ + $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 @@ -3297,7 +3633,7 @@ CF_EOF case "$cf_cv_system_name" in (darwin*) # "w", etc? - cf_suffix="${LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix" + cf_suffix="${USE_LIB_SUFFIX}"'.${'$cf_version_name'}'"$cf_shared_suffix" ;; (*) cf_suffix="$cf_suffix"'.${'$cf_version_name'}' @@ -3480,24 +3816,24 @@ CF_EOF if test -n "$USE_LIB_SUFFIX" ; then case $USE_LIB_SUFFIX in (tw*) - cf_libname=`echo $cf_libname | sed 's/tw$//'` + cf_libname=`echo $cf_libname | sed 's/tw'$EXTRA_SUFFIX'$//'` cf_suffix=`echo $cf_suffix | sed 's/^tw'$EXTRA_SUFFIX'//'` - cf_dir_suffix=tw + cf_dir_suffix=tw$EXTRA_SUFFIX ;; (t*) - cf_libname=`echo $cf_libname | sed 's/t$//'` + cf_libname=`echo $cf_libname | sed 's/t'$EXTRA_SUFFIX'$//'` cf_suffix=`echo $cf_suffix | sed 's/^t'$EXTRA_SUFFIX'//'` - cf_dir_suffix=t + cf_dir_suffix=t$EXTRA_SUFFIX ;; (w*) - cf_libname=`echo $cf_libname | sed 's/w$//'` + cf_libname=`echo $cf_libname | sed 's/w'$EXTRA_SUFFIX'$//'` cf_suffix=`echo $cf_suffix | sed 's/^w'$EXTRA_SUFFIX'//'` - cf_dir_suffix=w + cf_dir_suffix=w$EXTRA_SUFFIX ;; (*) - cf_libname=`echo $cf_libname | sed 's/$//'` + cf_libname=`echo $cf_libname | sed 's/'$EXTRA_SUFFIX'$//'` cf_suffix=`echo $cf_suffix | sed 's/^'$EXTRA_SUFFIX'//'` - cf_dir_suffix= + cf_dir_suffix=$EXTRA_SUFFIX ;; esac fi @@ -3639,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 <headers.sh <conftest.$ac_ext <conftest.$ac_ext < #endif -int main() +int main(void) { int fail = 0; char *src = "config.log"; @@ -4007,7 +4344,7 @@ int main() fi ])dnl dnl --------------------------------------------------------------------------- -dnl CF_MAKEFLAGS version: 16 updated: 2015/04/15 19:08:48 +dnl CF_MAKEFLAGS version: 17 updated: 2015/08/05 20:44:28 dnl ------------ dnl Some 'make' programs support ${MAKEFLAGS}, some ${MFLAGS}, to pass 'make' dnl options to lower-levels. It's very useful for "make -n" -- if we have it. @@ -4020,7 +4357,7 @@ AC_CACHE_CHECK(for makeflags variable, cf_cv_makeflags,[ for cf_option in '-${MAKEFLAGS}' '${MFLAGS}' do cat >cf_makeflags.tmp <./edit_man.sed + $SHELL $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed fi fi @@ -4302,7 +4639,7 @@ AC_ARG_WITH(manpage-tbl, AC_MSG_RESULT($MANPAGE_TBL) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_MAN_PAGES version: 45 updated: 2015/04/18 08:56:57 +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 @@ -4355,7 +4692,7 @@ cf_edit_man=./edit_man.sh cf_man_alias=`pwd`/man_alias.sed cat >$cf_edit_man < + #include #include ], [double x = rand(); printf("result = %g\n", ]ifelse([$2],,sin(x),$2)[)], @@ -4698,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 +#ifdef HAVE_UNISTD_H +#include +#endif #include #include #include #include -int main() +int main(void) { char *tmpl = "conftestXXXXXX"; char name[2][80]; @@ -4758,7 +5102,7 @@ AC_DEFUN([CF_MSG_LOG],[ echo "${as_me:-configure}:__oline__: testing $* ..." 1>&AC_FD_CC ])dnl dnl --------------------------------------------------------------------------- -dnl CF_NCURSES_ABI_6 version: 2 updated: 2015/04/17 21:13:04 +dnl CF_NCURSES_ABI_6 version: 3 updated: 2015/06/06 16:10:11 dnl ---------------- dnl Set ncurses' ABI to 6 unless overridden by explicit configure option, and dnl warn about this. @@ -4768,7 +5112,27 @@ if test "${with_abi_version+set}" != set; then (5.*) cf_cv_rel_version=6.0 cf_cv_abi_version=6 - AC_MSG_WARN(Overriding ABI version to $cf_cv_abi_version) + AC_MSG_WARN(overriding ABI version to $cf_cv_abi_version) + ;; + esac +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 @@ -4895,7 +5259,7 @@ case ".[$]$1" in esac ])dnl dnl --------------------------------------------------------------------------- -dnl CF_PKG_CONFIG version: 9 updated: 2015/04/12 15:39:00 +dnl CF_PKG_CONFIG version: 10 updated: 2015/04/26 18:06:58 dnl ------------- dnl Check for the package-config program, unless disabled by command-line. AC_DEFUN([CF_PKG_CONFIG], @@ -4924,7 +5288,7 @@ esac test -z "$PKG_CONFIG" && PKG_CONFIG=none if test "$PKG_CONFIG" != none ; then CF_PATH_SYNTAX(PKG_CONFIG) -else +elif test "x$cf_pkg_config" != xno ; then AC_MSG_WARN(pkg-config is not installed) fi @@ -5090,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 @@ -5098,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 < -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 @@ -5144,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 @@ -5171,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 @@ -5216,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 --------------------------------------------------------------------------- @@ -5473,7 +5877,7 @@ CF_VERBOSE(...checked $1 [$]$1) AC_SUBST(EXTRA_LDFLAGS) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_SHARED_OPTS version: 87 updated: 2015/04/17 21:13:04 +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 @@ -5526,11 +5930,12 @@ AC_DEFUN([CF_SHARED_OPTS], (yes) cf_cv_shlib_version=auto ;; - (rel|abi|auto|no) + (rel|abi|auto) cf_cv_shlib_version=$withval ;; (*) - AC_MSG_ERROR([option value must be one of: rel, abi, auto or no]) + AC_MSG_RESULT($withval) + AC_MSG_ERROR([option value must be one of: rel, abi, or auto]) ;; esac ],[cf_cv_shlib_version=auto]) @@ -5541,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" @@ -5560,26 +5978,26 @@ 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= - MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' + MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" cf_cv_shlib_version=cygdll cf_cv_shlib_version_infix=cygdll shlibdir=$bindir MAKE_DLLS= cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh + #!$SHELL SHARED_LIB=\[$]1 IMPORT_LIB=\`echo "\[$]1" | sed -e 's/cyg/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` shift @@ -5588,20 +6006,20 @@ 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 ;; (msys*) CC_SHARED_OPTS= - MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' + MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" cf_cv_shlib_version=msysdll cf_cv_shlib_version_infix=msysdll shlibdir=$bindir MAKE_DLLS= cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh + #!$SHELL SHARED_LIB=\[$]1 IMPORT_LIB=\`echo "\[$]1" | sed -e 's/msys-/lib/' -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` shift @@ -5610,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, [ @@ -5634,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*) @@ -5645,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" @@ -5653,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 @@ -5667,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 ;; @@ -5682,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 @@ -5695,10 +6113,10 @@ CF_EOF EXTRA_LDFLAGS="-Wl,--enable-auto-import $EXTRA_LDFLAGS" fi CC_SHARED_OPTS= - MK_SHARED_LIB='sh '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' + MK_SHARED_LIB=$SHELL' '$rel_builddir'/mk_shared_lib.sh [$]@ [$]{CC} [$]{CFLAGS}' RM_SHARED_OPTS="$RM_SHARED_OPTS $rel_builddir/mk_shared_lib.sh *.dll.a" cat >mk_shared_lib.sh <<-CF_EOF - #!/bin/sh + #!$SHELL SHARED_LIB=\[$]1 IMPORT_LIB=\`echo "\[$]1" | sed -e 's/[[0-9]]*\.dll[$]/.dll.a/'\` shift @@ -5707,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 ;; @@ -5721,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*) @@ -5736,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" @@ -5752,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" @@ -5779,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 @@ -5793,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*) @@ -5816,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*) @@ -5826,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' @@ -6083,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 @@ -6115,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 @@ -6208,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 ],[ -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 ],[ + 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 ],[ + 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 --------------------------------------------------------------------------- @@ -6449,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 @@ -6462,7 +6902,7 @@ AC_CACHE_VAL(cf_cv_typeof_chtype,[ AC_TRY_RUN([ #define WANT_BITS 31 #include -int main() +int main(void) { FILE *fp = fopen("cf_test.out", "w"); if (fp != 0) { @@ -6769,7 +7209,7 @@ weak_symbol(fopen); ]) ])dnl dnl --------------------------------------------------------------------------- -dnl CF_WITH_ABI_VERSION version: 1 updated: 2003/09/20 18:12:49 +dnl CF_WITH_ABI_VERSION version: 3 updated: 2015/06/06 16:10:11 dnl ------------------- dnl Allow library's ABI to be overridden. Generally this happens when a dnl packager has incremented the ABI past that used in the original package, @@ -6780,10 +7220,21 @@ dnl symbol. AC_DEFUN([CF_WITH_ABI_VERSION],[ test -z "$cf_cv_abi_version" && cf_cv_abi_version=0 AC_ARG_WITH(abi-version, -[ --with-abi-version=XXX override derived ABI version], -[AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval) - cf_cv_abi_version=$withval]) - CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version) +[ --with-abi-version=XXX override derived ABI version],[ + if test "x$cf_cv_abi_version" != "x$withval" + then + AC_MSG_WARN(overriding ABI version $cf_cv_abi_version to $withval) + case $cf_cv_rel_version in + (5.*) + cf_cv_rel_version=$withval.0 + ;; + (6.*) + cf_cv_rel_version=$withval.9 # FIXME: should be 10 as of 6.0 release + ;; + esac + fi + cf_cv_abi_version=$withval]) + CF_NUMBER_SYNTAX($cf_cv_abi_version,ABI version) ifelse($1,,,[ $1_ABI=$cf_cv_abi_version ]) @@ -6914,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 @@ -6934,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 @@ -6947,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. @@ -6971,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 @@ -7030,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' @@ -7045,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 @@ -7210,15 +7666,25 @@ AC_SUBST($3)dnl ])dnl dnl --------------------------------------------------------------------------- -dnl CF_WITH_PKG_CONFIG_LIBDIR version: 6 updated: 2015/04/17 21:13:04 +dnl CF_WITH_PKG_CONFIG_LIBDIR version: 10 updated: 2015/08/22 17:10:56 dnl ------------------------- dnl Allow the choice of the pkg-config library directory to be overridden. AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[ -AC_MSG_CHECKING(for $PKG_CONFIG library directory) + +case $PKG_CONFIG in +(no|none|yes) + AC_MSG_CHECKING(for pkg-config library directory) + ;; +(*) + AC_MSG_CHECKING(for $PKG_CONFIG library directory) + ;; +esac + +PKG_CONFIG_LIBDIR=no AC_ARG_WITH(pkg-config-libdir, [ --with-pkg-config-libdir=XXX use given directory for installing pc-files], [PKG_CONFIG_LIBDIR=$withval], - [PKG_CONFIG_LIBDIR=yes]) + [test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes]) case x$PKG_CONFIG_LIBDIR in (x/*) @@ -7274,7 +7740,9 @@ case x$PKG_CONFIG_LIBDIR in ;; esac -AC_MSG_RESULT($PKG_CONFIG_LIBDIR) +if test "x$PKG_CONFIG_LIBDIR" != xno ; then + AC_MSG_RESULT($PKG_CONFIG_LIBDIR) +fi AC_SUBST(PKG_CONFIG_LIBDIR) ])dnl @@ -7404,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 @@ -7518,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) @@ -7531,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, @@ -7551,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]].*) @@ -7579,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*)