dnl
dnl Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: aclocal.m4,v 1.611 2012/04/01 00:13:31 tom Exp $
+dnl $Id: aclocal.m4,v 1.622 2012/08/26 14:01:23 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_CLANG_COMPILER version: 1 updated: 2012/06/16 14:55:39
+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
+dnl not ignore some gcc options.
+dnl
+dnl This macro should be run "soon" after AC_PROG_CC or AC_PROG_CPLUSPLUS, to
+dnl ensure that it is not mistaken for gcc/g++. It is normally invoked from
+dnl the wrappers for gcc and g++ warnings.
+dnl
+dnl $1 = GCC (default) or GXX
+dnl $2 = INTEL_COMPILER (default) or INTEL_CPLUSPLUS
+dnl $3 = CFLAGS (default) or CXXFLAGS
+AC_DEFUN([CF_CLANG_COMPILER],[
+ifelse([$2],,CLANG_COMPILER,[$2])=no
+
+if test "$ifelse([$1],,[$1],GCC)" = yes ; then
+ AC_MSG_CHECKING(if this is really Clang ifelse([$1],GXX,C++,C) compiler)
+ cf_save_CFLAGS="$ifelse([$3],,CFLAGS,[$3])"
+ ifelse([$3],,CFLAGS,[$3])="$ifelse([$3],,CFLAGS,[$3]) -Qunused-arguments"
+ AC_TRY_COMPILE([],[
+#ifdef __clang__
+#else
+make an error
+#endif
+],[ifelse([$2],,CLANG_COMPILER,[$2])=yes
+cf_save_CFLAGS="$cf_save_CFLAGS -Qunused-arguments"
+],[])
+ ifelse([$3],,CFLAGS,[$3])="$cf_save_CFLAGS"
+ AC_MSG_RESULT($ifelse([$2],,CLANG_COMPILER,[$2]))
+fi
+])
+dnl ---------------------------------------------------------------------------
dnl CF_CPP_PARAM_INIT version: 5 updated: 2011/12/03 16:54:03
dnl -----------------
dnl Check if the C++ compiler accepts duplicate parameter initialization. This
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_C_INLINE version: 3 updated: 2010/05/01 15:14:41
+dnl CF_C_INLINE version: 4 updated: 2012/06/16 14:55:39
dnl -----------
dnl Check if the C compiler supports "inline".
dnl $1 is the name of a shell variable to set if inline is supported
if test "$ac_cv_c_inline" != no ; then
$1=inline
if test "$INTEL_COMPILER" = yes
+ then
+ :
+ elif test "$CLANG_COMPILER" = yes
then
:
elif test "$GCC" = yes
fi
])
dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_PC_FILES version: 7 updated: 2011/12/10 18:58:47
+dnl CF_ENABLE_PC_FILES version: 9 updated: 2012/08/04 13:59:54
dnl ------------------
dnl This is the "--enable-pc-files" option, which is available if there is a
dnl pkg-config configuration on the local machine.
AC_REQUIRE([CF_WITH_PKG_CONFIG_LIBDIR])
if test "$PKG_CONFIG" != none ; then
- if test -n "$PKG_CONFIG_LIBDIR" && test -d "$PKG_CONFIG_LIBDIR" ; then
- AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
- AC_ARG_ENABLE(pc-files,
- [ --enable-pc-files generate and install .pc files for pkg-config],
- [enable_pc_files=$enableval],
- [enable_pc_files=no])
- AC_MSG_RESULT($enable_pc_files)
- elif test -z "$PKG_CONFIG_LIBDIR" || test "$PKG_CONFIG_LIBDIR" != no; then
- enable_pc_files=no
- AC_MSG_WARN(did not find $PKG_CONFIG library)
+ AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG)
+ AC_ARG_ENABLE(pc-files,
+ [ --enable-pc-files generate and install .pc files for pkg-config],
+ [enable_pc_files=$enableval],
+ [enable_pc_files=no])
+ AC_MSG_RESULT($enable_pc_files)
+ if test "$enable_pc_files" != no
+ then
+ CF_PATH_SYNTAX(PKG_CONFIG_LIBDIR)
fi
else
enable_pc_files=no
])
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_POLL version: 5 updated: 2012/01/25 17:55:38
+dnl CF_FUNC_POLL version: 7 updated: 2012/06/09 16:22:17
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],[
AC_CACHE_CHECK(if poll really works,cf_cv_working_poll,[
AC_TRY_RUN([
+#include <stdlib.h>
#include <stdio.h>
+#include <unistd.h>
+#include <fcntl.h>
#ifdef HAVE_POLL_H
#include <poll.h>
#else
int ret;
/* check for Darwin bug with respect to "devices" */
- myfds.fd = open("/dev/null", 1);
+ myfds.fd = open("/dev/null", 1); /* O_WRONLY */
if (myfds.fd < 0)
myfds.fd = 0;
myfds.events = POLLIN;
if (ret < 0 || (myfds.revents & POLLNVAL)) {
ret = -1;
} else {
+ int fd = 0;
+ if (!isatty(fd)) {
+ fd = open("/dev/tty", 2); /* O_RDWR */
+ }
- /* also check with standard input */
- myfds.fd = 0;
- myfds.events = POLLIN;
- myfds.revents = 0;
-
- ret = poll(&myfds, 1, 100);
- if (ret < 0) {
- ret = 0;
+ if (fd >= 0) {
+ /* also check with standard input */
+ myfds.fd = fd;
+ myfds.events = POLLIN;
+ myfds.revents = 0;
+ ret = poll(&myfds, 1, 100);
+ } else {
+ ret = -1;
}
}
- ${cf_cv_main_return:-return}(ret != 0);
+ ${cf_cv_main_return:-return}(ret < 0);
}],
[cf_cv_working_poll=yes],
[cf_cv_working_poll=no],
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GCC_WARNINGS version: 28 updated: 2012/03/31 20:10:46
+dnl CF_GCC_WARNINGS version: 29 updated: 2012/06/16 14:55:39
dnl ---------------
dnl Check if the compiler supports useful warning options. There's a few that
dnl we don't use, simply because they're too noisy:
[
AC_REQUIRE([CF_GCC_VERSION])
CF_INTEL_COMPILER(GCC,INTEL_COMPILER,CFLAGS)
+CF_CLANG_COMPILER(GCC,CLANG_COMPILER,CFLAGS)
cat > conftest.$ac_ext <<EOF
#line __oline__ "${as_me:-configure}"
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GXX_VERSION version: 6 updated: 2010/10/23 15:44:18
+dnl CF_GXX_VERSION version: 7 updated: 2012/06/16 14:55:39
dnl --------------
dnl Check for version of g++
AC_DEFUN([CF_GXX_VERSION],[
AC_REQUIRE([AC_PROG_CPP])
GXX_VERSION=none
if test "$GXX" = yes; then
- AC_MSG_CHECKING(version of g++)
+ 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
AC_MSG_RESULT($GXX_VERSION)
fi
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_GXX_WARNINGS version: 6 updated: 2010/08/14 18:25:37
+dnl CF_GXX_WARNINGS version: 7 updated: 2012/06/16 14:55:39
dnl ---------------
dnl Check if the compiler supports useful warning options.
dnl
[
CF_INTEL_COMPILER(GXX,INTEL_CPLUSPLUS,CXXFLAGS)
+CF_CLANG_COMPILER(GXX,CLANG_CPLUSPLUS,CXXFLAGS)
AC_REQUIRE([CF_GXX_VERSION])
AC_SUBST(LIB_PREFIX)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_LIB_RULES version: 64 updated: 2012/02/25 15:20:07
+dnl CF_LIB_RULES version: 65 updated: 2012/06/30 17:25:25
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
mv $cf_dir/Makefile.out $cf_dir/Makefile
$AWK -f $srcdir/mk-0th.awk \
- libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" \
+ libname="${cf_dir}${LIB_SUFFIX}" subsets="$LIB_SUBSETS" ticlib="$TICS_LIB_SUFFIX" termlib="$TINFO_LIB_SUFFIX" \
$srcdir/$cf_dir/modules >>$cf_dir/Makefile
for cf_subset in $cf_subsets
AC_MSG_RESULT($MANPAGE_TBL)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_MAN_PAGES version: 40 updated: 2011/09/10 16:20:21
+dnl CF_MAN_PAGES version: 41 updated: 2012/08/11 19:35:44
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
# this script is generated by the configure-script CF_MAN_PAGES macro.
prefix="$cf_prefix"
+datarootdir="$datarootdir"
datadir="$datadir"
NCURSES_MAJOR="$NCURSES_MAJOR"
AC_SUBST(PATH_SEPARATOR)
])dnl
dnl ---------------------------------------------------------------------------
-dnl CF_PATH_SYNTAX version: 13 updated: 2010/05/26 05:38:42
+dnl CF_PATH_SYNTAX version: 14 updated: 2012/06/19 20:58:54
dnl --------------
dnl Check the argument to see that it looks like a pathname. Rewrite it if it
dnl begins with one of the prefix/exec_prefix variables, and then again if the
;;
.[[a-zA-Z]]:[[\\/]]*) #(vi OS/2 EMX
;;
-.\[$]{*prefix}*) #(vi
+.\[$]{*prefix}*|.\[$]{*dir}*) #(vi
eval $1="[$]$1"
case ".[$]$1" in #(vi
.NONE/*)
if ifelse([$5],,true,[test -n "$5"]) ; then
CF_PATH_SYNTAX(withval)
fi
-$3="$withval"
+eval $3="$withval"
AC_SUBST($3)dnl
])dnl
dnl ---------------------------------------------------------------------------
cf_dst_path=`echo "$cf_dst_path" | sed -e 's/\\\\/\\\\\\\\/g'`
])
-eval '$3="$cf_dst_path"'
+eval $3="$cf_dst_path"
AC_SUBST($3)dnl
])dnl