]> git.ipfire.org Git - thirdparty/bash.git/blame - configure.in
Imported from ../bash-2.01.1.tar.gz.
[thirdparty/bash.git] / configure.in
CommitLineData
ccc6cda3 1dnl
d166f048 2dnl Configure script for bash-2.01
ccc6cda3
JA
3dnl
4dnl report bugs to chet@po.cwru.edu
5dnl
6dnl Process this file with autoconf to produce a configure script.
7dnl checks for version info
d166f048 8
e8ce775d 9AC_REVISION([for Bash 2.01, version 1.28, from autoconf version] AC_ACVERSION)dnl
ccc6cda3
JA
10
11AC_INIT(shell.h)
12AC_CONFIG_HEADER(config.h)
13
14dnl make sure we are using a recent autoconf version
d166f048 15AC_PREREQ(2.10)
ccc6cda3
JA
16
17dnl where to find install.sh, config.sub, and config.guess
18AC_CONFIG_AUX_DIR(./support)
19
20dnl canonicalize the host and os so we can do some tricky things before
21dnl parsing options
22AC_CANONICAL_HOST
23
24dnl configure defaults
25opt_gnu_malloc=yes
26opt_glibc_malloc=no
27opt_purify=no
d166f048 28opt_purecov=no
ccc6cda3 29opt_afs=no
d166f048 30opt_curses=no
ccc6cda3
JA
31
32dnl some systems should be configured without gnu malloc by default
33dnl and some need a special compiler or loader
34dnl look in the NOTES file for more
35case "${host_cpu}-${host_os}" in
36alpha-*) opt_gnu_malloc=no ;; # alpha running osf/1 or linux
37*cray*-*) opt_gnu_malloc=no ;; # Crays
38*-osf1*) opt_gnu_malloc=no ;; # other osf/1 machines
39sparc-svr4*) opt_gnu_malloc=no ;; # sparc SVR4, SVR4.2
40sparc-netbsd*) opt_gnu_malloc=no ;; # needs 8-byte alignment
e8ce775d 41sgi-irix6*) opt_gnu_malloc=no ;; # needs 8-byte alignment
ccc6cda3 42sparc-linux*) opt_gnu_malloc=no ;; # sparc running linux; requires ELF
d166f048 43*-freebsd*) opt_gnu_malloc=no ;; # they claim it's better
ccc6cda3
JA
44*-aix*) opt_gnu_malloc=no ;; # AIX machines
45*-nextstep*) opt_gnu_malloc=no ;; # NeXT machines running NeXTstep
46*-dgux*) opt_gnu_malloc=no ;; # DG/UX machines
d166f048
JA
47*-qnx*) opt_gnu_malloc=no ;; # QNX 4.2
48*-machten4) opt_gnu_malloc=no ;; # MachTen 4.x
e8ce775d 49*-bsdi2.1|*-bsdi3.0) opt_gnu_malloc=no ; : ${CC:=shlicc2} ;; # for loadable builtins
ccc6cda3
JA
50esac
51
52dnl arguments to configure
53dnl packages
d166f048
JA
54AC_ARG_WITH(afs, --with-afs if you are running AFS, opt_afs=$withval)
55AC_ARG_WITH(curses, --with-curses use the curses library instead of the termcap library,opt_curses=$withval)
ccc6cda3 56AC_ARG_WITH(glibc-malloc, --with-glibc-malloc use the GNU C library version of malloc,opt_glibc_malloc=$withval)
d166f048
JA
57AC_ARG_WITH(gnu-malloc, --with-gnu-malloc use the GNU version of malloc,opt_gnu_malloc=$withval)
58AC_ARG_WITH(purecov, --with-purecov configure to postprocess with pure coverage, opt_purecov=$withval)
ccc6cda3 59AC_ARG_WITH(purify, --with-purify configure to postprocess with purify, opt_purify=$withval)
ccc6cda3
JA
60
61dnl test for glibc malloc first because it can override the default
62if test "$opt_glibc_malloc" = yes; then
d166f048
JA
63 MALLOC_TARGET=gmalloc
64 MALLOC_SRC=gmalloc.c
ccc6cda3 65elif test "$opt_gnu_malloc" = yes; then
d166f048
JA
66 MALLOC_TARGET=malloc
67 MALLOC_SRC=malloc.c
ccc6cda3 68else
d166f048
JA
69 MALLOC_TARGET=stubmalloc
70 MALLOC_SRC=stub.c
ccc6cda3
JA
71fi
72
73if test "$opt_purify" = yes; then
d166f048 74 PURIFY="purify "
ccc6cda3
JA
75else
76 PURIFY=
77fi
78
d166f048
JA
79if test "$opt_purecov" = yes; then
80 PURIFY="${PURIFY}purecov"
81fi
82
ccc6cda3
JA
83if test "$opt_afs" = yes; then
84 AC_DEFINE(AFS)
85fi
86
d166f048
JA
87if test "$opt_curses" = yes; then
88 prefer_curses=yes
89fi
90
ccc6cda3
JA
91dnl optional shell features in config.h.in
92opt_minimal_config=no
93
94opt_job_control=yes
95opt_alias=yes
96opt_readline=yes
97opt_history=yes
98opt_bang_history=yes
99opt_dirstack=yes
100opt_restricted=yes
101opt_process_subst=yes
102opt_prompt_decoding=yes
103opt_select=yes
104opt_help=yes
105opt_array_variables=yes
106opt_dparen_arith=yes
107opt_brace_expansion=yes
108opt_disabled_builtins=no
109opt_command_timing=yes
110opt_usg_echo=no
111
112dnl argument parsing for optional features
113AC_ARG_ENABLE(minimal-config, --enable-minimal-config a minimal sh-like configuration, opt_minimal_config=$enableval)
114
115dnl a minimal configuration turns everything off, but features can be
116dnl added individually
117if test $opt_minimal_config = yes; then
118 opt_job_control=no opt_alias=no opt_readline=no
119 opt_history=no opt_bang_history=no opt_dirstack=no
120 opt_restricted=no opt_process_subst=no opt_prompt_decoding=no
121 opt_select=no opt_help=no opt_array_variables=no opt_dparen_arith=no
122 opt_brace_expansion=no opt_disabled_builtins=no opt_command_timing=no
123fi
124
ccc6cda3 125AC_ARG_ENABLE(alias, --enable-alias enable shell aliases, opt_alias=$enableval)
d166f048 126AC_ARG_ENABLE(array-variables, --enable-array-variables include shell array variables, opt_array_variables=$enableval)
ccc6cda3 127AC_ARG_ENABLE(bang-history, --enable-bang-history turn on csh-style history substitution, opt_bang_history=$enableval)
d166f048
JA
128AC_ARG_ENABLE(brace-expansion, --enable-brace-expansion include brace expansion, opt_brace_expansion=$enableval)
129AC_ARG_ENABLE(command-timing, --enable-command-timing enable the time reserved word and command timing, opt_command_timing=$enableval)
ccc6cda3 130AC_ARG_ENABLE(directory-stack, --enable-directory-stack enable builtins pushd/popd/dirs, opt_dirstack=$enableval)
d166f048
JA
131AC_ARG_ENABLE(disabled-builtins, --enable-disabled-builtins allow disabled builtins to still be invoked, opt_disabled_builtins=$enableval)
132AC_ARG_ENABLE(dparen-arithmetic, [--enable-dparen-arithmetic include ((...)) command], opt_dparen_arith=$enableval)
133AC_ARG_ENABLE(help-builtin, --enable-help-builtin include the help builtin, opt_help=$enableval)
134AC_ARG_ENABLE(history, --enable-history turn on command history, opt_history=$enableval)
135AC_ARG_ENABLE(job-control, --enable-job-control enable job control features, opt_job_control=$enableval)
ccc6cda3
JA
136AC_ARG_ENABLE(process-substitution, --enable-process-substitution enable process substitution, opt_process_subst=$enableval)
137AC_ARG_ENABLE(prompt-string-decoding, --enable-prompt-string-decoding turn on escape character decoding in prompts, opt_prompt_decoding=$enableval)
d166f048
JA
138AC_ARG_ENABLE(readline, --enable-readline turn on command line editing, opt_readline=$enableval)
139AC_ARG_ENABLE(restricted, --enable-restricted enable a restricted shell, opt_restricted=$enableval)
ccc6cda3 140AC_ARG_ENABLE(select, --enable-select include select command, opt_select=$enableval)
ccc6cda3
JA
141AC_ARG_ENABLE(usg-echo-default, --enable-usg-echo-default make the echo builtin expand escape sequences by default, opt_usg_echo=$enableval)
142
143dnl opt_job_control is handled later, after BASH_JOB_CONTROL_MISSING runs
144
145if test $opt_alias = yes; then
146AC_DEFINE(ALIAS)
147fi
148if test $opt_readline = yes; then
149AC_DEFINE(READLINE)
150READLINE_LIB=-lreadline
151READLINE_DEP='$(READLINE_LIBRARY)'
152else
153READLINE_LIB= READLINE_DEP=
154fi
155if test $opt_history = yes; then
156AC_DEFINE(HISTORY)
157HISTORY_LIB=-lhistory
158HISTORY_DEP='$(HISTORY_LIBRARY)'
159else
160HISTORY_LIB= HISTORY_DEP=
161fi
162if test $opt_bang_history = yes; then
163AC_DEFINE(BANG_HISTORY)
164HISTORY_LIB=-lhistory
165HISTORY_DEP='$(HISTORY_LIBRARY)'
166else
167HISTORY_LIB= HISTORY_DEP=
168fi
169if test $opt_dirstack = yes; then
170AC_DEFINE(PUSHD_AND_POPD)
171fi
172if test $opt_restricted = yes; then
173AC_DEFINE(RESTRICTED_SHELL)
174fi
175if test $opt_process_subst = yes; then
176AC_DEFINE(PROCESS_SUBSTITUTION)
177fi
178if test $opt_prompt_decoding = yes; then
179AC_DEFINE(PROMPT_STRING_DECODE)
180fi
181if test $opt_select = yes; then
182AC_DEFINE(SELECT_COMMAND)
183fi
184if test $opt_help = yes; then
185AC_DEFINE(HELP_BUILTIN)
186fi
187if test $opt_array_variables = yes; then
188AC_DEFINE(ARRAY_VARS)
189fi
190if test $opt_dparen_arith = yes; then
191AC_DEFINE(DPAREN_ARITHMETIC)
192fi
193if test $opt_brace_expansion = yes; then
194AC_DEFINE(BRACE_EXPANSION)
195fi
196if test $opt_disabled_builtins = yes; then
197AC_DEFINE(DISABLED_BUILTINS)
198fi
199if test $opt_command_timing = yes; then
200AC_DEFINE(COMMAND_TIMING)
201fi
202if test $opt_usg_echo = yes ; then
203AC_DEFINE(DEFAULT_ECHO_TO_USG)
204fi
205
d166f048
JA
206if test "$opt_minimal_config" = yes; then
207 TESTSCRIPT=run-minimal
208else
209 TESTSCRIPT=run-all
210fi
211
ccc6cda3 212dnl now substitute in the values generated by arguments
d166f048 213AC_SUBST(TESTSCRIPT)
ccc6cda3 214AC_SUBST(PURIFY)
d166f048 215AC_SUBST(MALLOC_TARGET)
ccc6cda3
JA
216AC_SUBST(MALLOC_SRC)
217AC_SUBST(READLINE_LIB)
218AC_SUBST(READLINE_DEP)
219AC_SUBST(HISTORY_LIB)
220AC_SUBST(HISTORY_DEP)
221
d166f048
JA
222dnl Use GNU m4 macros to get the distribution and patchlevel information
223dnl into configure without requiring the files to be distributed
224[BASHVERS=]dnl
225esyscmd(cat _distribution)dnl
226[BASHPATCH=]dnl
227esyscmd(cat _patchlevel)dnl
228
229echo "Beginning configuration for bash-$BASHVERS"
ccc6cda3
JA
230
231dnl compilation checks
232AC_PROG_CC
233AC_ISC_POSIX
234AC_MINIX
235
ccc6cda3
JA
236dnl We want these before the checks, so the checks can modify their values.
237test -z "$CFLAGS" && CFLAGS=-g auto_cflags=1
238
239dnl If we're using gcc and the user hasn't specified CFLAGS, add -O2 to CFLAGS.
240test -n "$GCC" && test -n "$auto_cflags" && CFLAGS="$CFLAGS -O2"
241
242AC_SUBST(CFLAGS)
243AC_SUBST(CPPFLAGS)
244AC_SUBST(LDFLAGS)
245
246AC_PROG_GCC_TRADITIONAL
247
248dnl programs needed by the build and install process
249AC_PROG_INSTALL
250AC_CHECK_PROG(AR, ar, ar)
251AC_PROG_RANLIB
252AC_PROG_YACC
253AC_PROG_MAKE_SET
254
255dnl special checks for libc functions
256AC_FUNC_ALLOCA
257AC_FUNC_GETPGRP
258AC_FUNC_SETVBUF_REVERSED
259AC_FUNC_VPRINTF
260AC_FUNC_WAIT3
261AC_FUNC_STRCOLL
262
263dnl if vprintf is not in libc, see if it's defined in stdio.h
264if test "$ac_cv_func_vprintf" = no; then
265 AC_MSG_CHECKING(for declaration of vprintf in stdio.h)
266 AC_EGREP_HEADER([[int[ ]*vprintf[^a-zA-Z0-9]]],stdio.h,ac_cv_func_vprintf=yes)
267 AC_MSG_RESULT($ac_cv_func_vprintf)
268 if test $ac_cv_func_vprintf = yes; then
269 AC_DEFINE(HAVE_VPRINTF)
270 fi
271fi
272
273dnl signal stuff
274AC_RETSIGTYPE
275
276dnl checks for certain version-specific system calls and libc functions
277AC_CHECK_FUNC(__setostype, AC_DEFINE(HAVE_SETOSTYPE))
278AC_CHECK_FUNC(wait3, AC_DEFINE(HAVE_WAIT3))
279
280dnl checks for missing libc functions
281AC_CHECK_FUNC(mkfifo,AC_DEFINE(HAVE_MKFIFO),AC_DEFINE(MKFIFO_MISSING))
282
283dnl checks for system calls
284AC_CHECK_FUNCS(dup2 select getdtablesize getgroups gethostname \
285 setdtablesize getpagesize killpg lstat getpeername \
286 getrlimit getrusage gettimeofday waitpid tcgetpgrp)
287
288dnl checks for c library functions
289AC_CHECK_FUNCS(bcopy bzero confstr getcwd strcasecmp setenv putenv \
290 setlinebuf setlocale strchr strerror tcgetattr uname \
291 sysconf ulimit times tzset siginterrupt memmove)
292
293dnl checks for locale functions
294AC_CHECK_HEADERS(libintl.h)
295AC_CHECK_FUNCS(gettext textdomain bindtextdomain)
296
297dnl check for GNU libintl if gettext/textdomain/bindtextdomain
298dnl are not found in libc
299if test "$ac_cv_func_bindtextdomain" = "no"; then
300 AC_CHECK_LIB(intl,bindtextdomain)
301 if test "$ac_cv_lib_intl" = "yes"; then
302 AC_CHECK_FUNCS(gettext textdomain bindtextdomain)
303 fi
304fi
305
306dnl checks for the dynamic loading library functions in libc and libdl
307AC_CHECK_LIB(dl, dlopen)
308AC_CHECK_FUNCS(dlopen dlclose dlsym)
309
310dnl this defines SYS_SIGLIST_DECLARED
311AC_DECL_SYS_SIGLIST
312
313dnl header files
314AC_HEADER_DIRENT
315AC_HEADER_TIME
316
317AC_CHECK_HEADERS(unistd.h stdlib.h stdarg.h varargs.h limits.h string.h \
d166f048 318 memory.h locale.h termcap.h termio.h termios.h dlfcn.h)
ccc6cda3
JA
319AC_CHECK_HEADERS(sys/ptem.h sys/pte.h sys/stream.h sys/select.h sys/file.h \
320 sys/resource.h sys/param.h sys/socket.h \
321 sys/time.h sys/times.h sys/wait.h)
322
323dnl libraries
324dnl this is reportedly no longer necessary for irix[56].?
325dnl AC_CHECK_LIB(sun, getpwent)
d166f048
JA
326dnl check for getpeername in the socket library only if it's not in libc
327if test "$ac_cv_func_getpeername" = no; then
328 BASH_CHECK_SOCKLIB
329fi
ccc6cda3
JA
330
331dnl system types
332AC_TYPE_GETGROUPS
333AC_TYPE_OFF_T
334AC_TYPE_MODE_T
335AC_TYPE_UID_T
336AC_TYPE_PID_T
337AC_TYPE_SIZE_T
338AC_CHECK_TYPE(time_t, long)
339
340AC_TYPE_SIGNAL
341
342dnl structures
343AC_HEADER_STAT
344AC_HEADER_EGREP(struct timeval, sys/time.h, bash_cv_struct_timeval=yes, )
345if test -z "$bash_cv_struct_timeval"; then
346AC_HEADER_EGREP(struct timeval, time.h, bash_cv_struct_timeval=yes, bash_cv_struct_timeval=no)
347fi
348if test $bash_cv_struct_timeval = yes; then
349AC_DEFINE(HAVE_TIMEVAL)
350fi
351
352dnl C compiler characteristics
353AC_C_BIGENDIAN
354
355dnl system services
356AC_SYS_INTERPRETER
357if test $ac_cv_sys_interpreter = yes; then
358AC_DEFINE(HAVE_HASH_BANG_EXEC)
359fi
360dnl we use NO_READ_RESTART_ON_SIGNAL
361AC_SYS_RESTARTABLE_SYSCALLS
362
363dnl Miscellaneous Bash tests
364if test "$ac_cv_func_lstat" = "no"; then
365BASH_FUNC_LSTAT
366fi
367
d166f048 368dnl behavior of system calls and library functions
ccc6cda3
JA
369BASH_DUP2_CLOEXEC_CHECK
370BASH_PGRP_SYNC
d166f048
JA
371BASH_SIGNAL_CHECK
372
373dnl checking for the presence of certain library symbols
ccc6cda3
JA
374BASH_SYS_ERRLIST
375BASH_SYS_SIGLIST
376BASH_UNDER_SYS_SIGLIST
d166f048
JA
377
378dnl various system types
ccc6cda3
JA
379BASH_TYPE_SIGHANDLER
380BASH_CHECK_TYPE(clock_t, [#include <sys/times.h>], long)
381BASH_CHECK_TYPE(sigset_t, [#include <signal.h>], int)
382BASH_CHECK_TYPE(quad_t, , long, HAVE_QUAD_T)
383BASH_RLIMIT_TYPE
d166f048
JA
384
385dnl presence and contents of structures used by system calls
ccc6cda3
JA
386BASH_STRUCT_TERMIOS_LDISC
387BASH_STRUCT_TERMIO_LDISC
388BASH_STRUCT_DIRENT_D_INO
d166f048
JA
389BASH_STRUCT_DIRENT_D_FILENO
390BASH_STRUCT_WINSIZE
391
392dnl presence and behavior of C library functions
ccc6cda3
JA
393BASH_FUNC_STRSIGNAL
394BASH_FUNC_OPENDIR_CHECK
395BASH_FUNC_PRINTF
396BASH_FUNC_ULIMIT_MAXFDS
397BASH_FUNC_GETENV
398BASH_FUNC_GETCWD
399BASH_FUNC_SBRK_DECLARED
400BASH_FUNC_POSIX_SETJMP
d166f048
JA
401BASH_FUNC_STRCOLL
402
403dnl presence and behavior of OS functions
ccc6cda3
JA
404BASH_REINSTALL_SIGHANDLERS
405BASH_JOB_CONTROL_MISSING
406BASH_SYS_NAMED_PIPES
d166f048
JA
407
408dnl presence of certain CPP defines
ccc6cda3
JA
409BASH_HAVE_TIOCGWINSZ
410BASH_HAVE_TIOCSTAT
411BASH_HAVE_FIONREAD
d166f048
JA
412
413dnl miscellaneous
414BASH_MISC_SPEED_T
ccc6cda3 415BASH_CHECK_GETPW_FUNCS
ccc6cda3 416
d166f048 417dnl special checks
ccc6cda3
JA
418case "$host_os" in
419hpux*) BASH_KERNEL_RLIMIT_CHECK ;;
420esac
421
422if test "$opt_readline" = yes; then
d166f048
JA
423dnl yuck
424case "$host_os" in
425aix*) prefer_curses=yes ;;
426esac
ccc6cda3
JA
427BASH_CHECK_LIB_TERMCAP
428fi
429AC_SUBST(TERMCAP_LIB)
430AC_SUBST(TERMCAP_DEP)
431
d166f048 432BASH_CHECK_DEV_FD
ccc6cda3
JA
433BASH_DEFAULT_MAIL_DIR
434
435if test "$bash_cv_job_control_missing" = missing; then
436 opt_job_control=no
437fi
438
439if test "$opt_job_control" = yes; then
440AC_DEFINE(JOB_CONTROL)
441JOBS_O=jobs.o
442else
443JOBS_O=nojobs.o
444fi
445
446AC_SUBST(JOBS_O)
447
d166f048
JA
448dnl Defines that we want to propagate to the Makefiles in subdirectories,
449dnl like glob and readline
450
451LOCAL_DEFS=-DSHELL
452
ccc6cda3
JA
453dnl use this section to possibly define more cpp variables, specify local
454dnl libraries, and specify any additional local cc flags
455dnl
456dnl this should really go away someday
457
458case "$host_os" in
e8ce775d 459sysv4.2*) AC_DEFINE(SVR4_2)
ccc6cda3
JA
460 AC_DEFINE(SVR4) ;;
461sysv4*) AC_DEFINE(SVR4) ;;
462hpux*) LOCAL_CFLAGS=-DHPUX ;;
463dgux*) LOCAL_CFLAGS=-D_DGUX_SOURCE; LOCAL_LIBS=-ldgc ;;
464isc*) LOCAL_CFLAGS=-Disc386;;
465sco3.2v5*) LOCAL_CFLAGS="-DWAITPID_BROKEN -DNO_MEMSCRAMBLE -DPATH_MAX=1024" ;;
466sco3.2v4*) LOCAL_CFLAGS="-DMUST_UNBLOCK_CHLD -DNO_MEMSCRAMBLE -DPATH_MAX=1024" ;;
467sco3.2*) LOCAL_CFLAGS=-DMUST_UNBLOCK_CHLD ;;
d166f048
JA
468sunos4*) LOCAL_CFLAGS=-DSunOS4 ;;
469solaris2.5*) LOCAL_CFLAGS=-DSunOS5 ;;
470linux*) LOCAL_LDFLAGS=-rdynamic ;; # allow dynamic loading
471aix4.2*) LOCAL_LDFLAGS="-bexpall -brtl" ;;# allow dynamic loading
472*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s -lunix -lncurses" ;;
473powerux) LOCAL_LIBS="-lgen" ;;
ccc6cda3
JA
474esac
475
476case "$host_cpu" in
477*cray*) LOCAL_CFLAGS="-DCRAY" ;; # shell var so config.h can use it
478esac
479
480case "$host_cpu-$host_os" in
481ibmrt-*bsd4*) LOCAL_CFLAGS="-ma -U__STDC__" ;;
482esac
483
484case "$host_cpu-$host_vendor-$host_os" in
485m88k-motorola-sysv3) LOCAL_CFLAGS=-DWAITPID_BROKEN ;;
486mips-pyramid-sysv4) LOCAL_CFLAGS=-Xa ;;
487esac
488
489# try to create a directory tree if the source is elsewhere
490# this should be packaged into a script accessible via ${srcdir}/support
491case "$srcdir" in
492.) ;;
493*) for d in doc tests support lib ; do # dirs
494 test -d $d || mkdir $d
495 done
496 for ld in readline glob tilde malloc termcap; do # libdirs
497 test -d lib/$ld || mkdir lib/$ld
498 done
499 ;;
500esac
501
502BUILD_DIR=`pwd`
503
504AC_SUBST(incdir)
505AC_SUBST(BUILD_DIR)
506
507AC_SUBST(YACC)
508AC_SUBST(AR)
509
d166f048
JA
510AC_SUBST(BASHVERS)
511AC_SUBST(BASHPATCH)
512
ccc6cda3
JA
513AC_SUBST(host_cpu)
514AC_SUBST(host_os)
515
516AC_SUBST(LOCAL_LIBS)
517AC_SUBST(LOCAL_CFLAGS)
518AC_SUBST(LOCAL_LDFLAGS)
d166f048 519AC_SUBST(LOCAL_DEFS)
ccc6cda3 520
d166f048
JA
521#AC_SUBST(ALLOCA_SOURCE)
522#AC_SUBST(ALLOCA_OBJECT)
ccc6cda3
JA
523
524AC_OUTPUT([Makefile builtins/Makefile lib/readline/Makefile lib/glob/Makefile \
525 lib/malloc/Makefile lib/termcap/Makefile lib/tilde/Makefile \
526 doc/Makefile],
527[
528# Makefile uses this timestamp file to record whether config.h is up to date.
529echo timestamp > stamp-h
530])