]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/aclocal.m4
ncurses 6.0 - patch 20171125
[ncurses.git] / test / aclocal.m4
index 364ff0917d715c14b52ccb330f4b10553baa078a..4253d6b4619f8e9613cff06bbaa0ed0888909e67 100644 (file)
@@ -26,7 +26,7 @@ dnl sale, use or other dealings in this Software without prior written       *
 dnl authorization.                                                           *
 dnl***************************************************************************
 dnl
-dnl $Id: aclocal.m4,v 1.138 2017/02/26 00:37:04 tom Exp $
+dnl $Id: aclocal.m4,v 1.148 2017/11/25 22:34:41 tom Exp $
 dnl
 dnl Author: Thomas E. Dickey
 dnl
@@ -386,7 +386,7 @@ ifelse([$3],,[    :]dnl
 ])dnl
 ])])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CC_ENV_FLAGS version: 7 updated: 2017/02/25 18:57:40
+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
@@ -410,7 +410,7 @@ case "$CC" in
        AC_MSG_WARN(your environment misuses 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" | ${AWK:-awk} -v prog="$cf_prog" '{ printf("%s", [substr]([$]0,1+length(prog))); }'`
        CC="$cf_prog"
        for cf_arg in $cf_flags
        do
@@ -557,50 +557,60 @@ done
 test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map,[Define as needed to override ncurses prefix _nc_])
 ])
 dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_CHECK_DATA version: 5 updated: 2014/07/19 18:41:17
+dnl CF_CURSES_CHECK_DATA version: 6 updated: 2017/07/28 19:05:31
 dnl --------------------
 dnl Check if curses.h defines the given data/variable.
 dnl Use this after CF_NCURSES_CONFIG or CF_CURSES_CONFIG.
+dnl
+dnl $1 = data item(s) to check for
+dnl $2 = action on success, e.g., "break" to quit checking a series of choices
 AC_DEFUN([CF_CURSES_CHECK_DATA],
 [
-AC_MSG_CHECKING(for data $1 declaration in ${cf_cv_ncurses_header:-curses.h})
+for cf_data in $1
+do
+AC_MSG_CHECKING(for data $cf_data declaration in ${cf_cv_ncurses_header:-curses.h})
 
 AC_TRY_COMPILE(CF__CURSES_HEAD,[
-void *foo = &($1)
-],cf_result=yes,cf_result=no)
+void *foo = &($cf_data)
+],[cf_result=yes
+],[cf_result=no])
 AC_MSG_RESULT($cf_result)
 
 if test $cf_result = yes ; then
-       CF_UPPER(cf_result,have_curses_data_$1)
+       CF_UPPER(cf_result,have_curses_data_$cf_data)
        AC_DEFINE_UNQUOTED($cf_result)
+       ifelse($2,,,[$2])
 else
-       AC_MSG_CHECKING(for data $1 in library)
+       AC_MSG_CHECKING(for data $cf_data in library)
        # BSD linkers insist on making weak linkage, but resolve at runtime.
        AC_TRY_RUN(CF__CURSES_HEAD
 [
-extern char $1;
+extern char $cf_data;
 int main(void)
 {
-       void *foo = &($1);
-       fprintf(stderr, "testing linkage of $1:%p\n", foo);
+       void *foo = &($cf_data);
+       fprintf(stderr, "testing linkage of $cf_data:%p\n", foo);
        ${cf_cv_main_return:-return}(foo == 0);
-}],[cf_result=yes],[cf_result=no],[
+}],[cf_result=yes
+],[cf_result=no],[
        # cross-compiling
        AC_TRY_LINK(CF__CURSES_HEAD
-[extern char $1;],[
+[extern char $cf_data;],[
        do {
-               void *foo = &($1);
-               fprintf(stderr, "testing linkage of $1:%p\n", foo);
+               void *foo = &($cf_data);
+               fprintf(stderr, "testing linkage of $cf_data:%p\n", foo);
                ${cf_cv_main_return:-return}(foo == 0);
        } while (0)
 ],[cf_result=yes],[cf_result=no])
 ])
        AC_MSG_RESULT($cf_result)
        if test $cf_result = yes ; then
-               CF_UPPER(cf_result,decl_curses_data_$1)
+               CF_UPPER(cf_result,decl_curses_data_$cf_data)
                AC_DEFINE_UNQUOTED($cf_result)
+               # do not exit loop here, since we prefer system's declarations
        fi
 fi
+done
 ])dnl
 dnl ---------------------------------------------------------------------------
 dnl CF_CURSES_CHECK_TYPE version: 4 updated: 2012/10/06 16:39:58
@@ -735,7 +745,7 @@ fi
 AC_CHECK_HEADERS($cf_cv_ncurses_header)
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_CURSES_LIBS version: 39 updated: 2015/05/10 19:52:14
+dnl CF_CURSES_LIBS version: 40 updated: 2017/09/07 17:06:24
 dnl --------------
 dnl Look for the curses libraries.  Older curses implementations may require
 dnl termcap/termlib to be linked as well.  Call CF_CURSES_CPPFLAGS first.
@@ -828,36 +838,35 @@ if test ".$ac_cv_func_initscr" != .yes ; then
        then
                for cf_curs_lib in $cf_check_list xcurses jcurses pdcurses unknown
                do
-                       AC_CHECK_LIB($cf_curs_lib,initscr,[break])
+                       LIBS="-l$cf_curs_lib $cf_save_LIBS"
+                       if test "$cf_term_lib" = unknown || test "$cf_term_lib" = "$cf_curs_lib" ; then
+                               AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
+                               AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+                                       [initscr()],
+                                       [cf_result=yes],
+                                       [cf_result=no])
+                               AC_MSG_RESULT($cf_result)
+                               test $cf_result = yes && break
+                       elif test "$cf_curs_lib" = "$cf_term_lib" ; then
+                               cf_result=no
+                       elif test "$cf_term_lib" != predefined ; then
+                               AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
+                               AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+                                       [initscr(); tgoto((char *)0, 0, 0);],
+                                       [cf_result=no],
+                                       [
+                                       LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
+                                       AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
+                                               [initscr()],
+                                               [cf_result=yes],
+                                               [cf_result=error])
+                                       ])
+                               AC_MSG_RESULT($cf_result)
+                               test $cf_result != error && break
+                       fi
                done
        fi
        test $cf_curs_lib = unknown && AC_MSG_ERROR(no curses library found)
-
-       LIBS="-l$cf_curs_lib $cf_save_LIBS"
-       if test "$cf_term_lib" = unknown ; then
-               AC_MSG_CHECKING(if we can link with $cf_curs_lib library)
-               AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-                       [initscr()],
-                       [cf_result=yes],
-                       [cf_result=no])
-               AC_MSG_RESULT($cf_result)
-               test $cf_result = no && AC_MSG_ERROR(Cannot link curses library)
-       elif test "$cf_curs_lib" = "$cf_term_lib" ; then
-               :
-       elif test "$cf_term_lib" != predefined ; then
-               AC_MSG_CHECKING(if we need both $cf_curs_lib and $cf_term_lib libraries)
-               AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-                       [initscr(); tgoto((char *)0, 0, 0);],
-                       [cf_result=no],
-                       [
-                       LIBS="-l$cf_curs_lib -l$cf_term_lib $cf_save_LIBS"
-                       AC_TRY_LINK([#include <${cf_cv_ncurses_header:-curses.h}>],
-                               [initscr()],
-                               [cf_result=yes],
-                               [cf_result=error])
-                       ])
-               AC_MSG_RESULT($cf_result)
-       fi
 fi
 fi
 
@@ -1169,7 +1178,7 @@ if test "x$with_string_hacks" = "xyes"; then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_ENABLE_WARNINGS version: 4 updated: 2009/07/26 17:53:03
+dnl CF_ENABLE_WARNINGS version: 5 updated: 2017/09/29 20:01:16
 dnl ------------------
 dnl Configure-option to enable gcc warnings
 AC_DEFUN([CF_ENABLE_WARNINGS],[
@@ -1184,7 +1193,7 @@ AC_MSG_RESULT($with_warnings)
 if test "$with_warnings" = "yes"
 then
        CF_GCC_ATTRIBUTES
-       CF_GCC_WARNINGS
+       CF_GCC_WARNINGS($1)
 fi
 fi
 ])dnl
@@ -1369,7 +1378,7 @@ ifelse([$5],,AC_MSG_WARN(Cannot find $3 library),[$5])
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_FUNC_CURSES_VERSION version: 6 updated: 2012/10/06 16:39:58
+dnl CF_FUNC_CURSES_VERSION version: 7 updated: 2017/05/10 18:31:29
 dnl ----------------------
 dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
 dnl It's a character string "SVR4", not documented.
@@ -1378,7 +1387,7 @@ AC_DEFUN([CF_FUNC_CURSES_VERSION],
 AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
 AC_TRY_RUN([
 #include <${cf_cv_ncurses_header:-curses.h}>
-int main()
+int main(void)
 {
        char temp[1024];
        sprintf(temp, "%s\n", curses_version());
@@ -2048,7 +2057,7 @@ printf("old\n");
        ,[$1=no])
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_CONFIG version: 17 updated: 2015/07/07 04:22:07
+dnl CF_NCURSES_CONFIG version: 18 updated: 2017/07/23 18:30:00
 dnl -----------------
 dnl Tie together the configure-script macros for ncurses, preferring these in
 dnl order:
@@ -2096,6 +2105,7 @@ if test "x${PKG_CONFIG:=none}" != xnone; then
                        AC_DEFINE(NCURSES,1,[Define to 1 if we are using ncurses headers/libraries])
                        NCURSES_CONFIG_PKG=$cf_ncuconfig_root
                fi
+               CF_TERM_HEADER
 
        else
                AC_MSG_RESULT(no)
@@ -2376,7 +2386,7 @@ then
 fi
 ])dnl
 dnl ---------------------------------------------------------------------------
-dnl CF_NCURSES_VERSION version: 14 updated: 2012/10/06 08:57:51
+dnl CF_NCURSES_VERSION version: 15 updated: 2017/05/09 19:26:10
 dnl ------------------
 dnl Check for the version of ncurses, to aid in reporting bugs, etc.
 dnl Call CF_CURSES_CPPFLAGS first, or CF_NCURSES_CPPFLAGS.  We don't use
@@ -2391,7 +2401,7 @@ AC_CACHE_CHECK(for ncurses version, cf_cv_ncurses_version,[
        AC_TRY_RUN([
 #include <${cf_cv_ncurses_header:-curses.h}>
 #include <stdio.h>
-int main()
+int main(void)
 {
        FILE *fp = fopen("$cf_tempfile", "w");
 #ifdef NCURSES_VERSION
@@ -3451,6 +3461,92 @@ CF_NO_LEAKS_OPTION(valgrind,
        [USE_VALGRIND])
 ])dnl
 dnl ---------------------------------------------------------------------------
+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_CURSES version: 13 updated: 2015/12/12 20:59:52
 dnl ---------------
 dnl Test if we should define X/Open source for curses, needed on Digital Unix