X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=configure.in;h=d8e386ba2433f2ec0f82244357921a09c15d5dcb;hp=1a4a0c86ecac6e8518a798662257bfb812cc885c;hb=eae581c0044c1c0ef9caa17fc9b9ae6ef4c93cca;hpb=a21e1b511e3c79ea7c4786f6b0e48850e7fa94f0;ds=sidebyside diff --git a/configure.in b/configure.in index 1a4a0c86..d8e386ba 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ dnl*************************************************************************** -dnl Copyright (c) 1998-2006,2007 Free Software Foundation, Inc. * +dnl Copyright (c) 1998-2008,2009 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.434 2008/05/17 19:50:19 tom Exp $ +dnl $Id: configure.in,v 1.465 2009/02/07 18:41:03 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.434 $) +AC_REVISION($Revision: 1.465 $) AC_INIT(ncurses/base/lib_initscr.c) AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) @@ -122,6 +122,13 @@ AC_ARG_WITH(ada, [cf_with_ada=yes]) AC_MSG_RESULT($cf_with_ada) +AC_MSG_CHECKING(if you want to install manpages) +AC_ARG_WITH(manpages, + [ --without-manpages suppress install of manpages], + [cf_with_manpages=$withval], + [cf_with_manpages=yes]) +AC_MSG_RESULT($cf_with_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)], @@ -152,6 +159,31 @@ AC_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) + AC_MSG_CHECKING(if we should assume mixed-case filenames) AC_ARG_ENABLE(mixed-case, [ --enable-mixed-case tic should assume mixed-case filenames], @@ -176,7 +208,7 @@ dnl These are standard among *NIX systems, but not when cross-compiling AC_CHECK_TOOL(RANLIB, ranlib, ':') AC_CHECK_TOOL(LD, ld, ld) AC_CHECK_TOOL(AR, ar, ar) -CF_SUBST(archiver options,AR_OPTS,rv) +CF_AR_FLAGS dnl Special option for use by system-builders: the install-prefix is used to dnl adjust the location into which the actual install is done, so that an @@ -361,12 +393,7 @@ AC_MSG_RESULT($LD_MODEL) case $DFT_LWR_MODEL in shared) -AC_MSG_CHECKING(if rpath option should be used) -AC_ARG_ENABLE(rpath, -[ --enable-rpath use rpath option when generating shared libraries], -[cf_cv_ld_rpath=$enableval], -[cf_cv_ld_rpath=no]) -AC_MSG_RESULT($cf_cv_ld_rpath) +CF_ENABLE_RPATH AC_MSG_CHECKING(if shared libraries should be relinked during install) AC_ARG_ENABLE(relink, [ --disable-relink relink shared libraries during install], @@ -428,6 +455,8 @@ if test "$use_database" != no ; then [ --with-hashed-db specify hashed-database library],, [with_hashed_db=no]) AC_MSG_RESULT($with_hashed_db) +else + with_hashed_db=no fi AC_MSG_CHECKING(for list of fallback descriptions) @@ -504,12 +533,13 @@ AC_MSG_RESULT($with_big_core) test "$with_big_core" = "yes" && AC_DEFINE(HAVE_BIG_CORE) ### ISO C only guarantees 512-char strings, we have tables which load faster -### when constructed using "big" strings. +### when constructed using "big" strings. More than the C compiler, the awk +### program is a limit on most vendor UNIX systems. Check that we can build. AC_MSG_CHECKING(if big-strings option selected) AC_ARG_ENABLE(big-strings, [ --disable-big-strings assume compiler has only standard-size strings], - [with_big_strings=no], - [with_big_strings=yes]) + [with_big_strings=$enableval], + [CF_AWK_BIG_PRINTF(12000,with_big_strings)]) AC_MSG_RESULT($with_big_strings) USE_BIG_STRINGS=0 @@ -681,10 +711,10 @@ if test "$with_widec" = yes ; then CF_PREDEFINE(_XOPEN_SOURCE_EXTENDED) # with_overwrite=no NCURSES_CH_T=cchar_t - AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc) + AC_CHECK_FUNCS(putwc btowc wctob mbtowc wctomb mblen mbrlen mbrtowc wcsrtombs mbsrtowcs wcstombs mbstowcs) if test "$ac_cv_func_putwc" != yes ; then - CF_LIBUTF8 - if test "$cf_cv_libutf8" = yes ; then + CF_UTF8_LIB + if test "$cf_cv_utf8_lib" != no ; then NCURSES_LIBUTF8=1 fi fi @@ -744,6 +774,18 @@ NCURSES_TPARM_VARARGS=0 test "$with_tparm_varargs" = yes && NCURSES_TPARM_VARARGS=1 AC_SUBST(NCURSES_TPARM_VARARGS) +### use option --disable-tic-depends to make libtic not explicitly depend on ncurses/ncursesw +if test "$with_ticlib" != no ; then +AC_MSG_CHECKING(if you want tic library to use explicit dependency on ncurses$LIB_SUFFIX library) +AC_ARG_ENABLE(tic-depends, + [ --disable-tic-depends link tic library without explicit dependency on ncurses library], + [with_tic_depends=$enableval], + [with_tic_depends=yes]) +AC_MSG_RESULT($with_tic_depends) +else + with_tic_depends=no +fi + ### use option --with-bool to override bool's type AC_MSG_CHECKING(for type of bool) AC_ARG_WITH(bool, @@ -797,7 +839,7 @@ AC_MSG_RESULT($with_rcs_ids) test "$with_rcs_ids" = yes && AC_DEFINE(USE_RCS_IDS) ############################################################################### -CF_MAN_PAGES([ captoinfo clear infocmp infotocap tic toe tput ]) +CF_MAN_PAGES([ captoinfo clear infocmp infotocap tabs tic toe tput tset ]) ############################################################################### CF_HELP_MESSAGE(Extensions:) @@ -818,10 +860,13 @@ if test "$with_ext_funcs" = yes ; then AC_DEFINE(HAVE_USE_DEFAULT_COLORS) AC_DEFINE(HAVE_WRESIZE) AC_DEFINE(NCURSES_EXT_FUNCS) + GENERATED_EXT_FUNCS=generated else NCURSES_EXT_FUNCS=0 + GENERATED_EXT_FUNCS= fi AC_SUBST(NCURSES_EXT_FUNCS) +AC_SUBST(GENERATED_EXT_FUNCS) ### use option --enable-const to turn on use of const beyond that in XSI. AC_MSG_CHECKING(for extended use of const keyword) @@ -972,10 +1017,32 @@ test "$with_colorfgbg" = yes && AC_DEFINE(USE_COLORFGBG) # 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 $cf_cv_weak_symbols = yes ; then + AC_DEFINE(USE_WEAK_SYMBOLS) +fi + +PTHREAD= if test "$with_pthread" = "yes" ; then AC_DEFINE(USE_PTHREADS) enable_reentrant=yes + if test $cf_cv_weak_symbols = yes ; then + PTHREAD=-lpthread + fi fi +AC_SUBST(PTHREAD) # Reentrant code has to be opaque; there's little advantage to making ncurses # opaque outside of that, so there is no --enable-opaque option. We can use @@ -992,7 +1059,11 @@ if test "$with_reentrant" = yes ; then cf_cv_enable_opaque="NCURSES_INTERNALS" NCURSES_OPAQUE=1 NCURSES_SIZE_T=int - LIB_SUFFIX="t${LIB_SUFFIX}" + if test $cf_cv_weak_symbols = yes ; then + CF_REMOVE_LIB(LIBS,$LIBS,pthread) + else + LIB_SUFFIX="t${LIB_SUFFIX}" + fi AC_DEFINE(USE_REENTRANT) CF_NCURSES_ABI_6 else @@ -1297,6 +1368,20 @@ if test -n "$CXX" ; then 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 + CF_BOOL_DECL CF_BOOL_SIZE CF_ETIP_DEFINES @@ -1304,12 +1389,12 @@ if test -n "$CXX" ; then CF_CPP_STATIC_CAST CXX_AR='$(AR)' - CXX_AR_OPTS='$(AR_OPTS)' + CXX_ARFLAGS='$(ARFLAGS)' case $cf_cv_system_name in #(vi irix*) #(vi if test "$GXX" != yes ; then CXX_AR='$(CXX)' - CXX_AR_OPTS='-ar -o' + CXX_ARFLAGS='-ar -o' fi ;; sco3.2v5*) #(vi @@ -1318,13 +1403,13 @@ if test -n "$CXX" ; then solaris2*) if test "$GXX" != yes ; then CXX_AR='$(CXX)' - CXX_AR_OPTS='-xar -o' + CXX_ARFLAGS='-xar -o' fi ;; esac AC_SUBST(CXXLDFLAGS) AC_SUBST(CXX_AR) - AC_SUBST(CXX_AR_OPTS) + AC_SUBST(CXX_ARFLAGS) else cf_cxx_library=no cf_cv_builtin_bool=1 @@ -1527,16 +1612,7 @@ AC_SUBST(DFT_ARG_SUFFIX)dnl the string to append to "-lncurses" ("") AC_MSG_RESULT($DFT_ARG_SUFFIX) AC_MSG_CHECKING(default library-dependency suffix) -CF_LIB_SUFFIX($DFT_LWR_MODEL,DFT_DEP_SUFFIX)dnl -DFT_LIB_SUFFIX=$DFT_DEP_SUFFIX -if test $DFT_LWR_MODEL = shared ; then - case $cf_cv_system_name in #(vi - cygwin*) - DFT_DEP_SUFFIX=".dll.a" - DFT_LIB_SUFFIX=".dll" - ;; - esac -fi +CF_LIB_SUFFIX($DFT_LWR_MODEL,DFT_LIB_SUFFIX,DFT_DEP_SUFFIX)dnl AC_SUBST(DFT_DEP_SUFFIX)dnl the corresponding library-suffix (".a") AC_MSG_RESULT($DFT_DEP_SUFFIX) @@ -1551,7 +1627,7 @@ AC_MSG_CHECKING(c++ library-dependency suffix) if test "$with_libtool" != "no"; then CXX_LIB_SUFFIX=$DFT_DEP_SUFFIX else - CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX)dnl we normally make a static library + CF_LIB_SUFFIX(normal,CXX_LIB_SUFFIX,CXX_DEP_SUFFIX)dnl we normally make a static library fi AC_MSG_RESULT($CXX_LIB_SUFFIX) AC_SUBST(CXX_LIB_SUFFIX) @@ -1627,7 +1703,11 @@ else TINFO_NAME=${LIB_NAME} TINFO_SUFFIX=${DFT_LIB_SUFFIX} TINFO_ARG_SUFFIX=${LIB_NAME}${DFT_ARG_SUFFIX} - TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" + if test "$with_tic_depends" = yes ; then + TICS_LIST="$SHLIB_LIST -l${LIB_NAME}${DFT_ARG_SUFFIX}" + else + TICS_LIST="$SHLIB_LIST" + fi TINFO_ARGS="-L${LIB_DIR} -l${LIB_NAME}${DFT_ARG_SUFFIX}" fi @@ -1678,6 +1758,7 @@ if test "$NCURSES_LIBUTF8" = 1 ; then AC_MSG_WARN(Wide-character applications must define HAVE_LIBUTF8_H to include curses.h) fi fi +WITH_OVERWRITE=$with_overwrite AC_SUBST(WITH_OVERWRITE) AC_SUBST(TICS_LIST) @@ -1697,12 +1778,12 @@ 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 - SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses-config" + SUB_MAKEFILES="$SUB_MAKEFILES Ada95/gen/adacurses${DFT_ARG_SUFFIX}-config:Ada95/gen/adacurses-config.in" fi CF_DIRS_TO_MAKE -AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATHSEP') +AC_DEFINE_UNQUOTED(NCURSES_PATHSEP,'$PATH_SEPARATOR') AC_DEFINE_UNQUOTED(NCURSES_VERSION_STRING, "${NCURSES_MAJOR}.${NCURSES_MINOR}.${NCURSES_PATCH}") @@ -1720,8 +1801,19 @@ CF_SUBST_IF(["$ac_cv_header_termio_h" = yes], HAVE_TERMIO_H, 1, 0) CF_SUBST_IF(["$ac_cv_header_termios_h" = yes], HAVE_TERMIOS_H, 1, 0) ################################################################################ -test "$use_database" = yes && SUB_MAKEFILES="$SUB_MAKEFILES misc/run_tic.sh:misc/run_tic.in" +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" + +if test x"$enable_pc_files" = xyes ; then \ +SUB_MAKEFILES="$SUB_MAKEFILES misc/gen-pkgconfig:misc/gen-pkgconfig.in" +MAKE_PC_FILES= +else +MAKE_PC_FILES="#" +fi +AC_SUBST(MAKE_PC_FILES) + AC_OUTPUT( \ include/MKterm.h.awk \ include/curses.head:include/curses.h.in \ @@ -1751,13 +1843,13 @@ NCURSES_OSPEED="$NCURSES_OSPEED" NCURSES_PATCH="$NCURSES_PATCH" SRC_SUBDIRS="$SRC_SUBDIRS" TERMINFO="$TERMINFO" +TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX" +TICS_LIB_SUFFIX="$TICS_LIB_SUFFIX" +TICS_NAME="$TICS_NAME" TINFO_ARG_SUFFIX="$TINFO_ARG_SUFFIX" TINFO_LIB_SUFFIX="$TINFO_LIB_SUFFIX" TINFO_NAME="$TINFO_NAME" TINFO_SUFFIX="$TINFO_SUFFIX" -TICS_ARG_SUFFIX="$TICS_ARG_SUFFIX" -TICS_LIB_SUFFIX="$TICS_LIB_SUFFIX" -TICS_NAME="$TICS_NAME" WITH_CURSES_H="$with_curses_h" WITH_ECHO="$with_echo" WITH_OVERWRITE="$with_overwrite" @@ -1771,10 +1863,12 @@ 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_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_with_cxx_binding="$cf_with_cxx_binding" +cf_with_manpages="$cf_with_manpages" host="$host" target="$target"