]> ncurses.scripts.mit.edu Git - ncurses.git/blobdiff - configure.in
ncurses 5.7 - patch 20100619
[ncurses.git] / configure.in
index 29f0cce1c5e412a403aa3e164f530e563c82baab..863548342f399186d4d37ab8c2a2b0d5ff66542c 100644 (file)
@@ -1,5 +1,5 @@
 dnl***************************************************************************
-dnl Copyright (c) 1998-2008,2009 Free Software Foundation, Inc.              *
+dnl Copyright (c) 1998-2009,2010 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            *
@@ -28,14 +28,14 @@ dnl***************************************************************************
 dnl
 dnl Author: Thomas E. Dickey 1995-on
 dnl
-dnl $Id: configure.in,v 1.475 2009/10/17 12:38:32 tom Exp $
+dnl $Id: configure.in,v 1.498 2010/06/19 20:05:42 tom Exp $
 dnl Process this file with autoconf to produce a configure script.
 dnl
 dnl See http://invisible-island.net/autoconf/ for additional information.
 dnl
 dnl ---------------------------------------------------------------------------
 AC_PREREQ(2.13.20020210)
-AC_REVISION($Revision: 1.475 $)
+AC_REVISION($Revision: 1.498 $)
 AC_INIT(ncurses/base/lib_initscr.c)
 AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
 
@@ -359,6 +359,7 @@ if test "$with_gpm" != no ; then
                SHLIB_LIST="-ldl $SHLIB_LIST"
        else
                SHLIB_LIST="-lgpm $SHLIB_LIST"
+               CF_ADD_LIB(gpm,TEST_LIBS)
        fi
        AC_DEFINE(HAVE_LIBGPM)
        CF_CHECK_GPM_WGETCH
@@ -412,6 +413,11 @@ if test "$CC_SHARED_OPTS" = "unknown"; then
        done
 fi
 
+### If we're building with rpath, try to link non-standard libs that way too.
+if test "$DFT_LWR_MODEL" = "shared"; then
+       CF_DISABLE_RPATH_HACK
+fi
+
 ###############################################################################
 CF_HELP_MESSAGE(Fine-Tuning Your Configuration:)
 
@@ -687,7 +693,7 @@ NCURSES_WCHAR_T=0
 NCURSES_WINT_T=0
 
 # Check to define _XOPEN_SOURCE "automatically"
-CF_XOPEN_SOURCE
+CF_XOPEN_SOURCE(500)
 
 # Work around breakage on OS X
 CF_SIGWINCH
@@ -708,7 +714,15 @@ AC_MSG_RESULT($with_widec)
 if test "$with_widec" = yes ; then
        LIB_SUFFIX="w${LIB_SUFFIX}"
        AC_DEFINE(USE_WIDEC_SUPPORT)
-       CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
+
+       case "$CFLAGS $CPPFLAGS" in #(vi
+       *-D_XOPEN_SOURCE=500) #(vi
+               ;;
+       *)
+               CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED)
+               ;;
+       esac
+
        # with_overwrite=no
        NCURSES_CH_T=cchar_t
        AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs)
@@ -902,6 +916,9 @@ AC_ARG_ENABLE(term-driver,
 AC_MSG_RESULT($with_term_driver)
 if test "$with_term_driver" = yes ; then
        AC_DEFINE(USE_TERM_DRIVER)
+       if test "$with_sp_funcs" != yes ; then
+               AC_MSG_ERROR(The term-driver option relies upon sp-funcs)
+       fi
 fi
 
 ###   use option --enable-const to turn on use of const beyond that in XSI.
@@ -1044,20 +1061,42 @@ test "$with_hashmap" = yes && AC_DEFINE(USE_HASHMAP)
 ###   use option --enable-colorfgbg to turn on use of $COLORFGBG environment
 AC_MSG_CHECKING(if you want colorfgbg code)
 AC_ARG_ENABLE(colorfgbg,
-       [  --enable-colorfgbg      compile with $COLORFGBG code],
+       [  --enable-colorfgbg      compile-in experimental $COLORFGBG code],
        [with_colorfgbg=$enableval],
        [with_colorfgbg=no])
 AC_MSG_RESULT($with_colorfgbg)
 test "$with_colorfgbg" = yes && AC_DEFINE(USE_COLORFGBG)
 
+###   use option --enable-interop to turn on use of bindings used for interop
+AC_MSG_CHECKING(if you want interop bindings)
+AC_ARG_ENABLE(interop,
+       [  --enable-interop        compile-in experimental interop bindings],
+       [with_exp_interop=$enableval],
+       [with_exp_interop=no])
+AC_MSG_RESULT($with_exp_interop)
+
+NCURSES_INTEROP_FUNCS=0
+test "$with_exp_interop" = yes && NCURSES_INTEROP_FUNCS=1
+AC_SUBST(NCURSES_INTEROP_FUNCS)
+
 # This is still experimental (20080329), but should ultimately be moved to
 # the script-block --with-normal, etc.
 CF_WITH_PTHREAD
 
+AC_MSG_CHECKING(if you want to allow EINTR in wgetch with pthreads)
+AC_ARG_ENABLE(pthreads-eintr,
+    [  --enable-pthreads-eintr enable EINTR in wgetch with pthreads],
+    [use_pthreads_eintr=$enableval],
+    [use_pthreads_eintr=no])
+AC_MSG_RESULT($use_pthreads_eintr)
+if test $use_pthreads_eintr = yes ; then
+    AC_DEFINE(USE_PTHREADS_EINTR)
+fi
+
 AC_MSG_CHECKING(if you want to use weak-symbols for pthreads)
 AC_ARG_ENABLE(weak-symbols,
     [  --enable-weak-symbols   enable weak-symbols for pthreads],
-    [use_weak_symbols=$withval],
+    [use_weak_symbols=$enableval],
     [use_weak_symbols=no])
 AC_MSG_RESULT($use_weak_symbols)
 if test "$use_weak_symbols" = yes ; then
@@ -1097,9 +1136,10 @@ if test "$with_reentrant" = yes ; then
        NCURSES_SIZE_T=int
        if test $cf_cv_weak_symbols = yes ; then
                CF_REMOVE_LIB(LIBS,$LIBS,pthread)
-       else
-               LIB_SUFFIX="t${LIB_SUFFIX}"
+               CF_ADD_LIB(pthread,TEST_LIBS)
+               CF_ADD_LIB(pthread,TEST_LIBS2)
        fi
+       LIB_SUFFIX="t${LIB_SUFFIX}"
        AC_DEFINE(USE_REENTRANT)
        CF_NCURSES_ABI_6
 else
@@ -1182,7 +1222,7 @@ AC_ARG_ENABLE(warnings,
 AC_MSG_RESULT($with_warnings)
 
 if test "x$with_warnings" = "xyes"; then
-       ADAFLAGS="$ADAFLAGS -gnatg"
+       CF_ADD_ADAFLAGS(-gnatg)
        CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
        if test "$cf_with_cxx" = yes ; then
                CF_GXX_WARNINGS(Wno-unused)
@@ -1204,7 +1244,7 @@ then
                AC_DEFINE(NDEBUG)
                CPPFLAGS="$CPPFLAGS -DNDEBUG"
        else
-               ADAFLAGS="$ADAFLAGS -gnata"
+               CF_ADD_ADAFLAGS(-gnata)
        fi
 fi
 
@@ -1259,7 +1299,7 @@ AC_CHECK_FUNC(gettimeofday,
 
 AC_CHECK_LIB(bsd, gettimeofday,
        AC_DEFINE(HAVE_GETTIMEOFDAY)
-       LIBS="$LIBS -lbsd")])dnl CLIX: bzero, select, gettimeofday
+       CF_ADD_LIB(bsd))])dnl CLIX: bzero, select, gettimeofday
        ;;
 esac
 
@@ -1295,7 +1335,7 @@ wctype.h \
 # Note: even non-Posix ISC needs <sys/bsdtypes.h> to declare fd_set
 if test "$ISC" = yes ; then
        AC_CHECK_LIB(cposix,main)
-       AC_CHECK_LIB(inet,bzero,LIBS="$LIBS -linet")dnl also 'select()'
+       AC_CHECK_LIB(inet,bzero,CF_ADD_LIB(inet))dnl also 'select()'
 fi
 
 CF_SYS_TIME_SELECT
@@ -1378,6 +1418,8 @@ CF_TYPE_SIGACTION
 CF_SIZECHANGE
 CF_FUNC_MEMMOVE
 CF_FUNC_POLL
+CF_VA_COPY
+AC_FUNC_VFORK
 
 # special check for test/ditto.c
 CF_FUNC_OPENPTY
@@ -1385,10 +1427,11 @@ if test "$cf_cv_func_openpty" != no ; then
     AC_DEFINE_UNQUOTED(USE_OPENPTY_HEADER,<$cf_cv_func_openpty>)
     AC_DEFINE(USE_XTERM_PTY)
     if test "$cf_cv_lib_util" = yes ; then
-        TEST_LIBS="-lutil $TEST_LIBS"
+        CF_ADD_LIB(util,TEST_LIBS)
     fi
 fi
 AC_SUBST(TEST_LIBS)
+AC_SUBST(TEST_LIBS2)
 
 if test "$with_hashed_db" != no ; then
        AC_DEFINE(USE_HASHED_DB)
@@ -1526,99 +1569,34 @@ if test -f "${srcdir}/Ada95/Makefile.in" ; then
 dnl libtool does not know anything about GNAT, though a change made in 1998
 dnl provided for it "someday".  Disable the ada subtree if we are using
 dnl libtool -TD 20070714
-if test "$cf_with_ada" != "no" ; then
-    if test "$with_libtool" != "no"; then
-       AC_MSG_WARN(libtool does not support Ada - disabling feature)
-       cf_with_ada=no
-    fi
-fi
+       if test "$cf_with_ada" != "no" ; then
+               if test "$with_libtool" != "no"; then
+                       AC_MSG_WARN(libtool does not support Ada - disabling feature)
+                       cf_with_ada=no
+               fi
+       fi
 
 dnl Check for availability of GNU Ada Translator (GNAT).
 dnl At the moment we support no other Ada95 compiler.
-if test "$cf_with_ada" != "no" ; then
-cf_ada_make=gnatmake
-AC_CHECK_PROG(gnat_exists, $cf_ada_make, yes, no)
-if test "$ac_cv_prog_gnat_exists" = no; then
-   cf_ada_make=
-else
-   CF_GNAT_VERSION
-   AC_CHECK_PROG(M4_exists, m4, yes, no)
-   if test "$ac_cv_prog_M4_exists" = no; then
-      cf_cv_prog_gnat_correct=no
-      echo Ada95 binding required program m4 not found. Ada95 binding disabled.
-   fi
-   if test "$cf_cv_prog_gnat_correct" = yes; then
-      AC_MSG_CHECKING(if GNAT works)
-      CF_GNAT_TRY_RUN([procedure conftest;],
-[with Text_IO;
-with GNAT.OS_Lib;
-procedure conftest is
-begin
-   Text_IO.Put ("Hello World");
-   Text_IO.New_Line;
-   GNAT.OS_Lib.OS_Exit (0);
-end conftest;],[cf_cv_prog_gnat_correct=yes],[cf_cv_prog_gnat_correct=no])
-      AC_MSG_RESULT($cf_cv_prog_gnat_correct)
-   fi
-fi
-if test        "$cf_cv_prog_gnat_correct" = yes; then
-   ADAFLAGS="-O3 -gnatpn $ADAFLAGS"
-
-   AC_MSG_CHECKING(if GNAT pragma Unreferenced works)
-   CF_GNAT_TRY_LINK([procedure conftest;],
-[with Text_IO;
-with GNAT.OS_Lib;
-procedure conftest is
-   test : Integer;
-   pragma Unreferenced (test);
-begin
-   test := 1;
-   Text_IO.Put ("Hello World");
-   Text_IO.New_Line;
-   GNAT.OS_Lib.OS_Exit (0);
-end conftest;],[cf_cv_pragma_unreferenced=yes],[cf_cv_pragma_unreferenced=no])
-   AC_MSG_RESULT($cf_cv_pragma_unreferenced)
-
-   # if the pragma is supported, use it (needed in the Trace code).
-   if test $cf_cv_pragma_unreferenced = yes ; then
-      PRAGMA_UNREF=TRUE
-   else
-      PRAGMA_UNREF=FALSE
-   fi
-
-   AC_ARG_WITH(ada-compiler,
-       [  --with-ada-compiler=CMD specify Ada95 compiler command (default gnatmake)],
-       [cf_ada_compiler=$withval],
-       [cf_ada_compiler=gnatmake])
-
-   cf_ada_package=terminal_interface
-
-   AC_SUBST(cf_ada_make)
-   AC_SUBST(cf_ada_compiler)
-   AC_SUBST(cf_ada_package)
-   AC_SUBST(ADAFLAGS)
-   AC_SUBST(cf_compile_generics)
-   AC_SUBST(cf_generic_objects)
-   AC_SUBST(PRAGMA_UNREF)
-
-   CF_WITH_PATH(ada-include,
-       [  --with-ada-include=DIR  Ada includes are in DIR],
-       ADA_INCLUDE,
-       PREFIX/lib/ada/adainclude,
-       [$]prefix/lib/ada/adainclude)
-   AC_SUBST(ADA_INCLUDE)
-
-   CF_WITH_PATH(ada-objects,
-       [  --with-ada-objects=DIR  Ada objects are in DIR],
-       ADA_OBJECTS,
-       PREFIX/lib/ada/adalib,
-       [$]prefix/lib/ada/adalib)
-   AC_SUBST(ADA_OBJECTS)
+       if test "$cf_with_ada" != "no" ; then
+               CF_PROG_GNAT
+               if test "$cf_cv_prog_gnat_correct" = yes; then
+                       CF_ADD_ADAFLAGS(-O3 -gnatpn)
 
-fi
-fi
+                       CF_GNAT_PRAGMA_UNREF
+
+                       CF_WITH_ADA_COMPILER
+
+                       cf_ada_package=terminal_interface
+                       AC_SUBST(cf_ada_package)
+
+                       CF_WITH_ADA_INCLUDE
+                       CF_WITH_ADA_OBJECTS
+                       CF_WITH_ADA_SHAREDLIB
+               fi
+       fi
 else
-   cf_with_ada=no
+       cf_with_ada=no
 fi
 
 ### Construct the ncurses library-subsets, if any, from this set of keywords:
@@ -1646,6 +1624,16 @@ fi
 LIB_SUBSETS="${LIB_SUBSETS}termlib"
 test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_tinfo"
 
+if test "$with_termlib" != no ; then
+       LIB_SUBSETS="${LIB_SUBSETS} "
+else
+       LIB_SUBSETS="${LIB_SUBSETS}+"
+fi
+
+LIB_SUBSETS="${LIB_SUBSETS}base"
+
+# Most term-driver calls are to tinfo, but some like init_pair are to the
+# base library (so it resides in base).
 if test "$with_term_driver" != no ; then
        LIB_SUBSETS="${LIB_SUBSETS}+port_drivers"
        case $cf_cv_system_name in #(vi
@@ -1658,14 +1646,6 @@ if test "$with_term_driver" != no ; then
        esac
 fi
 
-if test "$with_termlib" != no ; then
-       LIB_SUBSETS="${LIB_SUBSETS} "
-else
-       LIB_SUBSETS="${LIB_SUBSETS}+"
-fi
-
-LIB_SUBSETS="${LIB_SUBSETS}base"
-
 test "$with_widec"     = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar"
 test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs"
 
@@ -1851,10 +1831,19 @@ CF_SRC_MODULES($modules_to_build)
 
 if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then
    SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in"
+   SUB_MAKEFILES="$SUB_MAKEFILES man/adacurses${DFT_ARG_SUFFIX}-config.1:man/MKada_config.in"
 fi
 
 CF_DIRS_TO_MAKE
 
+# symbols that differ when compiling Ada95 by itself.
+NCURSES_SHLIB2='sh $(top_srcdir)/misc/shlib'
+AC_SUBST(NCURSES_SHLIB2)
+
+NCURSES_COPY2='sh $(top_srcdir)/tar-copy.sh'
+AC_SUBST(NCURSES_COPY2)
+
+# values to use as strings
 AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR')
 
 AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}")
@@ -1862,11 +1851,6 @@ AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${
 ### Now that we're done running tests, add the compiler-warnings, if any
 CF_ADD_CFLAGS($EXTRA_CFLAGS)
 
-### If we're building with rpath, try to link non-standard libs that way too.
-if test "$DFT_LWR_MODEL" = "shared"; then
-  CF_RPATH_HACK
-fi
-
 ### Define substitutions for header files to avoid name-pollution
 CF_SUBST_IF(["$cf_cv_have_tcgetattr" = yes], HAVE_TCGETATTR, 1, 0)
 CF_SUBST_IF(["$ac_cv_header_termio_h" = yes], HAVE_TERMIO_H, 1, 0)
@@ -1877,6 +1861,7 @@ test "$use_database" = yes && \
 SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in"
 
 SUB_MAKEFILES="$SUB_MAKEFILES misc/ncurses-config:misc/ncurses-config.in"
+SUB_MAKEFILES="$SUB_MAKEFILES man/ncurses${DFT_ARG_SUFFIX}${cf_cv_abi_version}-config.1:man/MKncu_config.in"
 
 if test x"$enable_pc_files" = xyes ; then \
 SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in"
@@ -1906,6 +1891,7 @@ DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX"
 DFT_LWR_MODEL="$DFT_LWR_MODEL"
 ECHO_LINK="$ECHO_LINK"
 LDCONFIG="$LDCONFIG"
+LIBTOOL_VERSION="$LIBTOOL_VERSION"
 LIB_NAME="$LIB_NAME"
 LIB_SUBSETS="$LIB_SUBSETS"
 LIB_SUFFIX="$LIB_SUFFIX"