dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.1026 2023/01/14 14:00:15 tom Exp $
+dnl $Id: aclocal.m4,v 1.1040 2023/04/22 15:51:54 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_BOOL_SIZE version: 19 updated: 2023/01/05 18:00:14
+dnl CF_BOOL_SIZE version: 20 updated: 2023/02/18 17:41: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 has been deprecated.
AC_DEFUN([CF_BOOL_SIZE],
[
AC_CHECK_SIZEOF(bool,,[
-#include <stdlib.h>
-#include <stdio.h>
+$ac_includes_default
#if defined(__cplusplus)
AC_SUBST(BUILD_OBJEXT)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_C11_NORETURN version: 3 updated: 2021/03/28 11:36:23
+dnl CF_C11_NORETURN version: 4 updated: 2023/02/18 17:41:25
dnl ---------------
AC_DEFUN([CF_C11_NORETURN],
[
if test $enable_stdnoreturn = yes; then
AC_CACHE_CHECK([for C11 _Noreturn feature], cf_cv_c11_noreturn,
[AC_TRY_COMPILE([
-#include <stdio.h>
-#include <stdlib.h>
+$ac_includes_default
#include <stdnoreturn.h>
static _Noreturn void giveup(void) { exit(0); }
],
AC_SUBST(STDC_NORETURN)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 10 updated: 2020/12/31 18:40:20
+dnl CF_CC_ENV_FLAGS version: 11 updated: 2023/02/20 11:15:46
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
AC_MSG_WARN(your environment uses the CC variable to hold CFLAGS/CPPFLAGS options)
# humor him...
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))); }'`
+ cf_flags=`echo "$CC" | sed -e "s%^$cf_prog%%"`
CC="$cf_prog"
for cf_arg in $cf_flags
do
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CGETENT version: 6 updated: 2017/01/21 11:06:25
+dnl CF_CGETENT version: 7 updated: 2023/02/18 17:41:25
dnl ----------
dnl Check if the terminal-capability database functions are available. If not,
dnl ncurses has a much-reduced version.
AC_DEFUN([CF_CGETENT],[
AC_CACHE_CHECK(for terminal-capability database functions,cf_cv_cgetent,[
AC_TRY_LINK([
-#include <stdlib.h>],[
+$ac_includes_default],[
char temp[128];
char *buf = temp;
char *db_array = temp;
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>],[
+$ac_includes_default],[
char temp[128];
char *buf = temp;
#ifndef _NETBSD_SOURCE /* given, since April 2004 in stdlib.h */
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_ENVIRON version: 4 updated: 2023/01/14 07:48:15
+dnl CF_CHECK_ENVIRON version: 5 updated: 2023/02/18 17:41:25
dnl ----------------
dnl Check for data that is usually declared in <unistd.h>, e.g., the 'environ'
dnl variable. Define a DECL_xxx symbol if we must declare it ourselves.
[
AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
AC_TRY_COMPILE([
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#include <unistd.h> ],
+$ac_includes_default],
ifelse([$2],,void*,[$2]) x = (ifelse([$2],,void*,[$2])) $1; (void)x,
[cf_cv_dcl_$1=yes],
[cf_cv_dcl_$1=no])
CF_CHECK_EXTERN_DATA($1,ifelse([$2],,int,[$2]))
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_ERRNO version: 13 updated: 2020/03/10 18:53:47
+dnl CF_CHECK_ERRNO version: 14 updated: 2023/02/18 17:41:25
dnl --------------
dnl Check for data that is usually declared in <stdio.h> or <errno.h>, e.g.,
dnl the 'errno' variable. Define a DECL_xxx symbol if we must declare it
[
AC_CACHE_CHECK(if external $1 is declared, cf_cv_dcl_$1,[
AC_TRY_COMPILE([
-#ifdef HAVE_STDLIB_H
-#include <stdlib.h>
-#endif
-#include <stdio.h>
-#include <sys/types.h>
+$ac_includes_default
#include <errno.h> ],
ifelse([$2],,int,[$2]) x = (ifelse([$2],,int,[$2])) $1; (void)x,
[cf_cv_dcl_$1=yes],
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CHECK_WCHAR_H version: 3 updated: 2021/01/01 13:31:04
+dnl CF_CHECK_WCHAR_H version: 4 updated: 2023/02/18 17:41:25
dnl ----------------
dnl Check if wchar.h can be used, i.e., without defining _XOPEN_SOURCE_EXTENDED
AC_DEFUN([CF_CHECK_WCHAR_H],[
AC_CACHE_CHECK(if wchar.h can be used as is,cf_cv_wchar_h_okay,[
AC_TRY_COMPILE(
[
-#include <stdlib.h>
+$ac_includes_default
#ifdef HAVE_WCHAR_H
#include <wchar.h>
#endif
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_CLANG_COMPILER version: 8 updated: 2021/01/01 13:31:04
+dnl CF_CLANG_COMPILER version: 9 updated: 2023/02/18 17:41:25
dnl -----------------
dnl Check if the given compiler is really clang. clang's C driver defines
dnl __GNUC__ (fooling the configure script into setting $GCC to yes) but does
AC_TRY_COMPILE([],[
#ifdef __clang__
#else
-make an error
+#error __clang__ is not defined
#endif
],[ifelse([$2],,CLANG_COMPILER,[$2])=yes
],[])
fi
])
dnl ---------------------------------------------------------------------------
+dnl CF_FUNC_GETTIME version: 2 updated: 2023/02/25 08:45:56
+dnl ---------------
+dnl Check for gettimeofday or clock_gettime. In 2023, the former is still more
+dnl widely supported, but "deprecated" (2008), so we will use the latter if it
+dnl is available, to reduce compiler warnings.
+AC_DEFUN([CF_FUNC_GETTIME],[
+AC_CACHE_CHECK(for clock_gettime,cf_cv_func_clock_gettime,[
+ AC_TRY_LINK([#include <time.h>],
+ [struct timespec ts;
+ int rc = clock_gettime(CLOCK_REALTIME, &ts); (void) rc; (void)ts],
+ [cf_cv_func_clock_gettime=yes],
+ [cf_cv_func_clock_gettime=no])
+])
+
+if test "$cf_cv_func_clock_gettime" = yes
+then
+ AC_DEFINE(HAVE_CLOCK_GETTIME,1,[Define to 1 if we have clock_gettime function])
+else
+AC_CHECK_FUNC(gettimeofday,
+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function]),[
+
+AC_CHECK_LIB(bsd, gettimeofday,
+ AC_DEFINE(HAVE_GETTIMEOFDAY,1,[Define to 1 if we have gettimeofday function])
+ CF_ADD_LIB(bsd))])dnl CLIX: bzero, select, gettimeofday
+fi
+])dnl
+dnl ---------------------------------------------------------------------------
dnl CF_FUNC_GETTTYNAM version: 2 updated: 2023/01/05 18:06:28
dnl -----------------
dnl Check if the 4.3BSD function getttyname exists, as well as if <ttyent.h>
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_VERSION version: 8 updated: 2019/09/07 13:38:36
+dnl CF_GCC_VERSION version: 9 updated: 2023/03/05 14:30:13
dnl --------------
dnl Find version of gcc, and (because icc/clang pretend to be gcc without being
dnl compatible), attempt to determine if icc/clang is actually used.
GCC_VERSION=none
if test "$GCC" = yes ; then
AC_MSG_CHECKING(version of $CC)
- GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^.*(GCC[[^)]]*) //' -e 's/^.*(Debian[[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
+ GCC_VERSION="`${CC} --version 2>/dev/null | sed -e '2,$d' -e 's/^[[^(]]*([[^)]][[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
test -z "$GCC_VERSION" && GCC_VERSION=unknown
AC_MSG_RESULT($GCC_VERSION)
fi
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GXX_VERSION version: 8 updated: 2017/02/11 14:48:57
+dnl CF_GXX_VERSION version: 9 updated: 2023/03/05 14:30:13
dnl --------------
dnl Check for version of g++
AC_DEFUN([CF_GXX_VERSION],[
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.]].*//'`"
+ GXX_VERSION="`${CXX:-g++} --version 2>/dev/null | sed -e '2,$d' -e 's/^[[^(]]*([[^)]][[^)]]*) //' -e 's/^[[^0-9.]]*//' -e 's/[[^0-9.]].*//'`"
if test -z "$GXX_VERSION"
then
GXX_VERSION=unknown
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_HASHED_DB_VERSION version: 4 updated: 2014/04/12 16:47:01
+dnl CF_HASHED_DB_VERSION version: 5 updated: 2023/02/18 17:41:25
dnl --------------------
dnl Given that we have the header file for hashed database, find the version
dnl information.
#if $cf_db_version == DB_VERSION_MAJOR
/* ok */
#else
- make an error
+ #error $cf_db_version is not DB_VERSION_MAJOR
#endif
#else
#if $cf_db_version == 1
/* ok: assuming this is DB 1.8.5 */
#else
- make an error
+ #error $cf_db_version is not 1
#endif
#endif
],[DBT *foo = 0],[
AC_SUBST(INSTALL_OPT_S)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_INTEL_COMPILER version: 8 updated: 2021/01/01 16:53:59
+dnl CF_INTEL_COMPILER version: 9 updated: 2023/02/18 17:41:25
dnl -----------------
dnl Check if the given compiler is really the Intel compiler for Linux. It
dnl tries to imitate gcc, but does not return an error when it finds a mismatch
AC_TRY_COMPILE([],[
#ifdef __INTEL_COMPILER
#else
-make an error
+#error __INTEL_COMPILER is not defined
#endif
],[ifelse([$2],,INTEL_COMPILER,[$2])=yes
cf_save_CFLAGS="$cf_save_CFLAGS -we147"
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 98 updated: 2023/01/07 16:32:06
+dnl CF_LIB_RULES version: 99 updated: 2023/04/22 11:51:06
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
rm -rf \${DIRS_TO_MAKE}
CF_EOF
-# Special case: tack's manpage lives in its own directory.
-if test "x$cf_with_manpages" = xyes; then
-if test "x$cf_with_tack" = "xyes"; then
-cat >> Makefile <<CF_EOF
-
-install.man \\
-uninstall.man ::
- ( cd tack && \${MAKE} \${TOP_MFLAGS} \[$]@ )
-CF_EOF
-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
dnl anything, and will make it more standardized. It's awkward to decide this
AC_SUBST(MAKE_LOWER_TAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MANPAGE_FORMAT version: 16 updated: 2022/11/05 16:12:11
+dnl CF_MANPAGE_FORMAT version: 17 updated: 2023/01/21 16:49:25
dnl -----------------
dnl Option to allow user to override automatic configuration of manpage format.
dnl There are several special cases:
if test -n "$cf_unknown" ; then
AC_MSG_WARN(Unexpected manpage-format $cf_unknown)
fi
+
+cf_manpage_format=no
+cf_manpage_inboth=no
+cf_manpage_so_strip=
+cf_manpage_compress=
+
+for cf_item in $MANPAGE_FORMAT
+do
+case "$cf_item" in
+(catonly)
+ cf_manpage_format=yes
+ cf_manpage_inboth=no
+ ;;
+(formatted)
+ cf_manpage_format=yes
+ cf_manpage_inboth=yes
+ ;;
+(compress)
+ cf_manpage_so_strip="Z"
+ cf_manpage_compress=compress
+ ;;
+(gzip)
+ cf_manpage_so_strip="gz"
+ cf_manpage_compress=gzip
+ ;;
+(bzip2)
+ cf_manpage_so_strip="bz2"
+ cf_manpage_compress=bzip2
+ ;;
+(xz)
+ cf_manpage_so_strip="xz"
+ cf_manpage_compress=xz
+ ;;
+esac
+done
+
])dnl
dnl ---------------------------------------------------------------------------
dnl CF_MANPAGE_RENAMES version: 17 updated: 2022/10/23 07:46:29
AC_SUBST(MANPAGE_RENAMES)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MANPAGE_SYMLINKS version: 6 updated: 2015/04/17 21:13:04
+dnl CF_MANPAGE_SYMLINKS version: 7 updated: 2023/01/21 16:37:17
dnl -------------------
dnl Some people expect each tool to make all aliases for manpages in the
dnl man-directory. This accommodates the older, less-capable implementations
[MANPAGE_SYMLINKS=$withval],
[MANPAGE_SYMLINKS=$cf_use_symlinks])
-if test "$$cf_use_symlinks" = no; then
+if test "$cf_use_symlinks" = no; then
if test "$MANPAGE_SYMLINKS" = yes ; then
AC_MSG_WARN(cannot make symlinks, will use .so files)
MANPAGE_SYMLINKS=no
AC_MSG_RESULT($MANPAGE_TBL)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAN_PAGES version: 54 updated: 2022/11/05 16:12:11
+dnl CF_MAN_PAGES version: 56 updated: 2023/01/21 16:49:25
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
cf_prefix="$prefix"
fi
-case "$MANPAGE_FORMAT" in
-(*catonly*)
- cf_format=yes
- cf_inboth=no
- ;;
-(*formatted*)
- cf_format=yes
- cf_inboth=yes
- ;;
-(*)
- cf_format=no
- cf_inboth=no
- ;;
-esac
-
test ! -d man && mkdir man
-cf_so_strip=
-cf_compress=
-for cf_manpage_format in $MANPAGE_FORMAT
-do
-case "$cf_manpage_format" in
-(compress)
- cf_so_strip="Z"
- cf_compress=compress
- ;;
-(gzip)
- cf_so_strip="gz"
- cf_compress=gzip
- ;;
-(bzip2)
- cf_so_strip="bz2"
- cf_compress=bzip2
- ;;
-(xz)
- cf_so_strip="xz"
- cf_compress=xz
- ;;
-esac
-done
-
cf_edit_man=./edit_man.sh
cf_man_alias=`pwd`/man_alias.sed
shift || exit 1
if test "\$form" = normal ; then
- if test "$cf_format" = yes ; then
- if test "$cf_inboth" = no ; then
+ if test "$cf_manpage_format" = yes ; then
+ if test "$cf_manpage_inboth" = no ; then
$SHELL "\[$]0" format "\$verb" "\$mandir" "\$srcdir" "\[$]@"
exit $?
fi
aliases=
cf_source=\`basename "\$i"\`
- inalias=\$cf_source
- test ! -f "\$inalias" && inalias="\$srcdir/\$inalias"
- if test ! -f "\$inalias" ; then
+ cf_full_alias=\$cf_source
+ test ! -f "\$cf_full_alias" && cf_full_alias="\$srcdir/\$cf_full_alias"
+ if test ! -f "\$cf_full_alias" ; then
echo ".. skipped \$cf_source"
continue
fi
if test "$MANPAGE_ALIASES" != no ; then
cat >>$cf_edit_man <<CF_EOF
nCurses=ignore.3x
+ cf_part_alias=\`echo \$cf_full_alias| sed -e 's,^.*/,,'\`
test "$with_curses_h" = yes && nCurses=ncurses.3x
- aliases=\`sed -f "\$top_srcdir/man/manlinks.sed" "\$inalias" |sed -f "$cf_man_alias" | sort -u; test "\$inalias" = "\$nCurses" && echo curses\`
+ aliases=\`sed -f "\$top_srcdir/man/manlinks.sed" "\$cf_full_alias" |sed -f "$cf_man_alias" | sort -u; test "\$cf_part_alias" = "\$nCurses" && echo curses\`
CF_EOF
fi
fi
CF_EOF
-if test -n "$cf_compress" ; then
+if test -n "$cf_manpage_compress" ; then
cat >>$cf_edit_man <<CF_EOF
if test "\$verb" = installing ; then
- if ( "$cf_compress" -f \$TMP )
+ if ( "$cf_manpage_compress" -f \$TMP )
then
- mv \$TMP.$cf_so_strip \$TMP
+ mv \$TMP.$cf_manpage_so_strip \$TMP
fi
fi
- cf_target="\$cf_target.$cf_so_strip"
+ cf_target="\$cf_target.$cf_manpage_so_strip"
CF_EOF
fi
test -n "\$aliases" && (
cd "\$cf_subdir\${section}" && (
cf_source=\`echo "\$cf_target" |sed -e 's%^.*/\\([[^/]][[^/]]*/[[^/]][[^/]]*$\\)%\\1%'\`
- test -n "$cf_so_strip" && cf_source=\`echo "\$cf_source" |sed -e 's%\\.$cf_so_strip\$%%'\`
+ test -n "$cf_manpage_so_strip" && cf_source=\`echo "\$cf_source" |sed -e 's%\\.$cf_manpage_so_strip\$%%'\`
cf_target=\`basename "\$cf_target"\`
for cf_alias in \$aliases
do
elif test "\$cf_target" != "\$cf_alias\${suffix}" ; then
echo ".so \$cf_source" >\$TMP
CF_EOF
-if test -n "$cf_compress" ; then
+if test -n "$cf_manpage_compress" ; then
cat >>$cf_edit_man <<CF_EOF
- if test -n "$cf_so_strip" ; then
- "$cf_compress" -f \$TMP
- mv \$TMP.$cf_so_strip \$TMP
+ if test -n "$cf_manpage_so_strip" ; then
+ "$cf_manpage_compress" -f \$TMP
+ mv \$TMP.$cf_manpage_so_strip \$TMP
fi
CF_EOF
fi
esac
done
-if test "$cf_inboth" = yes ; then
+if test "$cf_manpage_inboth" = yes ; then
if test "\$form" != format ; then
$SHELL "\[$]0" format "\$verb" "\$mandir" "\$srcdir" "\[$]@"
fi
AC_SUBST(PKG_CONFIG)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_POSIX_C_SOURCE version: 11 updated: 2018/12/31 20:46:17
+dnl CF_POSIX_C_SOURCE version: 12 updated: 2023/02/18 17:41:25
dnl -----------------
dnl Define _POSIX_C_SOURCE to the given level, and _POSIX_SOURCE if needed.
dnl
CF_MSG_LOG(if the symbol is already defined go no further)
AC_TRY_COMPILE([#include <sys/types.h>],[
#ifndef _POSIX_C_SOURCE
-make an error
+#error _POSIX_C_SOURCE is not defined
#endif],
[cf_cv_posix_c_source=no],
[cf_want_posix_source=no
if test "$cf_want_posix_source" = yes ; then
AC_TRY_COMPILE([#include <sys/types.h>],[
#ifdef _POSIX_SOURCE
-make an error
+#error _POSIX_SOURCE is defined
#endif],[],
cf_cv_posix_c_source="$cf_cv_posix_c_source -D_POSIX_SOURCE")
fi
CF_MSG_LOG(if the second compile does not leave our definition intact error)
AC_TRY_COMPILE([#include <sys/types.h>],[
#ifndef _POSIX_C_SOURCE
-make an error
+#error _POSIX_C_SOURCE is not defined
#endif],,
[cf_cv_posix_c_source=no])
CFLAGS="$cf_save_CFLAGS"
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PREDEFINE version: 2 updated: 2010/05/26 16:44:57
+dnl CF_PREDEFINE version: 3 updated: 2023/02/18 17:41:25
dnl ------------
dnl Add definitions to CPPFLAGS to ensure they're predefined for all compiles.
dnl
AC_TRY_COMPILE([#include <sys/types.h>
],[
#ifndef $1
-make an error
+#error $1 is not defined
#endif],[cf_result=no],[cf_result=yes])
AC_MSG_RESULT($cf_result)
AC_TRY_COMPILE([#include <sys/types.h>
],[
#if $1-$2 < 0
-make an error
+#error $1-$2 is negative
#endif],[cf_result=yes],[cf_result=no])
AC_MSG_RESULT($cf_result)
if test "$cf_result" = no ; then
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_SIGWINCH version: 6 updated: 2021/01/01 13:31:04
+dnl CF_SIGWINCH version: 7 updated: 2023/02/18 17:41:25
dnl -----------
dnl Use this macro after CF_XOPEN_SOURCE, but do not require it (not all
dnl programs need this test).
#include <sys/signal.h>
],[
#if SIGWINCH != $cf_sigwinch
-make an error
+#error SIGWINCH is not $cf_sigwinch
#endif
int x = SIGWINCH; (void)x],
[cf_cv_fixup_sigwinch=$cf_sigwinch
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SRC_MODULES version: 33 updated: 2021/01/01 13:31:04
+dnl CF_SRC_MODULES version: 34 updated: 2023/04/22 11:51:06
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
do
if test -f "$srcdir/$cf_dir/modules" ; then
- # We may/may not have tack in the distribution, though the
- # makefile is.
- if test "$cf_dir" = tack ; then
- if test "x$cf_with_tack" != "xyes"; then
- continue
- fi
- fi
-
if test -z "$cf_cv_src_modules"; then
cf_cv_src_modules=$cf_dir
else
# well. These are header files that are the same name as their
# directory. Ncurses is the only library that does not follow
# that pattern.
- if test "$cf_dir" = tack ; then
- continue
- elif test -f "$srcdir/${cf_dir}/${cf_dir}.h" ; then
+ if test -f "$srcdir/${cf_dir}/${cf_dir}.h" ; then
CF_UPPER(cf_have_include,$cf_dir)
AC_DEFINE_UNQUOTED(HAVE_${cf_have_include}_H)
AC_DEFINE_UNQUOTED(HAVE_LIB${cf_have_include})
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PKG_CONFIG_LIBDIR version: 20 updated: 2022/01/29 17:03:42
+dnl CF_WITH_PKG_CONFIG_LIBDIR version: 21 updated: 2023/01/22 13:37:42
dnl -------------------------
dnl Allow the choice of the pkg-config library directory to be overridden.
dnl
dnl c) builtin-list (added if $PKG_CONFIG_LIBDIR is not set)
dnl
dnl pkgconf (used with some systems such as FreeBSD in place of pkg-config)
-dnl optionally ignores $PKG_CONFIG_LIBDIR.
+dnl optionally ignores $PKG_CONFIG_LIBDIR. Very old versions of pkg-config,
+dnl e.g., Solaris 10 also do not recognize $PKG_CONFIG_LIBDIR.
AC_DEFUN([CF_WITH_PKG_CONFIG_LIBDIR],[
case "$PKG_CONFIG" in
esac
# if $PKG_CONFIG_LIBDIR is set, try to use that
-cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[[ ]]*,,'`
+if test -n "$PKG_CONFIG_PATH"; then
+ cf_search_path=`echo "$PKG_CONFIG_PATH" | sed -e 's/:/ /g' -e 's,^[[ ]]*,,' -e 's,[[ ]]*$,,'`
+elif test -n "$PKG_CONFIG_LIBDIR"; then
+ cf_search_path=`echo "$PKG_CONFIG_LIBDIR" | sed -e 's/:/ /g' -e 's,^[[ ]]*,,' -e 's,[[ ]]*$,,'`
+else
+ cf_search_path=auto
+fi
# if the option is used, let that override. otherwise default to "libdir"
AC_ARG_WITH(pkg-config-libdir,
AC_SUBST(no_x11_rgb)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 63 updated: 2022/12/29 10:10:26
+dnl CF_XOPEN_SOURCE version: 66 updated: 2023/04/03 04:19:37
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,
dnl Parameters:
dnl $1 is the nominal value for _XOPEN_SOURCE
dnl $2 is the nominal value for _POSIX_C_SOURCE
+dnl
+dnl The default case prefers _XOPEN_SOURCE over _POSIX_C_SOURCE if the
+dnl implementation predefines it, because X/Open and most implementations agree
+dnl that the latter is a legacy or "aligned" value.
+dnl
+dnl Because _XOPEN_SOURCE is preferred, if defining _POSIX_C_SOURCE turns
+dnl that off, then refrain from setting _POSIX_C_SOURCE explicitly.
+dnl
+dnl References:
+dnl https://pubs.opengroup.org/onlinepubs/007904975/functions/xsh_chap02_02.html
+dnl https://docs.oracle.com/cd/E19253-01/816-5175/standards-5/index.html
+dnl https://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html
AC_DEFUN([CF_XOPEN_SOURCE],[
AC_REQUIRE([AC_CANONICAL_HOST])
AC_REQUIRE([CF_POSIX_VISIBLE])
(aix[[4-7]]*)
cf_xopen_source="-D_ALL_SOURCE"
;;
-(msys)
- cf_XOPEN_SOURCE=600
- ;;
(darwin[[0-8]].*)
cf_xopen_source="-D_APPLE_C_SOURCE"
;;
cf_xopen_source="-D_SGI_SOURCE"
cf_XOPEN_SOURCE=
;;
-(linux*gnu|linux*gnuabi64|linux*gnuabin32|linux*gnueabi|linux*gnueabihf|linux*gnux32|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin)
+(linux*gnu|linux*gnuabi64|linux*gnuabin32|linux*gnueabi|linux*gnueabihf|linux*gnux32|uclinux*|gnu*|mint*|k*bsd*-gnu|cygwin|msys|mingw*)
CF_GNU_SOURCE($cf_XOPEN_SOURCE)
;;
(minix*)
cf_save_xopen_cppflags="$CPPFLAGS"
CF_POSIX_C_SOURCE($cf_POSIX_C_SOURCE)
# Some of these niche implementations use copy/paste, double-check...
- if test "$cf_cv_xopen_source" != no ; then
- CF_VERBOSE(checking if _POSIX_C_SOURCE inteferes)
+ if test "$cf_cv_xopen_source" = no ; then
+ CF_VERBOSE(checking if _POSIX_C_SOURCE interferes with _XOPEN_SOURCE)
AC_TRY_COMPILE(CF__XOPEN_SOURCE_HEAD,CF__XOPEN_SOURCE_BODY,,[
AC_MSG_WARN(_POSIX_C_SOURCE definition is not usable)
CPPFLAGS="$cf_save_xopen_cppflags"])
AC_MSG_CHECKING(if _XOPEN_SOURCE really is set)
AC_TRY_COMPILE([#include <stdlib.h>],[
#ifndef _XOPEN_SOURCE
-make an error
+#error _XOPEN_SOURCE is not defined
#endif],
[cf_XOPEN_SOURCE_set=yes],
[cf_XOPEN_SOURCE_set=no])
then
AC_TRY_COMPILE([#include <stdlib.h>],[
#if (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
-make an error
+#error (_XOPEN_SOURCE - 0) < $cf_XOPEN_SOURCE
#endif],
[cf_XOPEN_SOURCE_set_ok=yes],
[cf_XOPEN_SOURCE_set_ok=no])
dnl $1 = extra parameters, e.g., in CF_STRIP_G_OPT
define([CF__SED_TRIMBLANKS],[sed ifelse($1,,,[$1] )-e 's%[[ ]]% %g' -e 's% [[ ]]*% %g' -e 's%^ %%' -e 's% [$]%%'])dnl
dnl ---------------------------------------------------------------------------
-dnl CF__XOPEN_SOURCE_BODY version: 1 updated: 2022/09/10 15:17:35
+dnl CF__XOPEN_SOURCE_BODY version: 2 updated: 2023/02/18 17:41:25
dnl ---------------------
dnl body of test when test-compiling for _XOPEN_SOURCE check
define([CF__XOPEN_SOURCE_BODY],
[
#ifndef _XOPEN_SOURCE
-make an error
+#error _XOPEN_SOURCE is not defined
#endif
])
dnl ---------------------------------------------------------------------------
-dnl CF__XOPEN_SOURCE_HEAD version: 1 updated: 2022/09/10 15:17:03
+dnl CF__XOPEN_SOURCE_HEAD version: 2 updated: 2023/02/18 17:41:25
dnl ---------------------
dnl headers to include when test-compiling for _XOPEN_SOURCE check
define([CF__XOPEN_SOURCE_HEAD],
[
-#include <stdlib.h>
-#include <string.h>
-#include <sys/types.h>
+$ac_includes_default
])