1dnl
2dnl Configure script for bash-3.2
3dnl
4dnl report bugs to chet@po.cwru.edu
5dnl
6dnl Process this file with autoconf to produce a configure script.
7
8# Copyright (C) 1987-2007 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
25AC_REVISION([for Bash 3.2, version 3.190])dnl
26
27define(bashvers, 3.2)
28define(relstatus, release)
29
30AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org])
31
32dnl make sure we are using a recent autoconf version
33AC_PREREQ(2.50)
34
35AC_CONFIG_SRCDIR(shell.h)
36dnl where to find install.sh, config.sub, and config.guess
37AC_CONFIG_AUX_DIR(./support)
38AC_CONFIG_HEADERS(config.h)
39
40dnl checks for version info
41BASHVERS=bashvers
42RELSTATUS=relstatus
43
44dnl defaults for debug settings
45case "$RELSTATUS" in
46alp*|bet*|dev*|rc*)	DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
47*)	DEBUG= MALLOC_DEBUG= ;;
48esac
49
50dnl canonicalize the host and os so we can do some tricky things before
51dnl parsing options
52AC_CANONICAL_HOST
53
54dnl configure defaults
55opt_bash_malloc=yes
56opt_purify=no
57opt_purecov=no
58opt_afs=no
59opt_curses=no
60opt_with_installed_readline=no
61
62#htmldir=
63
64dnl some systems should be configured without the bash malloc by default
65dnl and some need a special compiler or loader
66dnl look in the NOTES file for more
67case "${host_cpu}-${host_os}" in
68alpha*-*)	opt_bash_malloc=no ;;	# alpha running osf/1 or linux
69*[[Cc]]ray*-*)	opt_bash_malloc=no ;;	# Crays
70*-osf1*)	opt_bash_malloc=no ;;	# other osf/1 machines
71sparc-svr4*)	opt_bash_malloc=no ;;	# sparc SVR4, SVR4.2
72sparc-netbsd*)	opt_bash_malloc=no ;;	# needs 8-byte alignment
73mips-irix6*)	opt_bash_malloc=no ;;	# needs 8-byte alignment
74m68k-sysv)	opt_bash_malloc=no ;;	# fixes file descriptor leak in closedir
75sparc-linux*)	opt_bash_malloc=no ;;	# sparc running linux; requires ELF
76#*-freebsd*-gnu)	opt_bash_malloc=no ;;	# there's some undetermined problem here
77#*-freebsd*)	opt_bash_malloc=no ;;	# they claim it's better; I disagree
78*-openbsd*)	opt_bash_malloc=no ;;	# they claim it needs eight-bit alignment
79*-aix*)		opt_bash_malloc=no ;;	# AIX machines
80*-nextstep*)	opt_bash_malloc=no ;;	# NeXT machines running NeXTstep
81*-macos*)	opt_bash_malloc=no ;;	# Apple MacOS X
82*-rhapsody*)	opt_bash_malloc=no ;;	# Apple Rhapsody (MacOS X)
83*-darwin*)	opt_bash_malloc=no ;;	# Apple Darwin (MacOS X)
84*-dgux*)	opt_bash_malloc=no ;;	# DG/UX machines
85*-qnx*)		opt_bash_malloc=no ;;	# QNX 4.2, QNX 6.x
86*-machten4)	opt_bash_malloc=no ;;	# MachTen 4.x
87*-bsdi2.1|*-bsdi3.?)	opt_bash_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
88*-beos*)	opt_bash_malloc=no ;;	# they say it's suitable
89*-cygwin*)	opt_bash_malloc=no ;;	# Cygnus's CYGWIN environment
90*-opennt*|*-interix*)	opt_bash_malloc=no ;;	# Interix, now owned by Microsoft
91esac
92
93# memory scrambling on free()
94case "${host_os}" in
95sco3.2v5*|sco3.2v4*)	opt_memscramble=no ;;
96*)			opt_memscramble=yes ;;
97esac
98
99dnl
100dnl macros for the bash debugger
101dnl
102AM_PATH_LISPDIR
103AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file])
104
105dnl arguments to configure
106dnl packages
107AC_ARG_WITH(afs, AC_HELP_STRING([--with-afs], [if you are running AFS]), opt_afs=$withval)
108AC_ARG_WITH(bash-malloc, AC_HELP_STRING([--with-bash-malloc], [use the Bash version of malloc]), opt_bash_malloc=$withval)
109AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
110AC_ARG_WITH(gnu-malloc, AC_HELP_STRING([--with-gnu-malloc], [synonym for --with-bash-malloc]), opt_bash_malloc=$withval)
111AC_ARG_WITH(installed-readline, AC_HELP_STRING([--with-installed-readline], [use a version of the readline library that is already installed]), opt_with_installed_readline=$withval)
112AC_ARG_WITH(purecov, AC_HELP_STRING([--with-purecov], [configure to postprocess with pure coverage]), opt_purecov=$withval)
113AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval)
114
115if test "$opt_bash_malloc" = yes; then
116	MALLOC_TARGET=malloc
117	MALLOC_SRC=malloc.c
118
119	MALLOC_LIB='-lmalloc'
120	MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
121	MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
122	MALLOC_DEP='$(MALLOC_LIBRARY)'
123
124	AC_DEFINE(USING_BASH_MALLOC)
125else
126	MALLOC_LIB=
127	MALLOC_LIBRARY=
128	MALLOC_LDFLAGS=
129	MALLOC_DEP=	
130fi
131
132if test "$opt_purify" = yes; then
133	PURIFY="purify "
134	AC_DEFINE(DISABLE_MALLOC_WRAPPERS)
135else
136	PURIFY=
137fi
138
139if test "$opt_purecov" = yes; then
140	PURIFY="${PURIFY}purecov"
141fi
142
143if test "$opt_afs" = yes; then
144	AC_DEFINE(AFS)
145fi
146
147if test "$opt_curses" = yes; then
148	prefer_curses=yes
149fi
150
151if test -z "${DEBUGGER_START_FILE}"; then
152	DEBUGGER_START_FILE=${ac_default_prefix}/share/bashdb/bashdb-main.inc
153fi
154
155dnl optional shell features in config.h.in
156opt_minimal_config=no
157
158opt_job_control=yes
159opt_alias=yes
160opt_readline=yes
161opt_history=yes
162opt_bang_history=yes
163opt_dirstack=yes
164opt_restricted=yes
165opt_process_subst=yes
166opt_prompt_decoding=yes
167opt_select=yes
168opt_help=yes
169opt_array_variables=yes
170opt_dparen_arith=yes
171opt_extended_glob=yes
172opt_brace_expansion=yes
173opt_disabled_builtins=no
174opt_command_timing=yes
175opt_xpg_echo=no
176opt_strict_posix=no
177opt_cond_command=yes
178opt_cond_regexp=yes
179opt_arith_for_command=yes
180opt_net_redirs=yes
181opt_progcomp=yes
182opt_separate_help=no
183opt_multibyte=yes
184opt_debugger=yes
185opt_single_longdoc_strings=yes
186
187dnl options that affect how bash is compiled and linked
188opt_static_link=no
189opt_profiling=no
190
191dnl argument parsing for optional features
192AC_ARG_ENABLE(minimal-config, AC_HELP_STRING([--enable-minimal-config], [a minimal sh-like configuration]), opt_minimal_config=$enableval)
193
194dnl a minimal configuration turns everything off, but features can be
195dnl added individually
196if test $opt_minimal_config = yes; then
197	opt_job_control=no opt_alias=no opt_readline=no
198	opt_history=no opt_bang_history=no opt_dirstack=no
199	opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
200	opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
201	opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
202	opt_extended_glob=no opt_cond_command=no opt_arith_for_command=no
203	opt_net_redirs=no opt_progcomp=no opt_separate_help=no
204	opt_multibyte=yes opt_cond_regexp=no
205fi
206
207AC_ARG_ENABLE(alias, AC_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval)
208AC_ARG_ENABLE(arith-for-command, AC_HELP_STRING([--enable-arith-for-command], [enable arithmetic for command]), opt_arith_for_command=$enableval)
209AC_ARG_ENABLE(array-variables, AC_HELP_STRING([--enable-array-variables], [include shell array variables]), opt_array_variables=$enableval)
210AC_ARG_ENABLE(bang-history, AC_HELP_STRING([--enable-bang-history], [turn on csh-style history substitution]), opt_bang_history=$enableval)
211AC_ARG_ENABLE(brace-expansion, AC_HELP_STRING([--enable-brace-expansion], [include brace expansion]), opt_brace_expansion=$enableval)
212AC_ARG_ENABLE(command-timing, AC_HELP_STRING([--enable-command-timing], [enable the time reserved word and command timing]), opt_command_timing=$enableval)
213AC_ARG_ENABLE(cond-command, AC_HELP_STRING([--enable-cond-command], [enable the conditional command]), opt_cond_command=$enableval)
214AC_ARG_ENABLE(cond-regexp, AC_HELP_STRING([--enable-cond-regexp], [enable extgended regular expression matching in conditional commands]), opt_cond_regexp=$enableval)
215AC_ARG_ENABLE(debugger, AC_HELP_STRING([--enable-debugger], [enable support for bash debugger]), opt_debugger=$enableval)
216AC_ARG_ENABLE(directory-stack, AC_HELP_STRING([--enable-directory-stack], [enable builtins pushd/popd/dirs]), opt_dirstack=$enableval)
217AC_ARG_ENABLE(disabled-builtins, AC_HELP_STRING([--enable-disabled-builtins], [allow disabled builtins to still be invoked]), opt_disabled_builtins=$enableval)
218AC_ARG_ENABLE(dparen-arithmetic, AC_HELP_STRING([--enable-dparen-arithmetic], [include ((...)) command]), opt_dparen_arith=$enableval)
219AC_ARG_ENABLE(extended-glob, AC_HELP_STRING([--enable-extended-glob], [include ksh-style extended pattern matching]), opt_extended_glob=$enableval)
220AC_ARG_ENABLE(help-builtin, AC_HELP_STRING([--enable-help-builtin], [include the help builtin]), opt_help=$enableval)
221AC_ARG_ENABLE(history, AC_HELP_STRING([--enable-history], [turn on command history]), opt_history=$enableval)
222AC_ARG_ENABLE(job-control, AC_HELP_STRING([--enable-job-control], [enable job control features]), opt_job_control=$enableval)
223AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval)
224AC_ARG_ENABLE(net-redirections, AC_HELP_STRING([--enable-net-redirections], [enable /dev/tcp/host/port redirection]), opt_net_redirs=$enableval)
225AC_ARG_ENABLE(process-substitution, AC_HELP_STRING([--enable-process-substitution], [enable process substitution]), opt_process_subst=$enableval)
226AC_ARG_ENABLE(progcomp, AC_HELP_STRING([--enable-progcomp], [enable programmable completion and the complete builtin]), opt_progcomp=$enableval)
227AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval)
228AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval)
229AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval)
230AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval)
231AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval)
232AC_ARG_ENABLE(single-help-strings, AC_HELP_STRING([--enable-single-help-strings], [store help documentation as a single string to ease translation]), opt_single_longdoc_strings=$enableval)
233AC_ARG_ENABLE(strict-posix-default, AC_HELP_STRING([--enable-strict-posix-default], [configure bash to be posix-conformant by default]), opt_strict_posix=$enableval)
234AC_ARG_ENABLE(usg-echo-default, AC_HELP_STRING([--enable-usg-echo-default], [a synonym for --enable-xpg-echo-default]), opt_xpg_echo=$enableval)
235AC_ARG_ENABLE(xpg-echo-default, AC_HELP_STRING([--enable-xpg-echo-default], [make the echo builtin expand escape sequences by default]), opt_xpg_echo=$enableval)
236
237dnl options that alter how bash is compiled and linked
238AC_ARG_ENABLE(mem-scramble, AC_HELP_STRING([--enable-mem-scramble], [scramble memory on calls to malloc and free]), opt_memscramble=$enableval)
239AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling], [allow profiling with gprof]), opt_profiling=$enableval)
240AC_ARG_ENABLE(static-link, AC_HELP_STRING([--enable-static-link], [link bash statically, for use as a root shell]), opt_static_link=$enableval)
241
242dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs
243
244dnl opt_readline and opt_history are handled later, because AC_PROG_CC needs
245dnl to be run before we can check the version of an already-installed readline
246dnl library
247
248if test $opt_alias = yes; then
249AC_DEFINE(ALIAS)
250fi
251if test $opt_dirstack = yes; then
252AC_DEFINE(PUSHD_AND_POPD)
253fi
254if test $opt_restricted = yes; then
255AC_DEFINE(RESTRICTED_SHELL)
256fi
257if test $opt_process_subst = yes; then
258AC_DEFINE(PROCESS_SUBSTITUTION)
259fi
260if test $opt_prompt_decoding = yes; then
261AC_DEFINE(PROMPT_STRING_DECODE)
262fi
263if test $opt_select = yes; then
264AC_DEFINE(SELECT_COMMAND)
265fi
266if test $opt_help = yes; then
267AC_DEFINE(HELP_BUILTIN)
268fi
269if test $opt_array_variables = yes; then
270AC_DEFINE(ARRAY_VARS)
271fi
272if test $opt_dparen_arith = yes; then
273AC_DEFINE(DPAREN_ARITHMETIC)
274fi
275if test $opt_brace_expansion = yes; then
276AC_DEFINE(BRACE_EXPANSION)
277fi
278if test $opt_disabled_builtins = yes; then
279AC_DEFINE(DISABLED_BUILTINS)
280fi
281if test $opt_command_timing = yes; then
282AC_DEFINE(COMMAND_TIMING)
283fi
284if test $opt_xpg_echo = yes ; then
285AC_DEFINE(DEFAULT_ECHO_TO_XPG)
286fi
287if test $opt_strict_posix = yes; then
288AC_DEFINE(STRICT_POSIX)
289fi
290if test $opt_extended_glob = yes ; then
291AC_DEFINE(EXTENDED_GLOB)
292fi
293if test $opt_cond_command = yes ; then
294AC_DEFINE(COND_COMMAND)
295fi
296if test $opt_cond_regexp = yes ; then
297AC_DEFINE(COND_REGEXP)
298fi
299if test $opt_arith_for_command = yes; then
300AC_DEFINE(ARITH_FOR_COMMAND)
301fi
302if test $opt_net_redirs = yes; then
303AC_DEFINE(NETWORK_REDIRECTIONS)
304fi
305if test $opt_progcomp = yes; then
306AC_DEFINE(PROGRAMMABLE_COMPLETION)
307fi
308if test $opt_multibyte = no; then
309AC_DEFINE(NO_MULTIBYTE_SUPPORT)
310fi
311if test $opt_debugger = yes; then
312AC_DEFINE(DEBUGGER)
313fi
314
315if test $opt_memscramble = yes; then
316AC_DEFINE(MEMSCRAMBLE)
317fi
318
319if test "$opt_minimal_config" = yes; then
320	TESTSCRIPT=run-minimal
321else
322	TESTSCRIPT=run-all
323fi
324
325HELPDIR= HELPDIRDEFINE= HELPINSTALL=
326if test "$opt_separate_help" != no; then
327	if test "$opt_separate_help" = "yes" ; then
328		HELPDIR='${datadir}/bash'
329	else
330		HELPDIR=$opt_separate_help
331	fi
332	HELPDIRDEFINE='-H ${HELPDIR}'
333	HELPINSTALL='install-help'
334fi
335HELPSTRINGS=
336if test "$opt_single_longdoc_strings" != "yes"; then
337	HELPSTRINGS='-S'
338fi
339
340dnl now substitute in the values generated by arguments
341AC_SUBST(TESTSCRIPT)
342AC_SUBST(PURIFY)
343AC_SUBST(MALLOC_TARGET)
344AC_SUBST(MALLOC_SRC)
345
346AC_SUBST(MALLOC_LIB)
347AC_SUBST(MALLOC_LIBRARY)
348AC_SUBST(MALLOC_LDFLAGS)
349AC_SUBST(MALLOC_DEP)
350
351AC_SUBST(htmldir)
352
353AC_SUBST(HELPDIR)
354AC_SUBST(HELPDIRDEFINE)
355AC_SUBST(HELPINSTALL)
356AC_SUBST(HELPSTRINGS)
357
358echo ""
359echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
360echo ""
361
362dnl compilation checks
363dnl AC_PROG_CC sets $cross_compiling to `yes' if cross-compiling for a
364dnl different environment
365AC_PROG_CC
366
367dnl test for Unix variants
368AC_ISC_POSIX
369AC_MINIX
370
371AC_SYS_LARGEFILE
372
373dnl BEGIN changes for cross-building (currently cygwin, minGW, and
374dnl (obsolete) BeOS)
375
376SIGNAMES_O=
377SIGNAMES_H=lsignames.h
378
379dnl load up the cross-building cache file -- add more cases and cache
380dnl files as necessary
381
382dnl Note that host and target machine are the same, and different than the
383dnl build machine.
384dnl Set SIGNAMES_H based on whether or not we're cross-compiling.
385
386CROSS_COMPILE=
387if test "x$cross_compiling" = "xyes"; then
388    case "${host}" in
389    *-cygwin*)
390	cross_cache=${srcdir}/cross-build/cygwin32.cache
391	;;
392    *-mingw*)
393	cross_cache=${srcdir}/cross-build/cygwin32.cache
394	;;
395    i[[3456]]86-*-beos*)
396	cross_cache=${srcdir}/cross-build/x86-beos.cache
397	;;
398    *)	echo "configure: cross-compiling for $host is not supported" >&2
399	;;
400    esac
401    if test -n "${cross_cache}" && test -r "${cross_cache}"; then
402	echo "loading cross-build cache file ${cross_cache}"
403	. ${cross_cache}
404    fi
405    unset cross_cache
406    SIGNAMES_O='signames.o'
407    CROSS_COMPILE='-DCROSS_COMPILING'
408    AC_SUBST(CROSS_COMPILE)
409fi
410AC_SUBST(SIGNAMES_H)
411AC_SUBST(SIGNAMES_O)
412
413if test -z "$CC_FOR_BUILD"; then
414    if test "x$cross_compiling" = "xno"; then
415	CC_FOR_BUILD='$(CC)'
416    else
417	CC_FOR_BUILD=gcc
418    fi
419fi
420AC_SUBST(CC_FOR_BUILD)
421
422dnl END changes for cross-building
423
424dnl We want these before the checks, so the checks can modify their values.
425test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
426
427dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS.
428test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2"
429
430dnl handle options that alter how bash is compiled and linked
431dnl these must come after the test for cc/gcc
432if test "$opt_profiling" = "yes"; then
433	PROFILE_FLAGS=-pg
434	case "$host_os" in
435	solaris2*)	;;
436	*)		opt_static_link=yes ;;
437	esac
438	DEBUG= MALLOC_DEBUG=
439fi
440
441if test "$opt_static_link" = yes; then
442	# if we're using gcc, add `-static' to LDFLAGS, except on Solaris >= 2
443	if test -n "$GCC" || test "$ac_cv_prog_gcc" = "yes"; then
444		STATIC_LD="-static" 
445		case "$host_os" in
446		solaris2*)	;;
447		*)		LDFLAGS="$LDFLAGS -static" ;;	# XXX experimental
448		esac
449	fi
450fi
451
452if test "X$cross_compiling" = "Xno"; then
453	CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}
454	LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
455else
456	CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
457	LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
458fi
459
460test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g"
461
462AC_SUBST(CFLAGS)
463AC_SUBST(CPPFLAGS)
464AC_SUBST(LDFLAGS)
465AC_SUBST(STATIC_LD)
466
467AC_SUBST(CFLAGS_FOR_BUILD)
468AC_SUBST(CPPFLAGS_FOR_BUILD)
469AC_SUBST(LDFLAGS_FOR_BUILD)
470
471AC_PROG_GCC_TRADITIONAL
472
473dnl BEGIN READLINE and HISTORY LIBRARY SECTION
474dnl prepare to allow bash to be linked against an already-installed readline
475
476dnl first test that the readline version is new enough to link bash against
477if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
478then
479	# If the user specified --with-installed-readline=PREFIX and PREFIX
480	# is not `yes', set ac_cv_rl_prefix to PREFIX
481	test $opt_with_installed_readline != "yes" && ac_cv_rl_prefix=$opt_with_installed_readline
482
483	RL_LIB_READLINE_VERSION
484
485	case "$ac_cv_rl_version" in
486	5*|6*|7*|8*|9*)	;;
487	*)	opt_with_installed_readline=no 
488		AC_MSG_WARN(installed readline library is too old to be linked with bash)
489		AC_MSG_WARN(using private bash version)
490		;;
491	esac
492fi
493
494TILDE_LIB=-ltilde
495if test $opt_readline = yes; then
496	AC_DEFINE(READLINE)
497	if test "$opt_with_installed_readline" != "no" ; then
498		case "$opt_with_installed_readline" in
499		yes)	RL_INCLUDE= ;;
500		*)	case "$RL_INCLUDEDIR" in
501			/usr/include)	;;
502			*)		RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
503			esac
504			;;
505		esac
506		READLINE_DEP=
507		READLINE_LIB=-lreadline
508		# section for OS versions that don't allow unresolved symbols
509		# to be compiled into dynamic libraries.
510		case "$host_os" in
511		cygwin*)	TILDE_LIB= ;;
512		esac
513	else
514		RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
515		READLINE_DEP='$(READLINE_LIBRARY)'
516		# section for OS versions that ship an older/broken version of
517		# readline as a standard dynamic library and don't allow a
518		# static version specified as -llibname to override the
519		# dynamic version
520		case "${host_os}" in
521		darwin[[89]]*)	READLINE_LIB='${READLINE_LIBRARY}' ;;
522		*)		READLINE_LIB=-lreadline ;;
523		esac
524	fi
525else
526	RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
527	READLINE_LIB= READLINE_DEP=
528fi
529if test $opt_history = yes || test $opt_bang_history = yes; then
530	if test $opt_history = yes; then
531		AC_DEFINE(HISTORY)
532	fi
533	if test $opt_bang_history = yes; then
534		AC_DEFINE(BANG_HISTORY)
535	fi
536 	if test "$opt_with_installed_readline" != "no"; then
537		HIST_LIBDIR=$RL_LIBDIR
538		HISTORY_DEP=
539		HISTORY_LIB=-lhistory
540		case "$opt_with_installed_readline" in
541		yes)	RL_INCLUDE= ;;
542		*)	case "$RL_INCLUDEDIR" in
543			/usr/include)	;;
544			*)		RL_INCLUDE='-I${RL_INCLUDEDIR}' ;;
545			esac
546			;;
547		esac
548	else
549		HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
550		HISTORY_DEP='$(HISTORY_LIBRARY)'
551		# section for OS versions that ship an older version of
552		# readline as a standard dynamic library and don't allow a
553		# static version specified as -llibname to override the
554		# dynamic version
555		case "${host_os}" in
556		darwin8*)	HISTORY_LIB='${HISTORY_LIBRARY}' ;;
557		*)		HISTORY_LIB=-lhistory ;;
558		esac
559	fi
560else
561	HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
562	HISTORY_LIB= HISTORY_DEP=
563fi
564AC_SUBST(READLINE_LIB)
565AC_SUBST(READLINE_DEP)
566AC_SUBST(RL_LIBDIR)
567AC_SUBST(RL_INCLUDEDIR)
568AC_SUBST(RL_INCLUDE)
569AC_SUBST(HISTORY_LIB)
570AC_SUBST(HISTORY_DEP)
571AC_SUBST(HIST_LIBDIR)
572AC_SUBST(TILDE_LIB)
573
574dnl END READLINE and HISTORY LIBRARY SECTION
575
576dnl programs needed by the build and install process
577AC_PROG_INSTALL
578AC_CHECK_PROG(AR, ar, , ar)
579dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
580dnl This allows people to set it when running configure or make
581test -n "$ARFLAGS" || ARFLAGS="cr"
582AC_PROG_RANLIB
583AC_PROG_YACC
584AC_PROG_MAKE_SET
585
586case "$host_os" in
587opennt*|interix*)	MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
588*)			MAKE_SHELL=/bin/sh ;;
589esac
590AC_SUBST(MAKE_SHELL)
591
592dnl this is similar to the expanded AC_PROG_RANLIB
593if test x$SIZE = x; then
594	if test x$ac_tool_prefix = x; then
595		SIZE=size
596	else
597		SIZE=${ac_tool_prefix}size
598		save_IFS=$IFS ; IFS=:
599		size_found=0
600		for dir in $PATH; do
601			if test -x $dir/$SIZE ; then
602				size_found=1
603				break
604			fi
605		done
606		if test $size_found -eq 0; then
607			SIZE=:
608		fi
609		IFS=$save_IFS
610	fi
611fi
612AC_SUBST(SIZE)
613
614dnl Turn on any extensions available in the GNU C library.
615AC_DEFINE(_GNU_SOURCE, 1)
616
617dnl C compiler characteristics
618AC_C_CONST
619AC_C_INLINE
620AC_C_BIGENDIAN
621AC_C_STRINGIZE
622AC_C_LONG_DOUBLE
623AC_C_PROTOTYPES
624AC_C_CHAR_UNSIGNED
625
626dnl initialize GNU gettext
627AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
628
629dnl header files
630AC_HEADER_DIRENT
631AC_HEADER_TIME
632
633BASH_HEADER_INTTYPES
634
635AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
636		 memory.h locale.h termcap.h termio.h termios.h dlfcn.h \
637		 stddef.h stdint.h netdb.h pwd.h grp.h strings.h regex.h)
638AC_CHECK_HEADERS(sys/pte.h sys/stream.h sys/select.h sys/file.h \
639		 sys/resource.h sys/param.h sys/socket.h sys/stat.h \
640		 sys/time.h sys/times.h sys/types.h sys/wait.h)
641AC_CHECK_HEADERS(netinet/in.h arpa/inet.h)
642
643dnl sys/ptem.h requires definitions from sys/stream.h on systems where it
644dnl exists
645AC_CHECK_HEADER(sys/ptem.h, , ,[[
646#if HAVE_SYS_STREAM_H
647#  include <sys/stream.h>
648#endif
649]])
650
651dnl special checks for libc functions
652AC_FUNC_ALLOCA
653AC_FUNC_GETPGRP
654AC_FUNC_SETVBUF_REVERSED
655AC_FUNC_VPRINTF
656AC_FUNC_STRCOLL
657
658dnl if we're not using the bash malloc but require the C alloca, set things
659dnl up to build a libmalloc.a containing only alloca.o
660
661if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
662	MALLOC_TARGET=alloca
663	MALLOC_SRC=alloca.c
664
665	MALLOC_LIB='-lmalloc'
666	MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
667	MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
668	MALLOC_DEP='$(MALLOC_LIBRARY)'
669fi
670
671dnl if vprintf is not in libc, see if it's defined in stdio.h
672if test "$ac_cv_func_vprintf" = no; then
673    AC_MSG_CHECKING(for declaration of vprintf in stdio.h)
674    AC_EGREP_HEADER([[int[ 	]*vprintf[^a-zA-Z0-9]]],stdio.h,ac_cv_func_vprintf=yes)
675    AC_MSG_RESULT($ac_cv_func_vprintf)
676    if test $ac_cv_func_vprintf = yes; then
677	AC_DEFINE(HAVE_VPRINTF)
678    fi
679fi
680
681if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
682  AC_LIBOBJ(vprint)
683fi
684
685dnl signal stuff
686AC_TYPE_SIGNAL
687
688dnl checks for certain version-specific system calls and libc functions
689AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE))
690AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3))
691AC_CHECK_FUNC(isinf, AC_DEFINE(HAVE_ISINF_IN_LIBC))
692AC_CHECK_FUNC(isnan, AC_DEFINE(HAVE_ISNAN_IN_LIBC))
693
694dnl checks for missing libc functions
695AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING))
696
697dnl checks for system calls
698AC_CHECK_FUNCS(dup2 eaccess fcntl getdtablesize getgroups gethostname \
699		getpagesize getpeername getrlimit getrusage gettimeofday \
700		kill killpg lstat readlink sbrk select setdtablesize \
701		tcgetpgrp uname ulimit waitpid)
702AC_REPLACE_FUNCS(rename)
703
704dnl checks for c library functions
705AC_CHECK_FUNCS(bcopy bzero confstr fnmatch \
706		getaddrinfo gethostbyname getservbyname getservent inet_aton \
707		memmove pathconf putenv raise regcomp regexec \
708		setenv setlinebuf setlocale setvbuf siginterrupt strchr \
709		sysconf tcgetattr times ttyname tzset unsetenv)
710
711AC_CHECK_FUNCS(vsnprintf snprintf vasprintf asprintf)
712AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit)
713AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
714AC_REPLACE_FUNCS(getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr)
715AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax)
716
717AC_CHECK_DECLS([confstr])
718AC_CHECK_DECLS([printf])
719AC_CHECK_DECLS([sbrk])
720AC_CHECK_DECLS([setregid])
721AC_CHECK_DECLS([strcpy])
722AC_CHECK_DECLS([strsignal])
723
724dnl Extra test to detect the horribly broken HP/UX 11.00 strtold(3)
725AC_CHECK_DECLS([strtold], [
726    AC_MSG_CHECKING([for broken strtold])
727    AC_CACHE_VAL(bash_cv_strtold_broken,
728	[AC_TRY_COMPILE(
729	    [#include <stdlib.h>],
730	    [int main() { long double r; char *foo, bar; r = strtold(foo, &bar);}],
731	    bash_cv_strtold_broken=no, bash_cv_strtold_broken=yes,
732	    [AC_MSG_WARN(cannot check for broken strtold if cross-compiling, defaulting to no)])
733	]
734    )
735    AC_MSG_RESULT($bash_cv_strtold_broken)
736    if test "$bash_cv_strtold_broken" = "yes" ; then
737	AC_DEFINE(STRTOLD_BROKEN)
738    fi
739])
740    
741
742BASH_CHECK_DECL(strtoimax)
743BASH_CHECK_DECL(strtol)
744BASH_CHECK_DECL(strtoll)
745BASH_CHECK_DECL(strtoul)
746BASH_CHECK_DECL(strtoull)
747BASH_CHECK_DECL(strtoumax)
748
749AC_FUNC_MKTIME
750
751dnl
752dnl Checks for lib/intl and related code (uses some of the output from
753dnl AM_GNU_GETTEXT)
754dnl
755
756AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h])
757
758dnl AC_FUNC_MALLOC
759AC_FUNC_MMAP
760AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \
761		munmap stpcpy strcspn strdup])
762
763INTL_DEP= INTL_INC= LIBINTL_H=
764if test "x$USE_INCLUDED_LIBINTL" = "xyes"; then
765	INTL_DEP='${INTL_LIBDIR}/libintl.a'
766	INTL_INC='-I${INTL_LIBSRC} -I${INTL_BUILDDIR}'
767	LIBINTL_H='${INTL_BUILDDIR}/libintl.h'
768fi
769AC_SUBST(INTL_DEP)
770AC_SUBST(INTL_INC)
771AC_SUBST(LIBINTL_H)
772
773dnl
774dnl End of checks needed by files in lib/intl
775dnl
776
777BASH_CHECK_MULTIBYTE
778
779dnl checks for the dynamic loading library functions in libc and libdl
780if test "$opt_static_link" != yes; then
781AC_CHECK_LIB(dl, dlopen)
782AC_CHECK_FUNCS(dlopen dlclose dlsym)
783fi
784
785dnl this defines SYS_SIGLIST_DECLARED
786AC_DECL_SYS_SIGLIST
787
788dnl network functions -- check for inet_aton again
789if test "$ac_cv_func_inet_aton" != 'yes'; then
790BASH_FUNC_INET_ATON
791fi
792
793dnl libraries
794dnl this is reportedly no longer necessary for irix[56].?
795case "$host_os" in
796irix4*)	AC_CHECK_LIB(sun, getpwent) ;;
797esac
798
799dnl check for getpeername in the socket library only if it's not in libc
800if test "$ac_cv_func_getpeername" = no; then
801	BASH_CHECK_LIB_SOCKET
802fi
803dnl check for gethostbyname in socket libraries if it's not in libc
804if test "$ac_cv_func_gethostbyname" = no; then
805	BASH_FUNC_GETHOSTBYNAME
806fi
807
808dnl system types
809AC_TYPE_GETGROUPS
810AC_TYPE_OFF_T
811AC_TYPE_MODE_T
812AC_TYPE_UID_T
813AC_TYPE_PID_T
814AC_TYPE_SIZE_T
815AC_CHECK_TYPE(ssize_t, int)
816AC_CHECK_TYPE(time_t, long)
817
818BASH_TYPE_LONG_LONG
819BASH_TYPE_UNSIGNED_LONG_LONG
820
821AC_TYPE_SIGNAL
822
823AC_CHECK_SIZEOF(char, 1)
824AC_CHECK_SIZEOF(short, 2)
825AC_CHECK_SIZEOF(int, 4)
826AC_CHECK_SIZEOF(long, 4)
827AC_CHECK_SIZEOF(char *, 4)
828AC_CHECK_SIZEOF(double, 8)
829AC_CHECK_SIZEOF([long long], 8)
830
831AC_CHECK_TYPE(u_int, [unsigned int])
832AC_CHECK_TYPE(u_long, [unsigned long])
833
834BASH_TYPE_BITS16_T
835BASH_TYPE_U_BITS16_T
836BASH_TYPE_BITS32_T
837BASH_TYPE_U_BITS32_T
838BASH_TYPE_BITS64_T
839
840BASH_TYPE_PTRDIFF_T
841
842dnl structures
843AC_HEADER_STAT
844
845dnl system services
846AC_SYS_INTERPRETER
847if test $ac_cv_sys_interpreter = yes; then
848AC_DEFINE(HAVE_HASH_BANG_EXEC)
849fi
850
851dnl Miscellaneous Bash tests
852if test "$ac_cv_func_lstat" = "no"; then
853BASH_FUNC_LSTAT
854fi
855
856dnl behavior of system calls and library functions
857BASH_FUNC_CTYPE_NONASCII
858BASH_FUNC_DUP2_CLOEXEC_CHECK
859BASH_SYS_PGRP_SYNC
860BASH_SYS_SIGNAL_VINTAGE
861
862dnl checking for the presence of certain library symbols
863BASH_SYS_ERRLIST
864BASH_SYS_SIGLIST
865BASH_UNDER_SYS_SIGLIST
866
867dnl various system types
868BASH_TYPE_SIGHANDLER
869BASH_CHECK_TYPE(clock_t, [#include <sys/times.h>], long)
870BASH_CHECK_TYPE(sigset_t, [#include <signal.h>], int)
871BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T)
872BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long)
873BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long)
874if test "$ac_cv_header_sys_socket_h" = "yes"; then
875BASH_CHECK_TYPE(socklen_t, [#include <sys/socket.h>], int, HAVE_SOCKLEN_T)
876fi
877BASH_TYPE_RLIMIT
878
879dnl presence and contents of structures used by system calls
880BASH_STRUCT_TERMIOS_LDISC
881BASH_STRUCT_TERMIO_LDISC
882BASH_STRUCT_DIRENT_D_INO
883BASH_STRUCT_DIRENT_D_FILENO
884BASH_STRUCT_DIRENT_D_NAMLEN
885BASH_STRUCT_WINSIZE
886BASH_STRUCT_TIMEVAL
887AC_CHECK_MEMBERS([struct stat.st_blocks])
888AC_STRUCT_TM
889AC_STRUCT_TIMEZONE
890BASH_STRUCT_TIMEZONE
891
892dnl presence and behavior of C library functions
893BASH_FUNC_STRSIGNAL
894BASH_FUNC_OPENDIR_CHECK
895BASH_FUNC_ULIMIT_MAXFDS
896BASH_FUNC_GETENV
897if test "$ac_cv_func_getcwd" = "yes"; then
898BASH_FUNC_GETCWD
899fi
900BASH_FUNC_POSIX_SETJMP
901BASH_FUNC_STRCOLL
902
903dnl If putenv or unsetenv is not present, set the right define so the
904dnl prototype and declaration in lib/sh/getenv.c will be standard-conformant
905
906if test "$ac_cv_func_putenv" = "yes"; then
907BASH_FUNC_STD_PUTENV
908else
909AC_DEFINE(HAVE_STD_PUTENV)
910fi
911if test "$ac_cv_func_unsetenv" = "yes"; then
912BASH_FUNC_STD_UNSETENV
913else
914AC_DEFINE(HAVE_STD_UNSETENV)
915fi
916
917BASH_FUNC_PRINTF_A_FORMAT
918
919dnl presence and behavior of OS functions
920BASH_SYS_REINSTALL_SIGHANDLERS
921BASH_SYS_JOB_CONTROL_MISSING
922BASH_SYS_NAMED_PIPES
923
924dnl presence of certain CPP defines
925AC_HEADER_TIOCGWINSZ
926BASH_HAVE_TIOCSTAT
927BASH_HAVE_FIONREAD
928
929BASH_CHECK_WCONTINUED
930
931dnl miscellaneous
932BASH_CHECK_SPEED_T
933BASH_CHECK_GETPW_FUNCS
934BASH_CHECK_RTSIGS
935BASH_CHECK_SYS_SIGLIST
936
937dnl special checks
938case "$host_os" in
939hpux*)	BASH_CHECK_KERNEL_RLIMIT ;;
940esac
941
942if test "$opt_readline" = yes; then
943dnl yuck
944case "$host_os" in
945aix*)	prefer_curses=yes ;;
946esac
947BASH_CHECK_LIB_TERMCAP
948fi
949AC_SUBST(TERMCAP_LIB)
950AC_SUBST(TERMCAP_DEP)
951
952BASH_CHECK_DEV_FD
953BASH_CHECK_DEV_STDIN
954BASH_SYS_DEFAULT_MAIL_DIR
955
956if test "$bash_cv_job_control_missing" = missing; then
957	opt_job_control=no
958fi
959
960if test "$opt_job_control" = yes; then
961AC_DEFINE(JOB_CONTROL)
962JOBS_O=jobs.o
963else
964JOBS_O=nojobs.o
965fi
966
967AC_SUBST(JOBS_O)
968
969dnl Defines that we want to propagate to the Makefiles in subdirectories,
970dnl like glob and readline
971
972LOCAL_DEFS=-DSHELL
973
974dnl use this section to possibly define more cpp variables, specify local
975dnl libraries, and specify any additional local cc flags
976dnl
977dnl this should really go away someday
978
979case "${host_os}" in
980sysv4.2*)	AC_DEFINE(SVR4_2)
981		AC_DEFINE(SVR4) ;;
982sysv4*)		AC_DEFINE(SVR4) ;;
983sysv5*)		AC_DEFINE(SVR5) ;;
984hpux9*)		LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
985hpux*)		LOCAL_CFLAGS=-DHPUX ;;
986dgux*)		LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
987isc*)		LOCAL_CFLAGS=-Disc386 ;;
988rhapsody*)	LOCAL_CFLAGS=-DRHAPSODY ;;
989darwin*)	LOCAL_CFLAGS=-DMACOSX ;;
990sco3.2v5*)	LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
991sco3.2v4*)	LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
992sco3.2*)	LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
993sunos4*)	LOCAL_CFLAGS=-DSunOS4 ;;
994solaris2.5*)	LOCAL_CFLAGS="-DSunOS5 -DSOLARIS" ;;
995solaris2*)	LOCAL_CFLAGS=-DSOLARIS ;;
996lynxos*)	LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
997linux*)		LOCAL_LDFLAGS=-rdynamic		 # allow dynamic loading
998		case "`uname -r`" in
999		2.[[456789]]*|3*)	AC_DEFINE(PGRP_PIPE) ;;
1000		esac ;;
1001*qnx6*)		LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
1002*qnx*)		LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
1003powerux*)	LOCAL_LIBS="-lgen" ;;
1004cygwin*)	LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
1005opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;;
1006esac
1007
1008dnl Stanza for OS/compiler pair-specific flags
1009case "${host_os}-${CC}" in
1010aix4.2*-*gcc*)	LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
1011aix4.2*)	LOCAL_LDFLAGS="-bexpall -brtl" ;;
1012bsdi4*-*gcc*)	LOCAL_LDFLAGS="-rdynamic" ;;	# allow dynamic loading, like Linux
1013esac
1014
1015dnl FreeBSD-3.x can have either a.out or ELF
1016case "${host_os}" in
1017freebsd[[3-9]]*)
1018		if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
1019			LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
1020		fi ;;
1021freebsdelf*)	LOCAL_LDFLAGS=-rdynamic ;;	# allow dynamic loading
1022dragonfly*)	LOCAL_LDFLAGS=-rdynamic ;;	# allow dynamic loading
1023esac
1024
1025case "$host_cpu" in
1026*cray*)		LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
1027esac
1028
1029case "$host_cpu-$host_os" in
1030ibmrt-*bsd4*)	LOCAL_CFLAGS="-ma -U__STDC__" ;;
1031esac
1032
1033case "$host_cpu-$host_vendor-$host_os" in
1034m88k-motorola-sysv3)	LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
1035mips-pyramid-sysv4)	LOCAL_CFLAGS=-Xa ;;
1036esac
1037
1038#
1039# Shared object configuration section.  These values are generated by
1040# ${srcdir}/support/shobj-conf
1041#
1042if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
1043then
1044	AC_MSG_CHECKING(shared object configuration for loadable builtins)
1045	eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
1046	AC_SUBST(SHOBJ_CC)
1047	AC_SUBST(SHOBJ_CFLAGS)
1048	AC_SUBST(SHOBJ_LD)
1049	AC_SUBST(SHOBJ_LDFLAGS)
1050	AC_SUBST(SHOBJ_XLDFLAGS)
1051	AC_SUBST(SHOBJ_LIBS)
1052	AC_SUBST(SHOBJ_STATUS)
1053	AC_MSG_RESULT($SHOBJ_STATUS)
1054fi
1055
1056# try to create a directory tree if the source is elsewhere
1057# this should be packaged into a script accessible via ${srcdir}/support
1058case "$srcdir" in
1059.)	;;
1060*)	for d in doc tests support lib examples; do	# dirs
1061		test -d $d || mkdir $d
1062	done
1063	for ld in readline glob tilde malloc sh termcap; do	# libdirs
1064		test -d lib/$ld || mkdir lib/$ld
1065	done
1066	test -d examples/loadables || mkdir examples/loadables	# loadable builtins
1067	test -d examples/loadables/perl || mkdir examples/loadables/perl
1068	;;
1069esac
1070
1071BUILD_DIR=`pwd`
1072case "$BUILD_DIR" in
1073*\ *)	BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
1074*)	;;
1075esac
1076
1077AC_SUBST(PROFILE_FLAGS)
1078
1079AC_SUBST(incdir)
1080AC_SUBST(BUILD_DIR)
1081
1082AC_SUBST(YACC)
1083AC_SUBST(AR)
1084AC_SUBST(ARFLAGS)
1085
1086AC_SUBST(BASHVERS)
1087AC_SUBST(RELSTATUS)
1088AC_SUBST(DEBUG)
1089AC_SUBST(MALLOC_DEBUG)
1090
1091AC_SUBST(host_cpu)
1092AC_SUBST(host_vendor)
1093AC_SUBST(host_os)
1094
1095AC_SUBST(LOCAL_LIBS)
1096AC_SUBST(LOCAL_CFLAGS)
1097AC_SUBST(LOCAL_LDFLAGS)
1098AC_SUBST(LOCAL_DEFS)
1099
1100#AC_SUBST(ALLOCA_SOURCE)
1101#AC_SUBST(ALLOCA_OBJECT)
1102
1103AC_OUTPUT([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
1104	  lib/intl/Makefile \
1105	  lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
1106	  lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
1107	  examples/loadables/Makefile examples/loadables/perl/Makefile \
1108	  pathnames.h],
1109[
1110# Makefile uses this timestamp file to record whether config.h is up to date.
1111echo timestamp > stamp-h
1112])
1113