]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/configure.in
ncurses 5.3
[ncurses.git] / test / configure.in
index d61d477d691c71934f84b68e480dbd06fe074a69..87b409a02b5816cf78f21262622a859062ee4bdd 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
 dnl***************************************************************************
-dnl Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2000,2002 Free Software Foundation, Inc.              *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
 dnl copy of this software and associated documentation files (the            *
 dnl                                                                          *
 dnl Permission is hereby granted, free of charge, to any person obtaining a  *
 dnl copy of this software and associated documentation files (the            *
@@ -26,9 +26,9 @@ dnl sale, use or other dealings in this Software without prior written       *
 dnl authorization.                                                           *
 dnl***************************************************************************
 dnl
 dnl authorization.                                                           *
 dnl***************************************************************************
 dnl
-dnl Author: Thomas E. Dickey 1996,1997,1998,2000
+dnl Author: Thomas E. Dickey 1996, etc.
 dnl
 dnl
-dnl $Id: configure.in,v 1.31 2000/10/15 18:46:17 tom Exp $
+dnl $Id: configure.in,v 1.36 2002/09/07 16:55:23 tom Exp $
 dnl This is a simple configuration-script for the ncurses test programs that
 dnl allows the test-directory to be separately configured against a reference
 dnl system (i.e., sysvr4 curses)
 dnl This is a simple configuration-script for the ncurses test programs that
 dnl allows the test-directory to be separately configured against a reference
 dnl system (i.e., sysvr4 curses)
@@ -36,7 +36,7 @@ dnl
 dnl If you're configuring ncurses, you shouldn't need to use this script.
 dnl It's only for testing purposes.
 dnl
 dnl If you're configuring ncurses, you shouldn't need to use this script.
 dnl It's only for testing purposes.
 dnl
-dnl See http://dickey.his.com/autoconf/ for additional information.
+dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.13.20000819)
 AC_INIT(ncurses.c)
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.13.20000819)
 AC_INIT(ncurses.c)
@@ -77,6 +77,57 @@ AC_ARG_WITH(5lib,
        [LIBS="-L/usr/5lib $LIBS"
         CPPFLAGS="$CPPFLAGS -I/usr/5include"])
 
        [LIBS="-L/usr/5lib $LIBS"
         CPPFLAGS="$CPPFLAGS -I/usr/5include"])
 
+dnl ---------------------------------------------------------------------------
+dnl Check for libutf8
+AC_DEFUN([CF_LIBUTF8],
+[
+AC_CACHE_CHECK(for putwc in libutf8,cf_cv_libutf8,[
+       cf_save_LIBS="$LIBS"
+       LIBS="-lutf8 $LIBS"
+AC_TRY_LINK([
+#include <libutf8.h>],[putwc(0,0);],
+       [cf_cv_libutf8=yes],
+       [cf_cv_libutf8=no])
+       LIBS="$cf_save_LIBS"
+])
+
+if test "$cf_cv_libutf8" = yes ; then
+       AC_DEFINE(HAVE_LIBUTF8_H)
+       LIBS="-lutf8 $LIBS"
+fi
+])dnl
+
+dnl ---------------------------------------------------------------------------
+dnl NcursesW, installed in conventional location
+AC_ARG_WITH(ncursesw,
+       [  --with-ncursesw         use wide ncurses-libraries (installed)],
+       [
+        AC_DEFINE(_GNU_SOURCE)
+        AC_DEFINE(_XOPEN_SOURCE_EXTENDED)
+        AC_CHECK_FUNC(initscr,,[
+        AC_CHECK_LIB(gpm,Gpm_Open)
+        LIB_NAME=ncursesw
+        AC_CHECK_FUNC(putwc,,[CF_LIBUTF8])
+        for p in $HOME /usr/local /usr
+        do
+               if test -f $p/include/ncursesw/curses.h
+               then
+                       CPPFLAGS="$CPPFLAGS -I$p/include/ncursesw"
+                       test $p != /usr && CPPFLAGS="$CPPFLAGS -I$p/include"
+                       test $p != /usr && LIBS="-L$p/lib $LIBS"
+                       break
+               elif test $p != /usr
+               then
+                       if test -f $p/include/curses.h
+                       then
+                               CPPFLAGS="$CPPFLAGS -I$p/include"
+                               LIBS="-L$p/lib $LIBS"
+                               break
+                       fi
+               fi
+        done
+       ],[test -d /usr/ccs/lib && LIBS="-L/usr/ccs/lib $LIBS"])])
+
 dnl Ncurses, installed in conventional location
 AC_ARG_WITH(ncurses,
        [  --with-ncurses          use ncurses-libraries (installed)],
 dnl Ncurses, installed in conventional location
 AC_ARG_WITH(ncurses,
        [  --with-ncurses          use ncurses-libraries (installed)],
@@ -121,8 +172,10 @@ AC_HEADER_TIME
 AC_CHECK_HEADERS( \
 form.h \
 getopt.h \
 AC_CHECK_HEADERS( \
 form.h \
 getopt.h \
+locale.h \
 menu.h \
 nc_alloc.h \
 menu.h \
 nc_alloc.h \
+nomacros.h \
 panel.h \
 sys/ioctl.h \
 sys/select.h \
 panel.h \
 sys/ioctl.h \
 sys/select.h \
@@ -132,8 +185,10 @@ unistd.h \
 )
 
 AC_CHECK_FUNCS( \
 )
 
 AC_CHECK_FUNCS( \
+getnstr \
 gettimeofday \
 napms \
 gettimeofday \
 napms \
+resize_term \
 resizeterm \
 strdup \
 use_default_colors \
 resizeterm \
 strdup \
 use_default_colors \
@@ -141,6 +196,7 @@ vsscanf \
 wresize \
 )
 
 wresize \
 )
 
+dnl ---------------------------------------------------------------------------
 dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
 dnl It's a character string "SVR4", not documented.
 AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
 dnl Solaris has a data item 'curses_version', which confuses AC_CHECK_FUNCS.
 dnl It's a character string "SVR4", not documented.
 AC_CACHE_CHECK(for function curses_version, cf_cv_func_curses_version,[
@@ -159,21 +215,93 @@ rm -f core])
 test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
 
 dnl ---------------------------------------------------------------------------
 test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
 
 dnl ---------------------------------------------------------------------------
+dnl Check for likely values of acs_map[]:
+AC_CACHE_CHECK(for alternate character set array, cf_cv_curses_acs_map,[
+cf_cv_curses_acs_map=unknown
+for name in acs_map _acs_map __acs_map _nc_acs_map
+do
+AC_TRY_LINK([
+#include <curses.h>
+],[
+$name['k'] = ACS_PLUS
+],[cf_cv_curses_acs_map=$name; break])
+done
+])
+
+test "$cf_cv_curses_acs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_ACS_ARRAY,$cf_cv_curses_acs_map)
+
+dnl ---------------------------------------------------------------------------
+dnl Check for likely values of wacs_map[]:
+AC_CACHE_CHECK(for wide alternate character set array, cf_cv_curses_wacs_map,[
+cf_cv_curses_wacs_map=unknown
+for name in wacs_map _wacs_map __wacs_map _nc_wacs
+do
+AC_TRY_LINK([
+#ifndef _XOPEN_SOURCE_EXTENDED
+#define _XOPEN_SOURCE_EXTENDED
+#endif
+#include <curses.h>
+],[
+$name['k'] = *WACS_PLUS        
+],[cf_cv_curses_wacs_map=$name; break])
+done
+])
+
+test "$cf_cv_curses_wacs_map" != unknown && AC_DEFINE_UNQUOTED(CURSES_WACS_ARRAY,$cf_cv_curses_wacs_map)
+
+dnl --------------------------------------------------------------------------- 
+dnl Make an uppercase version of a variable 
+dnl $1=uppercase($2) 
+AC_DEFUN([CF_UPPER], 
+[ 
+$1=`echo "$2" | sed y%abcdefghijklmnopqrstuvwxyz./-%ABCDEFGHIJKLMNOPQRSTUVWXYZ___%`
+])dnl 
+
+dnl ---------------------------------------------------------------------------
+dnl Check if curses.h defines the given type
+AC_DEFUN([CF_CURSES_TYPE],
+[
+AC_MSG_CHECKING(for type $1 in curses.h)
+AC_TRY_COMPILE([
+#ifndef _XOPEN_SOURCE_EXTENDED
+#define _XOPEN_SOURCE_EXTENDED
+#endif
+#include <curses.h>],[
+$1 foo
+],cf_result=yes,cf_result=no)
+AC_MSG_RESULT($cf_result)
+if test $cf_result = yes ; then
+       CF_UPPER(cf_result,have_type_$1)
+       AC_DEFINE_UNQUOTED($cf_result)
+else
+       AC_DEFINE_UNQUOTED($1,$2)
+fi
+])dnl
+
+CF_CURSES_TYPE(attr_t,long)
+CF_CURSES_TYPE(mbstate_t,long)
+
+dnl ---------------------------------------------------------------------------
+dnl Check if we can include <sys/time.h> with <sys/select.h>; this breaks on
+dnl older SCO configurations.
 dnl [CF_SYS_TIME_SELECT]
 dnl [CF_SYS_TIME_SELECT]
-AC_MSG_CHECKING(if sys/time.h conflicts with sys/select.h)
+
+AC_MSG_CHECKING(if sys/time.h works with sys/select.h)
 AC_CACHE_VAL(cf_cv_sys_time_select,[
 AC_TRY_COMPILE([
 AC_CACHE_VAL(cf_cv_sys_time_select,[
 AC_TRY_COMPILE([
-#if HAVE_SYS_TIME_H
+#include <sys/types.h>
+#ifdef HAVE_SYS_TIME_H
 #include <sys/time.h>
 #endif
 #include <sys/time.h>
 #endif
-#if HAVE_SYS_SELECT_H
+#ifdef HAVE_SYS_SELECT_H
 #include <sys/select.h>
 #endif
 ],[],[cf_cv_sys_time_select=yes],
      [cf_cv_sys_time_select=no])
      ])
 AC_MSG_RESULT($cf_cv_sys_time_select)
 #include <sys/select.h>
 #endif
 ],[],[cf_cv_sys_time_select=yes],
      [cf_cv_sys_time_select=no])
      ])
 AC_MSG_RESULT($cf_cv_sys_time_select)
-test $cf_cv_sys_time_select = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
+test "$cf_cv_sys_time_select" = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
+
 dnl ---------------------------------------------------------------------------
 
 AC_OUTPUT(Makefile,[
 dnl ---------------------------------------------------------------------------
 
 AC_OUTPUT(Makefile,[