Blame readline/configure.in

Packit Service 706eca
dnl
Packit Service 706eca
dnl Configure script for readline library
Packit Service 706eca
dnl
Packit Service 706eca
dnl report bugs to chet@po.cwru.edu
Packit Service 706eca
dnl
Packit Service 706eca
dnl Process this file with autoconf to produce a configure script.
Packit Service 706eca
Packit Service 706eca
# Copyright (C) 1987-2009 Free Software Foundation, Inc.
Packit Service 706eca
Packit Service 706eca
#   This program is free software: you can redistribute it and/or modify
Packit Service 706eca
#   it under the terms of the GNU General Public License as published by
Packit Service 706eca
#   the Free Software Foundation, either version 3 of the License, or
Packit Service 706eca
#   (at your option) any later version.
Packit Service 706eca
Packit Service 706eca
#   This program is distributed in the hope that it will be useful,
Packit Service 706eca
#   but WITHOUT ANY WARRANTY; without even the implied warranty of
Packit Service 706eca
#   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
Packit Service 706eca
#   GNU General Public License for more details.
Packit Service 706eca
Packit Service 706eca
#   You should have received a copy of the GNU General Public License
Packit Service 706eca
#   along with this program.  If not, see <http://www.gnu.org/licenses/>.
Packit Service 706eca
Packit Service 706eca
AC_REVISION([for Readline 6.2, version 2.67])
Packit Service 706eca
Packit Service 706eca
m4_include([../config/override.m4])
Packit Service 706eca
Packit Service 706eca
AC_INIT(readline, 6.2, bug-readline@gnu.org)
Packit Service 706eca
Packit Service 706eca
dnl make sure we are using a recent autoconf version
Packit Service 706eca
AC_PREREQ(2.50)
Packit Service 706eca
Packit Service 706eca
AC_CONFIG_SRCDIR(readline.h)
Packit Service 706eca
dnl GDB LOCAL
Packit Service 706eca
dnl AC_CONFIG_AUX_DIR(./support)
Packit Service 706eca
AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
Packit Service 706eca
AC_CONFIG_HEADERS(config.h)
Packit Service 706eca
Packit Service 706eca
dnl update the value of RL_READLINE_VERSION in readline.h when this changes
Packit Service 706eca
LIBVERSION=6.2
Packit Service 706eca
Packit Service 706eca
AC_CANONICAL_HOST
Packit Service 706eca
AC_CANONICAL_BUILD
Packit Service 706eca
Packit Service 706eca
dnl configure defaults
Packit Service 706eca
opt_curses=no
Packit Service 706eca
opt_purify=no
Packit Service 706eca
Packit Service 706eca
dnl arguments to configure
Packit Service 706eca
AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
Packit Service 706eca
AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval)
Packit Service 706eca
Packit Service 706eca
if test "$opt_curses" = "yes"; then
Packit Service 706eca
	prefer_curses=yes
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
if test "$opt_purify" = yes; then
Packit Service 706eca
	PURIFY="purify"
Packit Service 706eca
else
Packit Service 706eca
	PURIFY=
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
dnl option parsing for optional features
Packit Service 706eca
opt_multibyte=yes
Packit Service 706eca
opt_static_libs=yes
Packit Service 706eca
opt_shared_libs=no
Packit Service 706eca
Packit Service 706eca
AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval)
Packit Service 706eca
dnl AC_ARG_ENABLE(shared, AC_HELP_STRING([--enable-shared], [build shared libraries [[default=YES]]]), opt_shared_libs=$enableval)
Packit Service 706eca
AC_ARG_ENABLE(static, AC_HELP_STRING([--enable-static], [build static libraries [[default=YES]]]), opt_static_libs=$enableval)
Packit Service 706eca
Packit Service 706eca
if test $opt_multibyte = no; then
Packit Service 706eca
AC_DEFINE(NO_MULTIBYTE_SUPPORT)
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
dnl load up the cross-building cache file -- add more cases and cache
Packit Service 706eca
dnl files as necessary
Packit Service 706eca
Packit Service 706eca
dnl Note that host and target machine are the same, and different than the
Packit Service 706eca
dnl build machine.
Packit Service 706eca
Packit Service 706eca
CROSS_COMPILE=
Packit Service 706eca
if test "x$cross_compiling" = "xyes"; then
Packit Service 706eca
    case "${host}" in
Packit Service 706eca
    *-cygwin*)
Packit Service 706eca
        cross_cache=${srcdir}/cross-build/cygwin.cache
Packit Service 706eca
        ;;
Packit Service 706eca
    *-mingw*)
Packit Service 706eca
        cross_cache=${srcdir}/cross-build/mingw.cache
Packit Service 706eca
        ;;
Packit Service 706eca
    i[[3456]]86-*-beos*)
Packit Service 706eca
        cross_cache=${srcdir}/cross-build/x86-beos.cache
Packit Service 706eca
        ;;
Packit Service 706eca
    *)  echo "configure: cross-compiling for $host is not supported" >&2
Packit Service 706eca
        ;;
Packit Service 706eca
    esac
Packit Service 706eca
    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
Packit Service 706eca
        echo "loading cross-build cache file ${cross_cache}"
Packit Service 706eca
        . ${cross_cache}
Packit Service 706eca
    fi
Packit Service 706eca
    unset cross_cache
Packit Service 706eca
    CROSS_COMPILE='-DCROSS_COMPILING'
Packit Service 706eca
    AC_SUBST(CROSS_COMPILE)
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
echo ""
Packit Service 706eca
echo "Beginning configuration for readline-$LIBVERSION for ${host_cpu}-${host_vendor}-${host_os}"
Packit Service 706eca
echo ""
Packit Service 706eca
Packit Service 706eca
# We want these before the checks, so the checks can modify their values.
Packit Service 706eca
test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
Packit Service 706eca
Packit Service 706eca
AC_PROG_MAKE_SET
Packit Service 706eca
AC_PROG_CC
Packit Service 706eca
dnl AC_AIX
Packit Service 706eca
AC_MINIX
Packit Service 706eca
Packit Service 706eca
# If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
Packit Service 706eca
test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
Packit Service 706eca
Packit Service 706eca
AC_PROG_GCC_TRADITIONAL
Packit Service 706eca
AC_PROG_INSTALL
Packit Service 706eca
AC_CHECK_PROG(AR, ar, , ar)
Packit Service 706eca
dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
Packit Service 706eca
dnl This allows people to set it when running configure or make
Packit Service 706eca
test -n "$ARFLAGS" || ARFLAGS="cr"
Packit Service 706eca
AC_PROG_RANLIB
Packit Service 706eca
Packit Service 706eca
MAKE_SHELL=/bin/sh
Packit Service 706eca
AC_SUBST(MAKE_SHELL)
Packit Service 706eca
Packit Service 706eca
AC_C_CONST
Packit Service 706eca
AC_C_PROTOTYPES
Packit Service 706eca
AC_C_CHAR_UNSIGNED
Packit Service 706eca
AC_C_VOLATILE
Packit Service 706eca
Packit Service 706eca
AC_TYPE_SIGNAL
Packit Service 706eca
Packit Service 706eca
AC_TYPE_SIZE_T
Packit Service 706eca
AC_CHECK_TYPE(ssize_t, int)
Packit Service 706eca
Packit Service 706eca
AC_HEADER_STDC
Packit Service 706eca
Packit Service 706eca
AC_HEADER_STAT
Packit Service 706eca
AC_HEADER_DIRENT
Packit Service 706eca
Packit Service 706eca
AC_CHECK_FUNCS(fcntl kill lstat)
Packit Service 706eca
AC_CHECK_FUNCS(memmove putenv select setenv setlocale \
Packit Service 706eca
		strcasecmp strpbrk tcgetattr vsnprintf)
Packit Service 706eca
AC_CHECK_FUNCS(isascii isxdigit)
Packit Service 706eca
AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
Packit Service 706eca
Packit Service 706eca
AC_FUNC_STRCOLL
Packit Service 706eca
Packit Service 706eca
AC_CHECK_HEADERS(fcntl.h unistd.h stdlib.h varargs.h stdarg.h string.h strings.h \
Packit Service 706eca
		limits.h locale.h pwd.h memory.h termcap.h termios.h termio.h)
Packit Service 706eca
AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h)
Packit Service 706eca
Packit Service 706eca
AC_CHECK_HEADERS(sys/ptem.h,,,
Packit Service 706eca
[[
Packit Service 706eca
#if HAVE_SYS_STREAM_H
Packit Service 706eca
#  include <sys/stream.h>
Packit Service 706eca
#endif
Packit Service 706eca
]])
Packit Service 706eca
Packit Service 706eca
AC_SYS_LARGEFILE
Packit Service 706eca
Packit Service 706eca
BASH_SYS_SIGNAL_VINTAGE
Packit Service 706eca
BASH_SYS_REINSTALL_SIGHANDLERS
Packit Service 706eca
Packit Service 706eca
BASH_FUNC_POSIX_SETJMP
Packit Service 706eca
BASH_FUNC_LSTAT
Packit Service 706eca
BASH_FUNC_STRCOLL
Packit Service 706eca
BASH_FUNC_CTYPE_NONASCII
Packit Service 706eca
Packit Service 706eca
BASH_CHECK_GETPW_FUNCS
Packit Service 706eca
Packit Service 706eca
AC_HEADER_TIOCGWINSZ
Packit Service 706eca
Packit Service 706eca
BASH_TYPE_SIG_ATOMIC_T
Packit Service 706eca
BASH_TYPE_SIGHANDLER
Packit Service 706eca
Packit Service 706eca
BASH_HAVE_TIOCSTAT
Packit Service 706eca
BASH_HAVE_FIONREAD
Packit Service 706eca
BASH_CHECK_SPEED_T
Packit Service 706eca
BASH_STRUCT_WINSIZE
Packit Service 706eca
BASH_STRUCT_DIRENT_D_INO
Packit Service 706eca
BASH_STRUCT_DIRENT_D_FILENO
Packit Service 706eca
Packit Service 706eca
dnl yuck
Packit Service 706eca
case "$host_os" in
Packit Service 706eca
aix*)   prefer_curses=yes ;;
Packit Service 706eca
esac
Packit Service 706eca
BASH_CHECK_LIB_TERMCAP
Packit Service 706eca
if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
Packit Service 706eca
	if test "$prefer_curses" = yes; then
Packit Service 706eca
		TERMCAP_LIB=-lcurses
Packit Service 706eca
	else
Packit Service 706eca
		TERMCAP_LIB=-ltermcap	#default
Packit Service 706eca
	fi
Packit Service 706eca
fi
Packit Service 706eca
if test "$TERMCAP_LIB" = "-lncurses"; then
Packit Service 706eca
	AC_CHECK_HEADERS(ncurses/termcap.h)
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
BASH_CHECK_MULTIBYTE
Packit Service 706eca
Packit Service 706eca
case "$host_cpu" in
Packit Service 706eca
*cray*)	LOCAL_CFLAGS=-DCRAY ;;
Packit Service 706eca
*s390*) LOCAL_CFLAGS=-fsigned-char ;;
Packit Service 706eca
esac
Packit Service 706eca
Packit Service 706eca
case "$host_os" in
Packit Service 706eca
isc*)	LOCAL_CFLAGS=-Disc386 ;;
Packit Service 706eca
esac
Packit Service 706eca
Packit Service 706eca
# shared library configuration section
Packit Service 706eca
#
Packit Service 706eca
# Shared object configuration section.  These values are generated by
Packit Service 706eca
# ${srcdir}/support/shobj-conf
Packit Service 706eca
#
Packit Service 706eca
if test -f ${srcdir}/support/shobj-conf; then
Packit Service 706eca
        AC_MSG_CHECKING(configuration for building shared libraries)
Packit Service 706eca
        eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
Packit Service 706eca
Packit Service 706eca
#	case "$SHLIB_LIBS" in
Packit Service 706eca
#	*curses*|*termcap*|*termlib*)	;;
Packit Service 706eca
#	*)			SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;;
Packit Service 706eca
#	esac
Packit Service 706eca
	
Packit Service 706eca
        AC_SUBST(SHOBJ_CC)
Packit Service 706eca
        AC_SUBST(SHOBJ_CFLAGS)
Packit Service 706eca
        AC_SUBST(SHOBJ_LD)
Packit Service 706eca
        AC_SUBST(SHOBJ_LDFLAGS)
Packit Service 706eca
	AC_SUBST(SHOBJ_XLDFLAGS)
Packit Service 706eca
        AC_SUBST(SHOBJ_LIBS)
Packit Service 706eca
        AC_SUBST(SHOBJ_STATUS)
Packit Service 706eca
	AC_SUBST(SHLIB_STATUS)
Packit Service 706eca
	AC_SUBST(SHLIB_XLDFLAGS)
Packit Service 706eca
	AC_SUBST(SHLIB_DOT)
Packit Service 706eca
	AC_SUBST(SHLIB_LIBPREF)
Packit Service 706eca
	AC_SUBST(SHLIB_LIBSUFF)
Packit Service 706eca
	AC_SUBST(SHLIB_LIBVERSION)
Packit Service 706eca
	AC_SUBST(SHLIB_DLLVERSION)
Packit Service 706eca
	AC_SUBST(SHLIB_LIBS)
Packit Service 706eca
        AC_MSG_RESULT($SHLIB_STATUS)
Packit Service 706eca
Packit Service 706eca
	# SHLIB_STATUS is either `supported' or `unsupported'.  If it's
Packit Service 706eca
	# `unsupported', turn off any default shared library building
Packit Service 706eca
	if test "$SHLIB_STATUS" = 'unsupported'; then
Packit Service 706eca
		opt_shared_libs=no
Packit Service 706eca
	fi
Packit Service 706eca
Packit Service 706eca
	# shared library versioning
Packit Service 706eca
	# quoted for m4 so I can use character classes
Packit Service 706eca
	SHLIB_MAJOR=[`expr "$LIBVERSION" : '\([0-9]\)\..*'`]
Packit Service 706eca
	SHLIB_MINOR=[`expr "$LIBVERSION" : '[0-9]\.\([0-9]\).*'`]
Packit Service 706eca
	AC_SUBST(SHLIB_MAJOR)
Packit Service 706eca
	AC_SUBST(SHLIB_MINOR)
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
if test "$opt_static_libs" = "yes"; then
Packit Service 706eca
	STATIC_TARGET=static
Packit Service 706eca
	STATIC_INSTALL_TARGET=install-static
Packit Service 706eca
fi
Packit Service 706eca
if test "$opt_shared_libs" = "yes"; then
Packit Service 706eca
	SHARED_TARGET=shared
Packit Service 706eca
	SHARED_INSTALL_TARGET=install-shared
Packit Service 706eca
fi
Packit Service 706eca
Packit Service 706eca
AC_SUBST(STATIC_TARGET)
Packit Service 706eca
AC_SUBST(SHARED_TARGET)
Packit Service 706eca
AC_SUBST(STATIC_INSTALL_TARGET)
Packit Service 706eca
AC_SUBST(SHARED_INSTALL_TARGET)
Packit Service 706eca
Packit Service 706eca
case "$build_os" in
Packit Service 706eca
msdosdjgpp*)	BUILD_DIR=`pwd.exe` ;;	# to prevent //d/path/file
Packit Service 706eca
*)		BUILD_DIR=`pwd` ;;
Packit Service 706eca
esac
Packit Service 706eca
Packit Service 706eca
case "$BUILD_DIR" in
Packit Service 706eca
*\ *)	BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
Packit Service 706eca
*)	;;
Packit Service 706eca
esac
Packit Service 706eca
Packit Service 706eca
AC_SUBST(PURIFY)
Packit Service 706eca
AC_SUBST(BUILD_DIR)
Packit Service 706eca
Packit Service 706eca
AC_SUBST(CFLAGS)
Packit Service 706eca
AC_SUBST(LOCAL_CFLAGS)
Packit Service 706eca
AC_SUBST(LOCAL_LDFLAGS)
Packit Service 706eca
AC_SUBST(LOCAL_DEFS)
Packit Service 706eca
Packit Service 706eca
AC_SUBST(AR)
Packit Service 706eca
AC_SUBST(ARFLAGS)
Packit Service 706eca
Packit Service 706eca
AC_SUBST(host_cpu)
Packit Service 706eca
AC_SUBST(host_os)
Packit Service 706eca
Packit Service 706eca
AC_SUBST(LIBVERSION)
Packit Service 706eca
Packit Service 706eca
AC_SUBST(TERMCAP_LIB)
Packit Service 706eca
Packit Service 706eca
AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile],
Packit Service 706eca
[
Packit Service 706eca
# Makefile uses this timestamp file to record whether config.h is up to date.
Packit Service 706eca
echo > stamp-h
Packit Service 706eca
])