configure.ac revision 1.1.1.1
1# Process this file with autoconf to produce a configure script. 2# Id: configure.ac,v 1.50 2004/12/22 13:29:44 karl Exp 3# 4# This file is free software; as a special exception the author gives 5# unlimited permission to copy and/or distribute it, with or without 6# modifications, as long as this notice is preserved. 7# 8# This program is distributed in the hope that it will be useful, but 9# WITHOUT ANY WARRANTY, to the extent permitted by law; without even the 10# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. 11# 12AC_PREREQ(2.59)# Minimum Autoconf version required. 13# 14AC_INIT([GNU Texinfo], [4.8]) 15AC_CONFIG_HEADERS(config.h:config.in)# Keep filename to 8.3 for MS-DOS. 16AC_CONFIG_SRCDIR([makeinfo/makeinfo.c]) 17AM_INIT_AUTOMAKE([dist-bzip2]) 18 19# When the Texinfo source is imported into other repositories 20# (NetBSD and TeX Live), timestamps are generally not preserved. This 21# causes lots of annoyance, so --enable-maintainer-mode. Sorry. 22AM_MAINTAINER_MODE 23 24# Checks for programs. 25AC_PROG_CC 26AC_PROG_GCC_TRADITIONAL 27AC_PROG_INSTALL 28AC_PROG_MAKE_SET 29AC_PROG_RANLIB 30AM_MISSING_PROG(HELP2MAN, help2man) 31 32AC_ISC_POSIX 33AC_MINIX 34 35# Needed on sysV68 for sigblock, sigsetmask. But check for it in libc first. 36AC_CHECK_FUNC(sigblock, , AC_CHECK_LIB(bsd, sigblock)) 37 38# Checks for header files. 39AC_HEADER_STAT 40AC_HEADER_STDC 41AC_CHECK_HEADERS(fcntl.h io.h limits.h pwd.h string.h strings.h \ 42 termcap.h termio.h termios.h unistd.h \ 43 sys/fcntl.h sys/file.h sys/stream.h sys/time.h sys/ttold.h sys/wait.h) 44 45# sys/ptem.h requires sys/stream.h for mblk_t on Solaris. 46AC_CHECK_HEADERS([sys/ptem.h],,, 47[#if HAVE_SYS_STREAM_H 48#include <sys/stream.h> 49#endif 50]) 51 52AC_SYS_POSIX_TERMIOS 53AC_HEADER_TIOCGWINSZ 54 55# Checks for typedefs, structures, and compiler characteristics. 56AC_TYPE_OFF_T 57AC_TYPE_SIGNAL 58AC_C_CONST 59AC_STRUCT_TM 60 61# Checks for function declarations. 62AC_CHECK_DECLS([memchr, strcoll, strerror]) 63 64# Checks for library functions. 65AC_FUNC_ALLOCA 66AC_FUNC_STRCOLL 67AC_FUNC_VPRINTF 68# in theory only pre-sysvr3 systems needed this and it's not likely 69# that anyone compiling new texinfo still has such a thing? we'll see. 70# AC_FUNC_SETVBUF_REVERSED 71AC_CHECK_FUNCS(bzero getcwd memset setvbuf sigaction sigprocmask \ 72 sigsetmask strchr) 73AC_REPLACE_FUNCS(memcpy memmove strdup strerror) 74 75# strcasecmp and strncasecmp, gnulib-style. 76gl_STRCASE 77 78# We want to recognize djgpp to avoid the useless warning about no 79# term library. 80AC_CANONICAL_BUILD 81 82# We need to run some of our own binaries, most notably makedoc, but as 83# long as we have this process, we also use our own makeinfo and 84# install-info. 85# 86# This means that if we are cross compiling, we have to configure the 87# package twice: once with the native compiler (this is done in a 88# subdirectory $native_tools), and once with the cross compiler. 89# The former is invoked automatically here, with --host=$build. 90# $native_tools is also added to SUBDIRS in the main Makefile.am, 91# so that make compiles the native tools first. 92# 93if test "$cross_compiling" = no; then 94 native_tools= 95else 96 native_tools=tools 97 test -d "$native_tools" || mkdir "$native_tools" 98 confdir=`(cd "$srcdir";pwd)` 99 # Make sure the secondary configure won't fail with 100 # "error: source directory already configured". 101 rm -f config.status 102 AC_MSG_NOTICE([[Doing configure of native tools (${build}).]]) 103 cd "$native_tools" || exit 1 104 # Run secondary configure in alternate environment or 105 # it gets the wrong CC etc. env -i gives this build host configure 106 # a clean environment. 107 env -i CC="${BUILD_CC}" AR="${BUILD_AR}" RANLIB="${BUILD_RANLIB}" \ 108 PATH="${PATH}" \ 109 tools_only=1 \ 110 ${confdir}/configure --build=${build} --host=${build} \ 111 --disable-rpath --disable-nls 112 cd .. || exit 1 113 AC_MSG_NOTICE([[Continuing with main configure (${host}).]]) 114fi 115AC_SUBST(native_tools) 116AM_CONDITIONAL(TOOLS_ONLY, [[test "x$tools_only" = x1]]) 117 118# Some GNU/Linux systems (e.g., SuSE 4.3, 1996) don't have curses, but 119# rather ncurses. So we check for it. 120TERMLIBS= 121# Check for termlib before termcap because Solaris termcap needs libucb. 122TERMLIB_VARIANTS="ncurses curses termlib termcap terminfo" 123for termlib in ${TERMLIB_VARIANTS}; do 124 AC_CHECK_LIB(${termlib}, tgetent, 125 [TERMLIBS="${TERMLIBS} -l${termlib}"; break]) 126done 127# don't bother warning on djgpp, it doesn't have a term library, it 128# ports each termcap-needing program separately according to its needs. 129if test -z "$TERMLIBS" && echo "$build" | grep -v djgpp >/dev/null; then 130 AC_MSG_WARN([probably need a terminal library, one of: ${TERMLIB_VARIANTS}]) 131fi 132 133# Checks for variables. 134# HP-UX 9 (at least) needs -lncurses which defines termcap variables PC etc. 135AC_MSG_CHECKING(for library with termcap variables) 136AC_CACHE_VAL(ac_cv_var_ospeed, 137oldLIBS=$LIBS 138for trylib in $termlib ${TERMLIB_VARIANTS}; do 139 if test "x$trylib" != "x$termlib"; then 140 LIBS="$oldLIBS -l$termlib -l$trylib" 141 else 142 LIBS="$oldLIBS -l$termlib" 143 fi 144 AC_TRY_LINK(, 145[#ifdef HAVE_NCURSES_TERMCAP_H 146#include <ncurses/termcap.h> 147#else 148#ifdef HAVE_TERMCAP_H 149#include <termcap.h> 150#else 151#undef PC 152char *BC; 153char **UP; 154char PC; 155short ospeed; 156#endif 157#endif 158/* Make sure all variables actually exist. AIX 4.3 has ospeed but no BC. 159 --Andreas Ley <andy@rz.uni-karlsruhe.de> 24 Aug 2000. */ 160BC++; 161UP++; 162PC++; 163return ospeed != 0; 164], ac_cv_var_ospeed=$trylib; break) 165done 166LIBS=$oldLIBS 167) 168AC_MSG_RESULT($ac_cv_var_ospeed) 169if test -n "$ac_cv_var_ospeed" \ 170 && test "x$termlib" != "x$ac_cv_var_ospeed"; then 171 TERMLIBS="${TERMLIBS} -l${ac_cv_var_ospeed}" 172fi 173AC_SUBST(TERMLIBS)# 174 175# Do not use <ncurses/termcap.h> unless we're linking with ncurses. 176# Must come after the termlib tests. 177if test "x$termlib" = xncurses; then 178 # Use AC_CHECK_HEADERS so the HAVE_*_H symbol gets defined. 179 AC_CHECK_HEADERS(ncurses/termcap.h) 180fi 181 182# gnulib. 183gl_FUNC_MKSTEMP 184 185# For teTeX and TeX Live. 186AC_CANONICAL_HOST 187AC_ARG_ENABLE(multiplatform, 188 [ --enable-multiplatform put executables in bin/PLATFORM]) 189# if enable_multiplatform is set in the environment, use that. 190test "x$enable_multiplatform" = xyes \ 191&& test "x$bindir" = 'x${exec_prefix}/bin' \ 192&& bindir="$bindir/$host" 193 194# Taken from the example in 195# http://www.gnu.org/software/automake/manual/html_node/Conditionals.html. 196AC_ARG_ENABLE(install-warnings, 197 [ --disable-install-warnings omit make install warnings about TeX files], 198 [case "${enableval}" in 199 yes) install_warnings=true ;; 200 no) install_warnings=false ;; 201 *) AC_MSG_ERROR(bad value ${enableval} for --enable-install-warnings) ;; 202 esac], 203 [install_warnings=true]) 204AM_CONDITIONAL(INSTALL_WARNINGS, 205 test x"$install_warnings" = xtrue || test x"$install_warnings" = xyes) 206 207# i18n support. To update to a new version of gettext, run: 208# gettextize -f -c --intl 209AM_GNU_GETTEXT_VERSION(0.14.1) 210AM_GNU_GETTEXT() 211 212AC_CONFIG_FILES([ 213 Makefile 214 doc/Makefile 215 info/Makefile 216 intl/Makefile 217 lib/Makefile 218 m4/Makefile 219 makeinfo/Makefile 220 makeinfo/tests/Makefile 221 po/Makefile.in 222 util/Makefile 223]) 224AC_OUTPUT 225