VirtualBox

Changeset 3611 in kBuild for vendor/sed/current/INSTALL


Ignore:
Timestamp:
Sep 13, 2024 9:07:41 AM (3 months ago)
Author:
bird
Message:

vendor/sed/current: GNU sed 4.9 (sed-4.9.tar.xz sha256:6e226b732e1cd739464ad6862bd1a1aba42d7982922da7a53519631d24975181)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • vendor/sed/current/INSTALL

    r599 r3611  
    1 Copyright (C) 1994, 1995, 1996, 1999, 2000, 2001, 2002 Free Software
    2 Foundation, Inc.
    3 
    4    This file is free documentation; the Free Software Foundation gives
    5 unlimited permission to copy, distribute and modify it.
     1Installation Instructions
     2*************************
     3
     4   Copyright (C) 1994-1996, 1999-2002, 2004-2017, 2020-2022 Free
     5Software Foundation, Inc.
     6
     7   Copying and distribution of this file, with or without modification,
     8are permitted in any medium without royalty provided the copyright
     9notice and this notice are preserved.  This file is offered as-is,
     10without warranty of any kind.
    611
    712Basic Installation
    813==================
    914
    10    These are generic installation instructions.
    11 
    12    The `configure' shell script attempts to guess correct values for
     15   Briefly, the shell command './configure && make && make install'
     16should configure, build, and install this package.  The following
     17more-detailed instructions are generic; see the 'README' file for
     18instructions specific to this package.  Some packages provide this
     19'INSTALL' file but do not implement all of the features documented
     20below.  The lack of an optional feature in a given package is not
     21necessarily a bug.  More recommendations for GNU packages can be found
     22in *note Makefile Conventions: (standards)Makefile Conventions.
     23
     24   The 'configure' shell script attempts to guess correct values for
    1325various system-dependent variables used during compilation.  It uses
    14 those values to create a `Makefile' in each directory of the package.
    15 It may also create one or more `.h' files containing system-dependent
    16 definitions.  Finally, it creates a shell script `config.status' that
     26those values to create a 'Makefile' in each directory of the package.
     27It may also create one or more '.h' files containing system-dependent
     28definitions.  Finally, it creates a shell script 'config.status' that
    1729you can run in the future to recreate the current configuration, and a
    18 file `config.log' containing compiler output (useful mainly for
    19 debugging `configure').
    20 
    21    It can also use an optional file (typically called `config.cache'
    22 and enabled with `--cache-file=config.cache' or simply `-C') that saves
    23 the results of its tests to speed up reconfiguring.  (Caching is
    24 disabled by default to prevent problems with accidental use of stale
    25 cache files.)
     30file 'config.log' containing compiler output (useful mainly for
     31debugging 'configure').
     32
     33   It can also use an optional file (typically called 'config.cache' and
     34enabled with '--cache-file=config.cache' or simply '-C') that saves the
     35results of its tests to speed up reconfiguring.  Caching is disabled by
     36default to prevent problems with accidental use of stale cache files.
    2637
    2738   If you need to do unusual things to compile the package, please try
    28 to figure out how `configure' could check whether to do them, and mail
    29 diffs or instructions to the address given in the `README' so they can
     39to figure out how 'configure' could check whether to do them, and mail
     40diffs or instructions to the address given in the 'README' so they can
    3041be considered for the next release.  If you are using the cache, and at
    31 some point `config.cache' contains results you don't want to keep, you
     42some point 'config.cache' contains results you don't want to keep, you
    3243may remove or edit it.
    3344
    34    The file `configure.ac' (or `configure.in') is used to create
    35 `configure' by a program called `autoconf'.  You only need
    36 `configure.ac' if you want to change it or regenerate `configure' using
    37 a newer version of `autoconf'.
    38 
    39 The simplest way to compile this package is:
    40 
    41   1. `cd' to the directory containing the package's source code and type
    42      `./configure' to configure the package for your system.  If you're
    43      using `csh' on an old version of System V, you might need to type
    44      `sh ./configure' instead to prevent `csh' from trying to execute
    45      `configure' itself.
    46 
    47      Running `configure' takes awhile.  While running, it prints some
    48      messages telling which features it is checking for.
    49 
    50   2. Type `make' to compile the package.
    51 
    52   3. Optionally, type `make check' to run any self-tests that come with
    53      the package.
    54 
    55   4. Type `make install' to install the programs and any data files and
    56      documentation.
    57 
    58   5. You can remove the program binaries and object files from the
    59      source code directory by typing `make clean'.  To also remove the
    60      files that `configure' created (so you can compile the package for
    61      a different kind of computer), type `make distclean'.  There is
    62      also a `make maintainer-clean' target, but that is intended mainly
     45   The file 'configure.ac' (or 'configure.in') is used to create
     46'configure' by a program called 'autoconf'.  You need 'configure.ac' if
     47you want to change it or regenerate 'configure' using a newer version of
     48'autoconf'.
     49
     50   The simplest way to compile this package is:
     51
     52  1. 'cd' to the directory containing the package's source code and type
     53     './configure' to configure the package for your system.
     54
     55     Running 'configure' might take a while.  While running, it prints
     56     some messages telling which features it is checking for.
     57
     58  2. Type 'make' to compile the package.
     59
     60  3. Optionally, type 'make check' to run any self-tests that come with
     61     the package, generally using the just-built uninstalled binaries.
     62
     63  4. Type 'make install' to install the programs and any data files and
     64     documentation.  When installing into a prefix owned by root, it is
     65     recommended that the package be configured and built as a regular
     66     user, and only the 'make install' phase executed with root
     67     privileges.
     68
     69  5. Optionally, type 'make installcheck' to repeat any self-tests, but
     70     this time using the binaries in their final installed location.
     71     This target does not install anything.  Running this target as a
     72     regular user, particularly if the prior 'make install' required
     73     root privileges, verifies that the installation completed
     74     correctly.
     75
     76  6. You can remove the program binaries and object files from the
     77     source code directory by typing 'make clean'.  To also remove the
     78     files that 'configure' created (so you can compile the package for
     79     a different kind of computer), type 'make distclean'.  There is
     80     also a 'make maintainer-clean' target, but that is intended mainly
    6381     for the package's developers.  If you use it, you may have to get
    6482     all sorts of other programs in order to regenerate files that came
    6583     with the distribution.
    6684
     85  7. Often, you can also type 'make uninstall' to remove the installed
     86     files again.  In practice, not all packages have tested that
     87     uninstallation works correctly, even though it is required by the
     88     GNU Coding Standards.
     89
     90  8. Some packages, particularly those that use Automake, provide 'make
     91     distcheck', which can by used by developers to test that all other
     92     targets like 'make install' and 'make uninstall' work correctly.
     93     This target is generally not run by end users.
     94
    6795Compilers and Options
    6896=====================
    6997
    7098   Some systems require unusual options for compilation or linking that
    71 the `configure' script does not know about.  Run `./configure --help'
     99the 'configure' script does not know about.  Run './configure --help'
    72100for details on some of the pertinent environment variables.
    73101
    74    You can give `configure' initial values for configuration parameters
    75 by setting variables in the command line or in the environment.  Here
    76 is an example:
    77 
    78      ./configure CC=c89 CFLAGS=-O2 LIBS=-lposix
     102   You can give 'configure' initial values for configuration parameters
     103by setting variables in the command line or in the environment.  Here is
     104an example:
     105
     106     ./configure CC=c99 CFLAGS=-g LIBS=-lposix
    79107
    80108   *Note Defining Variables::, for more details.
     
    85113   You can compile the package for more than one kind of computer at the
    86114same time, by placing the object files for each architecture in their
    87 own directory.  To do this, you must use a version of `make' that
    88 supports the `VPATH' variable, such as GNU `make'.  `cd' to the
     115own directory.  To do this, you can use GNU 'make'.  'cd' to the
    89116directory where you want the object files and executables to go and run
    90 the `configure' script.  `configure' automatically checks for the
    91 source code in the directory that `configure' is in and in `..'.
    92 
    93    If you have to use a `make' that does not support the `VPATH'
    94 variable, you have to compile the package for one architecture at a
    95 time in the source code directory.  After you have installed the
    96 package for one architecture, use `make distclean' before reconfiguring
    97 for another architecture.
     117the 'configure' script.  'configure' automatically checks for the source
     118code in the directory that 'configure' is in and in '..'.  This is known
     119as a "VPATH" build.
     120
     121   With a non-GNU 'make', it is safer to compile the package for one
     122architecture at a time in the source code directory.  After you have
     123installed the package for one architecture, use 'make distclean' before
     124reconfiguring for another architecture.
     125
     126   On MacOS X 10.5 and later systems, you can create libraries and
     127executables that work on multiple system types--known as "fat" or
     128"universal" binaries--by specifying multiple '-arch' options to the
     129compiler but only a single '-arch' option to the preprocessor.  Like
     130this:
     131
     132     ./configure CC="gcc -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
     133                 CXX="g++ -arch i386 -arch x86_64 -arch ppc -arch ppc64" \
     134                 CPP="gcc -E" CXXCPP="g++ -E"
     135
     136   This is not guaranteed to produce working output in all cases, you
     137may have to build one architecture at a time and combine the results
     138using the 'lipo' tool if you have problems.
    98139
    99140Installation Names
    100141==================
    101142
    102    By default, `make install' will install the package's files in
    103 `/usr/local/bin', `/usr/local/man', etc.  You can specify an
    104 installation prefix other than `/usr/local' by giving `configure' the
    105 option `--prefix=PATH'.
     143   By default, 'make install' installs the package's commands under
     144'/usr/local/bin', include files under '/usr/local/include', etc.  You
     145can specify an installation prefix other than '/usr/local' by giving
     146'configure' the option '--prefix=PREFIX', where PREFIX must be an
     147absolute file name.
    106148
    107149   You can specify separate installation prefixes for
    108150architecture-specific files and architecture-independent files.  If you
    109 give `configure' the option `--exec-prefix=PATH', the package will use
    110 PATH as the prefix for installing programs and libraries.
    111 Documentation and other data files will still use the regular prefix.
     151pass the option '--exec-prefix=PREFIX' to 'configure', the package uses
     152PREFIX as the prefix for installing programs and libraries.
     153Documentation and other data files still use the regular prefix.
    112154
    113155   In addition, if you use an unusual directory layout you can give
    114 options like `--bindir=PATH' to specify different values for particular
    115 kinds of files.  Run `configure --help' for a list of the directories
    116 you can set and what kinds of files go in them.
    117 
    118    If the package supports it, you can cause programs to be installed
    119 with an extra prefix or suffix on their names by giving `configure' the
    120 option `--program-prefix=PREFIX' or `--program-suffix=SUFFIX'.
     156options like '--bindir=DIR' to specify different values for particular
     157kinds of files.  Run 'configure --help' for a list of the directories
     158you can set and what kinds of files go in them.  In general, the default
     159for these options is expressed in terms of '${prefix}', so that
     160specifying just '--prefix' will affect all of the other directory
     161specifications that were not explicitly provided.
     162
     163   The most portable way to affect installation locations is to pass the
     164correct locations to 'configure'; however, many packages provide one or
     165both of the following shortcuts of passing variable assignments to the
     166'make install' command line to change installation locations without
     167having to reconfigure or recompile.
     168
     169   The first method involves providing an override variable for each
     170affected directory.  For example, 'make install
     171prefix=/alternate/directory' will choose an alternate location for all
     172directory configuration variables that were expressed in terms of
     173'${prefix}'.  Any directories that were specified during 'configure',
     174but not in terms of '${prefix}', must each be overridden at install time
     175for the entire installation to be relocated.  The approach of makefile
     176variable overrides for each directory variable is required by the GNU
     177Coding Standards, and ideally causes no recompilation.  However, some
     178platforms have known limitations with the semantics of shared libraries
     179that end up requiring recompilation when using this method, particularly
     180noticeable in packages that use GNU Libtool.
     181
     182   The second method involves providing the 'DESTDIR' variable.  For
     183example, 'make install DESTDIR=/alternate/directory' will prepend
     184'/alternate/directory' before all installation names.  The approach of
     185'DESTDIR' overrides is not required by the GNU Coding Standards, and
     186does not work on platforms that have drive letters.  On the other hand,
     187it does better at avoiding recompilation issues, and works well even
     188when some directory options were not specified in terms of '${prefix}'
     189at 'configure' time.
    121190
    122191Optional Features
    123192=================
    124193
    125    Some packages pay attention to `--enable-FEATURE' options to
    126 `configure', where FEATURE indicates an optional part of the package.
    127 They may also pay attention to `--with-PACKAGE' options, where PACKAGE
    128 is something like `gnu-as' or `x' (for the X Window System).  The
    129 `README' should mention any `--enable-' and `--with-' options that the
     194   If the package supports it, you can cause programs to be installed
     195with an extra prefix or suffix on their names by giving 'configure' the
     196option '--program-prefix=PREFIX' or '--program-suffix=SUFFIX'.
     197
     198   Some packages pay attention to '--enable-FEATURE' options to
     199'configure', where FEATURE indicates an optional part of the package.
     200They may also pay attention to '--with-PACKAGE' options, where PACKAGE
     201is something like 'gnu-as' or 'x' (for the X Window System).  The
     202'README' should mention any '--enable-' and '--with-' options that the
    130203package recognizes.
    131204
    132    For packages that use the X Window System, `configure' can usually
     205   For packages that use the X Window System, 'configure' can usually
    133206find the X include and library files automatically, but if it doesn't,
    134 you can use the `configure' options `--x-includes=DIR' and
    135 `--x-libraries=DIR' to specify their locations.
     207you can use the 'configure' options '--x-includes=DIR' and
     208'--x-libraries=DIR' to specify their locations.
     209
     210   Some packages offer the ability to configure how verbose the
     211execution of 'make' will be.  For these packages, running './configure
     212--enable-silent-rules' sets the default to minimal output, which can be
     213overridden with 'make V=1'; while running './configure
     214--disable-silent-rules' sets the default to verbose, which can be
     215overridden with 'make V=0'.
     216
     217Particular systems
     218==================
     219
     220   On HP-UX, the default C compiler is not ANSI C compatible.  If GNU CC
     221is not installed, it is recommended to use the following options in
     222order to use an ANSI C compiler:
     223
     224     ./configure CC="cc -Ae -D_XOPEN_SOURCE=500"
     225
     226and if that doesn't work, install pre-built binaries of GCC for HP-UX.
     227
     228   HP-UX 'make' updates targets which have the same timestamps as their
     229prerequisites, which makes it generally unusable when shipped generated
     230files such as 'configure' are involved.  Use GNU 'make' instead.
     231
     232   On OSF/1 a.k.a. Tru64, some versions of the default C compiler cannot
     233parse its '<wchar.h>' header file.  The option '-nodtk' can be used as a
     234workaround.  If GNU CC is not installed, it is therefore recommended to
     235try
     236
     237     ./configure CC="cc"
     238
     239and if that doesn't work, try
     240
     241     ./configure CC="cc -nodtk"
     242
     243   On Solaris, don't put '/usr/ucb' early in your 'PATH'.  This
     244directory contains several dysfunctional programs; working variants of
     245these programs are available in '/usr/bin'.  So, if you need '/usr/ucb'
     246in your 'PATH', put it _after_ '/usr/bin'.
     247
     248   On Haiku, software installed for all users goes in '/boot/common',
     249not '/usr/local'.  It is recommended to use the following options:
     250
     251     ./configure --prefix=/boot/common
    136252
    137253Specifying the System Type
    138254==========================
    139255
    140    There may be some features `configure' cannot figure out
     256   There may be some features 'configure' cannot figure out
    141257automatically, but needs to determine by the type of machine the package
    142258will run on.  Usually, assuming the package is built to be run on the
    143 _same_ architectures, `configure' can figure that out, but if it prints
     259_same_ architectures, 'configure' can figure that out, but if it prints
    144260a message saying it cannot guess the machine type, give it the
    145 `--build=TYPE' option.  TYPE can either be a short name for the system
    146 type, such as `sun4', or a canonical name which has the form:
     261'--build=TYPE' option.  TYPE can either be a short name for the system
     262type, such as 'sun4', or a canonical name which has the form:
    147263
    148264     CPU-COMPANY-SYSTEM
     
    150266where SYSTEM can have one of these forms:
    151267
    152      OS KERNEL-OS
    153 
    154    See the file `config.sub' for the possible values of each field.  If
    155 `config.sub' isn't included in this package, then this package doesn't
     268     OS
     269     KERNEL-OS
     270
     271   See the file 'config.sub' for the possible values of each field.  If
     272'config.sub' isn't included in this package, then this package doesn't
    156273need to know the machine type.
    157274
    158275   If you are _building_ compiler tools for cross-compiling, you should
    159 use the `--target=TYPE' option to select the type of system they will
     276use the option '--target=TYPE' to select the type of system they will
    160277produce code for.
    161278
     
    163280platform different from the build platform, you should specify the
    164281"host" platform (i.e., that on which the generated programs will
    165 eventually be run) with `--host=TYPE'.
     282eventually be run) with '--host=TYPE'.
    166283
    167284Sharing Defaults
    168285================
    169286
    170    If you want to set default values for `configure' scripts to share,
    171 you can create a site shell script called `config.site' that gives
    172 default values for variables like `CC', `cache_file', and `prefix'.
    173 `configure' looks for `PREFIX/share/config.site' if it exists, then
    174 `PREFIX/etc/config.site' if it exists.  Or, you can set the
    175 `CONFIG_SITE' environment variable to the location of the site script.
    176 A warning: not all `configure' scripts look for a site script.
     287   If you want to set default values for 'configure' scripts to share,
     288you can create a site shell script called 'config.site' that gives
     289default values for variables like 'CC', 'cache_file', and 'prefix'.
     290'configure' looks for 'PREFIX/share/config.site' if it exists, then
     291'PREFIX/etc/config.site' if it exists.  Or, you can set the
     292'CONFIG_SITE' environment variable to the location of the site script.
     293A warning: not all 'configure' scripts look for a site script.
    177294
    178295Defining Variables
     
    180297
    181298   Variables not defined in a site shell script can be set in the
    182 environment passed to `configure'.  However, some packages may run
     299environment passed to 'configure'.  However, some packages may run
    183300configure again during the build, and the customized values of these
    184301variables may be lost.  In order to avoid this problem, you should set
    185 them in the `configure' command line, using `VAR=value'.  For example:
     302them in the 'configure' command line, using 'VAR=value'.  For example:
    186303
    187304     ./configure CC=/usr/local2/bin/gcc
    188305
    189 will cause the specified gcc to be used as the C compiler (unless it is
     306causes the specified 'gcc' to be used as the C compiler (unless it is
    190307overridden in the site shell script).
    191308
    192 `configure' Invocation
     309Unfortunately, this technique does not work for 'CONFIG_SHELL' due to an
     310Autoconf limitation.  Until the limitation is lifted, you can use this
     311workaround:
     312
     313     CONFIG_SHELL=/bin/bash ./configure CONFIG_SHELL=/bin/bash
     314
     315'configure' Invocation
    193316======================
    194317
    195    `configure' recognizes the following options to control how it
     318   'configure' recognizes the following options to control how it
    196319operates.
    197320
    198 `--help'
    199 `-h'
    200      Print a summary of the options to `configure', and exit.
    201 
    202 `--version'
    203 `-V'
    204      Print the version of Autoconf used to generate the `configure'
     321'--help'
     322'-h'
     323     Print a summary of all of the options to 'configure', and exit.
     324
     325'--help=short'
     326'--help=recursive'
     327     Print a summary of the options unique to this package's
     328     'configure', and exit.  The 'short' variant lists options used only
     329     in the top level, while the 'recursive' variant lists options also
     330     present in any nested packages.
     331
     332'--version'
     333'-V'
     334     Print the version of Autoconf used to generate the 'configure'
    205335     script, and exit.
    206336
    207 `--cache-file=FILE'
     337'--cache-file=FILE'
    208338     Enable the cache: use and save the results of the tests in FILE,
    209      traditionally `config.cache'.  FILE defaults to `/dev/null' to
     339     traditionally 'config.cache'.  FILE defaults to '/dev/null' to
    210340     disable caching.
    211341
    212 `--config-cache'
    213 `-C'
    214      Alias for `--cache-file=config.cache'.
    215 
    216 `--quiet'
    217 `--silent'
    218 `-q'
     342'--config-cache'
     343'-C'
     344     Alias for '--cache-file=config.cache'.
     345
     346'--quiet'
     347'--silent'
     348'-q'
    219349     Do not print messages saying which checks are being made.  To
    220      suppress all normal output, redirect it to `/dev/null' (any error
     350     suppress all normal output, redirect it to '/dev/null' (any error
    221351     messages will still be shown).
    222352
    223 `--srcdir=DIR'
     353'--srcdir=DIR'
    224354     Look for the package's source code in directory DIR.  Usually
    225      `configure' can determine that directory automatically.
    226 
    227 `configure' also accepts some other, not widely useful, options.  Run
    228 `configure --help' for more details.
    229 
     355     'configure' can determine that directory automatically.
     356
     357'--prefix=DIR'
     358     Use DIR as the installation prefix.  *note Installation Names:: for
     359     more details, including other options available for fine-tuning the
     360     installation locations.
     361
     362'--no-create'
     363'-n'
     364     Run the configure checks, but stop before creating any output
     365     files.
     366
     367'configure' also accepts some other, not widely useful, options.  Run
     368'configure --help' for more details.
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette