| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | Basic Installation | 
					
						
							|  |  |  | ================== | 
					
						
							| 
									
										
										
										
											1996-08-26 18:22:31 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | These are installation instructions for Bash. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | The simplest way to compile Bash is: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   1. `cd' to the directory containing the source code and type | 
					
						
							|  |  |  |      `./configure' to configure Bash for your system.  If you're using | 
					
						
							|  |  |  |      `csh' on an old version of System V, you might need to type `sh | 
					
						
							|  |  |  |      ./configure' instead to prevent `csh' from trying to execute | 
					
						
							|  |  |  |      `configure' itself. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      Running `configure' takes some time.  While running, it prints | 
					
						
							|  |  |  |      messages telling which features it is checking for. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   2. Type `make' to compile Bash and build the `bashbug' bug reporting | 
					
						
							|  |  |  |      script. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   3. Optionally, type `make tests' to run the Bash test suite. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |   4. Type `make install' to install `bash' and `bashbug'.  This will | 
					
						
							|  |  |  |      also install the manual pages and Info file. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | The `configure' shell script attempts to guess correct values for | 
					
						
							|  |  |  | various system-dependent variables used during compilation.  It uses | 
					
						
							|  |  |  | those values to create a `Makefile' in each directory of the package | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | (the top directory, the `builtins', `doc', and `support' directories, | 
					
						
							|  |  |  | each directory under `lib', and several others).  It also creates a | 
					
						
							|  |  |  | `config.h' file containing system-dependent definitions.  Finally, it | 
					
						
							|  |  |  | creates a shell script named `config.status' that you can run in the | 
					
						
							|  |  |  | future to recreate the current configuration, a file `config.cache' | 
					
						
							|  |  |  | that saves the results of its tests to speed up reconfiguring, and a | 
					
						
							|  |  |  | file `config.log' containing compiler output (useful mainly for | 
					
						
							|  |  |  | debugging `configure').  If at some point `config.cache' contains | 
					
						
							|  |  |  | results you don't want to keep, you may remove or edit it. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | To find out more about the options and arguments that the `configure' | 
					
						
							|  |  |  | script understands, type | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      bash-2.04$ ./configure --help | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | at the Bash prompt in your Bash source directory. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | If you need to do unusual things to compile Bash, please try to figure | 
					
						
							|  |  |  | out how `configure' could check whether or not to do them, and mail | 
					
						
							|  |  |  | diffs or instructions to <bash-maintainers@gnu.org> so they can be | 
					
						
							|  |  |  | considered for the next release. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | The file `configure.in' is used to create `configure' by a program | 
					
						
							|  |  |  | called Autoconf.  You only need `configure.in' if you want to change it | 
					
						
							|  |  |  | or regenerate `configure' using a newer version of Autoconf.  If you do | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | this, make sure you are using Autoconf version 2.50 or newer. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | You can remove the program binaries and object files from the source | 
					
						
							|  |  |  | code directory by typing `make clean'.  To also remove the files that | 
					
						
							|  |  |  | `configure' created (so you can compile Bash for a different kind of | 
					
						
							|  |  |  | computer), type `make distclean'. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Compilers and Options | 
					
						
							|  |  |  | ===================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Some systems require unusual options for compilation or linking that | 
					
						
							|  |  |  | the `configure' script does not know about.  You can give `configure' | 
					
						
							|  |  |  | initial values for variables by setting them in the environment.  Using | 
					
						
							|  |  |  | a Bourne-compatible shell, you can do that on the command line like | 
					
						
							|  |  |  | this: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | On systems that have the `env' program, you can do it like this: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The configuration process uses GCC to build Bash if it is available. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Compiling For Multiple Architectures | 
					
						
							|  |  |  | ==================================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | You can compile Bash for more than one kind of computer at the same | 
					
						
							|  |  |  | time, by placing the object files for each architecture in their own | 
					
						
							|  |  |  | directory.  To do this, you must use a version of `make' that supports | 
					
						
							|  |  |  | the `VPATH' variable, such as GNU `make'.  `cd' to the directory where | 
					
						
							|  |  |  | you want the object files and executables to go and run the `configure' | 
					
						
							|  |  |  | script from the source directory.  You may need to supply the | 
					
						
							|  |  |  | `--srcdir=PATH' argument to tell `configure' where the source files | 
					
						
							|  |  |  | are.  `configure' automatically checks for the source code in the | 
					
						
							|  |  |  | directory that `configure' is in and in `..'. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If you have to use a `make' that does not supports the `VPATH' | 
					
						
							|  |  |  | variable, you can compile Bash for one architecture at a time in the | 
					
						
							|  |  |  | source code directory.  After you have installed Bash for one | 
					
						
							|  |  |  | architecture, use `make distclean' before reconfiguring for another | 
					
						
							|  |  |  | architecture. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Alternatively, if your system supports symbolic links, you can use the | 
					
						
							|  |  |  | `support/mkclone' script to create a build tree which has symbolic | 
					
						
							|  |  |  | links back to each file in the source directory.  Here's an example | 
					
						
							|  |  |  | that creates a build directory in the current directory from a source | 
					
						
							|  |  |  | directory `/usr/gnu/src/bash-2.0': | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |      bash /usr/gnu/src/bash-2.0/support/mkclone -s /usr/gnu/src/bash-2.0 . | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The `mkclone' script requires Bash, so you must have already built Bash | 
					
						
							|  |  |  | for at least one architecture before you can create build directories | 
					
						
							|  |  |  | for other architectures. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Installation Names | 
					
						
							|  |  |  | ================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | By default, `make install' will install into `/usr/local/bin', | 
					
						
							|  |  |  | `/usr/local/man', etc.  You can specify an installation prefix other | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | than `/usr/local' by giving `configure' the option `--prefix=PATH', or | 
					
						
							|  |  |  | by specifying a value for the `DESTDIR' `make' variable when running | 
					
						
							|  |  |  | `make install'. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | You can specify separate installation prefixes for | 
					
						
							|  |  |  | architecture-specific files and architecture-independent files.  If you | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | give `configure' the option `--exec-prefix=PATH', `make install' will | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | use PATH as the prefix for installing programs and libraries. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | Documentation and other data files will still use the regular prefix. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Specifying the System Type | 
					
						
							|  |  |  | ========================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | There may be some features `configure' can not figure out | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | automatically, but need to determine by the type of host Bash will run | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | on.  Usually `configure' can figure that out, but if it prints a | 
					
						
							|  |  |  | message saying it can not guess the host type, give it the | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | `--host=TYPE' option.  `TYPE' can either be a short name for the system | 
					
						
							|  |  |  | type, such as `sun4', or a canonical name with three fields: | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | `CPU-COMPANY-SYSTEM' (e.g., `i386-unknown-freebsd4.2'). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | See the file `support/config.sub' for the possible values of each field. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Sharing Defaults | 
					
						
							|  |  |  | ================ | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | If you want to set default values for `configure' scripts to share, you | 
					
						
							|  |  |  | can create a site shell script called `config.site' that gives default | 
					
						
							|  |  |  | values for variables like `CC', `cache_file', and `prefix'.  `configure' | 
					
						
							|  |  |  | looks for `PREFIX/share/config.site' if it exists, then | 
					
						
							|  |  |  | `PREFIX/etc/config.site' if it exists.  Or, you can set the | 
					
						
							|  |  |  | `CONFIG_SITE' environment variable to the location of the site script. | 
					
						
							|  |  |  | A warning: the Bash `configure' looks for a site script, but not all | 
					
						
							|  |  |  | `configure' scripts do. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | Operation Controls | 
					
						
							|  |  |  | ================== | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `configure' recognizes the following options to control how it operates. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--cache-file=FILE' | 
					
						
							|  |  |  |      Use and save the results of the tests in FILE instead of | 
					
						
							|  |  |  |      `./config.cache'.  Set FILE to `/dev/null' to disable caching, for | 
					
						
							|  |  |  |      debugging `configure'. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--help' | 
					
						
							|  |  |  |      Print a summary of the options to `configure', and exit. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--quiet' | 
					
						
							|  |  |  | `--silent' | 
					
						
							|  |  |  | `-q' | 
					
						
							|  |  |  |      Do not print messages saying which checks are being made. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--srcdir=DIR' | 
					
						
							|  |  |  |      Look for the Bash source code in directory DIR.  Usually | 
					
						
							|  |  |  |      `configure' can determine that directory automatically. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--version' | 
					
						
							|  |  |  |      Print the version of Autoconf used to generate the `configure' | 
					
						
							|  |  |  |      script, and exit. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `configure' also accepts some other, not widely used, boilerplate | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | options.  `configure --help' prints the complete list. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Optional Features | 
					
						
							|  |  |  | ================= | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | The Bash `configure' has a number of `--enable-FEATURE' options, where | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | FEATURE indicates an optional part of Bash.  There are also several | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `--with-PACKAGE' options, where PACKAGE is something like `bash-malloc' | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | or `purify'.  To turn off the default use of a package, use | 
					
						
							|  |  |  | `--without-PACKAGE'.  To configure Bash without a feature that is | 
					
						
							|  |  |  | enabled by default, use `--disable-FEATURE'. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | Here is a complete list of the `--enable-' and `--with-' options that | 
					
						
							|  |  |  | the Bash `configure' recognizes. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--with-afs' | 
					
						
							|  |  |  |      Define if you are using the Andrew File System from Transarc. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `--with-bash-malloc' | 
					
						
							|  |  |  |      Use the Bash version of `malloc' in `lib/malloc/malloc.c'.  This | 
					
						
							|  |  |  |      is not the same `malloc' that appears in GNU libc, but an older | 
					
						
							|  |  |  |      version derived from the 4.2 BSD `malloc'.  This `malloc' is very | 
					
						
							|  |  |  |      fast, but wastes some space on each allocation.  This option is | 
					
						
							|  |  |  |      enabled by default.  The `NOTES' file contains a list of systems | 
					
						
							|  |  |  |      for which this should be turned off, and `configure' disables this | 
					
						
							|  |  |  |      option automatically for a number of systems. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--with-curses' | 
					
						
							|  |  |  |      Use the curses library instead of the termcap library.  This should | 
					
						
							|  |  |  |      be supplied if your system has an inadequate or incomplete termcap | 
					
						
							|  |  |  |      database. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--with-gnu-malloc' | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      A synonym for `--with-bash-malloc'. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | `--with-installed-readline[=PREFIX]' | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      Define this to make Bash link with a locally-installed version of | 
					
						
							|  |  |  |      Readline rather than the version in `lib/readline'.  This works | 
					
						
							| 
									
										
										
										
											2002-07-17 14:10:11 +00:00
										 |  |  |      only with Readline 4.3 and later versions.  If PREFIX is `yes' or | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  |      not supplied, `configure' uses the values of the make variables | 
					
						
							|  |  |  |      `includedir' and `libdir', which are subdirectories of `prefix' by | 
					
						
							|  |  |  |      default, to find the installed version of Readline if it is not in | 
					
						
							|  |  |  |      the standard system include and library directories.  If PREFIX is | 
					
						
							|  |  |  |      `no', Bash links with the version in `lib/readline'.  If PREFIX is | 
					
						
							|  |  |  |      set to any other value, `configure' treats it as a directory | 
					
						
							|  |  |  |      pathname and looks for the installed version of Readline in | 
					
						
							|  |  |  |      subdirectories of that directory (include files in | 
					
						
							|  |  |  |      PREFIX/`include' and the library in PREFIX/`lib'). | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | `--with-purify' | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      Define this to use the Purify memory allocation checker from | 
					
						
							|  |  |  |      Rational Software. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-minimal-config' | 
					
						
							|  |  |  |      This produces a shell with minimal features, close to the | 
					
						
							|  |  |  |      historical Bourne shell. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1998-04-17 19:52:44 +00:00
										 |  |  | There are several `--enable-' options that alter how Bash is compiled | 
					
						
							|  |  |  | and linked, rather than changing run-time features. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | `--enable-largefile' | 
					
						
							|  |  |  |      Enable support for large files | 
					
						
							|  |  |  |      (http://www.sas.com/standards/large_file/x_open.20Mar96.html) if | 
					
						
							|  |  |  |      the operating system requires special compiler options to build | 
					
						
							| 
									
										
										
										
											2002-07-17 14:10:11 +00:00
										 |  |  |      programs which can access large files.  This is enabled by | 
					
						
							|  |  |  |      default, if the operating system provides large file support. | 
					
						
							| 
									
										
										
										
											2001-11-13 17:56:06 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1998-04-17 19:52:44 +00:00
										 |  |  | `--enable-profiling' | 
					
						
							|  |  |  |      This builds a Bash binary that produces profiling information to be | 
					
						
							|  |  |  |      processed by `gprof' each time it is executed. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--enable-static-link' | 
					
						
							|  |  |  |      This causes Bash to be linked statically, if `gcc' is being used. | 
					
						
							|  |  |  |      This could be used to build a version to use as root's shell. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | The `minimal-config' option can be used to disable all of the following | 
					
						
							|  |  |  | options, but it is processed first, so individual options may be | 
					
						
							|  |  |  | enabled using `enable-FEATURE'. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | All of the following options except for `disabled-builtins' and | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `xpg-echo-default' are enabled by default, unless the operating system | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | does not provide the necessary support. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--enable-alias' | 
					
						
							|  |  |  |      Allow alias expansion and include the `alias' and `unalias' | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      builtins (*note Aliases::). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `--enable-arith-for-command' | 
					
						
							|  |  |  |      Include support for the alternate form of the `for' command that | 
					
						
							|  |  |  |      behaves like the C language `for' statement (*note Looping | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Constructs::). | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--enable-array-variables' | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      Include support for one-dimensional array shell variables (*note | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Arrays::). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-bang-history' | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      Include support for `csh'-like history substitution (*note History | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Interaction::). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--enable-brace-expansion' | 
					
						
							|  |  |  |      Include `csh'-like brace expansion ( `b{a,b}c' ==> `bac bbc' ). | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      See *Note Brace Expansion::, for a complete description. | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-command-timing' | 
					
						
							|  |  |  |      Include support for recognizing `time' as a reserved word and for | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      displaying timing statistics for the pipeline following `time' | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      (*note Pipelines::).  This allows pipelines as well as shell | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      builtins and functions to be timed. | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1998-04-17 19:52:44 +00:00
										 |  |  | `--enable-cond-command' | 
					
						
							| 
									
										
										
										
											2004-07-27 13:29:18 +00:00
										 |  |  |      Include support for the `[[' conditional command.  (*note | 
					
						
							|  |  |  |      Conditional Constructs::). | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--enable-cond-regexp' | 
					
						
							|  |  |  |      Include support for matching POSIX regular expressions using the | 
					
						
							|  |  |  |      `=~' binary operator in the `[[' conditional command.  (*note | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Conditional Constructs::). | 
					
						
							| 
									
										
										
										
											1998-04-17 19:52:44 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | `--enable-directory-stack' | 
					
						
							|  |  |  |      Include support for a `csh'-like directory stack and the `pushd', | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      `popd', and `dirs' builtins (*note The Directory Stack::). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--enable-disabled-builtins' | 
					
						
							|  |  |  |      Allow builtin commands to be invoked via `builtin xxx' even after | 
					
						
							|  |  |  |      `xxx' has been disabled using `enable -n xxx'.  See *Note Bash | 
					
						
							|  |  |  |      Builtins::, for details of the `builtin' and `enable' builtin | 
					
						
							|  |  |  |      commands. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--enable-dparen-arithmetic' | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      Include support for the `((...))' command (*note Conditional | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Constructs::). | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1998-04-17 19:52:44 +00:00
										 |  |  | `--enable-extended-glob' | 
					
						
							|  |  |  |      Include support for the extended pattern matching features | 
					
						
							|  |  |  |      described above under *Note Pattern Matching::. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--enable-help-builtin' | 
					
						
							|  |  |  |      Include the `help' builtin, which displays help on shell builtins | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      and variables (*note Bash Builtins::). | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-history' | 
					
						
							|  |  |  |      Include command history and the `fc' and `history' builtin | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      commands (*note Bash History Facilities::). | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-job-control' | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      This enables the job control features (*note Job Control::), if | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      the operating system supports them. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2004-07-27 13:29:18 +00:00
										 |  |  | `--enable-multibyte' | 
					
						
							|  |  |  |      This enables support for multibyte characters if the operating | 
					
						
							|  |  |  |      system provides the necessary support. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `--enable-net-redirections' | 
					
						
							|  |  |  |      This enables the special handling of filenames of the form | 
					
						
							|  |  |  |      `/dev/tcp/HOST/PORT' and `/dev/udp/HOST/PORT' when used in | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      redirections (*note Redirections::). | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | `--enable-process-substitution' | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      This enables process substitution (*note Process Substitution::) if | 
					
						
							|  |  |  |      the operating system provides the necessary support. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-prompt-string-decoding' | 
					
						
							|  |  |  |      Turn on the interpretation of a number of backslash-escaped | 
					
						
							|  |  |  |      characters in the `$PS1', `$PS2', `$PS3', and `$PS4' prompt | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      strings.  See *Note Printing a Prompt::, for a complete list of | 
					
						
							|  |  |  |      prompt string escape sequences. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | `--enable-progcomp' | 
					
						
							|  |  |  |      Enable the programmable completion facilities (*note Programmable | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      Completion::).  If Readline is not enabled, this option has no | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      effect. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | `--enable-readline' | 
					
						
							|  |  |  |      Include support for command-line editing and history with the Bash | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      version of the Readline library (*note Command Line Editing::). | 
					
						
							| 
									
										
										
										
											1997-06-05 14:59:13 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-restricted' | 
					
						
							|  |  |  |      Include support for a "restricted shell".  If this is enabled, | 
					
						
							|  |  |  |      Bash, when called as `rbash', enters a restricted mode.  See *Note | 
					
						
							|  |  |  |      The Restricted Shell::, for a description of restricted mode. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | `--enable-select' | 
					
						
							| 
									
										
										
										
											1999-02-19 17:11:39 +00:00
										 |  |  |      Include the `select' builtin, which allows the generation of simple | 
					
						
							| 
									
										
										
										
											2001-04-06 19:14:31 +00:00
										 |  |  |      menus (*note Conditional Constructs::). | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | `--enable-usg-echo-default' | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      A synonym for `--enable-xpg-echo-default'. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | `--enable-xpg-echo-default' | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  |      Make the `echo' builtin expand backslash-escaped characters by | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  |      default, without requiring the `-e' option.  This sets the default | 
					
						
							|  |  |  |      value of the `xpg_echo' shell option to `on', which makes the Bash | 
					
						
							|  |  |  |      `echo' behave more like the version specified in the Single Unix | 
					
						
							|  |  |  |      Specification, version 2.  *Note Bash Builtins::, for a | 
					
						
							|  |  |  |      description of the escape sequences that `echo' recognizes. | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2000-03-17 21:46:59 +00:00
										 |  |  | The file `config-top.h' contains C Preprocessor `#define' statements | 
					
						
							| 
									
										
										
										
											1996-12-23 17:02:34 +00:00
										 |  |  | for options which are not settable from `configure'.  Some of these are | 
					
						
							|  |  |  | not meant to be changed; beware of the consequences if you do.  Read | 
					
						
							|  |  |  | the comments associated with each definition for more information about | 
					
						
							|  |  |  | its effect. |