dnl
dnl Author: Thomas E. Dickey
dnl
-dnl $Id: aclocal.m4,v 1.131 2018/01/16 21:49:43 tom Exp $
+dnl $Id: aclocal.m4,v 1.132 2018/06/16 23:08:19 tom Exp $
dnl Macros used in NCURSES Ada95 auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
esac
])
dnl ---------------------------------------------------------------------------
-dnl CF_GNU_SOURCE version: 7 updated: 2016/08/05 05:15:37
+dnl CF_GNU_SOURCE version: 8 updated: 2018/06/16 19:05:13
dnl -------------
dnl Check if we must define _GNU_SOURCE to get a reasonable value for
dnl _XOPEN_SOURCE, upon which many POSIX definitions depend. This is a defect
dnl since it is interwoven with GNU extensions.
dnl
dnl Well, yes we could work around it...
+dnl
+dnl Parameters:
+dnl $1 is the nominal value for _XOPEN_SOURCE
AC_DEFUN([CF_GNU_SOURCE],
[
-AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
+cf_gnu_xopen_source=ifelse($1,,500,$1)
+
+AC_CACHE_CHECK(if this is the GNU C library,cf_cv_gnu_library,[
AC_TRY_COMPILE([#include <sys/types.h>],[
-#ifndef _XOPEN_SOURCE
-make an error
-#endif],
- [cf_cv_gnu_source=no],
- [cf_save="$CPPFLAGS"
- CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
- AC_TRY_COMPILE([#include <sys/types.h>],[
-#ifdef _XOPEN_SOURCE
-make an error
-#endif],
- [cf_cv_gnu_source=no],
- [cf_cv_gnu_source=yes])
- CPPFLAGS="$cf_save"
- ])
+ #if __GLIBC__ > 0 && __GLIBC_MINOR__ >= 0
+ return 0;
+ #else
+ # error not GNU C library
+ #endif],
+ [cf_cv_gnu_library=yes],
+ [cf_cv_gnu_library=no])
])
-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])
+if test x$cf_cv_gnu_library = xyes; then
+
+ # With glibc 2.19 (13 years after this check was begun), _DEFAULT_SOURCE
+ # was changed to help a little...
+ AC_CACHE_CHECK(if _DEFAULT_SOURCE can be used as a basis,cf_cv_gnu_library_219,[
+ cf_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE"
+ AC_TRY_COMPILE([#include <sys/types.h>],[
+ #if (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 19) || (__GLIBC__ > 2)
+ return 0;
+ #else
+ # error GNU C library __GLIBC__.__GLIBC_MINOR__ is too old
+ #endif],
+ [cf_cv_gnu_library_219=yes],
+ [cf_cv_gnu_library_219=no])
+ CPPFLAGS="$cf_save"
])
-test "$cf_cv_default_source" = yes && CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE"
+
+ if test "x$cf_cv_gnu_library_219" = xyes; then
+ AC_CACHE_CHECK(if _XOPEN_SOURCE=$cf_gnu_xopen_source works with _DEFAULT_SOURCE,cf_cv_gnu_dftsrc_219,[
+ cf_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE -D_XOPEN_SOURCE=$cf_gnu_xopen_source"
+ AC_TRY_COMPILE([
+ #include <limits.h>
+ #include <sys/types.h>
+ ],[
+ #if (_XOPEN_SOURCE >= $cf_gnu_xopen_source) && (MB_LEN_MAX > 1)
+ return 0;
+ #else
+ # error GNU C library is too old
+ #endif],
+ [cf_cv_gnu_dftsrc_219=yes],
+ [cf_cv_gnu_dftsrc_219=no])
+ ])
+ test "x$cf_cv_gnu_dftsrc_219" = "xyes" || CPPFLAGS="$cf_save"
+ else
+ cf_cv_gnu_dftsrc_219=maybe
+ fi
+
+ if test "x$cf_cv_gnu_dftsrc_219" != xyes; then
+
+ AC_CACHE_CHECK(if we must define _GNU_SOURCE,cf_cv_gnu_source,[
+ AC_TRY_COMPILE([#include <sys/types.h>],[
+ #ifndef _XOPEN_SOURCE
+ #error expected _XOPEN_SOURCE to be defined
+ #endif],
+ [cf_cv_gnu_source=no],
+ [cf_save="$CPPFLAGS"
+ CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE"
+ AC_TRY_COMPILE([#include <sys/types.h>],[
+ #ifdef _XOPEN_SOURCE
+ #error expected _XOPEN_SOURCE to be undefined
+ #endif],
+ [cf_cv_gnu_source=no],
+ [cf_cv_gnu_source=yes])
+ CPPFLAGS="$cf_save"
+ ])
+ ])
+
+ 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
+ #error expected _DEFAULT_SOURCE to be undefined
+ #endif],
+ [cf_cv_default_source=no],
+ [cf_cv_default_source=yes])
+ ])
+ test "$cf_cv_default_source" = yes && CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE"
+ fi
+ fi
+
fi
])dnl
dnl ---------------------------------------------------------------------------
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAKEFLAGS version: 17 updated: 2015/08/05 20:44:28
+dnl CF_MAKEFLAGS version: 18 updated: 2018/02/21 21:26:03
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.
esac
break
;;
- (.-) ;;
- (*) echo "given option \"$cf_option\", no match \"$cf_result\""
+ (.-)
+ ;;
+ (*)
+ CF_MSG_LOG(given option \"$cf_option\", no match \"$cf_result\")
;;
esac
done
esac
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PROG_GNAT version: 5 updated: 2018/01/15 15:28:49
+dnl CF_PROG_GNAT version: 6 updated: 2018/01/16 16:45:49
dnl ------------
dnl Check for gnatmake, ensure that it is complete.
AC_DEFUN([CF_PROG_GNAT],[
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 52 updated: 2016/08/27 12:21:42
+dnl CF_XOPEN_SOURCE version: 53 updated: 2018/06/16 18:58:58
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,
cf_XOPEN_SOURCE=
;;
(linux*|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin)
- CF_GNU_SOURCE
+ CF_GNU_SOURCE($cf_XOPEN_SOURCE)
;;
(minix*)
cf_xopen_source="-D_NETBSD_SOURCE" # POSIX.1-2001 features are ifdef'd with this...