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