aboutsummaryrefslogtreecommitdiff
path: root/gcc/doc
diff options
context:
space:
mode:
authorAndreas Franck <afranck@gmx.de>2001-11-08 20:18:18 +0000
committerDJ Delorie <dj@gcc.gnu.org>2001-11-08 15:18:18 -0500
commitb21d216c74a2df1acd6afcfc3e5956034022b4a1 (patch)
tree093809cebe8d2f89053f9c1edc959ff2b43580cb /gcc/doc
parentc8a14e0e9aa678c6bd3eb62fe658eea8424432ba (diff)
downloadgcc-b21d216c74a2df1acd6afcfc3e5956034022b4a1.zip
gcc-b21d216c74a2df1acd6afcfc3e5956034022b4a1.tar.gz
gcc-b21d216c74a2df1acd6afcfc3e5956034022b4a1.tar.bz2
configure.in: Add AC_ARG_PROGRAM to support program name transformation with --program-prefix...
* configure.in: Add AC_ARG_PROGRAM to support program name transformation with --program-prefix, --program-suffix and --program-transform-name. * Makefile.in (GCC_INSTALL_NAME, CPP_INSTALL_NAME, PROTOIZE_INSTALL_NAME, UNPROTOIZE_INSTALL_NAME, GCOV_INSTALL_NAME, GCCBUG_INSTALL_NAME, GCC_CROSS_NAME, CPP_CROSS_NAME, PROTOIZE_CROSS_NAME, UNPROTOIZE_CROSS_NAME): Handle program_transform_name the way suggested by autoconf. (GCC_TARGET_INSTALL_NAME): Define. (install-driver): Use the transformed target alias name. * Make-lang.in (CXX_INSTALL_NAME, GXX_CROSS_NAME, DEMANGLER_CROSS_NAME): Handle program_transform_name the way suggested by autoconf. (GXX_TARGET_INSTALL_NAME, CXX_TARGET_INSTALL_NAME): Define. (c++.install-common): Use the transformed target alias names. * Make-lang.in (G77_INSTALL_NAME, G77_CROSS_NAME): Handle program_transform_name the way suggested by autoconf. * Make-lang.in (JAVA_INSTALL_NAME, JAVA_CROSS_NAME): Handle program_transform_name the way suggested by autoconf. (java.install-common): Also transform auxiliary program names with program_transform_name. From-SVN: r46856
Diffstat (limited to 'gcc/doc')
-rw-r--r--gcc/doc/install.texi45
1 files changed, 45 insertions, 0 deletions
diff --git a/gcc/doc/install.texi b/gcc/doc/install.texi
index 683c82b..a9ec046 100644
--- a/gcc/doc/install.texi
+++ b/gcc/doc/install.texi
@@ -363,6 +363,51 @@ the installation directory for G++ header files. The default is
@end table
+@item --program-prefix=@var{prefix}
+GCC supports some transformations of the names of its programs when
+installing them. This option prepends @var{prefix} to the names of
+programs to install in @var{bindir} (see above). For example, specifying
+@option{--program-prefix=foo-} would result in @samp{gcc}
+being installed as @file{/usr/local/bin/foo-gcc}.
+
+@item --program-suffix=@var{suffix}
+Appends @var{suffix} to the names of programs to install in @var{bindir}
+(see above). For example, specifying @option{--program-suffix=-3.1}
+would result in @samp{gcc} being installed as
+@file{/usr/local/bin/gcc-3.1}.
+
+@item --program-transform-name=@var{pattern}
+Applies the @samp{sed} script @var{pattern} to be applied to the names
+of programs to install in @var{bindir} (see above). @var{pattern} has to
+consist of one or more basic @samp{sed} editing commands, separated by
+semicolons. For example, if you want the @samp{gcc} program name to be
+transformed to the installed program @file{/usr/local/bin/myowngcc} and
+the @samp{g++} program name to be transformed to
+@file{/usr/local/bin/gspecial++} without changing other program names,
+you could use the pattern
+@option{--program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/'}
+to achieve this effect.
+
+All three options can be combined and used together, resulting in more
+complex conversion patterns. As a basic rule, @var{prefix} (and
+@var{suffix}) are prepended (appended) before further transformations
+can happen with a special transformation script @var{pattern}.
+
+As currently implemented, this options only take effect for native
+builds; cross compiler binaries' names are not transformed even when a
+transformation is explicitly asked for by one of this options.
+
+For native builds, some of the installed programs are also installed
+with the target alias in front of their name, as in
+@samp{i686-pc-linux-gnu-gcc}. All of the above transformations happen
+before the target alias is prepended to the name - so, specifying
+@option{--program-prefix=foo-} and @option{program-suffix=-3.1}, the
+resulting binary would be installed as
+@file{/usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1}.
+
+As a last shortcoming, none of the installed CHILL and Ada programs are
+transformed yet, which will be fixed in some time.
+
@item --with-local-prefix=@var{dirname}
Specify the
installation directory for local include files. The default is