X-Git-Url: http://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=configure.in;h=43a8e10ab4a6656f38e840d5f24097d8e8ebe86c;hp=b4a20c2ac1fbef34ea921f0c2754796f8ab44cc0;hb=1d7867d33e6954be7c7121b1028ad6768f487752;hpb=dfaa1a3001fd447819f5edc2e523acc1a04f1440 diff --git a/configure.in b/configure.in index b4a20c2a..43a8e10a 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl*************************************************************************** -dnl Copyright (c) 1998-2008,2009 Free Software Foundation, Inc. * +dnl Copyright (c) 1998-2011,2012 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.472 2009/07/18 16:18:30 tom Exp $ +dnl $Id: configure.in,v 1.550 2012/05/05 20:54:32 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.472 $) +AC_REVISION($Revision: 1.550 $) AC_INIT(ncurses/base/lib_initscr.c) AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) @@ -58,7 +58,18 @@ cf_user_CFLAGS="$CFLAGS" CF_CFG_DEFAULTS ### Checks for programs. -AC_PROG_CC +AC_ARG_WITH(ada, + [ --without-ada suppress check for Ada95, don't build demo], + [cf_with_ada=$withval], + [cf_with_ada=yes]) +if test x"$cf_with_ada" = xyes +then + cf_PROG_CC="gnatgcc gcc cc" +else + cf_PROG_CC="gcc cc" +fi + +AC_PROG_CC($cf_PROG_CC) CF_GCC_VERSION AC_PROG_CPP @@ -89,14 +100,16 @@ else cf_with_cxx=no; CXX=""; GXX="";])dnl AC_PROG_CXX popdef([AC_MSG_ERROR])dnl - # autoconf 2.5x removed the error - by hardcoding it to g++. + # autoconf 2.5x removed the error (hardcoding it to g++, or just blank) if test "$CXX" = "g++" ; then AC_PATH_PROG(CXX,g++) fi - if test "$CXX" = "g++" ; then - AC_MSG_WARN(ignoring hardcoded g++) + case "x$CXX" in #(vi + x|xg++) + AC_MSG_WARN([You don't have any C++ compiler, too bad]) cf_with_cxx=no; CXX=""; GXX=""; - fi + ;; + esac fi CF_GXX_VERSION @@ -116,10 +129,6 @@ AC_ARG_WITH(cxx-binding, AC_MSG_RESULT($cf_with_cxx_binding) AC_MSG_CHECKING(if you want to build with Ada95) -AC_ARG_WITH(ada, - [ --without-ada suppress check for Ada95, don't build demo], - [cf_with_ada=$withval], - [cf_with_ada=yes]) AC_MSG_RESULT($cf_with_ada) AC_MSG_CHECKING(if you want to install manpages) @@ -136,6 +145,13 @@ AC_ARG_WITH(progs, [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], + [cf_with_tests=$withval], + [cf_with_tests=yes]) +AC_MSG_RESULT($cf_with_tests) + AC_MSG_CHECKING(if you wish to install curses.h) AC_ARG_WITH(curses-h, [ --without-curses-h install curses.h as ncurses.h only], @@ -155,34 +171,14 @@ CF_PROG_AWK CF_PROG_EGREP CF_PROG_INSTALL CF_PROG_LINT -AC_PROG_LN_S +CF_PROG_LN_S AC_SYS_LONG_FILE_NAMES # if we find pkg-config, check if we should install the ".pc" files. CF_PKG_CONFIG - -if test "$PKG_CONFIG" != no ; then - AC_MSG_CHECKING(if we should install .pc files for $PKG_CONFIG) - - # Leave this as something that can be overridden in the environment. - if test -z "$PKG_CONFIG_LIBDIR" ; then - PKG_CONFIG_LIBDIR=`echo "$PKG_CONFIG" | sed -e 's,/[[^/]]*/[[^/]]*$,,'`/lib/pkgconfig - fi - - if test -d "$PKG_CONFIG_LIBDIR" ; then - AC_ARG_ENABLE(pc-files, - [ --enable-pc-files generate and install .pc files for pkg-config], - [enable_pc_files=$enableval], - [enable_pc_files=no]) - AC_MSG_RESULT($enable_pc_files) - else - AC_MSG_RESULT(no) - AC_MSG_WARN(did not find library $PKG_CONFIG_LIBDIR) - enable_pc_files=no - fi -fi -AC_SUBST(PKG_CONFIG_LIBDIR) +CF_WITH_PKG_CONFIG_LIBDIR +CF_ENABLE_PC_FILES AC_MSG_CHECKING(if we should assume mixed-case filenames) AC_ARG_ENABLE(mixed-case, @@ -314,9 +310,7 @@ AC_SUBST(LIB_NAME) LIB_DIR=../lib LIB_2ND=../../lib -CF_LIB_PREFIX(cf_prefix) -LIB_PREFIX=$cf_prefix -AC_SUBST(LIB_PREFIX) +CF_WITH_LIB_PREFIX(cf_prefix) LIB_SUFFIX= AC_SUBST(LIB_SUFFIX) @@ -359,6 +353,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 +407,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:) @@ -440,12 +440,11 @@ os2*) #(vi esac AC_SUBST(TERMINFO_SRC) -CF_PATHSEP if test "$use_database" != no ; then AC_DEFINE(USE_DATABASE) AC_MSG_CHECKING(which terminfo source-file will be installed) - AC_ARG_ENABLE(database, + AC_ARG_WITH(database, [ --with-database=XXX specify terminfo source to install], [TERMINFO_SRC=$withval]) AC_MSG_RESULT($TERMINFO_SRC) @@ -481,6 +480,26 @@ AC_MSG_RESULT($with_xterm_new) WHICH_XTERM=$with_xterm_new AC_SUBST(WHICH_XTERM) +AC_MSG_CHECKING(if xterm backspace sends BS or DEL) +AC_ARG_WITH(xterm-kbs, + [ --with-xterm-kbs=XXX specify if xterm backspace sends BS or DEL], + [with_xterm_kbs=$withval], + [with_xterm_kbs=BS]) +case x$with_xterm_kbs in +xyes|xno|xBS|xbs|x8) + with_xterm_kbs=BS + ;; +xDEL|xdel|x127) + with_xterm_kbs=DEL + ;; +*) + with_xterm_kbs=$withval + ;; +esac +AC_MSG_RESULT($with_xterm_kbs) +XTERM_KBS=$with_xterm_kbs +AC_SUBST(XTERM_KBS) + MAKE_TERMINFO= if test "$use_database" = no ; then TERMINFO="${datadir}/terminfo" @@ -650,7 +669,7 @@ AC_MSG_CHECKING(if you want broken-linker support code) AC_ARG_ENABLE(broken_linker, [ --enable-broken_linker compile with broken-linker support code], [with_broken_linker=$enableval], - [with_broken_linker=${BROKEN_LINKER-no}]) + [with_broken_linker=${BROKEN_LINKER:-no}]) AC_MSG_RESULT($with_broken_linker) BROKEN_LINKER=0 @@ -687,7 +706,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 +727,10 @@ 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) + AC_DEFINE(NCURSES_WIDECHAR) + + CF_CHECK_WCHAR_H + # with_overwrite=no NCURSES_CH_T=cchar_t AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs) @@ -838,6 +860,15 @@ AC_ARG_WITH(ccharw-max, AC_MSG_RESULT($NCURSES_CCHARW_MAX) AC_SUBST(NCURSES_CCHARW_MAX) +### use option --with-tparm-arg to override tparm's argument type +AC_MSG_CHECKING(for type of tparm args) +AC_ARG_WITH(tparm-arg, + [ --with-tparm-arg=TYPE override parameter type of tparm], + [NCURSES_TPARM_ARG="$withval"], + [NCURSES_TPARM_ARG=long]) +AC_MSG_RESULT($NCURSES_TPARM_ARG) +AC_SUBST(NCURSES_TPARM_ARG) + ### Enable compiling-in rcs id's AC_MSG_CHECKING(if RCS identifiers should be compiled-in) AC_ARG_WITH(rcs-ids, @@ -862,11 +893,15 @@ AC_ARG_ENABLE(ext-funcs, AC_MSG_RESULT($with_ext_funcs) if test "$with_ext_funcs" = yes ; then NCURSES_EXT_FUNCS=1 + AC_DEFINE(HAVE_ASSUME_DEFAULT_COLORS) AC_DEFINE(HAVE_CURSES_VERSION) AC_DEFINE(HAVE_HAS_KEY) AC_DEFINE(HAVE_RESIZETERM) AC_DEFINE(HAVE_RESIZE_TERM) + AC_DEFINE(HAVE_TERM_ENTRY_H) AC_DEFINE(HAVE_USE_DEFAULT_COLORS) + AC_DEFINE(HAVE_USE_SCREEN) + AC_DEFINE(HAVE_USE_WINDOW) AC_DEFINE(HAVE_WRESIZE) AC_DEFINE(NCURSES_EXT_FUNCS) GENERATED_EXT_FUNCS=generated @@ -879,7 +914,7 @@ AC_SUBST(GENERATED_EXT_FUNCS) AC_MSG_CHECKING(if you want to build with experimental SCREEN extensions) AC_ARG_ENABLE(sp-funcs, - [ --enable-sp-funcs disable experimental SCREEN-extensions], + [ --enable-sp-funcs enable experimental SCREEN-extensions], [with_sp_funcs=$enableval], [with_sp_funcs=no]) AC_MSG_RESULT($with_sp_funcs) @@ -894,6 +929,19 @@ fi AC_SUBST(NCURSES_SP_FUNCS) AC_SUBST(GENERATED_SP_FUNCS) +AC_MSG_CHECKING(if you want to build with experimental terminal-driver) +AC_ARG_ENABLE(term-driver, + [ --enable-term-driver enable experimental terminal-driver], + [with_term_driver=$enableval], + [with_term_driver=no]) +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. AC_MSG_CHECKING(for extended use of const keyword) AC_ARG_ENABLE(const, @@ -1034,30 +1082,55 @@ 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 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=no]) -AC_MSG_RESULT($use_weak_symbols) -if test "$use_weak_symbols" = yes ; then - CF_WEAK_SYMBOLS -else - cf_cv_weak_symbols=no -fi +if test "x$with_pthread" != xno; then + AC_CHECK_FUNC(pthread_kill,[ + 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=$enableval], + [use_weak_symbols=no]) + AC_MSG_RESULT($use_weak_symbols) + if test "$use_weak_symbols" = yes ; then + CF_WEAK_SYMBOLS + else + cf_cv_weak_symbols=no + fi -if test $cf_cv_weak_symbols = yes ; then - AC_DEFINE(USE_WEAK_SYMBOLS) + if test $cf_cv_weak_symbols = yes ; then + AC_DEFINE(USE_WEAK_SYMBOLS) + fi fi PTHREAD= @@ -1087,6 +1160,8 @@ if test "$with_reentrant" = yes ; then NCURSES_SIZE_T=int if test $cf_cv_weak_symbols = yes ; then CF_REMOVE_LIB(LIBS,$LIBS,pthread) + CF_ADD_LIB(pthread,TEST_LIBS) + CF_ADD_LIB(pthread,TEST_LIBS2) else LIB_SUFFIX="t${LIB_SUFFIX}" fi @@ -1149,19 +1224,14 @@ test "$with_wgetch_events" = yes && AC_DEFINE(NCURSES_WGETCH_EVENTS) CF_HELP_MESSAGE(Testing/development Options:) ### use option --disable-echo to suppress full display compiling commands -AC_MSG_CHECKING(if you want to display full commands during build) -AC_ARG_ENABLE(echo, - [ --enable-echo build: display "compiling" commands (default)], - [with_echo=$enableval], - [with_echo=yes]) -if test "$with_echo" = yes; then +CF_DISABLE_ECHO +if test "$enable_echo" = yes; then ECHO_LINK= else ECHO_LINK='@ echo linking $@ ... ;' test -n "$LIBTOOL" && LIBTOOL="$LIBTOOL --silent" test -n "$LIBTOOL_CXX" && LIBTOOL_CXX="$LIBTOOL_CXX --silent" fi -AC_MSG_RESULT($with_echo) AC_SUBST(ECHO_LINK) ### use option --enable-warnings to turn on all gcc warnings @@ -1172,13 +1242,14 @@ 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) fi fi CF_GCC_ATTRIBUTES +CF_ENABLE_STRING_HACKS ### use option --enable-assertions to turn on generation of assertion code AC_MSG_CHECKING(if you want to enable runtime assertions) @@ -1191,10 +1262,9 @@ if test -n "$GCC" then if test "$with_assertions" = no then - AC_DEFINE(NDEBUG) CPPFLAGS="$CPPFLAGS -DNDEBUG" else - ADAFLAGS="$ADAFLAGS -gnata" + CF_ADD_ADAFLAGS(-gnata) fi fi @@ -1249,7 +1319,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 @@ -1268,6 +1338,7 @@ fcntl.h \ getopt.h \ limits.h \ locale.h \ +math.h \ poll.h \ sys/bsdtypes.h \ sys/ioctl.h \ @@ -1281,11 +1352,13 @@ unistd.h \ wctype.h \ ) +CF_GETOPT_HEADER + # check for ISC (this may also define _POSIX_SOURCE) # Note: even non-Posix ISC needs 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 @@ -1364,10 +1437,13 @@ else AC_FUNC_SETVBUF_REVERSED fi AC_TYPE_SIGNAL +AC_CHECK_TYPE(intptr_t, long) 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 @@ -1375,10 +1451,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) @@ -1412,50 +1489,14 @@ if test -n "$CXX" ; then ;; esac - AC_CHECK_HEADERS(iostream typeinfo) - - if test x"$ac_cv_header_iostream" = xyes ; then - AC_MSG_CHECKING(if iostream uses std-namespace) - AC_TRY_COMPILE([ -#include -using std::endl; -using std::cerr;],[ -cerr << "testing" << endl; -],[cf_iostream_namespace=yes],[cf_iostream_namespace=no]) - AC_MSG_RESULT($cf_iostream_namespace) - if test "$cf_iostream_namespace" = yes ; then - AC_DEFINE(IOSTREAM_NAMESPACE) - fi - fi - + AC_CHECK_HEADERS(typeinfo) + CF_CXX_IOSTREAM_NAMESPACE CF_BOOL_DECL CF_BOOL_SIZE CF_ETIP_DEFINES CF_CPP_PARAM_INIT CF_CPP_STATIC_CAST - - CXX_AR='$(AR)' - CXX_ARFLAGS='$(ARFLAGS)' - case $cf_cv_system_name in #(vi - irix*) #(vi - if test "$GXX" != yes ; then - CXX_AR='$(CXX)' - CXX_ARFLAGS='-ar -o' - fi - ;; - sco3.2v5*) #(vi - CXXLDFLAGS="-u main" - ;; - solaris2*) - if test "$GXX" != yes ; then - CXX_AR='$(CXX)' - CXX_ARFLAGS='-xar -o' - fi - ;; - esac - AC_SUBST(CXXLDFLAGS) - AC_SUBST(CXX_AR) - AC_SUBST(CXX_ARFLAGS) + CF_CXX_AR_FLAGS else cf_cxx_library=no cf_cv_builtin_bool=1 @@ -1516,99 +1557,38 @@ 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(-gnatpn) + CF_FIXUP_ADAFLAGS -fi -fi + CF_GNAT_GENERICS + CF_GNAT_SIGINT + CF_GNAT_PRAGMA_UNREF + CF_GNAT_PROJECTS + + 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: @@ -1633,18 +1613,9 @@ if test "$cf_with_progs" = yes || test "$with_ticlib" != no || test "$with_termc fi fi -LIB_SUBSETS="${LIB_SUBSETS}termlib+port_drivers" - -case $cf_cv_system_name in #(vi -*mingw32*) #(vi - LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con" - ;; -*) #(vi - LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo" - ;; -esac - +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 @@ -1653,6 +1624,20 @@ 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 + *mingw32*) #(vi + LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con" + ;; + *) #(vi + LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo" + ;; + esac +fi + test "$with_widec" = yes && LIB_SUBSETS="${LIB_SUBSETS}+widechar" test "$with_ext_funcs" = yes && LIB_SUBSETS="${LIB_SUBSETS}+ext_funcs" @@ -1718,14 +1703,17 @@ if test "$with_ticlib" != no ; then TICS_DEP_SUFFIX="${TICS_NAME}${DFT_DEP_SUFFIX}" TICS_LIB_SUFFIX="${TICS_NAME}${LIB_SUFFIX}" fi - TICS_ARGS="-L${LIB_DIR} -l${TICS_LIB_SUFFIX}" + TICS_LDFLAGS="-L${LIB_DIR}" + TICS_LIBS="-l${TICS_LIB_SUFFIX}" else - TICS_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" + TICS_LDFLAGS="-L${LIB_DIR}" + TICS_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" fi AC_SUBST(TICS_ARG_SUFFIX) AC_SUBST(TICS_DEP_SUFFIX) AC_SUBST(TICS_LIB_SUFFIX) -AC_SUBST(TICS_ARGS) +AC_SUBST(TICS_LDFLAGS) +AC_SUBST(TICS_LIBS) if test "$with_termlib" != no ; then @@ -1747,14 +1735,22 @@ if test "$with_termlib" != no ; then if test "$DFT_LWR_MODEL" = "libtool"; then TEST_ARGS="${TEST_DEPS}" TEST_ARG2="${TEST_DEP2}" - TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" + TINFO_LDFLAGS="-L${LIB_DIR}" + TINFO_LIBS="$TEST_ARGS" TICS_LIST="$SHLIB_LIST $TEST_ARGS" SHLIB_LIST="${SHLIB_LIST} $TEST_ARGS" else TEST_ARGS="-l${TINFO_ARG_SUFFIX}" TEST_ARG2="-l${TINFO_ARG_SUFFIX}" - TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" - TINFO_ARGS="-L${LIB_DIR} $TEST_ARGS" + if test "x$with_term_driver" != xno ; then + TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" + TICS_LIBS="$TICS_LIBS -l${LIB_NAME}${DFT_ARG_SUFFIX}" + TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX} $TEST_ARGS" + else + TICS_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" + TINFO_LIBS="$TEST_ARGS" + fi + TINFO_LDFLAGS="-L${LIB_DIR}" SHLIB_LIST="$SHLIB_LIST -l${TINFO_LIB_SUFFIX}" fi else @@ -1768,7 +1764,8 @@ else TICS_LIST="$SHLIB_LIST" fi - TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" + TINFO_LDFLAGS="-L${LIB_DIR}" + TINFO_LIBS="-l${LIB_NAME}${DFT_ARG_SUFFIX}" fi if test "$DFT_LWR_MODEL" = shared ; then @@ -1783,7 +1780,8 @@ fi AC_SUBST(TINFO_ARG_SUFFIX) AC_SUBST(TINFO_DEP_SUFFIX) AC_SUBST(TINFO_LIB_SUFFIX) -AC_SUBST(TINFO_ARGS) +AC_SUBST(TINFO_LDFLAGS) +AC_SUBST(TINFO_LIBS) if test "$with_dlsym" = yes ; then CF_REMOVE_LIB(TICS_LIST,$TICS_LIST,dl) @@ -1794,8 +1792,8 @@ if test "$DFT_LWR_MODEL" = "libtool"; then fi # needed for Ada95 -TINFO_ARGS2=`echo "$TINFO_ARGS" | sed -e 's,-L\.\./,-L../../,'` -AC_SUBST(TINFO_ARGS2) +TINFO_LDFLAGS2=`echo "$TINFO_LDFLAGS" | sed -e 's,-L\.\./,-L../../,'` +AC_SUBST(TINFO_LDFLAGS2) case $DFT_LWR_MODEL in normal|debug|profile) @@ -1836,12 +1834,18 @@ AC_DEFINE(HAVE_SLK_COLOR) CF_SRC_MODULES($modules_to_build) -if test "$cf_with_ada" != "no" && test "$cf_cv_prog_gnat_correct" != "no"; then +if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; 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) + +# values to use as strings AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR') AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}") @@ -1849,11 +1853,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) @@ -1864,6 +1863,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" @@ -1872,6 +1872,29 @@ else MAKE_PC_FILES="#" fi AC_SUBST(MAKE_PC_FILES) +AC_SUBST(cross_compiling) + +AC_PATH_PROG(TIC_PATH,tic,unknown,$PATH:/usr/local/ncurses/bin) +if test -n "$FALLBACK_LIST" +then + if test "$TIC_PATH" = unknown + then + AC_MSG_WARN(no tic program found for fallbacks) + fi +fi +AC_SUBST(TIC_PATH) + +if test "x$cf_with_tests" != xno ; then + MAKE_TESTS= +else + MAKE_TESTS="#" +fi +AC_SUBST(MAKE_TESTS) + +ADAHTML_DIR=../../doc/html/ada +AC_SUBST(ADAHTML_DIR) + +SUB_SCRIPTS= AC_OUTPUT( \ include/MKterm.h.awk \ @@ -1879,10 +1902,19 @@ AC_OUTPUT( \ include/ncurses_dll.h \ include/termcap.h \ include/unctrl.h \ + $SUB_SCRIPTS \ $SUB_MAKEFILES \ Makefile,[ -CF_PRG_RULES([$srcdir/test/mk-test.awk ECHO_LINK="$ECHO_LINK"], test) +if test "x$cf_with_tests" != xno ; then + CF_PRG_RULES([$srcdir/test/mk-test.awk INSTALL=no ECHO_LINK="$ECHO_LD"], test) +fi CF_LIB_RULES($SRC_SUBDIRS) + +if test "x$cf_with_ada" = "xyes" && test "x$cf_cv_prog_gnat_correct" = "xyes"; then +if test -z "$USE_OLD_MAKERULES" ; then + $AWK -f $srcdir/Ada95/mk-1st.awk <$srcdir/Ada95/src/modules >>Ada95/src/Makefile +fi +fi ],[ ### Special initialization commands, used to pass information from the ### configuration-run into config.status @@ -1890,12 +1922,15 @@ CF_LIB_RULES($SRC_SUBDIRS) AWK="$AWK" DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" DFT_LWR_MODEL="$DFT_LWR_MODEL" -ECHO_LINK="$ECHO_LINK" +ECHO_LD="$ECHO_LD" LDCONFIG="$LDCONFIG" +LIBTOOL_VERSION="$LIBTOOL_VERSION" LIB_NAME="$LIB_NAME" +LIB_PREFIX="$LIB_PREFIX" LIB_SUBSETS="$LIB_SUBSETS" LIB_SUFFIX="$LIB_SUFFIX" LIB_TRACING="$LIB_TRACING" +LN_S="$LN_S" MAKE_TERMINFO="$MAKE_TERMINFO" NCURSES_MAJOR="$NCURSES_MAJOR" NCURSES_MINOR="$NCURSES_MINOR" @@ -1906,10 +1941,12 @@ TERMINFO="$TERMINFO" TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX" TICS_LIB_SUFFIX="$TICS_LIB_SUFFIX" TICS_NAME="$TICS_NAME" +TIC_PATH="$TIC_PATH" TINFO_ARG_SUFFIX="$TINFO_ARG_SUFFIX" TINFO_LIB_SUFFIX="$TINFO_LIB_SUFFIX" TINFO_NAME="$TINFO_NAME" TINFO_SUFFIX="$TINFO_SUFFIX" +USE_OLD_MAKERULES="$USE_OLD_MAKERULES" WITH_CURSES_H="$with_curses_h" WITH_ECHO="$with_echo" WITH_OVERWRITE="$with_overwrite" @@ -1921,16 +1958,20 @@ cf_cv_enable_lp64="$cf_cv_enable_lp64" cf_cv_enable_opaque="$cf_cv_enable_opaque" cf_cv_prog_CC_c_o=$cf_cv_prog_CC_c_o cf_cv_prog_CXX_c_o=$cf_cv_prog_CXX_c_o +cf_cv_prog_gnat_correct=$cf_cv_prog_gnat_correct cf_cv_rel_version="$cf_cv_rel_version" cf_cv_rm_so_locs="$cf_cv_rm_so_locs" cf_cv_shared_soname='$cf_cv_shared_soname' cf_cv_shlib_version="$cf_cv_shlib_version" cf_cv_shlib_version_infix="$cf_cv_shlib_version_infix" cf_cv_system_name="$cf_cv_system_name" +cf_cv_term_driver="$with_term_driver" +cf_with_ada="$cf_with_ada" cf_with_cxx_binding="$cf_with_cxx_binding" cf_with_manpages="$cf_with_manpages" +cf_with_tests="$cf_with_tests" host="$host" target="$target" ],cat)dnl -${MAKE-make} preinstall +${MAKE:-make} preinstall