Patch-ID: bash32-010
[bash.git] / configure.in
blob0e808cde2b196fd108e1110285fd88801571a061
1 dnl
2 dnl Configure script for bash-3.2
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.
8 # Copyright (C) 1987-2006 Free Software Foundation, Inc.
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.
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.
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.
25 AC_REVISION([for Bash 3.2, version 3.190])dnl
27 define(bashvers, 3.2)
28 define(relstatus, release)
30 AC_INIT([bash], bashvers-relstatus, [bug-bash@gnu.org])
32 dnl make sure we are using a recent autoconf version
33 AC_PREREQ(2.50)
35 AC_CONFIG_SRCDIR(shell.h)
36 dnl where to find install.sh, config.sub, and config.guess
37 AC_CONFIG_AUX_DIR(./support)
38 AC_CONFIG_HEADERS(config.h)
40 dnl checks for version info
41 BASHVERS=bashvers
42 RELSTATUS=relstatus
44 dnl defaults for debug settings
45 case "$RELSTATUS" in
46 alp*|bet*|dev*|rc*)     DEBUG='-DDEBUG' MALLOC_DEBUG='-DMALLOC_DEBUG' ;;
47 *)      DEBUG= MALLOC_DEBUG= ;;
48 esac
50 dnl canonicalize the host and os so we can do some tricky things before
51 dnl parsing options
52 AC_CANONICAL_HOST
54 dnl configure defaults
55 opt_bash_malloc=yes
56 opt_purify=no
57 opt_purecov=no
58 opt_afs=no
59 opt_curses=no
60 opt_with_installed_readline=no
62 #htmldir=
64 dnl some systems should be configured without the bash malloc by default
65 dnl and some need a special compiler or loader
66 dnl look in the NOTES file for more
67 case "${host_cpu}-${host_os}" in
68 alpha*-*)       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
71 sparc-svr4*)    opt_bash_malloc=no ;;   # sparc SVR4, SVR4.2
72 sparc-netbsd*)  opt_bash_malloc=no ;;   # needs 8-byte alignment
73 mips-irix6*)    opt_bash_malloc=no ;;   # needs 8-byte alignment
74 m68k-sysv)      opt_bash_malloc=no ;;   # fixes file descriptor leak in closedir
75 sparc-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
91 esac
93 # memory scrambling on free()
94 case "${host_os}" in
95 sco3.2v5*|sco3.2v4*)    opt_memscramble=no ;;
96 *)                      opt_memscramble=yes ;;
97 esac
99 dnl
100 dnl macros for the bash debugger
102 AM_PATH_LISPDIR
103 AC_ARG_VAR(DEBUGGER_START_FILE, [location of bash debugger initialization file])
105 dnl arguments to configure
106 dnl packages
107 AC_ARG_WITH(afs, AC_HELP_STRING([--with-afs], [if you are running AFS]), opt_afs=$withval)
108 AC_ARG_WITH(bash-malloc, AC_HELP_STRING([--with-bash-malloc], [use the Bash version of malloc]), opt_bash_malloc=$withval)
109 AC_ARG_WITH(curses, AC_HELP_STRING([--with-curses], [use the curses library instead of the termcap library]), opt_curses=$withval)
110 AC_ARG_WITH(gnu-malloc, AC_HELP_STRING([--with-gnu-malloc], [synonym for --with-bash-malloc]), opt_bash_malloc=$withval)
111 AC_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)
112 AC_ARG_WITH(purecov, AC_HELP_STRING([--with-purecov], [configure to postprocess with pure coverage]), opt_purecov=$withval)
113 AC_ARG_WITH(purify, AC_HELP_STRING([--with-purify], [configure to postprocess with purify]), opt_purify=$withval)
115 if test "$opt_bash_malloc" = yes; then
116         MALLOC_TARGET=malloc
117         MALLOC_SRC=malloc.c
119         MALLOC_LIB='-lmalloc'
120         MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
121         MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
122         MALLOC_DEP='$(MALLOC_LIBRARY)'
124         AC_DEFINE(USING_BASH_MALLOC)
125 else
126         MALLOC_LIB=
127         MALLOC_LIBRARY=
128         MALLOC_LDFLAGS=
129         MALLOC_DEP=     
132 if test "$opt_purify" = yes; then
133         PURIFY="purify "
134         AC_DEFINE(DISABLE_MALLOC_WRAPPERS)
135 else
136         PURIFY=
139 if test "$opt_purecov" = yes; then
140         PURIFY="${PURIFY}purecov"
143 if test "$opt_afs" = yes; then
144         AC_DEFINE(AFS)
147 if test "$opt_curses" = yes; then
148         prefer_curses=yes
151 if test -z "${DEBUGGER_START_FILE}"; then
152         DEBUGGER_START_FILE=${ac_default_prefix}/share/bashdb/bashdb-main.inc
155 dnl optional shell features in config.h.in
156 opt_minimal_config=no
158 opt_job_control=yes
159 opt_alias=yes
160 opt_readline=yes
161 opt_history=yes
162 opt_bang_history=yes
163 opt_dirstack=yes
164 opt_restricted=yes
165 opt_process_subst=yes
166 opt_prompt_decoding=yes
167 opt_select=yes
168 opt_help=yes
169 opt_array_variables=yes
170 opt_dparen_arith=yes
171 opt_extended_glob=yes
172 opt_brace_expansion=yes
173 opt_disabled_builtins=no
174 opt_command_timing=yes
175 opt_xpg_echo=no
176 opt_strict_posix=no
177 opt_cond_command=yes
178 opt_cond_regexp=yes
179 opt_arith_for_command=yes
180 opt_net_redirs=yes
181 opt_progcomp=yes
182 opt_separate_help=no
183 opt_multibyte=yes
184 opt_debugger=yes
185 opt_single_longdoc_strings=yes
187 dnl options that affect how bash is compiled and linked
188 opt_static_link=no
189 opt_profiling=no
191 dnl argument parsing for optional features
192 AC_ARG_ENABLE(minimal-config, AC_HELP_STRING([--enable-minimal-config], [a minimal sh-like configuration]), opt_minimal_config=$enableval)
194 dnl a minimal configuration turns everything off, but features can be
195 dnl added individually
196 if 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
207 AC_ARG_ENABLE(alias, AC_HELP_STRING([--enable-alias], [enable shell aliases]), opt_alias=$enableval)
208 AC_ARG_ENABLE(arith-for-command, AC_HELP_STRING([--enable-arith-for-command], [enable arithmetic for command]), opt_arith_for_command=$enableval)
209 AC_ARG_ENABLE(array-variables, AC_HELP_STRING([--enable-array-variables], [include shell array variables]), opt_array_variables=$enableval)
210 AC_ARG_ENABLE(bang-history, AC_HELP_STRING([--enable-bang-history], [turn on csh-style history substitution]), opt_bang_history=$enableval)
211 AC_ARG_ENABLE(brace-expansion, AC_HELP_STRING([--enable-brace-expansion], [include brace expansion]), opt_brace_expansion=$enableval)
212 AC_ARG_ENABLE(command-timing, AC_HELP_STRING([--enable-command-timing], [enable the time reserved word and command timing]), opt_command_timing=$enableval)
213 AC_ARG_ENABLE(cond-command, AC_HELP_STRING([--enable-cond-command], [enable the conditional command]), opt_cond_command=$enableval)
214 AC_ARG_ENABLE(cond-regexp, AC_HELP_STRING([--enable-cond-regexp], [enable extgended regular expression matching in conditional commands]), opt_cond_regexp=$enableval)
215 AC_ARG_ENABLE(debugger, AC_HELP_STRING([--enable-debugger], [enable support for bash debugger]), opt_debugger=$enableval)
216 AC_ARG_ENABLE(directory-stack, AC_HELP_STRING([--enable-directory-stack], [enable builtins pushd/popd/dirs]), opt_dirstack=$enableval)
217 AC_ARG_ENABLE(disabled-builtins, AC_HELP_STRING([--enable-disabled-builtins], [allow disabled builtins to still be invoked]), opt_disabled_builtins=$enableval)
218 AC_ARG_ENABLE(dparen-arithmetic, AC_HELP_STRING([--enable-dparen-arithmetic], [include ((...)) command]), opt_dparen_arith=$enableval)
219 AC_ARG_ENABLE(extended-glob, AC_HELP_STRING([--enable-extended-glob], [include ksh-style extended pattern matching]), opt_extended_glob=$enableval)
220 AC_ARG_ENABLE(help-builtin, AC_HELP_STRING([--enable-help-builtin], [include the help builtin]), opt_help=$enableval)
221 AC_ARG_ENABLE(history, AC_HELP_STRING([--enable-history], [turn on command history]), opt_history=$enableval)
222 AC_ARG_ENABLE(job-control, AC_HELP_STRING([--enable-job-control], [enable job control features]), opt_job_control=$enableval)
223 AC_ARG_ENABLE(multibyte, AC_HELP_STRING([--enable-multibyte], [enable multibyte characters if OS supports them]), opt_multibyte=$enableval)
224 AC_ARG_ENABLE(net-redirections, AC_HELP_STRING([--enable-net-redirections], [enable /dev/tcp/host/port redirection]), opt_net_redirs=$enableval)
225 AC_ARG_ENABLE(process-substitution, AC_HELP_STRING([--enable-process-substitution], [enable process substitution]), opt_process_subst=$enableval)
226 AC_ARG_ENABLE(progcomp, AC_HELP_STRING([--enable-progcomp], [enable programmable completion and the complete builtin]), opt_progcomp=$enableval)
227 AC_ARG_ENABLE(prompt-string-decoding, AC_HELP_STRING([--enable-prompt-string-decoding], [turn on escape character decoding in prompts]), opt_prompt_decoding=$enableval)
228 AC_ARG_ENABLE(readline, AC_HELP_STRING([--enable-readline], [turn on command line editing]), opt_readline=$enableval)
229 AC_ARG_ENABLE(restricted, AC_HELP_STRING([--enable-restricted], [enable a restricted shell]), opt_restricted=$enableval)
230 AC_ARG_ENABLE(select, AC_HELP_STRING([--enable-select], [include select command]), opt_select=$enableval)
231 AC_ARG_ENABLE(separate-helpfiles, AC_HELP_STRING([--enable-separate-helpfiles], [use external files for help builtin documentation]), opt_separate_help=$enableval)
232 AC_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)
233 AC_ARG_ENABLE(strict-posix-default, AC_HELP_STRING([--enable-strict-posix-default], [configure bash to be posix-conformant by default]), opt_strict_posix=$enableval)
234 AC_ARG_ENABLE(usg-echo-default, AC_HELP_STRING([--enable-usg-echo-default], [a synonym for --enable-xpg-echo-default]), opt_xpg_echo=$enableval)
235 AC_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)
237 dnl options that alter how bash is compiled and linked
238 AC_ARG_ENABLE(mem-scramble, AC_HELP_STRING([--enable-mem-scramble], [scramble memory on calls to malloc and free]), opt_memscramble=$enableval)
239 AC_ARG_ENABLE(profiling, AC_HELP_STRING([--enable-profiling], [allow profiling with gprof]), opt_profiling=$enableval)
240 AC_ARG_ENABLE(static-link, AC_HELP_STRING([--enable-static-link], [link bash statically, for use as a root shell]), opt_static_link=$enableval)
242 dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs
244 dnl opt_readline and opt_history are handled later, because AC_PROG_CC needs
245 dnl to be run before we can check the version of an already-installed readline
246 dnl library
248 if test $opt_alias = yes; then
249 AC_DEFINE(ALIAS)
251 if test $opt_dirstack = yes; then
252 AC_DEFINE(PUSHD_AND_POPD)
254 if test $opt_restricted = yes; then
255 AC_DEFINE(RESTRICTED_SHELL)
257 if test $opt_process_subst = yes; then
258 AC_DEFINE(PROCESS_SUBSTITUTION)
260 if test $opt_prompt_decoding = yes; then
261 AC_DEFINE(PROMPT_STRING_DECODE)
263 if test $opt_select = yes; then
264 AC_DEFINE(SELECT_COMMAND)
266 if test $opt_help = yes; then
267 AC_DEFINE(HELP_BUILTIN)
269 if test $opt_array_variables = yes; then
270 AC_DEFINE(ARRAY_VARS)
272 if test $opt_dparen_arith = yes; then
273 AC_DEFINE(DPAREN_ARITHMETIC)
275 if test $opt_brace_expansion = yes; then
276 AC_DEFINE(BRACE_EXPANSION)
278 if test $opt_disabled_builtins = yes; then
279 AC_DEFINE(DISABLED_BUILTINS)
281 if test $opt_command_timing = yes; then
282 AC_DEFINE(COMMAND_TIMING)
284 if test $opt_xpg_echo = yes ; then
285 AC_DEFINE(DEFAULT_ECHO_TO_XPG)
287 if test $opt_strict_posix = yes; then
288 AC_DEFINE(STRICT_POSIX)
290 if test $opt_extended_glob = yes ; then
291 AC_DEFINE(EXTENDED_GLOB)
293 if test $opt_cond_command = yes ; then
294 AC_DEFINE(COND_COMMAND)
296 if test $opt_cond_regexp = yes ; then
297 AC_DEFINE(COND_REGEXP)
299 if test $opt_arith_for_command = yes; then
300 AC_DEFINE(ARITH_FOR_COMMAND)
302 if test $opt_net_redirs = yes; then
303 AC_DEFINE(NETWORK_REDIRECTIONS)
305 if test $opt_progcomp = yes; then
306 AC_DEFINE(PROGRAMMABLE_COMPLETION)
308 if test $opt_multibyte = no; then
309 AC_DEFINE(NO_MULTIBYTE_SUPPORT)
311 if test $opt_debugger = yes; then
312 AC_DEFINE(DEBUGGER)
315 if test $opt_memscramble = yes; then
316 AC_DEFINE(MEMSCRAMBLE)
319 if test "$opt_minimal_config" = yes; then
320         TESTSCRIPT=run-minimal
321 else
322         TESTSCRIPT=run-all
325 HELPDIR= HELPDIRDEFINE= HELPINSTALL=
326 if 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'
335 HELPSTRINGS=
336 if test "$opt_single_longdoc_strings" != "yes"; then
337         HELPSTRINGS='-S'
340 dnl now substitute in the values generated by arguments
341 AC_SUBST(TESTSCRIPT)
342 AC_SUBST(PURIFY)
343 AC_SUBST(MALLOC_TARGET)
344 AC_SUBST(MALLOC_SRC)
346 AC_SUBST(MALLOC_LIB)
347 AC_SUBST(MALLOC_LIBRARY)
348 AC_SUBST(MALLOC_LDFLAGS)
349 AC_SUBST(MALLOC_DEP)
351 AC_SUBST(htmldir)
353 AC_SUBST(HELPDIR)
354 AC_SUBST(HELPDIRDEFINE)
355 AC_SUBST(HELPINSTALL)
356 AC_SUBST(HELPSTRINGS)
358 echo ""
359 echo "Beginning configuration for bash-$BASHVERS-$RELSTATUS for ${host_cpu}-${host_vendor}-${host_os}"
360 echo ""
362 dnl compilation checks
363 dnl AC_PROG_CC sets $cross_compiling to `yes' if cross-compiling for a
364 dnl different environment
365 AC_PROG_CC
367 dnl test for Unix variants
368 AC_ISC_POSIX
369 AC_MINIX
371 AC_SYS_LARGEFILE
373 dnl BEGIN changes for cross-building (currently cygwin, minGW, and
374 dnl (obsolete) BeOS)
376 SIGNAMES_O=
377 SIGNAMES_H=lsignames.h
379 dnl load up the cross-building cache file -- add more cases and cache
380 dnl files as necessary
382 dnl Note that host and target machine are the same, and different than the
383 dnl build machine.
384 dnl Set SIGNAMES_H based on whether or not we're cross-compiling.
386 CROSS_COMPILE=
387 if 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)
410 AC_SUBST(SIGNAMES_H)
411 AC_SUBST(SIGNAMES_O)
413 if 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
420 AC_SUBST(CC_FOR_BUILD)
422 dnl END changes for cross-building
424 dnl We want these before the checks, so the checks can modify their values.
425 test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
427 dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS.
428 test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2"
430 dnl handle options that alter how bash is compiled and linked
431 dnl these must come after the test for cc/gcc
432 if 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=
441 if 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
452 if test "X$cross_compiling" = "Xno"; then
453         CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-"$CPPFLAGS"}
454         LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-'$(LDFLAGS)'}
455 else
456         CPPFLAGS_FOR_BUILD=${CPPFLAGS_FOR_BUILD-""}
457         LDFLAGS_FOR_BUILD=${LDFLAGS_FOR_BUILD-""}
460 test -z "$CFLAGS_FOR_BUILD" && CFLAGS_FOR_BUILD="-g"
462 AC_SUBST(CFLAGS)
463 AC_SUBST(CPPFLAGS)
464 AC_SUBST(LDFLAGS)
465 AC_SUBST(STATIC_LD)
467 AC_SUBST(CFLAGS_FOR_BUILD)
468 AC_SUBST(CPPFLAGS_FOR_BUILD)
469 AC_SUBST(LDFLAGS_FOR_BUILD)
471 AC_PROG_GCC_TRADITIONAL
473 dnl BEGIN READLINE and HISTORY LIBRARY SECTION
474 dnl prepare to allow bash to be linked against an already-installed readline
476 dnl first test that the readline version is new enough to link bash against
477 if test "$opt_readline" = yes && test "$opt_with_installed_readline" != "no"
478 then
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
483         RL_LIB_READLINE_VERSION
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
494 TILDE_LIB=-ltilde
495 if 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                 darwin8*)       READLINE_LIB='${READLINE_LIBRARY}' ;;
522                 *)              READLINE_LIB=-lreadline ;;
523                 esac
524         fi
525 else
526         RL_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
527         READLINE_LIB= READLINE_DEP=
529 if 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
560 else
561         HIST_LIBDIR='$(dot)/$(LIBSUBDIR)/readline'
562         HISTORY_LIB= HISTORY_DEP=
564 AC_SUBST(READLINE_LIB)
565 AC_SUBST(READLINE_DEP)
566 AC_SUBST(RL_LIBDIR)
567 AC_SUBST(RL_INCLUDEDIR)
568 AC_SUBST(RL_INCLUDE)
569 AC_SUBST(HISTORY_LIB)
570 AC_SUBST(HISTORY_DEP)
571 AC_SUBST(HIST_LIBDIR)
572 AC_SUBST(TILDE_LIB)
574 dnl END READLINE and HISTORY LIBRARY SECTION
576 dnl programs needed by the build and install process
577 AC_PROG_INSTALL
578 AC_CHECK_PROG(AR, ar, , ar)
579 dnl Set default for ARFLAGS, since autoconf does not have a macro for it.
580 dnl This allows people to set it when running configure or make
581 test -n "$ARFLAGS" || ARFLAGS="cr"
582 AC_PROG_RANLIB
583 AC_PROG_YACC
584 AC_PROG_MAKE_SET
586 case "$host_os" in
587 opennt*|interix*)       MAKE_SHELL="$INTERIX_ROOT/bin/sh" ;;
588 *)                      MAKE_SHELL=/bin/sh ;;
589 esac
590 AC_SUBST(MAKE_SHELL)
592 dnl this is similar to the expanded AC_PROG_RANLIB
593 if 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
612 AC_SUBST(SIZE)
614 dnl Turn on any extensions available in the GNU C library.
615 AC_DEFINE(_GNU_SOURCE, 1)
617 dnl C compiler characteristics
618 AC_C_CONST
619 AC_C_INLINE
620 AC_C_BIGENDIAN
621 AC_C_STRINGIZE
622 AC_C_LONG_DOUBLE
623 AC_C_PROTOTYPES
624 AC_C_CHAR_UNSIGNED
626 dnl initialize GNU gettext
627 AM_GNU_GETTEXT([no-libtool], [need-ngettext], [lib/intl])
629 dnl header files
630 AC_HEADER_DIRENT
631 AC_HEADER_TIME
633 BASH_HEADER_INTTYPES
635 AC_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)
638 AC_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)
641 AC_CHECK_HEADERS(netinet/in.h arpa/inet.h)
643 dnl sys/ptem.h requires definitions from sys/stream.h on systems where it
644 dnl exists
645 AC_CHECK_HEADER(sys/ptem.h, , ,[[
646 #if HAVE_SYS_STREAM_H
647 #  include <sys/stream.h>
648 #endif
651 dnl special checks for libc functions
652 AC_FUNC_ALLOCA
653 AC_FUNC_GETPGRP
654 AC_FUNC_SETVBUF_REVERSED
655 AC_FUNC_VPRINTF
656 AC_FUNC_STRCOLL
658 dnl if we're not using the bash malloc but require the C alloca, set things
659 dnl up to build a libmalloc.a containing only alloca.o
661 if test "$ac_cv_func_alloca_works" = "no" && test "$opt_bash_malloc" = "no"; then
662         MALLOC_TARGET=alloca
663         MALLOC_SRC=alloca.c
665         MALLOC_LIB='-lmalloc'
666         MALLOC_LIBRARY='$(ALLOC_LIBDIR)/libmalloc.a'
667         MALLOC_LDFLAGS='-L$(ALLOC_LIBDIR)'
668         MALLOC_DEP='$(MALLOC_LIBRARY)'
671 dnl if vprintf is not in libc, see if it's defined in stdio.h
672 if 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
681 if test "$ac_cv_func_vprintf" = no && test "$ac_cv_func__doprnt" = "yes"; then
682   AC_LIBOBJ(vprint)
685 dnl signal stuff
686 AC_TYPE_SIGNAL
688 dnl checks for certain version-specific system calls and libc functions
689 AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE))
690 AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3))
691 AC_CHECK_FUNC(isinf, AC_DEFINE(HAVE_ISINF_IN_LIBC))
692 AC_CHECK_FUNC(isnan, AC_DEFINE(HAVE_ISNAN_IN_LIBC))
694 dnl checks for missing libc functions
695 AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING))
697 dnl checks for system calls
698 AC_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)
702 AC_REPLACE_FUNCS(rename)
704 dnl checks for c library functions
705 AC_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)
711 AC_CHECK_FUNCS(vsnprintf snprintf vasprintf asprintf)
712 AC_CHECK_FUNCS(isascii isblank isgraph isprint isspace isxdigit)
713 AC_CHECK_FUNCS(getpwent getpwnam getpwuid)
714 AC_REPLACE_FUNCS(getcwd memset strcasecmp strerror strftime strnlen strpbrk strstr)
715 AC_REPLACE_FUNCS(strtod strtol strtoul strtoll strtoull strtoimax strtoumax)
717 AC_CHECK_DECLS([confstr])
718 AC_CHECK_DECLS([printf])
719 AC_CHECK_DECLS([sbrk])
720 AC_CHECK_DECLS([setregid])
721 AC_CHECK_DECLS([strcpy])
722 AC_CHECK_DECLS([strsignal])
724 dnl Extra test to detect the horribly broken HP/UX 11.00 strtold(3)
725 AC_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
740     
742 BASH_CHECK_DECL(strtoimax)
743 BASH_CHECK_DECL(strtol)
744 BASH_CHECK_DECL(strtoll)
745 BASH_CHECK_DECL(strtoul)
746 BASH_CHECK_DECL(strtoull)
747 BASH_CHECK_DECL(strtoumax)
749 AC_FUNC_MKTIME
752 dnl Checks for lib/intl and related code (uses some of the output from
753 dnl AM_GNU_GETTEXT)
756 AC_CHECK_HEADERS([argz.h errno.h fcntl.h malloc.h stdio_ext.h])
758 dnl AC_FUNC_MALLOC
759 AC_FUNC_MMAP
760 AC_CHECK_FUNCS([__argz_count __argz_next __argz_stringify dcgettext mempcpy \
761                 munmap stpcpy strcspn strdup])
763 INTL_DEP= INTL_INC= LIBINTL_H=
764 if 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'
769 AC_SUBST(INTL_DEP)
770 AC_SUBST(INTL_INC)
771 AC_SUBST(LIBINTL_H)
774 dnl End of checks needed by files in lib/intl
777 BASH_CHECK_MULTIBYTE
779 dnl checks for the dynamic loading library functions in libc and libdl
780 if test "$opt_static_link" != yes; then
781 AC_CHECK_LIB(dl, dlopen)
782 AC_CHECK_FUNCS(dlopen dlclose dlsym)
785 dnl this defines SYS_SIGLIST_DECLARED
786 AC_DECL_SYS_SIGLIST
788 dnl network functions -- check for inet_aton again
789 if test "$ac_cv_func_inet_aton" != 'yes'; then
790 BASH_FUNC_INET_ATON
793 dnl libraries
794 dnl this is reportedly no longer necessary for irix[56].?
795 case "$host_os" in
796 irix4*) AC_CHECK_LIB(sun, getpwent) ;;
797 esac
799 dnl check for getpeername in the socket library only if it's not in libc
800 if test "$ac_cv_func_getpeername" = no; then
801         BASH_CHECK_LIB_SOCKET
803 dnl check for gethostbyname in socket libraries if it's not in libc
804 if test "$ac_cv_func_gethostbyname" = no; then
805         BASH_FUNC_GETHOSTBYNAME
808 dnl system types
809 AC_TYPE_GETGROUPS
810 AC_TYPE_OFF_T
811 AC_TYPE_MODE_T
812 AC_TYPE_UID_T
813 AC_TYPE_PID_T
814 AC_TYPE_SIZE_T
815 AC_CHECK_TYPE(ssize_t, int)
816 AC_CHECK_TYPE(time_t, long)
818 BASH_TYPE_LONG_LONG
819 BASH_TYPE_UNSIGNED_LONG_LONG
821 AC_TYPE_SIGNAL
823 AC_CHECK_SIZEOF(char, 1)
824 AC_CHECK_SIZEOF(short, 2)
825 AC_CHECK_SIZEOF(int, 4)
826 AC_CHECK_SIZEOF(long, 4)
827 AC_CHECK_SIZEOF(char *, 4)
828 AC_CHECK_SIZEOF(double, 8)
829 AC_CHECK_SIZEOF([long long], 8)
831 AC_CHECK_TYPE(u_int, [unsigned int])
832 AC_CHECK_TYPE(u_long, [unsigned long])
834 BASH_TYPE_BITS16_T
835 BASH_TYPE_U_BITS16_T
836 BASH_TYPE_BITS32_T
837 BASH_TYPE_U_BITS32_T
838 BASH_TYPE_BITS64_T
840 BASH_TYPE_PTRDIFF_T
842 dnl structures
843 AC_HEADER_STAT
845 dnl system services
846 AC_SYS_INTERPRETER
847 if test $ac_cv_sys_interpreter = yes; then
848 AC_DEFINE(HAVE_HASH_BANG_EXEC)
851 dnl Miscellaneous Bash tests
852 if test "$ac_cv_func_lstat" = "no"; then
853 BASH_FUNC_LSTAT
856 dnl behavior of system calls and library functions
857 BASH_FUNC_CTYPE_NONASCII
858 BASH_FUNC_DUP2_CLOEXEC_CHECK
859 BASH_SYS_PGRP_SYNC
860 BASH_SYS_SIGNAL_VINTAGE
862 dnl checking for the presence of certain library symbols
863 BASH_SYS_ERRLIST
864 BASH_SYS_SIGLIST
865 BASH_UNDER_SYS_SIGLIST
867 dnl various system types
868 BASH_TYPE_SIGHANDLER
869 BASH_CHECK_TYPE(clock_t, [#include <sys/times.h>], long)
870 BASH_CHECK_TYPE(sigset_t, [#include <signal.h>], int)
871 BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T)
872 BASH_CHECK_TYPE(intmax_t, , $bash_cv_type_long_long)
873 BASH_CHECK_TYPE(uintmax_t, , $bash_cv_type_unsigned_long_long)
874 if test "$ac_cv_header_sys_socket_h" = "yes"; then
875 BASH_CHECK_TYPE(socklen_t, [#include <sys/socket.h>], int, HAVE_SOCKLEN_T)
877 BASH_TYPE_RLIMIT
879 dnl presence and contents of structures used by system calls
880 BASH_STRUCT_TERMIOS_LDISC
881 BASH_STRUCT_TERMIO_LDISC
882 BASH_STRUCT_DIRENT_D_INO
883 BASH_STRUCT_DIRENT_D_FILENO
884 BASH_STRUCT_DIRENT_D_NAMLEN
885 BASH_STRUCT_WINSIZE
886 BASH_STRUCT_TIMEVAL
887 AC_CHECK_MEMBERS([struct stat.st_blocks])
888 AC_STRUCT_TM
889 AC_STRUCT_TIMEZONE
890 BASH_STRUCT_TIMEZONE
892 dnl presence and behavior of C library functions
893 BASH_FUNC_STRSIGNAL
894 BASH_FUNC_OPENDIR_CHECK
895 BASH_FUNC_ULIMIT_MAXFDS
896 BASH_FUNC_GETENV
897 if test "$ac_cv_func_getcwd" = "yes"; then
898 BASH_FUNC_GETCWD
900 BASH_FUNC_POSIX_SETJMP
901 BASH_FUNC_STRCOLL
903 dnl If putenv or unsetenv is not present, set the right define so the
904 dnl prototype and declaration in lib/sh/getenv.c will be standard-conformant
906 if test "$ac_cv_func_putenv" = "yes"; then
907 BASH_FUNC_STD_PUTENV
908 else
909 AC_DEFINE(HAVE_STD_PUTENV)
911 if test "$ac_cv_func_unsetenv" = "yes"; then
912 BASH_FUNC_STD_UNSETENV
913 else
914 AC_DEFINE(HAVE_STD_UNSETENV)
917 BASH_FUNC_PRINTF_A_FORMAT
919 dnl presence and behavior of OS functions
920 BASH_SYS_REINSTALL_SIGHANDLERS
921 BASH_SYS_JOB_CONTROL_MISSING
922 BASH_SYS_NAMED_PIPES
924 dnl presence of certain CPP defines
925 AC_HEADER_TIOCGWINSZ
926 BASH_HAVE_TIOCSTAT
927 BASH_HAVE_FIONREAD
929 BASH_CHECK_WCONTINUED
931 dnl miscellaneous
932 BASH_CHECK_SPEED_T
933 BASH_CHECK_GETPW_FUNCS
934 BASH_CHECK_RTSIGS
935 BASH_CHECK_SYS_SIGLIST
937 dnl special checks
938 case "$host_os" in
939 hpux*)  BASH_CHECK_KERNEL_RLIMIT ;;
940 esac
942 if test "$opt_readline" = yes; then
943 dnl yuck
944 case "$host_os" in
945 aix*)   prefer_curses=yes ;;
946 esac
947 BASH_CHECK_LIB_TERMCAP
949 AC_SUBST(TERMCAP_LIB)
950 AC_SUBST(TERMCAP_DEP)
952 BASH_CHECK_DEV_FD
953 BASH_CHECK_DEV_STDIN
954 BASH_SYS_DEFAULT_MAIL_DIR
956 if test "$bash_cv_job_control_missing" = missing; then
957         opt_job_control=no
960 if test "$opt_job_control" = yes; then
961 AC_DEFINE(JOB_CONTROL)
962 JOBS_O=jobs.o
963 else
964 JOBS_O=nojobs.o
967 AC_SUBST(JOBS_O)
969 dnl Defines that we want to propagate to the Makefiles in subdirectories,
970 dnl like glob and readline
972 LOCAL_DEFS=-DSHELL
974 dnl use this section to possibly define more cpp variables, specify local
975 dnl libraries, and specify any additional local cc flags
977 dnl this should really go away someday
979 case "${host_os}" in
980 sysv4.2*)       AC_DEFINE(SVR4_2)
981                 AC_DEFINE(SVR4) ;;
982 sysv4*)         AC_DEFINE(SVR4) ;;
983 sysv5*)         AC_DEFINE(SVR5) ;;
984 hpux9*)         LOCAL_CFLAGS="-DHPUX9 -DHPUX" ;;
985 hpux*)          LOCAL_CFLAGS=-DHPUX ;;
986 dgux*)          LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
987 isc*)           LOCAL_CFLAGS=-Disc386 ;;
988 rhapsody*)      LOCAL_CFLAGS=-DRHAPSODY ;;
989 darwin*)        LOCAL_CFLAGS=-DMACOSX ;;
990 sco3.2v5*)      LOCAL_CFLAGS="-b elf -DWAITPID_BROKEN -DPATH_MAX=1024" ;;
991 sco3.2v4*)      LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DPATH_MAX=1024" ;;
992 sco3.2*)        LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
993 sunos4*)        LOCAL_CFLAGS=-DSunOS4 ;;
994 solaris2.5*)    LOCAL_CFLAGS=-DSunOS5 ;;
995 lynxos*)        LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
996 linux*)         LOCAL_LDFLAGS=-rdynamic          # allow dynamic loading
997                 case "`uname -r`" in
998                 2.[[456789]]*|3*)       AC_DEFINE(PGRP_PIPE) ;;
999                 esac ;;
1000 *qnx6*)         LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
1001 *qnx*)          LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
1002 powerux*)       LOCAL_LIBS="-lgen" ;;
1003 cygwin*)        LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
1004 opennt*|interix*) LOCAL_CFLAGS="-DNO_MAIN_ENV_ARG -DBROKEN_DIRENT_D_INO -D_POSIX_SOURCE" ;;
1005 esac
1007 dnl Stanza for OS/compiler pair-specific flags
1008 case "${host_os}-${CC}" in
1009 aix4.2*-*gcc*)  LOCAL_LDFLAGS="-Xlinker -bexpall -Xlinker -brtl" ;;
1010 aix4.2*)        LOCAL_LDFLAGS="-bexpall -brtl" ;;
1011 bsdi4*-*gcc*)   LOCAL_LDFLAGS="-rdynamic" ;;    # allow dynamic loading, like Linux
1012 esac
1014 dnl FreeBSD-3.x can have either a.out or ELF
1015 case "${host_os}" in
1016 freebsd[[3-9]]*)
1017                 if test -x /usr/bin/objformat && test "`/usr/bin/objformat`" = "elf" ; then
1018                         LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
1019                 fi ;;
1020 freebsdelf*)    LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
1021 dragonfly*)     LOCAL_LDFLAGS=-rdynamic ;;      # allow dynamic loading
1022 esac
1024 case "$host_cpu" in
1025 *cray*)         LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
1026 esac
1028 case "$host_cpu-$host_os" in
1029 ibmrt-*bsd4*)   LOCAL_CFLAGS="-ma -U__STDC__" ;;
1030 esac
1032 case "$host_cpu-$host_vendor-$host_os" in
1033 m88k-motorola-sysv3)    LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
1034 mips-pyramid-sysv4)     LOCAL_CFLAGS=-Xa ;;
1035 esac
1038 # Shared object configuration section.  These values are generated by
1039 # ${srcdir}/support/shobj-conf
1041 if test "$ac_cv_func_dlopen" = "yes" && test -f ${srcdir}/support/shobj-conf
1042 then
1043         AC_MSG_CHECKING(shared object configuration for loadable builtins)
1044         eval `${CONFIG_SHELL-/bin/sh} ${srcdir}/support/shobj-conf -C "${CC}" -c "${host_cpu}" -o "${host_os}" -v "${host_vendor}"`
1045         AC_SUBST(SHOBJ_CC)
1046         AC_SUBST(SHOBJ_CFLAGS)
1047         AC_SUBST(SHOBJ_LD)
1048         AC_SUBST(SHOBJ_LDFLAGS)
1049         AC_SUBST(SHOBJ_XLDFLAGS)
1050         AC_SUBST(SHOBJ_LIBS)
1051         AC_SUBST(SHOBJ_STATUS)
1052         AC_MSG_RESULT($SHOBJ_STATUS)
1055 # try to create a directory tree if the source is elsewhere
1056 # this should be packaged into a script accessible via ${srcdir}/support
1057 case "$srcdir" in
1058 .)      ;;
1059 *)      for d in doc tests support lib examples; do     # dirs
1060                 test -d $d || mkdir $d
1061         done
1062         for ld in readline glob tilde malloc sh termcap; do     # libdirs
1063                 test -d lib/$ld || mkdir lib/$ld
1064         done
1065         test -d examples/loadables || mkdir examples/loadables  # loadable builtins
1066         test -d examples/loadables/perl || mkdir examples/loadables/perl
1067         ;;
1068 esac
1070 BUILD_DIR=`pwd`
1071 case "$BUILD_DIR" in
1072 *\ *)   BUILD_DIR=`echo "$BUILD_DIR" | sed 's: :\\\\ :g'` ;;
1073 *)      ;;
1074 esac
1076 AC_SUBST(PROFILE_FLAGS)
1078 AC_SUBST(incdir)
1079 AC_SUBST(BUILD_DIR)
1081 AC_SUBST(YACC)
1082 AC_SUBST(AR)
1083 AC_SUBST(ARFLAGS)
1085 AC_SUBST(BASHVERS)
1086 AC_SUBST(RELSTATUS)
1087 AC_SUBST(DEBUG)
1088 AC_SUBST(MALLOC_DEBUG)
1090 AC_SUBST(host_cpu)
1091 AC_SUBST(host_vendor)
1092 AC_SUBST(host_os)
1094 AC_SUBST(LOCAL_LIBS)
1095 AC_SUBST(LOCAL_CFLAGS)
1096 AC_SUBST(LOCAL_LDFLAGS)
1097 AC_SUBST(LOCAL_DEFS)
1099 #AC_SUBST(ALLOCA_SOURCE)
1100 #AC_SUBST(ALLOCA_OBJECT)
1102 AC_OUTPUT([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
1103           lib/intl/Makefile \
1104           lib/malloc/Makefile lib/sh/Makefile lib/termcap/Makefile \
1105           lib/tilde/Makefile doc/Makefile support/Makefile po/Makefile.in \
1106           examples/loadables/Makefile examples/loadables/perl/Makefile \
1107           pathnames.h],
1109 # Makefile uses this timestamp file to record whether config.h is up to date.
1110 echo timestamp > stamp-h