dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.758 2015/06/06 23:27:44 tom Exp $
+dnl $Id: aclocal.m4,v 1.785 2015/11/08 01:03:06 tom Exp $
dnl Macros used in NCURSES auto-configuration script.
dnl
dnl These macros are maintained separately from NCURSES. The copyright on
])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
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.
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
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
cf_have_libdl=yes])])
if test "$cf_have_dlsym" = yes ; then
- test "$cf_have_libdl" = yes && CF_ADD_LIB(dl)
+ test "$cf_have_libdl" = yes && { CF_ADD_LIB(dl) }
AC_MSG_CHECKING(whether able to link to dl*() functions)
AC_TRY_LINK([#include <dlfcn.h>],[
test "$cf_cv_func_nanosleep" = "yes" && AC_DEFINE(HAVE_NANOSLEEP,1,[Define to 1 if we have nanosleep()])
])
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_OPENPTY version: 4 updated: 2015/04/18 08:56:57
+dnl CF_FUNC_OPENPTY version: 5 updated: 2015/09/12 14:46:50
dnl ---------------
dnl Check for openpty() function, along with <pty.h> header. It may need the
dnl "util" library as well.
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([
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_POLL version: 8 updated: 2012/10/04 05:24:07
+dnl CF_FUNC_POLL version: 9 updated: 2015/10/10 13:27:32
dnl ------------
dnl See if the poll function really works. Some platforms have poll(), but
dnl it does not work for terminals or files.
AC_DEFUN([CF_FUNC_POLL],[
+tty 2>&1 >/dev/null || { AC_CHECK_FUNCS(posix_openpt) }
AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
AC_TRY_RUN([
#include <stdlib.h>
#else
#include <sys/poll.h>
#endif
-int main() {
+int main(void) {
struct pollfd myfds;
int ret;
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 */
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
[
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'
;;
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 81 updated: 2015/04/30 20:30:18
+dnl CF_LIB_RULES version: 86 updated: 2015/11/07 20:01:34
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
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 <<CF_EOF
# Generated by CF_LIB_RULES
resulting.map: $UNALTERED_SYMS
- sed $cf_sed_options < $UNALTERED_SYMS >\[$]@
+ $AWK 'BEGIN { skip = 1; last=""; } \
+$cf_awk_program \
+{ if ( last != "" && ( skip == 0 || \[$]\[$]0 !~ /}/ ) ) { print last; }\
+ skip = 0; last = \[$]\[$]0; } \
+END { print last; }' < $UNALTERED_SYMS >\[$]@
-clean::
+distclean::
rm -f resulting.map
CF_EOF
fi
dnl ( generating this script makes the makefiles a little tidier :-)
echo creating headers.sh
cat >headers.sh <<CF_EOF
-#! /bin/sh
+#! $SHELL
# This shell script is generated by the 'configure' script. It is invoked in a
# subdirectory of the build tree. It generates a sed-script in the parent
# directory that is used to adjust includes for header files that reside in a
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.
for cf_option in '-${MAKEFLAGS}' '${MFLAGS}'
do
cat >cf_makeflags.tmp <<CF_EOF
-SHELL = /bin/sh
+SHELL = $SHELL
all :
@ echo '.$cf_option'
CF_EOF
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MANPAGE_RENAMES version: 9 updated: 2015/04/18 08:56:57
+dnl CF_MANPAGE_RENAMES version: 10 updated: 2015/08/05 20:44:28
dnl ------------------
dnl The Debian people have their own naming convention for manpages. This
dnl option lets us override the name of the file containing renaming, or
# Construct a sed-script to perform renaming within man-pages
if test -n "$MANPAGE_RENAMES" ; then
test ! -d man && mkdir man
- sh $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed
+ $SHELL $srcdir/man/make_sed.sh $MANPAGE_RENAMES >./edit_man.sed
fi
fi
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: 46 updated: 2015/08/05 20:44:28
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_man_alias=`pwd`/man_alias.sed
cat >$cf_edit_man <<CF_EOF
-#! /bin/sh
+#! $SHELL
# this script is generated by the configure-script CF_MAN_PAGES macro.
prefix="$cf_prefix"
if test "\$form" = normal ; then
if test "$cf_format" = yes ; then
if test "$cf_inboth" = no ; then
- sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
+ $SHELL \[$]0 format \$verb \$mandir \$srcdir \[$]*
exit $?
fi
fi
if test $cf_inboth = yes ; then
if test \$form != format ; then
- sh \[$]0 format \$verb \$mandir \$srcdir \[$]*
+ $SHELL \[$]0 format \$verb \$mandir \$srcdir \[$]*
fi
fi
AC_SUBST(EXTRA_LDFLAGS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_SHARED_OPTS version: 87 updated: 2015/04/17 21:13:04
+dnl CF_SHARED_OPTS version: 89 updated: 2015/08/15 18:38:59
dnl --------------
dnl --------------
dnl Attempt to determine the appropriate CC/LD options for creating a shared
(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])
;;
(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
;;
(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
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
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_STDCPP_LIBRARY version: 8 updated: 2015/04/17 21:13:04
+dnl CF_STDCPP_LIBRARY version: 11 updated: 2015/10/17 19:03:33
dnl -----------------
dnl Check for -lstdc++, which is GNU's standard C++ library.
+dnl If $CXXLIBS is set, add that to the libraries used for test-linking.
+dnl If -lstdc++ was not already added to $LIBS or $CXXLIBS, and is needed,
+dnl add it to $CXXLIBS.
AC_DEFUN([CF_STDCPP_LIBRARY],
[
if test -n "$GXX" ; then
-case $cf_cv_system_name in
-(os2*)
- cf_stdcpp_libname=stdcpp
- ;;
-(*)
- cf_stdcpp_libname=stdc++
- ;;
-esac
-AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[
+
cf_save="$LIBS"
- CF_ADD_LIB($cf_stdcpp_libname)
-AC_TRY_LINK([
-#include <strstream.h>],[
-char buf[80];
-strstreambuf foo(buf, sizeof(buf))
-],
- [cf_cv_libstdcpp=yes],
- [cf_cv_libstdcpp=no])
+ LIBS="$LIBS $CXXLIBS"
+ AC_MSG_CHECKING(if we already have C++ library)
+ AC_TRY_LINK([
+ #include <iostream>],[
+ std::cout << "Hello World!" << std::endl;],
+ [cf_have_libstdcpp=yes],
+ [cf_have_libstdcpp=no])
+ AC_MSG_RESULT($cf_have_libstdcpp)
LIBS="$cf_save"
-])
-test "$cf_cv_libstdcpp" = yes && CF_ADD_LIB($cf_stdcpp_libname,CXXLIBS)
+
+ if test $cf_have_libstdcpp != yes
+ then
+ case $cf_cv_system_name in
+ (os2*)
+ if test -z "`g++ -dM -E - < /dev/null | grep __KLIBC__`"; then
+ cf_stdcpp_libname=stdcpp
+ else
+ cf_stdcpp_libname=stdc++
+ fi
+ ;;
+ (*)
+ cf_stdcpp_libname=stdc++
+ ;;
+ esac
+
+ AC_CACHE_CHECK(for library $cf_stdcpp_libname,cf_cv_libstdcpp,[
+ cf_save="$LIBS"
+ LIBS="$LIBS $CXXLIBS"
+ CF_ADD_LIB($cf_stdcpp_libname)
+ AC_TRY_LINK([
+ #include <iostream>],[
+ std::cout << "Hello World!" << std::endl;],
+ [cf_cv_libstdcpp=yes],
+ [cf_cv_libstdcpp=no])
+ LIBS="$cf_save"
+ ])
+ test "$cf_cv_libstdcpp" = yes && { CF_ADD_LIB($cf_stdcpp_libname,CXXLIBS) }
+ fi
fi
])dnl
dnl ---------------------------------------------------------------------------
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_LIBTOOL version: 32 updated: 2015/04/17 21:13:04
+dnl CF_WITH_LIBTOOL version: 33 updated: 2015/10/17 19:03:33
dnl ---------------
dnl Provide a configure option to incorporate libtool. Define several useful
dnl symbols for the makefile rules.
# 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
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_WITH_PKG_CONFIG_LIBDIR version: 9 updated: 2015/06/06 19:26:44
+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],[
-if test "x$PKG_CONFIG" = xnone ; then
- PKG_CONFIG_LIBDIR=no
-else
+
+case $PKG_CONFIG in
+(no|none|yes)
+ AC_MSG_CHECKING(for pkg-config library directory)
+ ;;
+(*)
AC_MSG_CHECKING(for $PKG_CONFIG library directory)
- 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])
-fi
+ ;;
+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],
+ [test "x$PKG_CONFIG" != xnone && PKG_CONFIG_LIBDIR=yes])
case x$PKG_CONFIG_LIBDIR in
(x/*)
;;
esac
-if test "x$PKG_CONFIG" != xnone ; then
+if test "x$PKG_CONFIG_LIBDIR" != xno ; then
AC_MSG_RESULT($PKG_CONFIG_LIBDIR)
fi
[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
# 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)
AC_SUBST(WILDCARD_SYMS)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_XOPEN_SOURCE version: 49 updated: 2015/04/12 15:39:00
+dnl CF_XOPEN_SOURCE version: 50 updated: 2015/10/17 19:03:33
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,
(openbsd*)
# setting _XOPEN_SOURCE breaks xterm on OpenBSD 2.8, is not needed for ncursesw
;;
+(os2*)
+ cf_XOPEN_SOURCE=
+ ;;
(osf[[45]]*)
cf_xopen_source="-D_OSF_SOURCE"
;;