X-Git-Url: https://ncurses.scripts.mit.edu/?p=ncurses.git;a=blobdiff_plain;f=configure.in;h=df6c775d20c2b6b42db5d34730e5e5e2e8dc3695;hp=c14ebe7914410d07cdd3d1e45716cbcdf59b10a8;hb=b8cca229aaa89adcc41dbd7c7710515e983e60f2;hpb=cc387b11f421650091d84640e05825ea5161ac66 diff --git a/configure.in b/configure.in index c14ebe79..df6c775d 100644 --- a/configure.in +++ b/configure.in @@ -1,5 +1,5 @@ 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 * @@ -28,19 +28,20 @@ dnl*************************************************************************** dnl dnl Author: Thomas E. Dickey 1995-on dnl -dnl $Id: configure.in,v 1.577 2013/12/15 00:03:02 tom Exp $ +dnl $Id: configure.in,v 1.596 2015/01/03 20:44:55 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.577 $) +AC_REVISION($Revision: 1.596 $) AC_INIT(ncurses/base/lib_initscr.c) AC_CONFIG_HEADER(include/ncurses_cfg.h:include/ncurses_cfg.hin) CF_TOP_BUILDDIR CF_SUBST_NCURSES_VERSION +CF_VERSION_INFO(NCURSES,ncurses) CF_WITH_REL_VERSION(NCURSES) CF_WITH_ABI_VERSION @@ -92,6 +93,37 @@ else cf_with_cxx=no; CXX=""; GXX="";])dnl AC_PROG_CXX popdef([AC_MSG_ERROR])dnl + + AC_LANG_PUSH(C++) + if test "x$cf_with_cxx" != xno + then + # Several of the C++ configurations do not work, particularly when + # cross-compiling (20140913 -TD) + AC_MSG_CHECKING(if $CXX works) + + save_CPPFLAGS="$CPPFLAGS" + eval cf_includedir=${includedir} + CPPFLAGS="$CPPFLAGS -I${cf_includedir}" + AC_TRY_COMPILE([ +#include +#include +], + [ + printf("Hello world!\n") + ], + [cf_cxx_works=yes], + [cf_cxx_works=no]) + CPPFLAGS="$save_CPPFLAGS" + + AC_MSG_RESULT($cf_cxx_works) + if test "x$cf_cxx_works" = xno + then + AC_MSG_WARN([Ignore $CXX, since it cannot compile hello-world.]) + cf_with_cxx=no; CXX=""; GXX=""; + fi + fi + AC_LANG_POP + # autoconf 2.5x removed the error (hardcoding it to g++, or just blank) if test "$CXX" = "g++" ; then AC_PATH_PROG(CXX,g++) @@ -178,6 +210,23 @@ AC_SYS_LONG_FILE_NAMES CF_PKG_CONFIG CF_WITH_PKG_CONFIG_LIBDIR CF_ENABLE_PC_FILES +if test -z "$MAKE_PC_FILES" +then + AC_MSG_CHECKING(for suffix to add to pc-files) +AC_ARG_WITH(pc-suffix, + [ --with-pc-suffix suffixes pc-files], + [case "x$withval" in #(vi + xyes|xno) #(vi + PC_MODULE_SUFFIX= + ;; + *) PC_MODULE_SUFFIX="$withval" + ;; + esac]) + test -z "$PC_MODULE_SUFFIX" && PC_MODULE_SUFFIX=none + AC_MSG_RESULT($PC_MODULE_SUFFIX) + test "$PC_MODULE_SUFFIX" = none && PC_MODULE_SUFFIX= + AC_SUBST(PC_MODULE_SUFFIX) +fi AC_MSG_CHECKING(if we should assume mixed-case filenames) AC_ARG_ENABLE(mixed-case, @@ -413,13 +462,28 @@ 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 - if test "$model" = "shared"; then +for model in $cf_list_models; do + case $model in #(vi + libtool) + CF_WITH_LIBTOOL_OPTS + CF_WITH_EXPORT_SYMS + ;; + shared) #(vi + if test "$CC_SHARED_OPTS" = "unknown"; then AC_ERROR(Shared libraries are not supported in this version) fi - done -fi + CF_WITH_VERSIONED_SYMS + ;; + esac +done + +# 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 @@ -743,7 +807,9 @@ AC_ARG_ENABLE(widec, [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]) @@ -1186,11 +1252,17 @@ if test "x$with_reentrant" = xyes ; then # except cygwin, where we only do that if ALSO # compiling with full thread support. case "$host" in - *cygwin* | *msys*) + *cygwin* | *msys*) #(vi if test "$with_pthread" = "yes" ; then - LIB_SUFFIX="t${LIB_SUFFIX}" + if test "x$disable_lib_suffixes" = "xno" ; then + LIB_SUFFIX="t${LIB_SUFFIX}" + fi fi ;; - * ) LIB_SUFFIX="t${LIB_SUFFIX}" ;; + *) + 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]) @@ -1337,9 +1409,13 @@ fi AC_SUBST(ADA_TRACE) +CF_DISABLE_GNAT_PROJECTS + ### Checks for libraries. case $cf_cv_system_name in #(vi -*mingw32*) #(vi +*mingw32*|*mingw64*) #(vi + CPPFLAGS="$CPPFLAGS -DWINVER=0x0501" + LIBS=" -lpsapi $LIBS" ;; *) AC_CHECK_FUNC(gettimeofday, @@ -1428,6 +1504,7 @@ AC_CHECK_FUNCS( \ getcwd \ getegid \ geteuid \ +getopt \ getttynam \ issetugid \ poll \ @@ -1446,6 +1523,12 @@ tcgetpgrp \ times \ vsnprintf \ ) + +if test "x$ac_cv_func_getopt" = xno && + test "x$cf_with_progs$cf_with_tests" != xnono; then + AC_MSG_ERROR(getopt is required for building programs) +fi + if test "x$with_getcap" = "xyes" ; then CF_CGETENT fi @@ -1467,6 +1550,7 @@ else AC_FUNC_SETVBUF_REVERSED fi AC_CHECK_TYPE(intptr_t, long) +AC_CHECK_TYPE(ssize_t, int) CF_TYPE_SIGACTION CF_SIZECHANGE CF_FUNC_MEMMOVE @@ -1601,9 +1685,10 @@ dnl At the moment we support no other Ada95 compiler. CF_ADD_ADAFLAGS(-gnatpn) CF_FIXUP_ADAFLAGS + CF_GNATPREP_OPT_T + CF_GNAT_GENERICS CF_GNAT_SIGINT - CF_GNAT_PRAGMA_UNREF CF_GNAT_PROJECTS CF_WITH_ADA_COMPILER @@ -1663,8 +1748,9 @@ LIB_SUBSETS="${LIB_SUBSETS}base" if test "$with_term_driver" != no ; then LIB_SUBSETS="${LIB_SUBSETS}+port_drivers" case $cf_cv_system_name in #(vi - *mingw32*) #(vi + *mingw32*|*mingw64*) #(vi LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo+port_win32con" + CPPFLAGS="$CPPFLAGS -DUSE_WIN32CON_DRIVER" ;; *) #(vi LIB_SUBSETS="${LIB_SUBSETS}+port_tinfo" @@ -1898,6 +1984,7 @@ CF_ADD_CFLAGS($EXTRA_CFLAGS) ### 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) @@ -1972,8 +2059,58 @@ case "x$NCURSES_OSPEED" in #(vi 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 + +# substitute into misc/Makefile to suppress +# (un)install.data from the +# (un)install rules. +if test "x$cf_with_db_install" = "xno"; then + MISC_INSTALL_DATA= + MISC_UNINSTALL_DATA= +else + MISC_INSTALL_DATA=install.data + MISC_UNINSTALL_DATA=uninstall.data +fi +AC_SUBST(MISC_INSTALL_DATA) +AC_SUBST(MISC_UNINSTALL_DATA) + SUB_SCRIPTS= +dnl Override the package used for exported symbols +if test -n "$PACKAGE" +then + PACKAGE="${PACKAGE}${DFT_ARG_SUFFIX}" + export PACKAGE + echo "package: $PACKAGE" +fi + +if test -n "$RESULTING_SYMS" +then + UNALTERED_SYMS=`echo "$RESULTING_SYMS" | sed -e 's/\\$/\\\\$/g'` + case $cf_cv_abi_version in + [[6789]]) + CF_VERBOSE(will map symbols to ABI=$cf_cv_abi_version) + RESULTING_SYMS=resulting.map + ;; + *) + CF_VERBOSE(will map symbols to default ABI) + ;; + esac +else + UNALTERED_SYMS= +fi +AC_SUBST(UNALTERED_SYMS) + AC_OUTPUT( \ include/MKterm.h.awk \ include/curses.head:include/curses.h.in \ @@ -1998,6 +2135,7 @@ fi ### configuration-run into config.status AWK="$AWK" +ALTERNATE_SYMS="$ALTERNATE_SYMS" DFT_ARG_SUFFIX="$DFT_ARG_SUFFIX" DFT_LWR_MODEL="$DFT_LWR_MODEL" ECHO_LD="$ECHO_LD" @@ -2024,6 +2162,7 @@ TINFO_ARG_SUFFIX="$TINFO_ARG_SUFFIX" TINFO_LIB_SUFFIX="$TINFO_LIB_SUFFIX" TINFO_NAME="$TINFO_NAME" TINFO_SUFFIX="$TINFO_SUFFIX" +UNALTERED_SYMS="$UNALTERED_SYMS" USE_OLD_MAKERULES="$USE_OLD_MAKERULES" WITH_CURSES_H="$with_curses_h" WITH_ECHO="${enable_echo:=yes}" @@ -2049,9 +2188,9 @@ 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" host="$host" target="$target" +with_shared_cxx="$with_shared_cxx" ],cat)dnl ${MAKE:-make} preinstall