]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - test/configure.in
ncurses 5.4
[ncurses.git] / test / configure.in
index d61d477d691c71934f84b68e480dbd06fe074a69..3e01589614aa8dff15d0501f4c6101b43f133c4d 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
 dnl***************************************************************************
-dnl Copyright (c) 1998,1999,2000 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2003,2004 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.47 2004/01/31 00:07:01 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,13 +36,19 @@ 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 ---------------------------------------------------------------------------
 dnl ---------------------------------------------------------------------------
-AC_PREREQ(2.13.20000819)
+AC_PREREQ(2.13.20020210)
 AC_INIT(ncurses.c)
 AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin)
 
 AC_INIT(ncurses.c)
 AC_CONFIG_HEADER(ncurses_cfg.h:ncurses_tst.hin)
 
+CF_INHERIT_SCRIPT(config.guess)
+CF_INHERIT_SCRIPT(config.sub)
+CF_CHECK_CACHE
+
+AC_PROG_MAKE_SET
 AC_PROG_CC
 AC_PROG_CC
+AC_PROG_CPP
 
 dnl Things that we don't need (or must override) if we're not building ncurses
 CC_G_OPT="-g"                          AC_SUBST(CC_G_OPT)
 
 dnl Things that we don't need (or must override) if we're not building ncurses
 CC_G_OPT="-g"                          AC_SUBST(CC_G_OPT)
@@ -58,6 +64,9 @@ LDFLAGS_SHARED=""                     AC_SUBST(LDFLAGS_SHARED)
 LD_MODEL=""                            AC_SUBST(LD_MODEL)
 LD_SHARED_OPTS=""                      AC_SUBST(LD_SHARED_OPTS)
 LIBTOOL=""                             AC_SUBST(LIBTOOL)
 LD_MODEL=""                            AC_SUBST(LD_MODEL)
 LD_SHARED_OPTS=""                      AC_SUBST(LD_SHARED_OPTS)
 LIBTOOL=""                             AC_SUBST(LIBTOOL)
+LIB_CLEAN=""                           AC_SUBST(LIB_CLEAN)
+LIB_COMPILE=""                         AC_SUBST(LIB_COMPILE)
+LIB_LINK=""                            AC_SUBST(LIB_LINK)
 LIB_NAME=curses                                AC_SUBST(LIB_NAME)
 LIB_PREFIX="-l"                                AC_SUBST(LIB_PREFIX)
 LINK_TESTS=""                          AC_SUBST(LINK_TESTS)
 LIB_NAME=curses                                AC_SUBST(LIB_NAME)
 LIB_PREFIX="-l"                                AC_SUBST(LIB_PREFIX)
 LINK_TESTS=""                          AC_SUBST(LINK_TESTS)
@@ -65,54 +74,66 @@ LINT=lint                           AC_SUBST(LINT)
 LINT_OPTS=""                           AC_SUBST(LINT_OPTS)
 LOCAL_LDFLAGS=""                       AC_SUBST(LOCAL_LDFLAGS)
 MATH_LIB="-lm"                         AC_SUBST(MATH_LIB)
 LINT_OPTS=""                           AC_SUBST(LINT_OPTS)
 LOCAL_LDFLAGS=""                       AC_SUBST(LOCAL_LDFLAGS)
 MATH_LIB="-lm"                         AC_SUBST(MATH_LIB)
-PROG_EXT=""                            AC_SUBST(PROG_EXT)
 TEST_ARGS=""                           AC_SUBST(TEST_ARGS)
 TEST_DEPS=""                           AC_SUBST(TEST_DEPS)
 cf_cv_abi_version=""                   AC_SUBST(cf_cv_abi_version)
 cf_cv_rel_version=""                   AC_SUBST(cf_cv_rel_version)
 
 TEST_ARGS=""                           AC_SUBST(TEST_ARGS)
 TEST_DEPS=""                           AC_SUBST(TEST_DEPS)
 cf_cv_abi_version=""                   AC_SUBST(cf_cv_abi_version)
 cf_cv_rel_version=""                   AC_SUBST(cf_cv_rel_version)
 
+cf_cv_screen=curses
+cf_cv_libtype=
+
+AC_EXEEXT
+AC_OBJEXT
+CF_GNU_SOURCE
+CF_WITH_CURSES_DIR
+
 dnl SunOS 4.x
 AC_ARG_WITH(5lib,
        [  --with-5lib             use SunOS sysv-libraries],
        [LIBS="-L/usr/5lib $LIBS"
         CPPFLAGS="$CPPFLAGS -I/usr/5include"])
 
 dnl SunOS 4.x
 AC_ARG_WITH(5lib,
        [  --with-5lib             use SunOS sysv-libraries],
        [LIBS="-L/usr/5lib $LIBS"
         CPPFLAGS="$CPPFLAGS -I/usr/5include"])
 
+dnl ---------------------------------------------------------------------------
+dnl NcursesW, installed in conventional location
+AC_ARG_WITH(ncursesw,
+       [  --with-ncursesw         use wide ncurses-libraries (installed)],
+       [cf_cv_screen=ncursesw])
+
 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)],
-       [AC_CHECK_FUNC(initscr,,[
-        AC_CHECK_LIB(gpm,Gpm_Open)
-        LIB_NAME=ncurses
-        for p in $HOME /usr/local /usr
-        do
-               if test -f $p/include/ncurses/curses.h
-               then
-                       CPPFLAGS="$CPPFLAGS -I$p/include/ncurses"
-                       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"])])
+       [cf_cv_screen=ncurses])
+
+case $cf_cv_screen in
+curses)
+       CF_CURSES_CPPFLAGS
+       CF_NCURSES_VERSION
+       CF_CURSES_LIBS
+       ;;
+ncurses)
+       CF_NCURSES_CPPFLAGS
+       CF_NCURSES_LIBS
+       LIB_NAME=ncurses
+       ;;
+ncursesw)
+       cf_cv_libtype=w
+       CF_UTF8_LIB
+       CF_PREDEFINE(_XOPEN_SOURCE,500)
+       CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
+       CF_NCURSES_CPPFLAGS(ncursesw)
+       CF_NCURSES_LIBS(ncursesw)
+       LIB_NAME=ncursesw
+       ;;
+esac
 
 dnl If we've not specified a library, assume we're using sysvr4 libraries
 dnl installed conventionally (e.g., SunOS 5.x - solaris).
 
 dnl Autoconf builds up the $LIBS in reverse order
 
 
 dnl If we've not specified a library, assume we're using sysvr4 libraries
 dnl installed conventionally (e.g., SunOS 5.x - solaris).
 
 dnl Autoconf builds up the $LIBS in reverse order
 
-AC_CHECK_FUNC(initscr,,[
-AC_CHECK_LIB($LIB_NAME,initscr)])
-AC_CHECK_LIB(form,form_driver)
-AC_CHECK_LIB(menu,menu_driver)
-AC_CHECK_LIB(panel,new_panel)
+AC_CHECK_LIB(form$cf_cv_libtype,form_driver)
+AC_CHECK_LIB(menu$cf_cv_libtype,menu_driver)
+AC_CHECK_LIB(panel$cf_cv_libtype,new_panel)
 
 AC_TYPE_SIGNAL
 
 
 AC_TYPE_SIGNAL
 
@@ -121,8 +142,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,48 +155,44 @@ unistd.h \
 )
 
 AC_CHECK_FUNCS( \
 )
 
 AC_CHECK_FUNCS( \
+color_set \
+getnstr \
 gettimeofday \
 napms \
 gettimeofday \
 napms \
+resize_term \
 resizeterm \
 resizeterm \
+slk_color \
 strdup \
 use_default_colors \
 vsscanf \
 strdup \
 use_default_colors \
 vsscanf \
+wchgat \
 wresize \
 )
 
 wresize \
 )
 
-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,[
-AC_TRY_RUN([
-#include <curses.h>
-int main()
-{
-       char temp[1024];
-       sprintf(temp, "%s\n", curses_version());
-       exit(0);
-}]
-,[cf_cv_func_curses_version=yes]
-,[cf_cv_func_curses_version=no]
-,[cf_cv_func_curses_version=unknown])
-rm -f core])
-test "$cf_cv_func_curses_version" = yes && AC_DEFINE(HAVE_CURSES_VERSION)
+AC_TRY_LINK([
+#include <${cf_cv_ncurses_header-curses.h}>],
+[
+       (void) assume_default_colors (0, 0);
+       (void) curses_version ();
+       (void) define_key (0, 0);
+       (void) is_term_resized (0, 0);
+       (void) key_defined (0);
+       (void) keybound (0, 0);
+       (void) keyok (0, 0);
+       (void) resize_term (0, 0);
+       (void) resizeterm (0, 0);
+       (void) use_default_colors ();
+       (void) use_extended_names (0);
+       (void) wresize (0, 0, 0);
+       ],[AC_DEFINE(NCURSES_EXT_FUNCS)])
+
+CF_SYS_TIME_SELECT
+CF_FUNC_CURSES_VERSION
+CF_CURSES_ACS_MAP
+CF_CURSES_WACS_MAP
+CF_CURSES_CHECK_TYPE(attr_t,long)
+CF_CURSES_CHECK_TYPE(mbstate_t,long)
 
 
-dnl ---------------------------------------------------------------------------
-dnl [CF_SYS_TIME_SELECT]
-AC_MSG_CHECKING(if sys/time.h conflicts with sys/select.h)
-AC_CACHE_VAL(cf_cv_sys_time_select,[
-AC_TRY_COMPILE([
-#if HAVE_SYS_TIME_H
-#include <sys/time.h>
-#endif
-#if 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)
-test $cf_cv_sys_time_select = yes && AC_DEFINE(HAVE_SYS_TIME_SELECT)
 dnl ---------------------------------------------------------------------------
 
 AC_OUTPUT(Makefile,[
 dnl ---------------------------------------------------------------------------
 
 AC_OUTPUT(Makefile,[
@@ -183,11 +202,9 @@ AC_OUTPUT(Makefile,[
 # work consistently for different make-programs (the '\$(MODEL)/' confuses
 # some, and the '\$x' confuses others).
 TEST_EOF
 # work consistently for different make-programs (the '\$(MODEL)/' confuses
 # some, and the '\$x' confuses others).
 TEST_EOF
-LIST=`make echo_tests`
-LAST=`make echo_suffix`
-for n in $LIST
+LIST=`sed -e 's/[[     ]].*//' -e '/^[[#@]]/d' $srcdir/modules`
+for N in $LIST
 do
 do
-       N=`echo $n | sed -e s/${LAST}\$//`
        cat >>Makefile <<TEST_EOF
 
 \$(MODEL)/$N.o : $N.c \\
        cat >>Makefile <<TEST_EOF
 
 \$(MODEL)/$N.o : $N.c \\