dnl***************************************************************************
-dnl Copyright (c) 1998-2012,2013 Free Software Foundation, Inc. *
+dnl Copyright (c) 1998-2013,2014 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 Author: Thomas E. Dickey 1995-on
dnl
-dnl $Id: configure.in,v 1.565 2013/04/27 19:37:40 tom Exp $
+dnl $Id: configure.in,v 1.582 2014/06/01 14:05:06 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.52.20030208)
-AC_REVISION($Revision: 1.565 $)
+AC_REVISION($Revision: 1.582 $)
AC_INIT(ncurses/base/lib_initscr.c)
AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin)
AC_MSG_CHECKING(if you want to build with Ada95)
AC_MSG_RESULT($cf_with_ada)
+AC_MSG_CHECKING(if you want to install terminal database)
+AC_ARG_ENABLE(db-install,
+ [ --disable-db-install suppress install of terminal database],
+ [cf_with_db_install=$enableval],
+ [cf_with_db_install=yes])
+AC_MSG_RESULT($cf_with_db_install)
+
AC_MSG_CHECKING(if you want to install manpages)
AC_ARG_WITH(manpages,
[ --without-manpages suppress install of manpages],
AC_MSG_CHECKING(if you want to build programs such as tic)
AC_ARG_WITH(progs,
- [ --without-progs suppress build with programs (e.g., tic)],
+ [ --without-progs suppress build/install with programs (e.g., tic)],
[cf_with_progs=$withval],
[cf_with_progs=yes])
AC_MSG_RESULT($cf_with_progs)
AC_MSG_CHECKING(if you want to build test-programs)
AC_ARG_WITH(tests,
- [ --without-tests suppress build with test-programs],
+ [ --without-tests suppress build/install with test-programs],
[cf_with_tests=$withval],
[cf_with_tests=yes])
AC_MSG_RESULT($cf_with_tests)
AC_CHECK_TOOL(RANLIB, ranlib, ':')
AC_CHECK_TOOL(LD, ld, ld)
AC_CHECK_TOOL(AR, ar, ar)
+AC_CHECK_TOOL(NM, nm, nm)
CF_AR_FLAGS
dnl Special option for use by system-builders: the install-prefix is used to
;;
esac
+# we will build libraries one-level down.
+rel_builddir=..
CF_SHARED_OPTS
if test "$CC_SHARED_OPTS" = "unknown"; then
for model in $cf_list_models; do
done
fi
+# pretend that ncurses==ncursesw==ncursest
+AC_MSG_CHECKING(if you want to disable library suffixes)
+AC_ARG_ENABLE(lib-suffixes,
+ [ --disable-lib-suffixes disable library suffixes],
+ [disable_lib_suffixes=$enableval],
+ [disable_lib_suffixes=no])
+AC_MSG_RESULT($disable_lib_suffixes)
+
### 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
esac
AC_SUBST(TERMINFO_SRC)
+NCURSES_USE_DATABASE=0
if test "$use_database" != no ; then
- AC_DEFINE(USE_DATABASE,1,[Define to 1 if we should use the terminal database])
+ NCURSES_USE_DATABASE=1
AC_MSG_CHECKING(which terminfo source-file will be installed)
AC_ARG_WITH(database,
else
with_hashed_db=no
fi
+AC_SUBST(NCURSES_USE_DATABASE)
AC_MSG_CHECKING(for list of fallback descriptions)
AC_ARG_WITH(fallbacks,
[with_termcap=no])
AC_MSG_RESULT($with_termcap)
+NCURSES_USE_TERMCAP=0
if test "x$with_termcap" != "xyes" ; then
if test "$use_database" = no ; then
if test -z "$with_fallback" ; then
AC_DEFINE(PURE_TERMINFO,1,[Define to 1 if we should support only terminfo])
else
-if test "$with_ticlib" != no ; then
- AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined)
-fi
-
-AC_DEFINE(USE_TERMCAP,1,[Define to 1 if we should support termcap])
-AC_MSG_CHECKING(for list of termcap files)
-CF_WITH_PATHLIST(termpath,
- [ --with-termpath=XXX specify list of termcap files],
- TERMPATH,
- /etc/termcap:/usr/share/misc/termcap)
-AC_MSG_RESULT($TERMPATH)
-test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH",[Define to set the termcap searchlist])
-
-### use option --enable-getcap to use a hacked getcap for reading termcaps
-AC_MSG_CHECKING(if fast termcap-loader is needed)
-AC_ARG_ENABLE(getcap,
- [ --enable-getcap fast termcap load, no xrefs to terminfo],
- [with_getcap=$enableval],
- [with_getcap=no])
-AC_MSG_RESULT($with_getcap)
-test "x$with_getcap" = "xyes" && AC_DEFINE(USE_GETCAP,1,[Define to 1 to use fast termcap-loader])
-
-AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo)
-AC_ARG_ENABLE(getcap-cache,
- [ --enable-getcap-cache cache translated termcaps in ~/.terminfo],
- [with_getcap_cache=$enableval],
- [with_getcap_cache=no])
-AC_MSG_RESULT($with_getcap_cache)
-test "x$with_getcap_cache" = "xyes" && AC_DEFINE(USE_GETCAP_CACHE,1,[Define to 1 if translated termcap should be stored in $HOME/.terminfo])
+ if test "$with_ticlib" != no ; then
+ AC_ERROR(Options --with-ticlib and --enable-termcap cannot be combined)
+ fi
-fi
+ NCURSES_USE_TERMCAP=1
+ AC_MSG_CHECKING(for list of termcap files)
+ CF_WITH_PATHLIST(termpath,
+ [ --with-termpath=XXX specify list of termcap files],
+ TERMPATH,
+ /etc/termcap:/usr/share/misc/termcap)
+ AC_MSG_RESULT($TERMPATH)
+ test -n "$TERMPATH" && AC_DEFINE_UNQUOTED(TERMPATH,"$TERMPATH",[Define to set the termcap searchlist])
+
+ ### use option --enable-getcap to use a hacked getcap for reading termcaps
+ AC_MSG_CHECKING(if fast termcap-loader is needed)
+ AC_ARG_ENABLE(getcap,
+ [ --enable-getcap fast termcap load, no xrefs to terminfo],
+ [with_getcap=$enableval],
+ [with_getcap=no])
+ AC_MSG_RESULT($with_getcap)
+ test "x$with_getcap" = "xyes" && AC_DEFINE(USE_GETCAP,1,[Define to 1 to use fast termcap-loader])
+
+ AC_MSG_CHECKING(if translated termcaps will be cached in ~/.terminfo)
+ AC_ARG_ENABLE(getcap-cache,
+ [ --enable-getcap-cache cache translated termcaps in ~/.terminfo],
+ [with_getcap_cache=$enableval],
+ [with_getcap_cache=no])
+ AC_MSG_RESULT($with_getcap_cache)
+ test "x$with_getcap_cache" = "xyes" && AC_DEFINE(USE_GETCAP_CACHE,1,[Define to 1 if translated termcap should be stored in $HOME/.terminfo])
+
+fi
+AC_SUBST(NCURSES_USE_TERMCAP)
### Use option --disable-home-terminfo to completely remove ~/.terminfo
AC_MSG_CHECKING(if ~/.terminfo is wanted)
[with_widec=no])
AC_MSG_RESULT($with_widec)
if test "x$with_widec" = xyes ; then
- LIB_SUFFIX="w${LIB_SUFFIX}"
+ if test "x$disable_lib_suffixes" = xno ; then
+ LIB_SUFFIX="w${LIB_SUFFIX}"
+ fi
AC_DEFINE(USE_WIDEC_SUPPORT,1,[Define to 1 to compile with wide-char/UTF-8 code])
AC_DEFINE(NCURSES_WIDECHAR,1,[Define to 1 to compile with wide-char/UTF-8 code])
CF_ADD_LIB(pthread,TEST_LIBS)
CF_ADD_LIB(pthread,TEST_LIBS2)
else
- LIB_SUFFIX="t${LIB_SUFFIX}"
+ # when not using weak symbols but with_reentrant,
+ # add 't' to the library suffix on all platforms
+ # except cygwin, where we only do that if ALSO
+ # compiling with full thread support.
+ case "$host" in
+ *cygwin* | *msys*) #(vi
+ if test "$with_pthread" = "yes" ; then
+ if test "x$disable_lib_suffixes" = "xno" ; then
+ LIB_SUFFIX="t${LIB_SUFFIX}"
+ fi
+ fi ;;
+ *)
+ if test "x$disable_lib_suffixes" = "xno" ; then
+ LIB_SUFFIX="t${LIB_SUFFIX}"
+ fi
+ ;;
+ esac
fi
AC_DEFINE(USE_REENTRANT,1,[Define to 1 to use experimental reentrant feature])
CF_NCURSES_ABI_6
if test "x$with_warnings" = "xyes"; then
CF_ADD_ADAFLAGS(-gnatg)
- CF_GCC_WARNINGS(Wdeclaration-after-statement Wextra Wno-unknown-pragmas Wswitch-enum)
+ CF_GCC_WARNINGS(Wno-unknown-pragmas Wswitch-enum)
if test "x$cf_with_cxx" = xyes ; then
CF_GXX_WARNINGS(Wno-unused)
fi
AC_SUBST(ADA_TRACE)
+CF_DISABLE_GNAT_PROJECTS
+
### Checks for libraries.
case $cf_cv_system_name in #(vi
*mingw32*) #(vi
+ LIBS=" -lpsapi $LIBS"
;;
*)
AC_CHECK_FUNC(gettimeofday,
;;
esac
-CF_MATH_LIB(MATH_LIB,sin(x))
+CF_MATH_LIB(MATH_LIB,pow(sin(x),x))
AC_SUBST(MATH_LIB)
### Checks for header files.
CF_GNAT_GENERICS
CF_GNAT_SIGINT
- CF_GNAT_PRAGMA_UNREF
CF_GNAT_PROJECTS
CF_WITH_ADA_COMPILER
cf_with_ada=no
fi
+# do this "late" to avoid conflict with header-checks
+if test "x$with_widec" = xyes ; then
+ AC_CHECK_SIZEOF(wchar_t)
+fi
+
### Construct the ncurses library-subsets, if any, from this set of keywords:
### none, base, ext_funcs, ext_tinfo, ticlib, termlib, widechar
###
if test "$DFT_LWR_MODEL" = shared ; then
case $cf_cv_system_name in #(vi
- cygwin*)
- # "lib" files have ".dll.a" suffix, "cyg" files have ".dll"
+ cygwin*|msys*)
+ # "lib" files have ".dll.a" suffix, "cyg"or "msys-" files have ".dll"
TINFO_SUFFIX=.dll
;;
esac
esac
AC_MSG_CHECKING(where we will install curses.h)
-test "$with_overwrite" = no && \
-test "x$includedir" = 'x${prefix}/include' && \
- includedir='${prefix}/include/ncurses'${LIB_SUFFIX}
-AC_MSG_RESULT($includedir)
+AC_SUBST(includesubdir)
+includesubdir=
+if test "$with_overwrite" = no && \
+ ( test "x$includedir" = 'x${prefix}/include' || \
+ test "x$includedir" = "x${prefix}/include" )
+then
+ includesubdir="/ncurses${LIB_SUFFIX}"
+fi
+AC_MSG_RESULT(${includedir}${includesubdir})
### Resolve a conflict between normal and wide-curses by forcing applications
### that will need libutf8 to add it to their configure script.
### Define substitutions for header files to avoid name-pollution
CF_SUBST_IF(["x$cf_cv_have_tcgetattr" = xyes], HAVE_TCGETATTR, 1, 0)
+CF_SUBST_IF(["x$ac_cv_header_stdint_h" = xyes], HAVE_STDINT_H, 1, 0)
CF_SUBST_IF(["x$ac_cv_header_termio_h" = xyes], HAVE_TERMIO_H, 1, 0)
CF_SUBST_IF(["x$ac_cv_header_termios_h" = xyes], HAVE_TERMIOS_H, 1, 0)
AC_SUBST(FORM_NAME)
AC_SUBST(CXX_NAME)
+# workaround for g++ versus Solaris (20131116)
+case $cf_cv_system_name in #(vi
+solaris2*) #(vi
+ case "x$CPPFLAGS" in #(vi
+ *-D_XOPEN_SOURCE_EXTENDED*)
+ CF_VERBOSE(moving _XOPEN_SOURCE_EXTENDED to work around g++ problem)
+ CFLAGS="$CFLAGS -D_XOPEN_SOURCE_EXTENDED"
+ CPPFLAGS=`echo "x$CPPFLAGS" | sed -e 's/^.//' -e 's/-D_XOPEN_SOURCE_EXTENDED//'`
+ ;;
+ esac
+ ;;
+esac
+
+# AC_CHECK_SIZEOF demands a literal parameter, no variables. So we do this.
+case "x$NCURSES_OSPEED" in #(vi
+*short*) #(vi
+ cf_compatible=1
+ ;;
+*)
+ cf_compatible=0
+ ;;
+esac
+AC_DEFINE_UNQUOTED(NCURSES_OSPEED_COMPAT,$cf_compatible,[Define to 1 if termcap variable ospeed is short])
+
+case "x$cf_cv_typeof_chtype" in
+xshort|xint|xlong)
+ cf_cv_typeof_chtype="unsigned $cf_cv_typeof_chtype"
+ ;;
+esac
+
+case "x$cf_cv_typeof_mmask_t" in
+xshort|xint|xlong)
+ cf_cv_typeof_mmask_t="unsigned $cf_cv_typeof_mmask_t"
+ ;;
+esac
+
SUB_SCRIPTS=
AC_OUTPUT( \
cf_cv_term_driver="$with_term_driver"
cf_with_ada="$cf_with_ada"
cf_with_cxx_binding="$cf_with_cxx_binding"
+cf_with_db_install="$cf_with_db_install"
cf_with_manpages="$cf_with_manpages"
cf_with_tests="$cf_with_tests"
with_shared_cxx="$with_shared_cxx"