bash: Optional Features
1
1 10.8 Optional Features
1 ======================
1
1 The Bash 'configure' has a number of '--enable-FEATURE' options, where
1 FEATURE indicates an optional part of Bash. There are also several
1 '--with-PACKAGE' options, where PACKAGE is something like 'bash-malloc'
1 or 'purify'. To turn off the default use of a package, use
1 '--without-PACKAGE'. To configure Bash without a feature that is
1 enabled by default, use '--disable-FEATURE'.
1
1 Here is a complete list of the '--enable-' and '--with-' options that
1 the Bash 'configure' recognizes.
1
1 '--with-afs'
1 Define if you are using the Andrew File System from Transarc.
1
1 '--with-bash-malloc'
1 Use the Bash version of 'malloc' in the directory 'lib/malloc'.
1 This is not the same 'malloc' that appears in GNU libc, but an
1 older version originally derived from the 4.2 BSD 'malloc'. This
1 'malloc' is very fast, but wastes some space on each allocation.
1 This option is enabled by default. The 'NOTES' file contains a
1 list of systems for which this should be turned off, and
1 'configure' disables this option automatically for a number of
1 systems.
1
1 '--with-curses'
1 Use the curses library instead of the termcap library. This should
1 be supplied if your system has an inadequate or incomplete termcap
1 database.
1
1 '--with-gnu-malloc'
1 A synonym for '--with-bash-malloc'.
1
1 '--with-installed-readline[=PREFIX]'
1 Define this to make Bash link with a locally-installed version of
1 Readline rather than the version in 'lib/readline'. This works
1 only with Readline 5.0 and later versions. If PREFIX is 'yes' or
1 not supplied, 'configure' uses the values of the make variables
1 'includedir' and 'libdir', which are subdirectories of 'prefix' by
1 default, to find the installed version of Readline if it is not in
1 the standard system include and library directories. If PREFIX is
1 'no', Bash links with the version in 'lib/readline'. If PREFIX is
1 set to any other value, 'configure' treats it as a directory
1 pathname and looks for the installed version of Readline in
1 subdirectories of that directory (include files in PREFIX/'include'
1 and the library in PREFIX/'lib').
1
1 '--with-purify'
1 Define this to use the Purify memory allocation checker from
1 Rational Software.
1
1 '--enable-minimal-config'
1 This produces a shell with minimal features, close to the
1 historical Bourne shell.
1
1 There are several '--enable-' options that alter how Bash is compiled
1 and linked, rather than changing run-time features.
1
1 '--enable-largefile'
1 Enable support for large files
1 (http://www.sas.com/standards/large_file/x_open.20Mar96.html) if
1 the operating system requires special compiler options to build
1 programs which can access large files. This is enabled by default,
1 if the operating system provides large file support.
1
1 '--enable-profiling'
1 This builds a Bash binary that produces profiling information to be
1 processed by 'gprof' each time it is executed.
1
1 '--enable-static-link'
1 This causes Bash to be linked statically, if 'gcc' is being used.
1 This could be used to build a version to use as root's shell.
1
1 The 'minimal-config' option can be used to disable all of the
1 following options, but it is processed first, so individual options may
1 be enabled using 'enable-FEATURE'.
1
1 All of the following options except for 'disabled-builtins',
1 'direxpand-default', and 'xpg-echo-default' are enabled by default,
1 unless the operating system does not provide the necessary support.
1
1 '--enable-alias'
1 Allow alias expansion and include the 'alias' and 'unalias'
1 builtins (⇒Aliases).
1
1 '--enable-arith-for-command'
1 Include support for the alternate form of the 'for' command that
11 behaves like the C language 'for' statement (⇒Looping
Constructs).
1
1 '--enable-array-variables'
11 Include support for one-dimensional array shell variables (⇒
Arrays).
1
1 '--enable-bang-history'
11 Include support for 'csh'-like history substitution (⇒History
Interaction).
1
1 '--enable-brace-expansion'
1 Include 'csh'-like brace expansion ( 'b{a,b}c' ==> 'bac bbc' ).
1 See ⇒Brace Expansion, for a complete description.
1
1 '--enable-casemod-attributes'
1 Include support for case-modifying attributes in the 'declare'
1 builtin and assignment statements. Variables with the UPPERCASE
1 attribute, for example, will have their values converted to
1 uppercase upon assignment.
1
1 '--enable-casemod-expansion'
1 Include support for case-modifying word expansions.
1
1 '--enable-command-timing'
1 Include support for recognizing 'time' as a reserved word and for
1 displaying timing statistics for the pipeline following 'time'
1 (⇒Pipelines). This allows pipelines as well as shell
1 builtins and functions to be timed.
1
1 '--enable-cond-command'
11 Include support for the '[[' conditional command. (⇒
Conditional Constructs).
1
1 '--enable-cond-regexp'
1 Include support for matching POSIX regular expressions using the
11 '=~' binary operator in the '[[' conditional command. (⇒
Conditional Constructs).
1
1 '--enable-coprocesses'
1 Include support for coprocesses and the 'coproc' reserved word
1 (⇒Pipelines).
1
1 '--enable-debugger'
1 Include support for the bash debugger (distributed separately).
1
1 '--enable-direxpand-default'
1 Cause the 'direxpand' shell option (⇒The Shopt Builtin) to
1 be enabled by default when the shell starts. It is normally
1 disabled by default.
1
1 '--enable-directory-stack'
1 Include support for a 'csh'-like directory stack and the 'pushd',
1 'popd', and 'dirs' builtins (⇒The Directory Stack).
1
1 '--enable-disabled-builtins'
1 Allow builtin commands to be invoked via 'builtin xxx' even after
11 'xxx' has been disabled using 'enable -n xxx'. See ⇒Bash
Builtins, for details of the 'builtin' and 'enable' builtin
1 commands.
1
1 '--enable-dparen-arithmetic'
11 Include support for the '((...))' command (⇒Conditional
Constructs).
1
1 '--enable-extended-glob'
1 Include support for the extended pattern matching features
1 described above under ⇒Pattern Matching.
1
1 '--enable-extended-glob-default'
1 Set the default value of the EXTGLOB shell option described above
1 under ⇒The Shopt Builtin to be enabled.
1
1 '--enable-function-import'
1 Include support for importing function definitions exported by
1 another instance of the shell from the environment. This option is
1 enabled by default.
1
1 '--enable-glob-asciirange-default'
1 Set the default value of the GLOBASCIIRANGES shell option described
1 above under ⇒The Shopt Builtin to be enabled. This controls
1 the behavior of character ranges when used in pattern matching
1 bracket expressions.
1
1 '--enable-help-builtin'
1 Include the 'help' builtin, which displays help on shell builtins
1 and variables (⇒Bash Builtins).
1
1 '--enable-history'
1 Include command history and the 'fc' and 'history' builtin commands
1 (⇒Bash History Facilities).
1
1 '--enable-job-control'
1 This enables the job control features (⇒Job Control), if the
1 operating system supports them.
1
1 '--enable-multibyte'
1 This enables support for multibyte characters if the operating
1 system provides the necessary support.
1
1 '--enable-net-redirections'
1 This enables the special handling of filenames of the form
1 '/dev/tcp/HOST/PORT' and '/dev/udp/HOST/PORT' when used in
1 redirections (⇒Redirections).
1
1 '--enable-process-substitution'
1 This enables process substitution (⇒Process Substitution) if
1 the operating system provides the necessary support.
1
1 '--enable-progcomp'
11 Enable the programmable completion facilities (⇒Programmable
Completion). If Readline is not enabled, this option has no
1 effect.
1
1 '--enable-prompt-string-decoding'
1 Turn on the interpretation of a number of backslash-escaped
1 characters in the '$PS1', '$PS2', '$PS3', and '$PS4' prompt
1 strings. See ⇒Controlling the Prompt, for a complete list
1 of prompt string escape sequences.
1
1 '--enable-readline'
1 Include support for command-line editing and history with the Bash
1 version of the Readline library (⇒Command Line Editing).
1
1 '--enable-restricted'
1 Include support for a "restricted shell". If this is enabled,
11 Bash, when called as 'rbash', enters a restricted mode. See ⇒
The Restricted Shell, for a description of restricted mode.
1
1 '--enable-select'
1 Include the 'select' compound command, which allows the generation
1 of simple menus (⇒Conditional Constructs).
1
1 '--enable-separate-helpfiles'
1 Use external files for the documentation displayed by the 'help'
1 builtin instead of storing the text internally.
1
1 '--enable-single-help-strings'
1 Store the text displayed by the 'help' builtin as a single string
1 for each help topic. This aids in translating the text to
1 different languages. You may need to disable this if your compiler
1 cannot handle very long string literals.
1
1 '--enable-strict-posix-default'
1 Make Bash POSIX-conformant by default (⇒Bash POSIX Mode).
1
1 '--enable-usg-echo-default'
1 A synonym for '--enable-xpg-echo-default'.
1
1 '--enable-xpg-echo-default'
1 Make the 'echo' builtin expand backslash-escaped characters by
1 default, without requiring the '-e' option. This sets the default
1 value of the 'xpg_echo' shell option to 'on', which makes the Bash
1 'echo' behave more like the version specified in the Single Unix
1 Specification, version 3. ⇒Bash Builtins, for a description
1 of the escape sequences that 'echo' recognizes.
1
1 The file 'config-top.h' contains C Preprocessor '#define' statements
1 for options which are not settable from 'configure'. Some of these are
1 not meant to be changed; beware of the consequences if you do. Read the
1 comments associated with each definition for more information about its
1 effect.
1