This commit was manufactured by cvs2svn to create branch
[external/binutils.git] / readline / configure.in
index 1d14098..406e172 100644 (file)
-# This file is a shell script fragment that supplies the information
-# necessary to tailor a template configure script into the configure
-# script appropriate for this directory.  For more information, check
-# any existing configure script.
+dnl
+dnl Configure script for readline library
+dnl
+dnl report bugs to chet@po.cwru.edu
+dnl
+dnl Process this file with autoconf to produce a configure script.
+AC_REVISION([for Readline 4.3, version 2.45, from autoconf version] AC_ACVERSION)
 
-configdirs=
-srctrigger=readline.c
-srcname="the readline library"
+AC_INIT(readline, 4.3, bug-readline@gnu.org)
 
-# per-host:
+dnl make sure we are using a recent autoconf version
+AC_PREREQ(2.50)
 
-case "${host_os}" in
-sysv* | irix* | aix*) host_makefile_frag=config/hmake-sysv ;;
+AC_CONFIG_SRCDIR(readline.h)
+dnl AC_CONFIG_AUX_DIR(./support)
+AC_CONFIG_HEADERS(config.h)
+
+dnl update the value of RL_READLINE_VERSION in readline.h when this changes
+LIBVERSION=4.3
+
+AC_CANONICAL_HOST
+
+dnl configure defaults
+opt_curses=no
+
+dnl arguments to configure
+AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
+
+if test "$opt_curses" = "yes"; then
+       prefer_curses=yes
+fi
+
+dnl option parsing for optional features
+opt_static_libs=yes
+opt_shared_libs=no
+
+AC_ARG_ENABLE(static, AC_HELP_STRING([--enable-static], [build static libraries [[default=YES]]]), opt_static_libs=$enableval)
+
+echo ""
+echo "Beginning configuration for readline-$LIBVERSION for ${host_cpu}-${host_vendor}-${host_os}"
+echo ""
+
+# We want these before the checks, so the checks can modify their values.
+test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
+
+AC_PROG_MAKE_SET
+AC_PROG_CC
+dnl AC_AIX
+AC_MINIX
+
+dnl BEGIN changes for CYGNUS cross-building for Cygwin
+dnl load up the cross-building cache file -- add more cases and cache
+dnl files as necessary
+if test "x$cross_compiling" = "xyes"; then
+    case "${host}" in
+    *-cygwin*)
+       cross_cache=${srcdir}/cross-build/cygwin.cache
+       if test -r "${cross_cache}"; then
+           echo "loading cross-build cache file ${cross_cache}"
+           . ${cross_cache}
+       fi
+       LOCAL_CFLAGS="$LOCAL_CFLAGS -I${srcdir}/../libtermcap"
+       unset cross_cache
+       ;;
+    *)  echo "configure: cross-compiling for a non-cygwin target is not supported" >&2
+       ;;
+    esac
+fi
+if test "x$cross_compiling" = "xyes"; then
+  CROSS_COMPILING_FLAG=-DCROSS_COMPILING
+else
+  CROSS_COMPILING_FLAG=
+fi
+AC_SUBST(CROSS_COMPILING_FLAG)
+if test -z "$CC_FOR_BUILD"; then
+    if test "x$cross_compiling" = "xno"; then
+        CC_FOR_BUILD='$(CC)'
+    else
+        CC_FOR_BUILD=gcc
+    fi
+fi
+AC_SUBST(CC_FOR_BUILD)
+dnl END changes for CYGNUS cross-building for Cygwin
+
+# If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
+test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
+
+AC_PROG_GCC_TRADITIONAL
+AC_PROG_INSTALL
+AC_CHECK_PROG(AR, ar, , ar)
+dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
+dnl This allows people to set it when running configure or make
+test -n "$ARFLAGS" || ARFLAGS="cr"
+AC_PROG_RANLIB
+
+MAKE_SHELL=/bin/sh
+AC_SUBST(MAKE_SHELL)
+
+AC_C_CONST
+AC_C_PROTOTYPES
+AC_C_CHAR_UNSIGNED
+
+AC_TYPE_SIGNAL
+
+AC_TYPE_SIZE_T
+AC_CHECK_TYPE(ssize_t, int)
+
+AC_HEADER_STAT
+AC_HEADER_DIRENT
+
+AC_CHECK_FUNCS(lstat memmove putenv select setenv setlocale \
+               strcasecmp strpbrk tcgetattr vsnprintf isascii isxdigit)
+
+AC_FUNC_STRCOLL
+
+AC_CHECK_HEADERS(unistd.h stdlib.h varargs.h stdarg.h string.h strings.h \
+               limits.h sys/ptem.h sys/pte.h sys/stream.h sys/select.h \
+               termcap.h termios.h termio.h sys/file.h locale.h memory.h )
+
+BASH_SYS_SIGNAL_VINTAGE
+BASH_SYS_REINSTALL_SIGHANDLERS
+
+BASH_FUNC_POSIX_SETJMP
+BASH_FUNC_LSTAT
+BASH_FUNC_STRCOLL
+
+BASH_CHECK_GETPW_FUNCS
+
+AC_HEADER_TIOCGWINSZ
+
+BASH_TYPE_SIGHANDLER
+BASH_HAVE_TIOCSTAT
+BASH_HAVE_FIONREAD
+BASH_CHECK_SPEED_T
+BASH_STRUCT_WINSIZE
+BASH_STRUCT_DIRENT_D_INO
+BASH_STRUCT_DIRENT_D_FILENO
+
+dnl yuck
+case "$host_os" in
+aix*)   prefer_curses=yes ;;
+esac
+BASH_CHECK_LIB_TERMCAP
+if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
+       if test "$prefer_curses" = yes; then
+               TERMCAP_LIB=-lcurses
+       else
+               TERMCAP_LIB=-ltermcap   #default
+       fi
+fi
+
+BASH_CHECK_MULTIBYTE
+
+case "$host_cpu" in
+*cray*)        LOCAL_CFLAGS=-DCRAY ;;
+*s390*) LOCAL_CFLAGS=-fsigned-char ;;
+esac
+
+case "$host_os" in
+isc*)  LOCAL_CFLAGS=-Disc386 ;;
+esac
+
+# shared library configuration section
+#
+# Shared object configuration section.  These values are generated by
+# ${srcdir}/support/shobj-conf
+#
+if test -f ${srcdir}/support/shobj-conf; then
+        AC_MSG_CHECKING(configuration for building shared libraries)
+        eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
+        AC_SUBST(SHOBJ_CC)
+        AC_SUBST(SHOBJ_CFLAGS)
+        AC_SUBST(SHOBJ_LD)
+        AC_SUBST(SHOBJ_LDFLAGS)
+       AC_SUBST(SHOBJ_XLDFLAGS)
+        AC_SUBST(SHOBJ_LIBS)
+        AC_SUBST(SHOBJ_STATUS)
+       AC_SUBST(SHLIB_STATUS)
+       AC_SUBST(SHLIB_XLDFLAGS)
+       AC_SUBST(SHLIB_LIBSUFF)
+       AC_SUBST(SHLIB_LIBVERSION)
+       AC_SUBST(SHLIB_LIBS)
+        AC_MSG_RESULT($SHLIB_STATUS)
+
+       # SHLIB_STATUS is either `supported' or `unsupported'.  If it's
+       # `unsupported', turn off any default shared library building
+       if test "$SHLIB_STATUS" = 'unsupported'; then
+               opt_shared_libs=no
+       fi
+
+       # shared library versioning
+       # quoted for m4 so I can use character classes
+       SHLIB_MAJOR=[`expr "$LIBVERSION" : '\([0-9]\)\..*'`]
+       SHLIB_MINOR=[`expr "$LIBVERSION" : '[0-9]\.\([0-9]\).*'`]
+       AC_SUBST(SHLIB_MAJOR)
+       AC_SUBST(SHLIB_MINOR)
+fi
+
+if test "$opt_static_libs" = "yes"; then
+       STATIC_TARGET=static
+       STATIC_INSTALL_TARGET=install-static
+fi
+if test "$opt_shared_libs" = "yes"; then
+       SHARED_TARGET=shared
+       SHARED_INSTALL_TARGET=install-shared
+fi
+
+AC_SUBST(STATIC_TARGET)
+AC_SUBST(SHARED_TARGET)
+AC_SUBST(STATIC_INSTALL_TARGET)
+AC_SUBST(SHARED_INSTALL_TARGET)
+
+case "$host_os" in
+msdosdjgpp*)   BUILD_DIR=`pwd.exe` ;;  # to prevent //d/path/file
+*)             BUILD_DIR=`pwd` ;;
 esac
 
-# per-target:
+AC_SUBST(BUILD_DIR)
+
+AC_SUBST(CFLAGS)
+AC_SUBST(LOCAL_CFLAGS)
+AC_SUBST(LOCAL_LDFLAGS)
+AC_SUBST(LOCAL_DEFS)
+
+AC_SUBST(AR)
+AC_SUBST(ARFLAGS)
+
+AC_SUBST(host_cpu)
+AC_SUBST(host_os)
+
+AC_SUBST(LIBVERSION)
+
+AC_SUBST(TERMCAP_LIB)
 
+AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile],
+[
+# Makefile uses this timestamp file to record whether config.h is up to date.
+echo > stamp-h
+])