528aef50dd163350059abbfb3f16654fcc2866cb
[deliverable/binutils-gdb.git] / readline / configure.in
1 dnl
2 dnl Configure script for readline library
3 dnl
4 dnl report bugs to chet@po.cwru.edu
5 dnl
6 dnl Process this file with autoconf to produce a configure script.
7
8 # Copyright (C) 1987-2005 Free Software Foundation, Inc.
9
10 # This program is free software; you can redistribute it and/or modify
11 # it under the terms of the GNU General Public License as published by
12 # the Free Software Foundation; either version 2, or (at your option)
13 # any later version.
14
15 # This program is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18 # GNU General Public License for more details.
19
20 # You should have received a copy of the GNU General Public License
21 # along with this program; if not, write to the Free Software
22 # Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
23 # 02111-1307, USA.
24
25 AC_REVISION([for Readline 5.1, version 2.59])
26
27 m4_include([../config/override.m4])
28
29 AC_INIT(readline, 5.1-release, bug-readline@gnu.org)
30
31 dnl make sure we are using a recent autoconf version
32 AC_PREREQ(2.50)
33
34 AC_CONFIG_SRCDIR(readline.h)
35 dnl GDB LOCAL
36 dnl AC_CONFIG_AUX_DIR(./support)
37 AC_CONFIG_AUX_DIR(`cd $srcdir;pwd`/..)
38 AC_CONFIG_HEADERS(config.h)
39
40 dnl update the value of RL_READLINE_VERSION in readline.h when this changes
41 LIBVERSION=5.1
42
43 AC_CANONICAL_HOST
44
45 dnl configure defaults
46 opt_curses=no
47 opt_purify=no
48
49 dnl arguments to configure
50 AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
51 AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval)
52
53 if test "$opt_curses" = "yes"; then
54 prefer_curses=yes
55 fi
56
57 if test "$opt_purify" = yes; then
58 PURIFY="purify"
59 else
60 PURIFY=
61 fi
62
63 dnl option parsing for optional features
64 opt_multibyte=yes
65 opt_static_libs=yes
66 opt_shared_libs=no
67
68 AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval)
69 dnl AC_ARG_ENABLE(shared, AC_HELP_STRING([--enable-shared], [build shared libraries [[default=YES]]]), opt_shared_libs=$enableval)
70 AC_ARG_ENABLE(static, AC_HELP_STRING([--enable-static], [build static libraries [[default=YES]]]), opt_static_libs=$enableval)
71
72 if test $opt_multibyte = no; then
73 AC_DEFINE(NO_MULTIBYTE_SUPPORT)
74 fi
75
76 dnl load up the cross-building cache file -- add more cases and cache
77 dnl files as necessary
78
79 dnl Note that host and target machine are the same, and different than the
80 dnl build machine.
81
82 CROSS_COMPILE=
83 if test "x$cross_compiling" = "xyes"; then
84 case "${host}" in
85 *-cygwin*)
86 cross_cache=${srcdir}/cross-build/cygwin.cache
87 ;;
88 *-mingw*)
89 cross_cache=${srcdir}/cross-build/mingw.cache
90 ;;
91 i[[3456]]86-*-beos*)
92 cross_cache=${srcdir}/cross-build/x86-beos.cache
93 ;;
94 *) echo "configure: cross-compiling for $host is not supported" >&2
95 ;;
96 esac
97 if test -n "${cross_cache}" && test -r "${cross_cache}"; then
98 echo "loading cross-build cache file ${cross_cache}"
99 . ${cross_cache}
100 fi
101 unset cross_cache
102 CROSS_COMPILE='-DCROSS_COMPILING'
103 AC_SUBST(CROSS_COMPILE)
104 fi
105
106 echo ""
107 echo "Beginning configuration for readline-$LIBVERSION for ${host_cpu}-${host_vendor}-${host_os}"
108 echo ""
109
110 # We want these before the checks, so the checks can modify their values.
111 test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
112
113 AC_PROG_MAKE_SET
114 AC_PROG_CC
115 dnl AC_AIX
116 AC_MINIX
117
118 dnl BEGIN changes for CYGNUS cross-building for Cygwin
119 dnl NOTE: Some of these changes may no longer be necessary.
120
121 dnl load up the cross-building cache file -- add more cases and cache
122 dnl files as necessary
123 if test "x$cross_compiling" = "xyes"; then
124 case "${host}" in
125 *-cygwin*)
126 cross_cache=${srcdir}/cross-build/cygwin.cache
127 LOCAL_CFLAGS="$LOCAL_CFLAGS -I${srcdir}/../libtermcap"
128 ;;
129 *-mingw32*)
130 cross_cache=${srcdir}/cross-build/mingw.cache
131 ;;
132 *) echo "configure: cross-compiling for a non-cygwin target is not supported" >&2
133 ;;
134 esac
135
136 if test "x$cross_cache" != "x"; then
137 if test -r "${cross_cache}"; then
138 echo "loading cross-build cache file ${cross_cache}"
139 . ${cross_cache}
140 fi
141 unset cross_cache
142 fi
143 fi
144
145 if test -z "$CC_FOR_BUILD"; then
146 if test "x$cross_compiling" = "xno"; then
147 CC_FOR_BUILD='$(CC)'
148 else
149 CC_FOR_BUILD=gcc
150 fi
151 fi
152 AC_SUBST(CC_FOR_BUILD)
153
154 dnl END changes for CYGNUS cross-building for Cygwin
155
156 # If we're using gcc and the user hasn't specified CFLAGS, add -O to CFLAGS.
157 test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O"
158
159 AC_PROG_GCC_TRADITIONAL
160 AC_PROG_INSTALL
161 AC_CHECK_PROG(AR, ar, , ar)
162 dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
163 dnl This allows people to set it when running configure or make
164 test -n "$ARFLAGS" || ARFLAGS="cr"
165 AC_PROG_RANLIB
166
167 MAKE_SHELL=/bin/sh
168 AC_SUBST(MAKE_SHELL)
169
170 AC_C_CONST
171 AC_C_PROTOTYPES
172 AC_C_CHAR_UNSIGNED
173
174 AC_TYPE_SIGNAL
175
176 AC_TYPE_SIZE_T
177 AC_CHECK_TYPE(ssize_t, int)
178
179 AC_HEADER_STDC
180
181 AC_HEADER_STAT
182 AC_HEADER_DIRENT
183
184 AC_CHECK_FUNCS(fcntl kill lstat)
185 AC_CHECK_FUNCS(memmove putenv select setenv setlocale \
186 strcasecmp strpbrk tcgetattr vsnprintf)
187 AC_CHECK_FUNCS(isascii isxdigit)
188 AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
189
190 AC_FUNC_STRCOLL
191
192 AC_CHECK_HEADERS(fcntl.h unistd.h stdlib.h varargs.h stdarg.h string.h strings.h \
193 limits.h locale.h pwd.h memory.h termcap.h termios.h termio.h)
194 AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h)
195
196 AC_CHECK_HEADERS(sys/ptem.h,,,
197 [[
198 #if HAVE_SYS_STREAM_H
199 # include <sys/stream.h>
200 #endif
201 ]])
202
203 BASH_SYS_SIGNAL_VINTAGE
204 BASH_SYS_REINSTALL_SIGHANDLERS
205
206 BASH_FUNC_POSIX_SETJMP
207 BASH_FUNC_LSTAT
208 BASH_FUNC_STRCOLL
209 BASH_FUNC_CTYPE_NONASCII
210
211 BASH_CHECK_GETPW_FUNCS
212
213 AC_HEADER_TIOCGWINSZ
214
215 BASH_TYPE_SIGHANDLER
216 BASH_HAVE_TIOCSTAT
217 BASH_HAVE_FIONREAD
218 BASH_CHECK_SPEED_T
219 BASH_STRUCT_WINSIZE
220 BASH_STRUCT_DIRENT_D_INO
221 BASH_STRUCT_DIRENT_D_FILENO
222
223 dnl yuck
224 case "$host_os" in
225 aix*) prefer_curses=yes ;;
226 esac
227 BASH_CHECK_LIB_TERMCAP
228 if test "$TERMCAP_LIB" = "./lib/termcap/libtermcap.a"; then
229 if test "$prefer_curses" = yes; then
230 TERMCAP_LIB=-lcurses
231 else
232 TERMCAP_LIB=-ltermcap #default
233 fi
234 fi
235
236 BASH_CHECK_MULTIBYTE
237
238 case "$host_cpu" in
239 *cray*) LOCAL_CFLAGS=-DCRAY ;;
240 *s390*) LOCAL_CFLAGS=-fsigned-char ;;
241 esac
242
243 case "$host_os" in
244 isc*) LOCAL_CFLAGS=-Disc386 ;;
245 esac
246
247 # shared library configuration section
248 #
249 # Shared object configuration section. These values are generated by
250 # ${srcdir}/support/shobj-conf
251 #
252 if test -f ${srcdir}/support/shobj-conf; then
253 AC_MSG_CHECKING(configuration for building shared libraries)
254 eval `TERMCAP_LIB=$TERMCAP_LIB ${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c ${host_cpu} -o ${host_os} -v ${host_vendor}`
255
256 # case "$SHLIB_LIBS" in
257 # *curses*|*termcap*|*termlib*) ;;
258 # *) SHLIB_LIBS="$SHLIB_LIBS $TERMCAP_LIB" ;;
259 # esac
260
261 AC_SUBST(SHOBJ_CC)
262 AC_SUBST(SHOBJ_CFLAGS)
263 AC_SUBST(SHOBJ_LD)
264 AC_SUBST(SHOBJ_LDFLAGS)
265 AC_SUBST(SHOBJ_XLDFLAGS)
266 AC_SUBST(SHOBJ_LIBS)
267 AC_SUBST(SHOBJ_STATUS)
268 AC_SUBST(SHLIB_STATUS)
269 AC_SUBST(SHLIB_XLDFLAGS)
270 AC_SUBST(SHLIB_DOT)
271 AC_SUBST(SHLIB_LIBPREF)
272 AC_SUBST(SHLIB_LIBSUFF)
273 AC_SUBST(SHLIB_LIBVERSION)
274 AC_SUBST(SHLIB_DLLVERSION)
275 AC_SUBST(SHLIB_LIBS)
276 AC_MSG_RESULT($SHLIB_STATUS)
277
278 # SHLIB_STATUS is either `supported' or `unsupported'. If it's
279 # `unsupported', turn off any default shared library building
280 if test "$SHLIB_STATUS" = 'unsupported'; then
281 opt_shared_libs=no
282 fi
283
284 # shared library versioning
285 # quoted for m4 so I can use character classes
286 SHLIB_MAJOR=[`expr "$LIBVERSION" : '\([0-9]\)\..*'`]
287 SHLIB_MINOR=[`expr "$LIBVERSION" : '[0-9]\.\([0-9]\).*'`]
288 AC_SUBST(SHLIB_MAJOR)
289 AC_SUBST(SHLIB_MINOR)
290 fi
291
292 if test "$opt_static_libs" = "yes"; then
293 STATIC_TARGET=static
294 STATIC_INSTALL_TARGET=install-static
295 fi
296 if test "$opt_shared_libs" = "yes"; then
297 SHARED_TARGET=shared
298 SHARED_INSTALL_TARGET=install-shared
299 fi
300
301 AC_SUBST(STATIC_TARGET)
302 AC_SUBST(SHARED_TARGET)
303 AC_SUBST(STATIC_INSTALL_TARGET)
304 AC_SUBST(SHARED_INSTALL_TARGET)
305
306 case "$host_os" in
307 msdosdjgpp*) BUILD_DIR=`pwd.exe` ;; # to prevent //d/path/file
308 *) BUILD_DIR=`pwd` ;;
309 esac
310
311 case "$BUILD_DIR" in
312 *\ *) BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
313 *) ;;
314 esac
315
316 AC_SUBST(PURIFY)
317 AC_SUBST(BUILD_DIR)
318
319 AC_SUBST(CFLAGS)
320 AC_SUBST(LOCAL_CFLAGS)
321 AC_SUBST(LOCAL_LDFLAGS)
322 AC_SUBST(LOCAL_DEFS)
323
324 AC_SUBST(AR)
325 AC_SUBST(ARFLAGS)
326
327 AC_SUBST(host_cpu)
328 AC_SUBST(host_os)
329
330 AC_SUBST(LIBVERSION)
331
332 AC_SUBST(TERMCAP_LIB)
333
334 AC_OUTPUT([Makefile doc/Makefile examples/Makefile shlib/Makefile],
335 [
336 # Makefile uses this timestamp file to record whether config.h is up to date.
337 echo > stamp-h
338 ])
This page took 0.045236 seconds and 4 git commands to generate.