init
This commit is contained in:
231
share/man/man1/pkgconf.1
Normal file
231
share/man/man1/pkgconf.1
Normal file
@@ -0,0 +1,231 @@
|
||||
.\" Copyright (c) 2011, 2012, 2013, 2014, 2015, 2016 pkgconf authors (see AUTHORS).
|
||||
.\"
|
||||
.\" Permission to use, copy, modify, and/or distribute this software for any
|
||||
.\" purpose with or without fee is hereby granted, provided that the above
|
||||
.\" copyright notice and this permission notice appear in all copies.
|
||||
.\"
|
||||
.\" This software is provided 'as is' and without any warranty, express or
|
||||
.\" implied. In no event shall the authors be liable for any damages arising
|
||||
.\" from the use of this software.
|
||||
.Dd November 15, 2016
|
||||
.Dt PKGCONF 1
|
||||
.Os
|
||||
.Sh NAME
|
||||
.Nm pkgconf
|
||||
.Nd a system for configuring build dependency information
|
||||
.Sh SYNOPSIS
|
||||
.Nm
|
||||
.Op Ar options
|
||||
.Op Ar list of modules
|
||||
.Sh DESCRIPTION
|
||||
.Nm
|
||||
is a program which helps to configure compiler and linker flags for
|
||||
development libraries.
|
||||
This allows build systems to detect other dependencies and use them with the
|
||||
system toolchain.
|
||||
.Sh GENERAL OPTIONS
|
||||
.Bl -tag -width indent
|
||||
.It Fl -version
|
||||
Display the supported pkg-config version and exit.
|
||||
.It Fl -atleast-pkgconfig-version Ns = Ns Ar VERSION
|
||||
Exit with error if we do not support the requested pkg-config version.
|
||||
.It Fl -errors-to-stdout
|
||||
Print all errors on the main output stream instead of the error output stream.
|
||||
.It Fl -silence-errors
|
||||
Do not display any errors at all.
|
||||
.It Fl -list-all
|
||||
Walk all directories listed in the
|
||||
.Va PKG_CONFIG_PATH
|
||||
environmental variable and display information on packages which have registered
|
||||
information there.
|
||||
.It Fl -simulate
|
||||
Simulates resolving a dependency graph based on the requested modules on the
|
||||
command line.
|
||||
Dumps a series of trees denoting pkgconf's resolver state.
|
||||
.It Fl -no-cache
|
||||
Skip caching packages when they are loaded into the internal resolver.
|
||||
This may result in an alternate dependency graph being computed.
|
||||
.It Fl -ignore-conflicts
|
||||
Ignore
|
||||
.Sq Conflicts
|
||||
rules in modules.
|
||||
.It Fl -env-only
|
||||
Learn about pkgconf's configuration strictly from environmental variables.
|
||||
.It Fl -validate Ar package ...
|
||||
Validate specific
|
||||
.Sq .pc
|
||||
files for correctness.
|
||||
.It Fl -maximum-traverse-depth Ns = Ns Ar DEPTH
|
||||
Impose a limit on the allowed depth in the dependency graph.
|
||||
For example, a depth of 2 will restrict the resolver from acting on child
|
||||
dependencies of modules added to the resolver's solution.
|
||||
.It Fl -static
|
||||
Compute a deeper dependency graph and use compiler/linker flags intended for
|
||||
static linking.
|
||||
.It Fl -shared
|
||||
Compute a simple dependency graph that is only suitable for shared linking.
|
||||
.It Fl -pure
|
||||
Treats the computed dependency graph as if it were pure.
|
||||
This is mainly intended for use with the
|
||||
.Fl -static
|
||||
flag.
|
||||
.It Fl -no-provides
|
||||
Ignore
|
||||
.Sq Provides
|
||||
rules in modules when resolving dependencies.
|
||||
.It Fl -with-path Ns = Ns Ar PATH
|
||||
Adds a new module search path to pkgconf's dependency resolver.
|
||||
Paths added in this way are given preference before other paths.
|
||||
.It Fl -define-prefix
|
||||
Attempts to determine the prefix variable to use for CFLAGS and LIBS entry relocations.
|
||||
This is mainly useful for platforms where framework SDKs are relocatable, such as Windows.
|
||||
.It Fl -dont-define-prefix
|
||||
Disables the
|
||||
.Sq define-prefix
|
||||
feature.
|
||||
.It Fl -prefix-variable Ns = Ns Ar VARIABLE
|
||||
Sets the
|
||||
.Sq prefix
|
||||
variable used by the
|
||||
.Sq define-prefix
|
||||
feature.
|
||||
.It Fl -relocate Ns = Ns Ar PATH
|
||||
Relocates a path using the pkgconf_path_relocate API.
|
||||
This is mainly used by the testsuite to provide a guaranteed interface
|
||||
to the system's path relocation backend.
|
||||
.It Fl -dont-relocate-paths
|
||||
Disables the path relocation feature.
|
||||
.El
|
||||
.Sh MODULE-SPECIFIC OPTIONS
|
||||
.Bl -tag -width indent
|
||||
.It Fl -atleast-version Ns = Ns Ar VERSION
|
||||
Exit with error if a module's version is less than the specified version.
|
||||
.It Fl -exact-version Ns = Ns Ar VERSION
|
||||
Exit with error if a module's version is not exactly the specified version.
|
||||
.It Fl -max-version Ns = Ns Ar VERSION
|
||||
Exit with error if a module's version is greater than the specified version.
|
||||
.It Fl -exists
|
||||
Exit with a non-zero result if the dependency resolver was unable to find all of
|
||||
the requested modules.
|
||||
.It Fl -uninstalled
|
||||
Exit with a non-zero result if the dependency resolver uses an
|
||||
.Sq uninstalled
|
||||
module as part of its solution.
|
||||
.It Fl -no-uninstalled
|
||||
Forbids the dependency resolver from considering 'uninstalled' modules as part
|
||||
of a solution.
|
||||
.El
|
||||
.Sh QUERY-SPECIFIC OPTIONS
|
||||
.Bl -tag -width indent
|
||||
.It Fl -cflags , Fl -cflags-only-I , Fl -cflags-only-other
|
||||
Display either all CFLAGS, only
|
||||
.Fl I
|
||||
CFLAGS or only CFLAGS that are not
|
||||
.Fl I .
|
||||
.It Fl -libs , Fl -libs-only-L , Fl -libs-only-l , Fl -libs-only-other
|
||||
Display either all linker flags, only
|
||||
.Fl L
|
||||
linker flags, only
|
||||
.Fl l
|
||||
linker flags or only linker flags that are not
|
||||
.Fl L
|
||||
or
|
||||
.Fl l .
|
||||
.It Fl -keep-system-cflags , Fl -keep-system-libs
|
||||
Keep CFLAGS or linker flag fragments that would be filtered due to being
|
||||
included by default in the compiler.
|
||||
.It Fl -define-variable Ns = Ns Ar VARNAME Ns = Ns Ar VALUE
|
||||
Define
|
||||
.Va VARNAME
|
||||
as
|
||||
.Va VALUE .
|
||||
Variables are used in query output, and some modules' results may change based
|
||||
on the presence of a variable definition.
|
||||
.It Fl -print-variables
|
||||
Print all seen variables for a module to the output channel.
|
||||
.It Fl -print-provides
|
||||
Print all relevant
|
||||
.Sq Provides
|
||||
entries for a module to the output channel.
|
||||
.It Fl -variable Ns = Ns Ar VARNAME
|
||||
Print the value of
|
||||
.Va VARNAME .
|
||||
.It Fl -print-requires , Fl -print-requires-private
|
||||
Print the modules included in either the
|
||||
.Va Requires
|
||||
field or the
|
||||
.Va Requires.private
|
||||
field.
|
||||
.It Fl -digraph
|
||||
Dump the dependency resolver's solution as a graphviz
|
||||
.Sq dot
|
||||
file.
|
||||
This can be used with graphviz to visualize module interdependencies.
|
||||
.It Fl -path
|
||||
Display the filenames of the
|
||||
.Sq .pc
|
||||
files used by the dependency resolver for a given dependency set.
|
||||
.It Fl -env Ns = Ns Ar VARNAME
|
||||
Print the requested values as variable declarations in a similar format as the
|
||||
.Xr env 1
|
||||
command.
|
||||
.It Fl -fragment-filter Ns = Ns Ar TYPES
|
||||
Filter the fragment lists for the specified types.
|
||||
.It Fl -modversion
|
||||
Print the version of the queried module.
|
||||
.El
|
||||
.Sh ENVIRONMENT
|
||||
.Bl -tag -width indent
|
||||
.It Va PKG_CONFIG_PATH
|
||||
List of secondary directories where
|
||||
.Sq .pc
|
||||
files are looked up.
|
||||
.It Va PKG_CONFIG_LIBDIR
|
||||
List of primary directories where
|
||||
.Sq .pc
|
||||
files are looked up.
|
||||
.It Va PKG_CONFIG_SYSROOT_DIR
|
||||
.Sq sysroot
|
||||
directory, will be prepended to every path defined in
|
||||
.Va PKG_CONFIG_PATH .
|
||||
Useful for cross compilation.
|
||||
.It Va PKG_CONFIG_TOP_BUILD_DIR
|
||||
Provides an alternative setting for the
|
||||
.Sq pc_top_builddir
|
||||
global variable.
|
||||
.It Va PKG_CONFIG_PURE_DEPGRAPH
|
||||
If set, enables the same behaviour as the
|
||||
.Fl -pure
|
||||
flag.
|
||||
.It Va PKG_CONFIG_SYSTEM_INCLUDE_PATH
|
||||
List of paths that are considered system include paths by the toolchain.
|
||||
This is a pkgconf-specific extension.
|
||||
.It Va PKG_CONFIG_SYSTEM_LIBRARY_PATH
|
||||
List of paths that are considered system library paths by the toolchain.
|
||||
This is a pkgconf-specific extension.
|
||||
.It Va PKG_CONFIG_DISABLE_UNINSTALLED
|
||||
If set, enables the same behaviour as the
|
||||
.Fl -no-uninstalled
|
||||
flag.
|
||||
.It Va PKG_CONFIG_LOG
|
||||
.Sq logfile
|
||||
which is used for dumping audit information concerning installed module versions.
|
||||
.It Va PKG_CONFIG_DEBUG_SPEW
|
||||
If set, enables additional debug logging.
|
||||
The format of the debug log messages is implementation-specific.
|
||||
.It Va PKG_CONFIG_DONT_RELOCATE_PATHS
|
||||
If set, disables the path relocation feature.
|
||||
.It Va PKG_CONFIG_MSVC_SYNTAX
|
||||
If set, uses MSVC syntax for fragments.
|
||||
.It Va PKG_CONFIG_FDO_SYSROOT_RULES
|
||||
If set, follow the sysroot prefixing rules that freedesktop.org pkg-config uses.
|
||||
.It Va DESTDIR
|
||||
If set to PKG_CONFIG_SYSROOT_DIR, assume that PKG_CONFIG_FDO_SYSROOT_RULES is set.
|
||||
.El
|
||||
.Sh EXAMPLES
|
||||
Displaying the CFLAGS of a package:
|
||||
.Dl $ pkgconf --cflags foo
|
||||
.Dl -fPIC -I/usr/include/foo
|
||||
.Sh SEE ALSO
|
||||
.Xr pc 5 ,
|
||||
.Xr pkg.m4 7
|
||||
0
share/man/man1/x86_64-linux-musl-addr2line.1
Normal file
0
share/man/man1/x86_64-linux-musl-addr2line.1
Normal file
0
share/man/man1/x86_64-linux-musl-ar.1
Normal file
0
share/man/man1/x86_64-linux-musl-ar.1
Normal file
0
share/man/man1/x86_64-linux-musl-as.1
Normal file
0
share/man/man1/x86_64-linux-musl-as.1
Normal file
0
share/man/man1/x86_64-linux-musl-c++filt.1
Normal file
0
share/man/man1/x86_64-linux-musl-c++filt.1
Normal file
948
share/man/man1/x86_64-linux-musl-cpp.1
Normal file
948
share/man/man1/x86_64-linux-musl-cpp.1
Normal file
@@ -0,0 +1,948 @@
|
||||
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
||||
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
||||
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
||||
.\" nothing in troff, for use with C<>.
|
||||
.tr \(*W-
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
. ds C`
|
||||
. ds C'
|
||||
'br\}
|
||||
.\"
|
||||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||||
.ie \n(.g .ds Aq \(aq
|
||||
.el .ds Aq '
|
||||
.\"
|
||||
.\" If the F register is >0, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.\"
|
||||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
.if !\nF .nr F 0
|
||||
.if \nF>0 \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
.\}
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "CPP 1"
|
||||
.TH CPP 1 "2022-08-19" "gcc-12.2.0" "GNU"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
.nh
|
||||
.SH "NAME"
|
||||
cpp \- The C Preprocessor
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
cpp [\fB\-D\fR\fImacro\fR[=\fIdefn\fR]...] [\fB\-U\fR\fImacro\fR]
|
||||
[\fB\-I\fR\fIdir\fR...] [\fB\-iquote\fR\fIdir\fR...]
|
||||
[\fB\-M\fR|\fB\-MM\fR] [\fB\-MG\fR] [\fB\-MF\fR \fIfilename\fR]
|
||||
[\fB\-MP\fR] [\fB\-MQ\fR \fItarget\fR...]
|
||||
[\fB\-MT\fR \fItarget\fR...]
|
||||
\fIinfile\fR [[\fB\-o\fR] \fIoutfile\fR]
|
||||
.PP
|
||||
Only the most useful options are given above; see below for a more
|
||||
complete list of preprocessor-specific options.
|
||||
In addition, \fBcpp\fR accepts most \fBgcc\fR driver options, which
|
||||
are not listed here. Refer to the \s-1GCC\s0 documentation for details.
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
The C preprocessor, often known as \fIcpp\fR, is a \fImacro processor\fR
|
||||
that is used automatically by the C compiler to transform your program
|
||||
before compilation. It is called a macro processor because it allows
|
||||
you to define \fImacros\fR, which are brief abbreviations for longer
|
||||
constructs.
|
||||
.PP
|
||||
The C preprocessor is intended to be used only with C, \*(C+, and
|
||||
Objective-C source code. In the past, it has been abused as a general
|
||||
text processor. It will choke on input which does not obey C's lexical
|
||||
rules. For example, apostrophes will be interpreted as the beginning of
|
||||
character constants, and cause errors. Also, you cannot rely on it
|
||||
preserving characteristics of the input which are not significant to
|
||||
C\-family languages. If a Makefile is preprocessed, all the hard tabs
|
||||
will be removed, and the Makefile will not work.
|
||||
.PP
|
||||
Having said that, you can often get away with using cpp on things which
|
||||
are not C. Other Algol-ish programming languages are often safe
|
||||
(Ada, etc.) So is assembly, with caution. \fB\-traditional\-cpp\fR
|
||||
mode preserves more white space, and is otherwise more permissive. Many
|
||||
of the problems can be avoided by writing C or \*(C+ style comments
|
||||
instead of native language comments, and keeping macros simple.
|
||||
.PP
|
||||
Wherever possible, you should use a preprocessor geared to the language
|
||||
you are writing in. Modern versions of the \s-1GNU\s0 assembler have macro
|
||||
facilities. Most high level programming languages have their own
|
||||
conditional compilation and inclusion mechanism. If all else fails,
|
||||
try a true general text processor, such as \s-1GNU M4.\s0
|
||||
.PP
|
||||
C preprocessors vary in some details. This manual discusses the \s-1GNU C\s0
|
||||
preprocessor, which provides a small superset of the features of \s-1ISO\s0
|
||||
Standard C. In its default mode, the \s-1GNU C\s0 preprocessor does not do a
|
||||
few things required by the standard. These are features which are
|
||||
rarely, if ever, used, and may cause surprising changes to the meaning
|
||||
of a program which does not expect them. To get strict \s-1ISO\s0 Standard C,
|
||||
you should use the \fB\-std=c90\fR, \fB\-std=c99\fR,
|
||||
\&\fB\-std=c11\fR or \fB\-std=c17\fR options, depending
|
||||
on which version of the standard you want. To get all the mandatory
|
||||
diagnostics, you must also use \fB\-pedantic\fR.
|
||||
.PP
|
||||
This manual describes the behavior of the \s-1ISO\s0 preprocessor. To
|
||||
minimize gratuitous differences, where the \s-1ISO\s0 preprocessor's
|
||||
behavior does not conflict with traditional semantics, the
|
||||
traditional preprocessor should behave the same way. The various
|
||||
differences that do exist are detailed in the section \fBTraditional
|
||||
Mode\fR.
|
||||
.PP
|
||||
For clarity, unless noted otherwise, references to \fB\s-1CPP\s0\fR in this
|
||||
manual refer to \s-1GNU CPP.\s0
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
The \fBcpp\fR command expects two file names as arguments, \fIinfile\fR and
|
||||
\&\fIoutfile\fR. The preprocessor reads \fIinfile\fR together with any
|
||||
other files it specifies with \fB#include\fR. All the output generated
|
||||
by the combined input files is written in \fIoutfile\fR.
|
||||
.PP
|
||||
Either \fIinfile\fR or \fIoutfile\fR may be \fB\-\fR, which as
|
||||
\&\fIinfile\fR means to read from standard input and as \fIoutfile\fR
|
||||
means to write to standard output. If either file is omitted, it
|
||||
means the same as if \fB\-\fR had been specified for that file.
|
||||
You can also use the \fB\-o\fR \fIoutfile\fR option to specify the
|
||||
output file.
|
||||
.PP
|
||||
Unless otherwise noted, or the option ends in \fB=\fR, all options
|
||||
which take an argument may have that argument appear either immediately
|
||||
after the option, or with a space between option and argument:
|
||||
\&\fB\-Ifoo\fR and \fB\-I foo\fR have the same effect.
|
||||
.PP
|
||||
Many options have multi-letter names; therefore multiple single-letter
|
||||
options may \fInot\fR be grouped: \fB\-dM\fR is very different from
|
||||
\&\fB\-d\ \-M\fR.
|
||||
.IP "\fB\-D\fR \fIname\fR" 4
|
||||
.IX Item "-D name"
|
||||
Predefine \fIname\fR as a macro, with definition \f(CW1\fR.
|
||||
.IP "\fB\-D\fR \fIname\fR\fB=\fR\fIdefinition\fR" 4
|
||||
.IX Item "-D name=definition"
|
||||
The contents of \fIdefinition\fR are tokenized and processed as if
|
||||
they appeared during translation phase three in a \fB#define\fR
|
||||
directive. In particular, the definition is truncated by
|
||||
embedded newline characters.
|
||||
.Sp
|
||||
If you are invoking the preprocessor from a shell or shell-like
|
||||
program you may need to use the shell's quoting syntax to protect
|
||||
characters such as spaces that have a meaning in the shell syntax.
|
||||
.Sp
|
||||
If you wish to define a function-like macro on the command line, write
|
||||
its argument list with surrounding parentheses before the equals sign
|
||||
(if any). Parentheses are meaningful to most shells, so you should
|
||||
quote the option. With \fBsh\fR and \fBcsh\fR,
|
||||
\&\fB\-D'\fR\fIname\fR\fB(\fR\fIargs...\fR\fB)=\fR\fIdefinition\fR\fB'\fR works.
|
||||
.Sp
|
||||
\&\fB\-D\fR and \fB\-U\fR options are processed in the order they
|
||||
are given on the command line. All \fB\-imacros\fR \fIfile\fR and
|
||||
\&\fB\-include\fR \fIfile\fR options are processed after all
|
||||
\&\fB\-D\fR and \fB\-U\fR options.
|
||||
.IP "\fB\-U\fR \fIname\fR" 4
|
||||
.IX Item "-U name"
|
||||
Cancel any previous definition of \fIname\fR, either built in or
|
||||
provided with a \fB\-D\fR option.
|
||||
.IP "\fB\-include\fR \fIfile\fR" 4
|
||||
.IX Item "-include file"
|
||||
Process \fIfile\fR as if \f(CW\*(C`#include "file"\*(C'\fR appeared as the first
|
||||
line of the primary source file. However, the first directory searched
|
||||
for \fIfile\fR is the preprocessor's working directory \fIinstead of\fR
|
||||
the directory containing the main source file. If not found there, it
|
||||
is searched for in the remainder of the \f(CW\*(C`#include "..."\*(C'\fR search
|
||||
chain as normal.
|
||||
.Sp
|
||||
If multiple \fB\-include\fR options are given, the files are included
|
||||
in the order they appear on the command line.
|
||||
.IP "\fB\-imacros\fR \fIfile\fR" 4
|
||||
.IX Item "-imacros file"
|
||||
Exactly like \fB\-include\fR, except that any output produced by
|
||||
scanning \fIfile\fR is thrown away. Macros it defines remain defined.
|
||||
This allows you to acquire all the macros from a header without also
|
||||
processing its declarations.
|
||||
.Sp
|
||||
All files specified by \fB\-imacros\fR are processed before all files
|
||||
specified by \fB\-include\fR.
|
||||
.IP "\fB\-undef\fR" 4
|
||||
.IX Item "-undef"
|
||||
Do not predefine any system-specific or GCC-specific macros. The
|
||||
standard predefined macros remain defined.
|
||||
.IP "\fB\-pthread\fR" 4
|
||||
.IX Item "-pthread"
|
||||
Define additional macros required for using the \s-1POSIX\s0 threads library.
|
||||
You should use this option consistently for both compilation and linking.
|
||||
This option is supported on GNU/Linux targets, most other Unix derivatives,
|
||||
and also on x86 Cygwin and MinGW targets.
|
||||
.IP "\fB\-M\fR" 4
|
||||
.IX Item "-M"
|
||||
Instead of outputting the result of preprocessing, output a rule
|
||||
suitable for \fBmake\fR describing the dependencies of the main
|
||||
source file. The preprocessor outputs one \fBmake\fR rule containing
|
||||
the object file name for that source file, a colon, and the names of all
|
||||
the included files, including those coming from \fB\-include\fR or
|
||||
\&\fB\-imacros\fR command-line options.
|
||||
.Sp
|
||||
Unless specified explicitly (with \fB\-MT\fR or \fB\-MQ\fR), the
|
||||
object file name consists of the name of the source file with any
|
||||
suffix replaced with object file suffix and with any leading directory
|
||||
parts removed. If there are many included files then the rule is
|
||||
split into several lines using \fB\e\fR\-newline. The rule has no
|
||||
commands.
|
||||
.Sp
|
||||
This option does not suppress the preprocessor's debug output, such as
|
||||
\&\fB\-dM\fR. To avoid mixing such debug output with the dependency
|
||||
rules you should explicitly specify the dependency output file with
|
||||
\&\fB\-MF\fR, or use an environment variable like
|
||||
\&\fB\s-1DEPENDENCIES_OUTPUT\s0\fR. Debug output
|
||||
is still sent to the regular output stream as normal.
|
||||
.Sp
|
||||
Passing \fB\-M\fR to the driver implies \fB\-E\fR, and suppresses
|
||||
warnings with an implicit \fB\-w\fR.
|
||||
.IP "\fB\-MM\fR" 4
|
||||
.IX Item "-MM"
|
||||
Like \fB\-M\fR but do not mention header files that are found in
|
||||
system header directories, nor header files that are included,
|
||||
directly or indirectly, from such a header.
|
||||
.Sp
|
||||
This implies that the choice of angle brackets or double quotes in an
|
||||
\&\fB#include\fR directive does not in itself determine whether that
|
||||
header appears in \fB\-MM\fR dependency output.
|
||||
.IP "\fB\-MF\fR \fIfile\fR" 4
|
||||
.IX Item "-MF file"
|
||||
When used with \fB\-M\fR or \fB\-MM\fR, specifies a
|
||||
file to write the dependencies to. If no \fB\-MF\fR switch is given
|
||||
the preprocessor sends the rules to the same place it would send
|
||||
preprocessed output.
|
||||
.Sp
|
||||
When used with the driver options \fB\-MD\fR or \fB\-MMD\fR,
|
||||
\&\fB\-MF\fR overrides the default dependency output file.
|
||||
.Sp
|
||||
If \fIfile\fR is \fI\-\fR, then the dependencies are written to \fIstdout\fR.
|
||||
.IP "\fB\-MG\fR" 4
|
||||
.IX Item "-MG"
|
||||
In conjunction with an option such as \fB\-M\fR requesting
|
||||
dependency generation, \fB\-MG\fR assumes missing header files are
|
||||
generated files and adds them to the dependency list without raising
|
||||
an error. The dependency filename is taken directly from the
|
||||
\&\f(CW\*(C`#include\*(C'\fR directive without prepending any path. \fB\-MG\fR
|
||||
also suppresses preprocessed output, as a missing header file renders
|
||||
this useless.
|
||||
.Sp
|
||||
This feature is used in automatic updating of makefiles.
|
||||
.IP "\fB\-Mno\-modules\fR" 4
|
||||
.IX Item "-Mno-modules"
|
||||
Disable dependency generation for compiled module interfaces.
|
||||
.IP "\fB\-MP\fR" 4
|
||||
.IX Item "-MP"
|
||||
This option instructs \s-1CPP\s0 to add a phony target for each dependency
|
||||
other than the main file, causing each to depend on nothing. These
|
||||
dummy rules work around errors \fBmake\fR gives if you remove header
|
||||
files without updating the \fIMakefile\fR to match.
|
||||
.Sp
|
||||
This is typical output:
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& test.o: test.c test.h
|
||||
\&
|
||||
\& test.h:
|
||||
.Ve
|
||||
.IP "\fB\-MT\fR \fItarget\fR" 4
|
||||
.IX Item "-MT target"
|
||||
Change the target of the rule emitted by dependency generation. By
|
||||
default \s-1CPP\s0 takes the name of the main input file, deletes any
|
||||
directory components and any file suffix such as \fB.c\fR, and
|
||||
appends the platform's usual object suffix. The result is the target.
|
||||
.Sp
|
||||
An \fB\-MT\fR option sets the target to be exactly the string you
|
||||
specify. If you want multiple targets, you can specify them as a single
|
||||
argument to \fB\-MT\fR, or use multiple \fB\-MT\fR options.
|
||||
.Sp
|
||||
For example, \fB\-MT\ '$(objpfx)foo.o'\fR might give
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& $(objpfx)foo.o: foo.c
|
||||
.Ve
|
||||
.IP "\fB\-MQ\fR \fItarget\fR" 4
|
||||
.IX Item "-MQ target"
|
||||
Same as \fB\-MT\fR, but it quotes any characters which are special to
|
||||
Make. \fB\-MQ\ '$(objpfx)foo.o'\fR gives
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& $$(objpfx)foo.o: foo.c
|
||||
.Ve
|
||||
.Sp
|
||||
The default target is automatically quoted, as if it were given with
|
||||
\&\fB\-MQ\fR.
|
||||
.IP "\fB\-MD\fR" 4
|
||||
.IX Item "-MD"
|
||||
\&\fB\-MD\fR is equivalent to \fB\-M \-MF\fR \fIfile\fR, except that
|
||||
\&\fB\-E\fR is not implied. The driver determines \fIfile\fR based on
|
||||
whether an \fB\-o\fR option is given. If it is, the driver uses its
|
||||
argument but with a suffix of \fI.d\fR, otherwise it takes the name
|
||||
of the input file, removes any directory components and suffix, and
|
||||
applies a \fI.d\fR suffix.
|
||||
.Sp
|
||||
If \fB\-MD\fR is used in conjunction with \fB\-E\fR, any
|
||||
\&\fB\-o\fR switch is understood to specify the dependency output file, but if used without \fB\-E\fR, each \fB\-o\fR
|
||||
is understood to specify a target object file.
|
||||
.Sp
|
||||
Since \fB\-E\fR is not implied, \fB\-MD\fR can be used to generate
|
||||
a dependency output file as a side effect of the compilation process.
|
||||
.IP "\fB\-MMD\fR" 4
|
||||
.IX Item "-MMD"
|
||||
Like \fB\-MD\fR except mention only user header files, not system
|
||||
header files.
|
||||
.IP "\fB\-fpreprocessed\fR" 4
|
||||
.IX Item "-fpreprocessed"
|
||||
Indicate to the preprocessor that the input file has already been
|
||||
preprocessed. This suppresses things like macro expansion, trigraph
|
||||
conversion, escaped newline splicing, and processing of most directives.
|
||||
The preprocessor still recognizes and removes comments, so that you can
|
||||
pass a file preprocessed with \fB\-C\fR to the compiler without
|
||||
problems. In this mode the integrated preprocessor is little more than
|
||||
a tokenizer for the front ends.
|
||||
.Sp
|
||||
\&\fB\-fpreprocessed\fR is implicit if the input file has one of the
|
||||
extensions \fB.i\fR, \fB.ii\fR or \fB.mi\fR. These are the
|
||||
extensions that \s-1GCC\s0 uses for preprocessed files created by
|
||||
\&\fB\-save\-temps\fR.
|
||||
.IP "\fB\-fdirectives\-only\fR" 4
|
||||
.IX Item "-fdirectives-only"
|
||||
When preprocessing, handle directives, but do not expand macros.
|
||||
.Sp
|
||||
The option's behavior depends on the \fB\-E\fR and \fB\-fpreprocessed\fR
|
||||
options.
|
||||
.Sp
|
||||
With \fB\-E\fR, preprocessing is limited to the handling of directives
|
||||
such as \f(CW\*(C`#define\*(C'\fR, \f(CW\*(C`#ifdef\*(C'\fR, and \f(CW\*(C`#error\*(C'\fR. Other
|
||||
preprocessor operations, such as macro expansion and trigraph
|
||||
conversion are not performed. In addition, the \fB\-dD\fR option is
|
||||
implicitly enabled.
|
||||
.Sp
|
||||
With \fB\-fpreprocessed\fR, predefinition of command line and most
|
||||
builtin macros is disabled. Macros such as \f(CW\*(C`_\|_LINE_\|_\*(C'\fR, which are
|
||||
contextually dependent, are handled normally. This enables compilation of
|
||||
files previously preprocessed with \f(CW\*(C`\-E \-fdirectives\-only\*(C'\fR.
|
||||
.Sp
|
||||
With both \fB\-E\fR and \fB\-fpreprocessed\fR, the rules for
|
||||
\&\fB\-fpreprocessed\fR take precedence. This enables full preprocessing of
|
||||
files previously preprocessed with \f(CW\*(C`\-E \-fdirectives\-only\*(C'\fR.
|
||||
.IP "\fB\-fdollars\-in\-identifiers\fR" 4
|
||||
.IX Item "-fdollars-in-identifiers"
|
||||
Accept \fB$\fR in identifiers.
|
||||
.IP "\fB\-fextended\-identifiers\fR" 4
|
||||
.IX Item "-fextended-identifiers"
|
||||
Accept universal character names and extended characters in
|
||||
identifiers. This option is enabled by default for C99 (and later C
|
||||
standard versions) and \*(C+.
|
||||
.IP "\fB\-fno\-canonical\-system\-headers\fR" 4
|
||||
.IX Item "-fno-canonical-system-headers"
|
||||
When preprocessing, do not shorten system header paths with canonicalization.
|
||||
.IP "\fB\-fmax\-include\-depth=\fR\fIdepth\fR" 4
|
||||
.IX Item "-fmax-include-depth=depth"
|
||||
Set the maximum depth of the nested #include. The default is 200.
|
||||
.IP "\fB\-ftabstop=\fR\fIwidth\fR" 4
|
||||
.IX Item "-ftabstop=width"
|
||||
Set the distance between tab stops. This helps the preprocessor report
|
||||
correct column numbers in warnings or errors, even if tabs appear on the
|
||||
line. If the value is less than 1 or greater than 100, the option is
|
||||
ignored. The default is 8.
|
||||
.IP "\fB\-ftrack\-macro\-expansion\fR[\fB=\fR\fIlevel\fR]" 4
|
||||
.IX Item "-ftrack-macro-expansion[=level]"
|
||||
Track locations of tokens across macro expansions. This allows the
|
||||
compiler to emit diagnostic about the current macro expansion stack
|
||||
when a compilation error occurs in a macro expansion. Using this
|
||||
option makes the preprocessor and the compiler consume more
|
||||
memory. The \fIlevel\fR parameter can be used to choose the level of
|
||||
precision of token location tracking thus decreasing the memory
|
||||
consumption if necessary. Value \fB0\fR of \fIlevel\fR de-activates
|
||||
this option. Value \fB1\fR tracks tokens locations in a
|
||||
degraded mode for the sake of minimal memory overhead. In this mode
|
||||
all tokens resulting from the expansion of an argument of a
|
||||
function-like macro have the same location. Value \fB2\fR tracks
|
||||
tokens locations completely. This value is the most memory hungry.
|
||||
When this option is given no argument, the default parameter value is
|
||||
\&\fB2\fR.
|
||||
.Sp
|
||||
Note that \f(CW\*(C`\-ftrack\-macro\-expansion=2\*(C'\fR is activated by default.
|
||||
.IP "\fB\-fmacro\-prefix\-map=\fR\fIold\fR\fB=\fR\fInew\fR" 4
|
||||
.IX Item "-fmacro-prefix-map=old=new"
|
||||
When preprocessing files residing in directory \fI\fIold\fI\fR,
|
||||
expand the \f(CW\*(C`_\|_FILE_\|_\*(C'\fR and \f(CW\*(C`_\|_BASE_FILE_\|_\*(C'\fR macros as if the
|
||||
files resided in directory \fI\fInew\fI\fR instead. This can be used
|
||||
to change an absolute path to a relative path by using \fI.\fR for
|
||||
\&\fInew\fR which can result in more reproducible builds that are
|
||||
location independent. This option also affects
|
||||
\&\f(CW\*(C`_\|_builtin_FILE()\*(C'\fR during compilation. See also
|
||||
\&\fB\-ffile\-prefix\-map\fR.
|
||||
.IP "\fB\-fexec\-charset=\fR\fIcharset\fR" 4
|
||||
.IX Item "-fexec-charset=charset"
|
||||
Set the execution character set, used for string and character
|
||||
constants. The default is \s-1UTF\-8.\s0 \fIcharset\fR can be any encoding
|
||||
supported by the system's \f(CW\*(C`iconv\*(C'\fR library routine.
|
||||
.IP "\fB\-fwide\-exec\-charset=\fR\fIcharset\fR" 4
|
||||
.IX Item "-fwide-exec-charset=charset"
|
||||
Set the wide execution character set, used for wide string and
|
||||
character constants. The default is \s-1UTF\-32\s0 or \s-1UTF\-16,\s0 whichever
|
||||
corresponds to the width of \f(CW\*(C`wchar_t\*(C'\fR. As with
|
||||
\&\fB\-fexec\-charset\fR, \fIcharset\fR can be any encoding supported
|
||||
by the system's \f(CW\*(C`iconv\*(C'\fR library routine; however, you will have
|
||||
problems with encodings that do not fit exactly in \f(CW\*(C`wchar_t\*(C'\fR.
|
||||
.IP "\fB\-finput\-charset=\fR\fIcharset\fR" 4
|
||||
.IX Item "-finput-charset=charset"
|
||||
Set the input character set, used for translation from the character
|
||||
set of the input file to the source character set used by \s-1GCC.\s0 If the
|
||||
locale does not specify, or \s-1GCC\s0 cannot get this information from the
|
||||
locale, the default is \s-1UTF\-8.\s0 This can be overridden by either the locale
|
||||
or this command-line option. Currently the command-line option takes
|
||||
precedence if there's a conflict. \fIcharset\fR can be any encoding
|
||||
supported by the system's \f(CW\*(C`iconv\*(C'\fR library routine.
|
||||
.IP "\fB\-fworking\-directory\fR" 4
|
||||
.IX Item "-fworking-directory"
|
||||
Enable generation of linemarkers in the preprocessor output that
|
||||
let the compiler know the current working directory at the time of
|
||||
preprocessing. When this option is enabled, the preprocessor
|
||||
emits, after the initial linemarker, a second linemarker with the
|
||||
current working directory followed by two slashes. \s-1GCC\s0 uses this
|
||||
directory, when it's present in the preprocessed input, as the
|
||||
directory emitted as the current working directory in some debugging
|
||||
information formats. This option is implicitly enabled if debugging
|
||||
information is enabled, but this can be inhibited with the negated
|
||||
form \fB\-fno\-working\-directory\fR. If the \fB\-P\fR flag is
|
||||
present in the command line, this option has no effect, since no
|
||||
\&\f(CW\*(C`#line\*(C'\fR directives are emitted whatsoever.
|
||||
.IP "\fB\-A\fR \fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.IX Item "-A predicate=answer"
|
||||
Make an assertion with the predicate \fIpredicate\fR and answer
|
||||
\&\fIanswer\fR. This form is preferred to the older form \fB\-A\fR
|
||||
\&\fIpredicate\fR\fB(\fR\fIanswer\fR\fB)\fR, which is still supported, because
|
||||
it does not use shell special characters.
|
||||
.IP "\fB\-A \-\fR\fIpredicate\fR\fB=\fR\fIanswer\fR" 4
|
||||
.IX Item "-A -predicate=answer"
|
||||
Cancel an assertion with the predicate \fIpredicate\fR and answer
|
||||
\&\fIanswer\fR.
|
||||
.IP "\fB\-C\fR" 4
|
||||
.IX Item "-C"
|
||||
Do not discard comments. All comments are passed through to the output
|
||||
file, except for comments in processed directives, which are deleted
|
||||
along with the directive.
|
||||
.Sp
|
||||
You should be prepared for side effects when using \fB\-C\fR; it
|
||||
causes the preprocessor to treat comments as tokens in their own right.
|
||||
For example, comments appearing at the start of what would be a
|
||||
directive line have the effect of turning that line into an ordinary
|
||||
source line, since the first token on the line is no longer a \fB#\fR.
|
||||
.IP "\fB\-CC\fR" 4
|
||||
.IX Item "-CC"
|
||||
Do not discard comments, including during macro expansion. This is
|
||||
like \fB\-C\fR, except that comments contained within macros are
|
||||
also passed through to the output file where the macro is expanded.
|
||||
.Sp
|
||||
In addition to the side effects of the \fB\-C\fR option, the
|
||||
\&\fB\-CC\fR option causes all \*(C+\-style comments inside a macro
|
||||
to be converted to C\-style comments. This is to prevent later use
|
||||
of that macro from inadvertently commenting out the remainder of
|
||||
the source line.
|
||||
.Sp
|
||||
The \fB\-CC\fR option is generally used to support lint comments.
|
||||
.IP "\fB\-P\fR" 4
|
||||
.IX Item "-P"
|
||||
Inhibit generation of linemarkers in the output from the preprocessor.
|
||||
This might be useful when running the preprocessor on something that is
|
||||
not C code, and will be sent to a program which might be confused by the
|
||||
linemarkers.
|
||||
.IP "\fB\-traditional\fR" 4
|
||||
.IX Item "-traditional"
|
||||
.PD 0
|
||||
.IP "\fB\-traditional\-cpp\fR" 4
|
||||
.IX Item "-traditional-cpp"
|
||||
.PD
|
||||
Try to imitate the behavior of pre-standard C preprocessors, as
|
||||
opposed to \s-1ISO C\s0 preprocessors.
|
||||
.Sp
|
||||
Note that \s-1GCC\s0 does not otherwise attempt to emulate a pre-standard
|
||||
C compiler, and these options are only supported with the \fB\-E\fR
|
||||
switch, or when invoking \s-1CPP\s0 explicitly.
|
||||
.IP "\fB\-trigraphs\fR" 4
|
||||
.IX Item "-trigraphs"
|
||||
Support \s-1ISO C\s0 trigraphs.
|
||||
These are three-character sequences, all starting with \fB??\fR, that
|
||||
are defined by \s-1ISO C\s0 to stand for single characters. For example,
|
||||
\&\fB??/\fR stands for \fB\e\fR, so \fB'??/n'\fR is a character
|
||||
constant for a newline.
|
||||
.Sp
|
||||
By default, \s-1GCC\s0 ignores trigraphs, but in
|
||||
standard-conforming modes it converts them. See the \fB\-std\fR and
|
||||
\&\fB\-ansi\fR options.
|
||||
.IP "\fB\-remap\fR" 4
|
||||
.IX Item "-remap"
|
||||
Enable special code to work around file systems which only permit very
|
||||
short file names, such as MS-DOS.
|
||||
.IP "\fB\-H\fR" 4
|
||||
.IX Item "-H"
|
||||
Print the name of each header file used, in addition to other normal
|
||||
activities. Each name is indented to show how deep in the
|
||||
\&\fB#include\fR stack it is. Precompiled header files are also
|
||||
printed, even if they are found to be invalid; an invalid precompiled
|
||||
header file is printed with \fB...x\fR and a valid one with \fB...!\fR .
|
||||
.IP "\fB\-d\fR\fIletters\fR" 4
|
||||
.IX Item "-dletters"
|
||||
Says to make debugging dumps during compilation as specified by
|
||||
\&\fIletters\fR. The flags documented here are those relevant to the
|
||||
preprocessor. Other \fIletters\fR are interpreted
|
||||
by the compiler proper, or reserved for future versions of \s-1GCC,\s0 and so
|
||||
are silently ignored. If you specify \fIletters\fR whose behavior
|
||||
conflicts, the result is undefined.
|
||||
.RS 4
|
||||
.IP "\fB\-dM\fR" 4
|
||||
.IX Item "-dM"
|
||||
Instead of the normal output, generate a list of \fB#define\fR
|
||||
directives for all the macros defined during the execution of the
|
||||
preprocessor, including predefined macros. This gives you a way of
|
||||
finding out what is predefined in your version of the preprocessor.
|
||||
Assuming you have no file \fIfoo.h\fR, the command
|
||||
.Sp
|
||||
.Vb 1
|
||||
\& touch foo.h; cpp \-dM foo.h
|
||||
.Ve
|
||||
.Sp
|
||||
shows all the predefined macros.
|
||||
.IP "\fB\-dD\fR" 4
|
||||
.IX Item "-dD"
|
||||
Like \fB\-dM\fR except in two respects: it does \fInot\fR include the
|
||||
predefined macros, and it outputs \fIboth\fR the \fB#define\fR
|
||||
directives and the result of preprocessing. Both kinds of output go to
|
||||
the standard output file.
|
||||
.IP "\fB\-dN\fR" 4
|
||||
.IX Item "-dN"
|
||||
Like \fB\-dD\fR, but emit only the macro names, not their expansions.
|
||||
.IP "\fB\-dI\fR" 4
|
||||
.IX Item "-dI"
|
||||
Output \fB#include\fR directives in addition to the result of
|
||||
preprocessing.
|
||||
.IP "\fB\-dU\fR" 4
|
||||
.IX Item "-dU"
|
||||
Like \fB\-dD\fR except that only macros that are expanded, or whose
|
||||
definedness is tested in preprocessor directives, are output; the
|
||||
output is delayed until the use or test of the macro; and
|
||||
\&\fB#undef\fR directives are also output for macros tested but
|
||||
undefined at the time.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fB\-fdebug\-cpp\fR" 4
|
||||
.IX Item "-fdebug-cpp"
|
||||
This option is only useful for debugging \s-1GCC.\s0 When used from \s-1CPP\s0 or with
|
||||
\&\fB\-E\fR, it dumps debugging information about location maps. Every
|
||||
token in the output is preceded by the dump of the map its location
|
||||
belongs to.
|
||||
.Sp
|
||||
When used from \s-1GCC\s0 without \fB\-E\fR, this option has no effect.
|
||||
.IP "\fB\-I\fR \fIdir\fR" 4
|
||||
.IX Item "-I dir"
|
||||
.PD 0
|
||||
.IP "\fB\-iquote\fR \fIdir\fR" 4
|
||||
.IX Item "-iquote dir"
|
||||
.IP "\fB\-isystem\fR \fIdir\fR" 4
|
||||
.IX Item "-isystem dir"
|
||||
.IP "\fB\-idirafter\fR \fIdir\fR" 4
|
||||
.IX Item "-idirafter dir"
|
||||
.PD
|
||||
Add the directory \fIdir\fR to the list of directories to be searched
|
||||
for header files during preprocessing.
|
||||
.Sp
|
||||
If \fIdir\fR begins with \fB=\fR or \f(CW$SYSROOT\fR, then the \fB=\fR
|
||||
or \f(CW$SYSROOT\fR is replaced by the sysroot prefix; see
|
||||
\&\fB\-\-sysroot\fR and \fB\-isysroot\fR.
|
||||
.Sp
|
||||
Directories specified with \fB\-iquote\fR apply only to the quote
|
||||
form of the directive, \f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR.
|
||||
Directories specified with \fB\-I\fR, \fB\-isystem\fR,
|
||||
or \fB\-idirafter\fR apply to lookup for both the
|
||||
\&\f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR and
|
||||
\&\f(CW\*(C`#include\ <\f(CIfile\f(CW>\*(C'\fR directives.
|
||||
.Sp
|
||||
You can specify any number or combination of these options on the
|
||||
command line to search for header files in several directories.
|
||||
The lookup order is as follows:
|
||||
.RS 4
|
||||
.IP "1." 4
|
||||
.IX Item "1."
|
||||
For the quote form of the include directive, the directory of the current
|
||||
file is searched first.
|
||||
.IP "2." 4
|
||||
.IX Item "2."
|
||||
For the quote form of the include directive, the directories specified
|
||||
by \fB\-iquote\fR options are searched in left-to-right order,
|
||||
as they appear on the command line.
|
||||
.IP "3." 4
|
||||
.IX Item "3."
|
||||
Directories specified with \fB\-I\fR options are scanned in
|
||||
left-to-right order.
|
||||
.IP "4." 4
|
||||
.IX Item "4."
|
||||
Directories specified with \fB\-isystem\fR options are scanned in
|
||||
left-to-right order.
|
||||
.IP "5." 4
|
||||
.IX Item "5."
|
||||
Standard system directories are scanned.
|
||||
.IP "6." 4
|
||||
.IX Item "6."
|
||||
Directories specified with \fB\-idirafter\fR options are scanned in
|
||||
left-to-right order.
|
||||
.RE
|
||||
.RS 4
|
||||
.Sp
|
||||
You can use \fB\-I\fR to override a system header
|
||||
file, substituting your own version, since these directories are
|
||||
searched before the standard system header file directories.
|
||||
However, you should
|
||||
not use this option to add directories that contain vendor-supplied
|
||||
system header files; use \fB\-isystem\fR for that.
|
||||
.Sp
|
||||
The \fB\-isystem\fR and \fB\-idirafter\fR options also mark the directory
|
||||
as a system directory, so that it gets the same special treatment that
|
||||
is applied to the standard system directories.
|
||||
.Sp
|
||||
If a standard system include directory, or a directory specified with
|
||||
\&\fB\-isystem\fR, is also specified with \fB\-I\fR, the \fB\-I\fR
|
||||
option is ignored. The directory is still searched but as a
|
||||
system directory at its normal position in the system include chain.
|
||||
This is to ensure that \s-1GCC\s0's procedure to fix buggy system headers and
|
||||
the ordering for the \f(CW\*(C`#include_next\*(C'\fR directive are not inadvertently
|
||||
changed.
|
||||
If you really need to change the search order for system directories,
|
||||
use the \fB\-nostdinc\fR and/or \fB\-isystem\fR options.
|
||||
.RE
|
||||
.IP "\fB\-I\-\fR" 4
|
||||
.IX Item "-I-"
|
||||
Split the include path.
|
||||
This option has been deprecated. Please use \fB\-iquote\fR instead for
|
||||
\&\fB\-I\fR directories before the \fB\-I\-\fR and remove the \fB\-I\-\fR
|
||||
option.
|
||||
.Sp
|
||||
Any directories specified with \fB\-I\fR
|
||||
options before \fB\-I\-\fR are searched only for headers requested with
|
||||
\&\f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR; they are not searched for
|
||||
\&\f(CW\*(C`#include\ <\f(CIfile\f(CW>\*(C'\fR. If additional directories are
|
||||
specified with \fB\-I\fR options after the \fB\-I\-\fR, those
|
||||
directories are searched for all \fB#include\fR directives.
|
||||
.Sp
|
||||
In addition, \fB\-I\-\fR inhibits the use of the directory of the current
|
||||
file directory as the first search directory for \f(CW\*(C`#include\ "\f(CIfile\f(CW"\*(C'\fR. There is no way to override this effect of \fB\-I\-\fR.
|
||||
.IP "\fB\-iprefix\fR \fIprefix\fR" 4
|
||||
.IX Item "-iprefix prefix"
|
||||
Specify \fIprefix\fR as the prefix for subsequent \fB\-iwithprefix\fR
|
||||
options. If the prefix represents a directory, you should include the
|
||||
final \fB/\fR.
|
||||
.IP "\fB\-iwithprefix\fR \fIdir\fR" 4
|
||||
.IX Item "-iwithprefix dir"
|
||||
.PD 0
|
||||
.IP "\fB\-iwithprefixbefore\fR \fIdir\fR" 4
|
||||
.IX Item "-iwithprefixbefore dir"
|
||||
.PD
|
||||
Append \fIdir\fR to the prefix specified previously with
|
||||
\&\fB\-iprefix\fR, and add the resulting directory to the include search
|
||||
path. \fB\-iwithprefixbefore\fR puts it in the same place \fB\-I\fR
|
||||
would; \fB\-iwithprefix\fR puts it where \fB\-idirafter\fR would.
|
||||
.IP "\fB\-isysroot\fR \fIdir\fR" 4
|
||||
.IX Item "-isysroot dir"
|
||||
This option is like the \fB\-\-sysroot\fR option, but applies only to
|
||||
header files (except for Darwin targets, where it applies to both header
|
||||
files and libraries). See the \fB\-\-sysroot\fR option for more
|
||||
information.
|
||||
.IP "\fB\-imultilib\fR \fIdir\fR" 4
|
||||
.IX Item "-imultilib dir"
|
||||
Use \fIdir\fR as a subdirectory of the directory containing
|
||||
target-specific \*(C+ headers.
|
||||
.IP "\fB\-nostdinc\fR" 4
|
||||
.IX Item "-nostdinc"
|
||||
Do not search the standard system directories for header files.
|
||||
Only the directories explicitly specified with \fB\-I\fR,
|
||||
\&\fB\-iquote\fR, \fB\-isystem\fR, and/or \fB\-idirafter\fR
|
||||
options (and the directory of the current file, if appropriate)
|
||||
are searched.
|
||||
.IP "\fB\-nostdinc++\fR" 4
|
||||
.IX Item "-nostdinc++"
|
||||
Do not search for header files in the \*(C+\-specific standard directories,
|
||||
but do still search the other standard directories. (This option is
|
||||
used when building the \*(C+ library.)
|
||||
.IP "\fB\-Wcomment\fR" 4
|
||||
.IX Item "-Wcomment"
|
||||
.PD 0
|
||||
.IP "\fB\-Wcomments\fR" 4
|
||||
.IX Item "-Wcomments"
|
||||
.PD
|
||||
Warn whenever a comment-start sequence \fB/*\fR appears in a \fB/*\fR
|
||||
comment, or whenever a backslash-newline appears in a \fB//\fR comment.
|
||||
This warning is enabled by \fB\-Wall\fR.
|
||||
.IP "\fB\-Wtrigraphs\fR" 4
|
||||
.IX Item "-Wtrigraphs"
|
||||
Warn if any trigraphs are encountered that might change the meaning of
|
||||
the program. Trigraphs within comments are not warned about,
|
||||
except those that would form escaped newlines.
|
||||
.Sp
|
||||
This option is implied by \fB\-Wall\fR. If \fB\-Wall\fR is not
|
||||
given, this option is still enabled unless trigraphs are enabled. To
|
||||
get trigraph conversion without warnings, but get the other
|
||||
\&\fB\-Wall\fR warnings, use \fB\-trigraphs \-Wall \-Wno\-trigraphs\fR.
|
||||
.IP "\fB\-Wundef\fR" 4
|
||||
.IX Item "-Wundef"
|
||||
Warn if an undefined identifier is evaluated in an \f(CW\*(C`#if\*(C'\fR directive.
|
||||
Such identifiers are replaced with zero.
|
||||
.IP "\fB\-Wexpansion\-to\-defined\fR" 4
|
||||
.IX Item "-Wexpansion-to-defined"
|
||||
Warn whenever \fBdefined\fR is encountered in the expansion of a macro
|
||||
(including the case where the macro is expanded by an \fB#if\fR directive).
|
||||
Such usage is not portable.
|
||||
This warning is also enabled by \fB\-Wpedantic\fR and \fB\-Wextra\fR.
|
||||
.IP "\fB\-Wunused\-macros\fR" 4
|
||||
.IX Item "-Wunused-macros"
|
||||
Warn about macros defined in the main file that are unused. A macro
|
||||
is \fIused\fR if it is expanded or tested for existence at least once.
|
||||
The preprocessor also warns if the macro has not been used at the
|
||||
time it is redefined or undefined.
|
||||
.Sp
|
||||
Built-in macros, macros defined on the command line, and macros
|
||||
defined in include files are not warned about.
|
||||
.Sp
|
||||
\&\fINote:\fR If a macro is actually used, but only used in skipped
|
||||
conditional blocks, then the preprocessor reports it as unused. To avoid the
|
||||
warning in such a case, you might improve the scope of the macro's
|
||||
definition by, for example, moving it into the first skipped block.
|
||||
Alternatively, you could provide a dummy use with something like:
|
||||
.Sp
|
||||
.Vb 2
|
||||
\& #if defined the_macro_causing_the_warning
|
||||
\& #endif
|
||||
.Ve
|
||||
.IP "\fB\-Wno\-endif\-labels\fR" 4
|
||||
.IX Item "-Wno-endif-labels"
|
||||
Do not warn whenever an \f(CW\*(C`#else\*(C'\fR or an \f(CW\*(C`#endif\*(C'\fR are followed by text.
|
||||
This sometimes happens in older programs with code of the form
|
||||
.Sp
|
||||
.Vb 5
|
||||
\& #if FOO
|
||||
\& ...
|
||||
\& #else FOO
|
||||
\& ...
|
||||
\& #endif FOO
|
||||
.Ve
|
||||
.Sp
|
||||
The second and third \f(CW\*(C`FOO\*(C'\fR should be in comments.
|
||||
This warning is on by default.
|
||||
.SH "ENVIRONMENT"
|
||||
.IX Header "ENVIRONMENT"
|
||||
This section describes the environment variables that affect how \s-1CPP\s0
|
||||
operates. You can use them to specify directories or prefixes to use
|
||||
when searching for include files, or to control dependency output.
|
||||
.PP
|
||||
Note that you can also specify places to search using options such as
|
||||
\&\fB\-I\fR, and control dependency output with options like
|
||||
\&\fB\-M\fR. These take precedence over
|
||||
environment variables, which in turn take precedence over the
|
||||
configuration of \s-1GCC.\s0
|
||||
.IP "\fB\s-1CPATH\s0\fR" 4
|
||||
.IX Item "CPATH"
|
||||
.PD 0
|
||||
.IP "\fBC_INCLUDE_PATH\fR" 4
|
||||
.IX Item "C_INCLUDE_PATH"
|
||||
.IP "\fB\s-1CPLUS_INCLUDE_PATH\s0\fR" 4
|
||||
.IX Item "CPLUS_INCLUDE_PATH"
|
||||
.IP "\fB\s-1OBJC_INCLUDE_PATH\s0\fR" 4
|
||||
.IX Item "OBJC_INCLUDE_PATH"
|
||||
.PD
|
||||
Each variable's value is a list of directories separated by a special
|
||||
character, much like \fB\s-1PATH\s0\fR, in which to look for header files.
|
||||
The special character, \f(CW\*(C`PATH_SEPARATOR\*(C'\fR, is target-dependent and
|
||||
determined at \s-1GCC\s0 build time. For Microsoft Windows-based targets it is a
|
||||
semicolon, and for almost all other targets it is a colon.
|
||||
.Sp
|
||||
\&\fB\s-1CPATH\s0\fR specifies a list of directories to be searched as if
|
||||
specified with \fB\-I\fR, but after any paths given with \fB\-I\fR
|
||||
options on the command line. This environment variable is used
|
||||
regardless of which language is being preprocessed.
|
||||
.Sp
|
||||
The remaining environment variables apply only when preprocessing the
|
||||
particular language indicated. Each specifies a list of directories
|
||||
to be searched as if specified with \fB\-isystem\fR, but after any
|
||||
paths given with \fB\-isystem\fR options on the command line.
|
||||
.Sp
|
||||
In all these variables, an empty element instructs the compiler to
|
||||
search its current working directory. Empty elements can appear at the
|
||||
beginning or end of a path. For instance, if the value of
|
||||
\&\fB\s-1CPATH\s0\fR is \f(CW\*(C`:/special/include\*(C'\fR, that has the same
|
||||
effect as \fB\-I.\ \-I/special/include\fR.
|
||||
.IP "\fB\s-1DEPENDENCIES_OUTPUT\s0\fR" 4
|
||||
.IX Item "DEPENDENCIES_OUTPUT"
|
||||
If this variable is set, its value specifies how to output
|
||||
dependencies for Make based on the non-system header files processed
|
||||
by the compiler. System header files are ignored in the dependency
|
||||
output.
|
||||
.Sp
|
||||
The value of \fB\s-1DEPENDENCIES_OUTPUT\s0\fR can be just a file name, in
|
||||
which case the Make rules are written to that file, guessing the target
|
||||
name from the source file name. Or the value can have the form
|
||||
\&\fIfile\fR\fB \fR\fItarget\fR, in which case the rules are written to
|
||||
file \fIfile\fR using \fItarget\fR as the target name.
|
||||
.Sp
|
||||
In other words, this environment variable is equivalent to combining
|
||||
the options \fB\-MM\fR and \fB\-MF\fR,
|
||||
with an optional \fB\-MT\fR switch too.
|
||||
.IP "\fB\s-1SUNPRO_DEPENDENCIES\s0\fR" 4
|
||||
.IX Item "SUNPRO_DEPENDENCIES"
|
||||
This variable is the same as \fB\s-1DEPENDENCIES_OUTPUT\s0\fR (see above),
|
||||
except that system header files are not ignored, so it implies
|
||||
\&\fB\-M\fR rather than \fB\-MM\fR. However, the dependence on the
|
||||
main input file is omitted.
|
||||
.IP "\fB\s-1SOURCE_DATE_EPOCH\s0\fR" 4
|
||||
.IX Item "SOURCE_DATE_EPOCH"
|
||||
If this variable is set, its value specifies a \s-1UNIX\s0 timestamp to be
|
||||
used in replacement of the current date and time in the \f(CW\*(C`_\|_DATE_\|_\*(C'\fR
|
||||
and \f(CW\*(C`_\|_TIME_\|_\*(C'\fR macros, so that the embedded timestamps become
|
||||
reproducible.
|
||||
.Sp
|
||||
The value of \fB\s-1SOURCE_DATE_EPOCH\s0\fR must be a \s-1UNIX\s0 timestamp,
|
||||
defined as the number of seconds (excluding leap seconds) since
|
||||
01 Jan 1970 00:00:00 represented in \s-1ASCII\s0; identical to the output of
|
||||
\&\f(CW\*(C`date +%s\*(C'\fR on GNU/Linux and other systems that support the
|
||||
\&\f(CW%s\fR extension in the \f(CW\*(C`date\*(C'\fR command.
|
||||
.Sp
|
||||
The value should be a known timestamp such as the last modification
|
||||
time of the source or package and it should be set by the build
|
||||
process.
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
\&\fIgpl\fR\|(7), \fIgfdl\fR\|(7), \fIfsf\-funding\fR\|(7),
|
||||
\&\fIgcc\fR\|(1), and the Info entries for \fIcpp\fR and \fIgcc\fR.
|
||||
.SH "COPYRIGHT"
|
||||
.IX Header "COPYRIGHT"
|
||||
Copyright (c) 1987\-2022 Free Software Foundation, Inc.
|
||||
.PP
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation. A copy of
|
||||
the license is included in the
|
||||
man page \fIgfdl\fR\|(7).
|
||||
This manual contains no Invariant Sections. The Front-Cover Texts are
|
||||
(a) (see below), and the Back-Cover Texts are (b) (see below).
|
||||
.PP
|
||||
(a) The \s-1FSF\s0's Front-Cover Text is:
|
||||
.PP
|
||||
.Vb 1
|
||||
\& A GNU Manual
|
||||
.Ve
|
||||
.PP
|
||||
(b) The \s-1FSF\s0's Back-Cover Text is:
|
||||
.PP
|
||||
.Vb 3
|
||||
\& You have freedom to copy and modify this GNU Manual, like GNU
|
||||
\& software. Copies published by the Free Software Foundation raise
|
||||
\& funds for GNU development.
|
||||
.Ve
|
||||
0
share/man/man1/x86_64-linux-musl-dlltool.1
Normal file
0
share/man/man1/x86_64-linux-musl-dlltool.1
Normal file
0
share/man/man1/x86_64-linux-musl-elfedit.1
Normal file
0
share/man/man1/x86_64-linux-musl-elfedit.1
Normal file
1
share/man/man1/x86_64-linux-musl-g++.1
Normal file
1
share/man/man1/x86_64-linux-musl-g++.1
Normal file
@@ -0,0 +1 @@
|
||||
timestamp
|
||||
1
share/man/man1/x86_64-linux-musl-gcc.1
Normal file
1
share/man/man1/x86_64-linux-musl-gcc.1
Normal file
@@ -0,0 +1 @@
|
||||
timestamp
|
||||
214
share/man/man1/x86_64-linux-musl-gcov-dump.1
Normal file
214
share/man/man1/x86_64-linux-musl-gcov-dump.1
Normal file
@@ -0,0 +1,214 @@
|
||||
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
||||
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
||||
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
||||
.\" nothing in troff, for use with C<>.
|
||||
.tr \(*W-
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
. ds C`
|
||||
. ds C'
|
||||
'br\}
|
||||
.\"
|
||||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||||
.ie \n(.g .ds Aq \(aq
|
||||
.el .ds Aq '
|
||||
.\"
|
||||
.\" If the F register is >0, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.\"
|
||||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
.if !\nF .nr F 0
|
||||
.if \nF>0 \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
.\}
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "GCOV-DUMP 1"
|
||||
.TH GCOV-DUMP 1 "2022-08-19" "gcc-12.2.0" "GNU"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
.nh
|
||||
.SH "NAME"
|
||||
gcov\-dump \- offline gcda and gcno profile dump tool
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
gcov-dump [\fB\-v\fR|\fB\-\-version\fR]
|
||||
[\fB\-h\fR|\fB\-\-help\fR]
|
||||
[\fB\-l\fR|\fB\-\-long\fR]
|
||||
[\fB\-p\fR|\fB\-\-positions\fR]
|
||||
[\fB\-r\fR|\fB\-\-raw\fR]
|
||||
\fIgcovfiles\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBgcov-dump\fR is a tool you can use in conjunction with \s-1GCC\s0 to
|
||||
dump content of gcda and gcno profile files offline.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-h\fR" 4
|
||||
.IX Item "-h"
|
||||
.PD 0
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
.PD
|
||||
Display help about using \fBgcov-dump\fR (on the standard output), and
|
||||
exit without doing any further processing.
|
||||
.IP "\fB\-l\fR" 4
|
||||
.IX Item "-l"
|
||||
.PD 0
|
||||
.IP "\fB\-\-long\fR" 4
|
||||
.IX Item "--long"
|
||||
.PD
|
||||
Dump content of records.
|
||||
.IP "\fB\-p\fR" 4
|
||||
.IX Item "-p"
|
||||
.PD 0
|
||||
.IP "\fB\-\-positions\fR" 4
|
||||
.IX Item "--positions"
|
||||
.PD
|
||||
Dump positions of records.
|
||||
.IP "\fB\-r\fR" 4
|
||||
.IX Item "-r"
|
||||
.PD 0
|
||||
.IP "\fB\-\-raw\fR" 4
|
||||
.IX Item "--raw"
|
||||
.PD
|
||||
Print content records in raw format.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
.PD 0
|
||||
.IP "\fB\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
.PD
|
||||
Display the \fBgcov-dump\fR version number (on the standard output),
|
||||
and exit without doing any further processing.
|
||||
.SH "COPYRIGHT"
|
||||
.IX Header "COPYRIGHT"
|
||||
Copyright (c) 2017\-2022 Free Software Foundation, Inc.
|
||||
.PP
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with the
|
||||
Invariant Sections being \*(L"\s-1GNU\s0 General Public License\*(R" and \*(L"Funding
|
||||
Free Software\*(R", the Front-Cover texts being (a) (see below), and with
|
||||
the Back-Cover Texts being (b) (see below). A copy of the license is
|
||||
included in the \fIgfdl\fR\|(7) man page.
|
||||
.PP
|
||||
(a) The \s-1FSF\s0's Front-Cover Text is:
|
||||
.PP
|
||||
.Vb 1
|
||||
\& A GNU Manual
|
||||
.Ve
|
||||
.PP
|
||||
(b) The \s-1FSF\s0's Back-Cover Text is:
|
||||
.PP
|
||||
.Vb 3
|
||||
\& You have freedom to copy and modify this GNU Manual, like GNU
|
||||
\& software. Copies published by the Free Software Foundation raise
|
||||
\& funds for GNU development.
|
||||
.Ve
|
||||
369
share/man/man1/x86_64-linux-musl-gcov-tool.1
Normal file
369
share/man/man1/x86_64-linux-musl-gcov-tool.1
Normal file
@@ -0,0 +1,369 @@
|
||||
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
||||
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
||||
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
||||
.\" nothing in troff, for use with C<>.
|
||||
.tr \(*W-
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
. ds C`
|
||||
. ds C'
|
||||
'br\}
|
||||
.\"
|
||||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||||
.ie \n(.g .ds Aq \(aq
|
||||
.el .ds Aq '
|
||||
.\"
|
||||
.\" If the F register is >0, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.\"
|
||||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
.if !\nF .nr F 0
|
||||
.if \nF>0 \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
.\}
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "GCOV-TOOL 1"
|
||||
.TH GCOV-TOOL 1 "2022-08-19" "gcc-12.2.0" "GNU"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
.nh
|
||||
.SH "NAME"
|
||||
gcov\-tool \- offline gcda profile processing tool
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
gcov-tool [\fB\-v\fR|\fB\-\-version\fR] [\fB\-h\fR|\fB\-\-help\fR]
|
||||
.PP
|
||||
gcov-tool merge [merge\-options] \fIdirectory1\fR \fIdirectory2\fR
|
||||
[\fB\-o\fR|\fB\-\-output\fR \fIdirectory\fR]
|
||||
[\fB\-v\fR|\fB\-\-verbose\fR]
|
||||
[\fB\-w\fR|\fB\-\-weight\fR \fIw1,w2\fR]
|
||||
.PP
|
||||
gcov-tool rewrite [rewrite\-options] \fIdirectory\fR
|
||||
[\fB\-n\fR|\fB\-\-normalize\fR \fIlong_long_value\fR]
|
||||
[\fB\-o\fR|\fB\-\-output\fR \fIdirectory\fR]
|
||||
[\fB\-s\fR|\fB\-\-scale\fR \fIfloat_or_simple\-frac_value\fR]
|
||||
[\fB\-v\fR|\fB\-\-verbose\fR]
|
||||
.PP
|
||||
gcov-tool overlap [overlap\-options] \fIdirectory1\fR \fIdirectory2\fR
|
||||
[\fB\-f\fR|\fB\-\-function\fR]
|
||||
[\fB\-F\fR|\fB\-\-fullname\fR]
|
||||
[\fB\-h\fR|\fB\-\-hotonly\fR]
|
||||
[\fB\-o\fR|\fB\-\-object\fR]
|
||||
[\fB\-t\fR|\fB\-\-hot_threshold\fR] \fIfloat\fR
|
||||
[\fB\-v\fR|\fB\-\-verbose\fR]
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBgcov-tool\fR is an offline tool to process gcc's gcda profile files.
|
||||
.PP
|
||||
Current gcov-tool supports the following functionalities:
|
||||
.IP "*" 4
|
||||
merge two sets of profiles with weights.
|
||||
.IP "*" 4
|
||||
read one set of profile and rewrite profile contents. One can scale or
|
||||
normalize the count values.
|
||||
.PP
|
||||
Examples of the use cases for this tool are:
|
||||
.IP "*" 4
|
||||
Collect the profiles for different set of inputs, and use this tool to merge
|
||||
them. One can specify the weight to factor in the relative importance of
|
||||
each input.
|
||||
.IP "*" 4
|
||||
Rewrite the profile after removing a subset of the gcda files, while maintaining
|
||||
the consistency of the summary and the histogram.
|
||||
.IP "*" 4
|
||||
It can also be used to debug or libgcov code as the tools shares the majority
|
||||
code as the runtime library.
|
||||
.PP
|
||||
Note that for the merging operation, this profile generated offline may
|
||||
contain slight different values from the online merged profile. Here are
|
||||
a list of typical differences:
|
||||
.IP "*" 4
|
||||
histogram difference: This offline tool recomputes the histogram after merging
|
||||
the counters. The resulting histogram, therefore, is precise. The online
|
||||
merging does not have this capability \*(-- the histogram is merged from two
|
||||
histograms and the result is an approximation.
|
||||
.IP "*" 4
|
||||
summary checksum difference: Summary checksum uses a \s-1CRC32\s0 operation. The value
|
||||
depends on the link list order of gcov-info objects. This order is different in
|
||||
gcov-tool from that in the online merge. It's expected to have different
|
||||
summary checksums. It does not really matter as the compiler does not use this
|
||||
checksum anywhere.
|
||||
.IP "*" 4
|
||||
value profile counter values difference: Some counter values for value profile
|
||||
are runtime dependent, like heap addresses. It's normal to see some difference
|
||||
in these kind of counters.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-h\fR" 4
|
||||
.IX Item "-h"
|
||||
.PD 0
|
||||
.IP "\fB\-\-help\fR" 4
|
||||
.IX Item "--help"
|
||||
.PD
|
||||
Display help about using \fBgcov-tool\fR (on the standard output), and
|
||||
exit without doing any further processing.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
.PD 0
|
||||
.IP "\fB\-\-version\fR" 4
|
||||
.IX Item "--version"
|
||||
.PD
|
||||
Display the \fBgcov-tool\fR version number (on the standard output),
|
||||
and exit without doing any further processing.
|
||||
.IP "\fBmerge\fR" 4
|
||||
.IX Item "merge"
|
||||
Merge two profile directories.
|
||||
.RS 4
|
||||
.IP "\fB\-o\fR \fIdirectory\fR" 4
|
||||
.IX Item "-o directory"
|
||||
.PD 0
|
||||
.IP "\fB\-\-output\fR \fIdirectory\fR" 4
|
||||
.IX Item "--output directory"
|
||||
.PD
|
||||
Set the output profile directory. Default output directory name is
|
||||
\&\fImerged_profile\fR.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
.PD 0
|
||||
.IP "\fB\-\-verbose\fR" 4
|
||||
.IX Item "--verbose"
|
||||
.PD
|
||||
Set the verbose mode.
|
||||
.IP "\fB\-w\fR \fIw1\fR\fB,\fR\fIw2\fR" 4
|
||||
.IX Item "-w w1,w2"
|
||||
.PD 0
|
||||
.IP "\fB\-\-weight\fR \fIw1\fR\fB,\fR\fIw2\fR" 4
|
||||
.IX Item "--weight w1,w2"
|
||||
.PD
|
||||
Set the merge weights of the \fIdirectory1\fR and \fIdirectory2\fR,
|
||||
respectively. The default weights are 1 for both.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fBrewrite\fR" 4
|
||||
.IX Item "rewrite"
|
||||
Read the specified profile directory and rewrite to a new directory.
|
||||
.RS 4
|
||||
.IP "\fB\-n\fR \fIlong_long_value\fR" 4
|
||||
.IX Item "-n long_long_value"
|
||||
.PD 0
|
||||
.IP "\fB\-\-normalize <long_long_value>\fR" 4
|
||||
.IX Item "--normalize <long_long_value>"
|
||||
.PD
|
||||
Normalize the profile. The specified value is the max counter value
|
||||
in the new profile.
|
||||
.IP "\fB\-o\fR \fIdirectory\fR" 4
|
||||
.IX Item "-o directory"
|
||||
.PD 0
|
||||
.IP "\fB\-\-output\fR \fIdirectory\fR" 4
|
||||
.IX Item "--output directory"
|
||||
.PD
|
||||
Set the output profile directory. Default output name is \fIrewrite_profile\fR.
|
||||
.IP "\fB\-s\fR \fIfloat_or_simple\-frac_value\fR" 4
|
||||
.IX Item "-s float_or_simple-frac_value"
|
||||
.PD 0
|
||||
.IP "\fB\-\-scale\fR \fIfloat_or_simple\-frac_value\fR" 4
|
||||
.IX Item "--scale float_or_simple-frac_value"
|
||||
.PD
|
||||
Scale the profile counters. The specified value can be in floating point value,
|
||||
or simple fraction value form, such 1, 2, 2/3, and 5/3.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
.PD 0
|
||||
.IP "\fB\-\-verbose\fR" 4
|
||||
.IX Item "--verbose"
|
||||
.PD
|
||||
Set the verbose mode.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.IP "\fBoverlap\fR" 4
|
||||
.IX Item "overlap"
|
||||
Compute the overlap score between the two specified profile directories.
|
||||
The overlap score is computed based on the arc profiles. It is defined as
|
||||
the sum of min (p1_counter[i] / p1_sum_all, p2_counter[i] / p2_sum_all),
|
||||
for all arc counter i, where p1_counter[i] and p2_counter[i] are two
|
||||
matched counters and p1_sum_all and p2_sum_all are the sum of counter
|
||||
values in profile 1 and profile 2, respectively.
|
||||
.RS 4
|
||||
.IP "\fB\-f\fR" 4
|
||||
.IX Item "-f"
|
||||
.PD 0
|
||||
.IP "\fB\-\-function\fR" 4
|
||||
.IX Item "--function"
|
||||
.PD
|
||||
Print function level overlap score.
|
||||
.IP "\fB\-F\fR" 4
|
||||
.IX Item "-F"
|
||||
.PD 0
|
||||
.IP "\fB\-\-fullname\fR" 4
|
||||
.IX Item "--fullname"
|
||||
.PD
|
||||
Print full gcda filename.
|
||||
.IP "\fB\-h\fR" 4
|
||||
.IX Item "-h"
|
||||
.PD 0
|
||||
.IP "\fB\-\-hotonly\fR" 4
|
||||
.IX Item "--hotonly"
|
||||
.PD
|
||||
Only print info for hot objects/functions.
|
||||
.IP "\fB\-o\fR" 4
|
||||
.IX Item "-o"
|
||||
.PD 0
|
||||
.IP "\fB\-\-object\fR" 4
|
||||
.IX Item "--object"
|
||||
.PD
|
||||
Print object level overlap score.
|
||||
.IP "\fB\-t\fR \fIfloat\fR" 4
|
||||
.IX Item "-t float"
|
||||
.PD 0
|
||||
.IP "\fB\-\-hot_threshold <float>\fR" 4
|
||||
.IX Item "--hot_threshold <float>"
|
||||
.PD
|
||||
Set the threshold for hot counter value.
|
||||
.IP "\fB\-v\fR" 4
|
||||
.IX Item "-v"
|
||||
.PD 0
|
||||
.IP "\fB\-\-verbose\fR" 4
|
||||
.IX Item "--verbose"
|
||||
.PD
|
||||
Set the verbose mode.
|
||||
.RE
|
||||
.RS 4
|
||||
.RE
|
||||
.SH "SEE ALSO"
|
||||
.IX Header "SEE ALSO"
|
||||
\&\fIgpl\fR\|(7), \fIgfdl\fR\|(7), \fIfsf\-funding\fR\|(7), \fIgcc\fR\|(1), \fIgcov\fR\|(1) and the Info entry for
|
||||
\&\fIgcc\fR.
|
||||
.SH "COPYRIGHT"
|
||||
.IX Header "COPYRIGHT"
|
||||
Copyright (c) 2014\-2022 Free Software Foundation, Inc.
|
||||
.PP
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with the
|
||||
Invariant Sections being \*(L"\s-1GNU\s0 General Public License\*(R" and \*(L"Funding
|
||||
Free Software\*(R", the Front-Cover texts being (a) (see below), and with
|
||||
the Back-Cover Texts being (b) (see below). A copy of the license is
|
||||
included in the \fIgfdl\fR\|(7) man page.
|
||||
.PP
|
||||
(a) The \s-1FSF\s0's Front-Cover Text is:
|
||||
.PP
|
||||
.Vb 1
|
||||
\& A GNU Manual
|
||||
.Ve
|
||||
.PP
|
||||
(b) The \s-1FSF\s0's Back-Cover Text is:
|
||||
.PP
|
||||
.Vb 3
|
||||
\& You have freedom to copy and modify this GNU Manual, like GNU
|
||||
\& software. Copies published by the Free Software Foundation raise
|
||||
\& funds for GNU development.
|
||||
.Ve
|
||||
1041
share/man/man1/x86_64-linux-musl-gcov.1
Normal file
1041
share/man/man1/x86_64-linux-musl-gcov.1
Normal file
File diff suppressed because it is too large
Load Diff
3452
share/man/man1/x86_64-linux-musl-ld.1
Normal file
3452
share/man/man1/x86_64-linux-musl-ld.1
Normal file
File diff suppressed because it is too large
Load Diff
235
share/man/man1/x86_64-linux-musl-lto-dump.1
Normal file
235
share/man/man1/x86_64-linux-musl-lto-dump.1
Normal file
@@ -0,0 +1,235 @@
|
||||
.\" Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
.de Sp \" Vertical space (when we can't use .PP)
|
||||
.if t .sp .5v
|
||||
.if n .sp
|
||||
..
|
||||
.de Vb \" Begin verbatim text
|
||||
.ft CW
|
||||
.nf
|
||||
.ne \\$1
|
||||
..
|
||||
.de Ve \" End verbatim text
|
||||
.ft R
|
||||
.fi
|
||||
..
|
||||
.\" Set up some character translations and predefined strings. \*(-- will
|
||||
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
|
||||
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
|
||||
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
|
||||
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
|
||||
.\" nothing in troff, for use with C<>.
|
||||
.tr \(*W-
|
||||
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
|
||||
.ie n \{\
|
||||
. ds -- \(*W-
|
||||
. ds PI pi
|
||||
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
|
||||
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
|
||||
. ds L" ""
|
||||
. ds R" ""
|
||||
. ds C` ""
|
||||
. ds C' ""
|
||||
'br\}
|
||||
.el\{\
|
||||
. ds -- \|\(em\|
|
||||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
. ds C`
|
||||
. ds C'
|
||||
'br\}
|
||||
.\"
|
||||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||||
.ie \n(.g .ds Aq \(aq
|
||||
.el .ds Aq '
|
||||
.\"
|
||||
.\" If the F register is >0, we'll generate index entries on stderr for
|
||||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.\"
|
||||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
.if !\nF .nr F 0
|
||||
.if \nF>0 \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{\
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
.\}
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
. \" fudge factors for nroff and troff
|
||||
.if n \{\
|
||||
. ds #H 0
|
||||
. ds #V .8m
|
||||
. ds #F .3m
|
||||
. ds #[ \f1
|
||||
. ds #] \fP
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
|
||||
. ds #V .6m
|
||||
. ds #F 0
|
||||
. ds #[ \&
|
||||
. ds #] \&
|
||||
.\}
|
||||
. \" simple accents for nroff and troff
|
||||
.if n \{\
|
||||
. ds ' \&
|
||||
. ds ` \&
|
||||
. ds ^ \&
|
||||
. ds , \&
|
||||
. ds ~ ~
|
||||
. ds /
|
||||
.\}
|
||||
.if t \{\
|
||||
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
|
||||
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
|
||||
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
|
||||
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
|
||||
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
|
||||
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
|
||||
.\}
|
||||
. \" troff and (daisy-wheel) nroff accents
|
||||
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
|
||||
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
|
||||
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
|
||||
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
|
||||
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
|
||||
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
|
||||
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
|
||||
.ds ae a\h'-(\w'a'u*4/10)'e
|
||||
.ds Ae A\h'-(\w'A'u*4/10)'E
|
||||
. \" corrections for vroff
|
||||
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
|
||||
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
|
||||
. \" for low resolution devices (crt and lpr)
|
||||
.if \n(.H>23 .if \n(.V>19 \
|
||||
\{\
|
||||
. ds : e
|
||||
. ds 8 ss
|
||||
. ds o a
|
||||
. ds d- d\h'-1'\(ga
|
||||
. ds D- D\h'-1'\(hy
|
||||
. ds th \o'bp'
|
||||
. ds Th \o'LP'
|
||||
. ds ae ae
|
||||
. ds Ae AE
|
||||
.\}
|
||||
.rm #[ #] #H #V #F C
|
||||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "LTO-DUMP 1"
|
||||
.TH LTO-DUMP 1 "2022-08-19" "gcc-12.2.0" "GNU"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
.nh
|
||||
.SH "NAME"
|
||||
lto\-dump \- Tool for dumping LTO object files
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
lto-dump [\fB\-list\fR]
|
||||
[\fB\-demangle\fR]
|
||||
[\fB\-defined\-only\fR]
|
||||
[\fB\-print\-value\fR]
|
||||
[\fB\-name\-sort\fR]
|
||||
[\fB\-size\-sort\fR]
|
||||
[\fB\-reverse\-sort\fR]
|
||||
[\fB\-no\-sort\fR]
|
||||
[\fB\-symbol=\fR]
|
||||
[\fB\-objects\fR]
|
||||
[\fB\-type\-stats\fR]
|
||||
[\fB\-tree\-stats\fR]
|
||||
[\fB\-gimple\-stats\fR]
|
||||
[\fB\-dump\-level=\fR]
|
||||
[\fB\-dump\-body=\fR]
|
||||
[\fB\-help\fR] \fIlto-dump\fR
|
||||
.SH "DESCRIPTION"
|
||||
.IX Header "DESCRIPTION"
|
||||
\&\fBlto-dump\fR is a tool you can use in conjunction with \s-1GCC\s0 to
|
||||
dump link time optimization object files.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
.IP "\fB\-list\fR" 4
|
||||
.IX Item "-list"
|
||||
Dumps list of details of functions and variables.
|
||||
.IP "\fB\-demangle\fR" 4
|
||||
.IX Item "-demangle"
|
||||
Dump the demangled output.
|
||||
.IP "\fB\-defined\-only\fR" 4
|
||||
.IX Item "-defined-only"
|
||||
Dump only the defined symbols.
|
||||
.IP "\fB\-print\-value\fR" 4
|
||||
.IX Item "-print-value"
|
||||
Dump initial values of the variables.
|
||||
.IP "\fB\-name\-sort\fR" 4
|
||||
.IX Item "-name-sort"
|
||||
Sort the symbols alphabetically.
|
||||
.IP "\fB\-size\-sort\fR" 4
|
||||
.IX Item "-size-sort"
|
||||
Sort the symbols according to size.
|
||||
.IP "\fB\-reverse\-sort\fR" 4
|
||||
.IX Item "-reverse-sort"
|
||||
Dump the symbols in reverse order.
|
||||
.IP "\fB\-no\-sort\fR" 4
|
||||
.IX Item "-no-sort"
|
||||
Dump the symbols in order of occurrence.
|
||||
.IP "\fB\-symbol=\fR" 4
|
||||
.IX Item "-symbol="
|
||||
Dump the details of specific symbol.
|
||||
.IP "\fB\-objects\fR" 4
|
||||
.IX Item "-objects"
|
||||
Dump the details of \s-1LTO\s0 objects.
|
||||
.IP "\fB\-type\-stats\fR" 4
|
||||
.IX Item "-type-stats"
|
||||
Dump the statistics of tree types.
|
||||
.IP "\fB\-tree\-stats\fR" 4
|
||||
.IX Item "-tree-stats"
|
||||
Dump the statistics of trees.
|
||||
.IP "\fB\-gimple\-stats\fR" 4
|
||||
.IX Item "-gimple-stats"
|
||||
Dump the statistics of gimple statements.
|
||||
.IP "\fB\-dump\-level=\fR" 4
|
||||
.IX Item "-dump-level="
|
||||
For deciding the optimization level of body.
|
||||
.IP "\fB\-dump\-body=\fR" 4
|
||||
.IX Item "-dump-body="
|
||||
Dump the specific gimple body.
|
||||
.IP "\fB\-help\fR" 4
|
||||
.IX Item "-help"
|
||||
Display the dump tool help.
|
||||
.SH "COPYRIGHT"
|
||||
.IX Header "COPYRIGHT"
|
||||
Copyright (c) 2017\-2022 Free Software Foundation, Inc.
|
||||
.PP
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the \s-1GNU\s0 Free Documentation License, Version 1.3 or
|
||||
any later version published by the Free Software Foundation; with the
|
||||
Invariant Sections being \*(L"\s-1GNU\s0 General Public License\*(R" and \*(L"Funding
|
||||
Free Software\*(R", the Front-Cover texts being (a) (see below), and with
|
||||
the Back-Cover Texts being (b) (see below). A copy of the license is
|
||||
included in the \fIgfdl\fR\|(7) man page.
|
||||
.PP
|
||||
(a) The \s-1FSF\s0's Front-Cover Text is:
|
||||
.PP
|
||||
.Vb 1
|
||||
\& A GNU Manual
|
||||
.Ve
|
||||
.PP
|
||||
(b) The \s-1FSF\s0's Back-Cover Text is:
|
||||
.PP
|
||||
.Vb 3
|
||||
\& You have freedom to copy and modify this GNU Manual, like GNU
|
||||
\& software. Copies published by the Free Software Foundation raise
|
||||
\& funds for GNU development.
|
||||
.Ve
|
||||
0
share/man/man1/x86_64-linux-musl-nm.1
Normal file
0
share/man/man1/x86_64-linux-musl-nm.1
Normal file
0
share/man/man1/x86_64-linux-musl-objcopy.1
Normal file
0
share/man/man1/x86_64-linux-musl-objcopy.1
Normal file
0
share/man/man1/x86_64-linux-musl-objdump.1
Normal file
0
share/man/man1/x86_64-linux-musl-objdump.1
Normal file
0
share/man/man1/x86_64-linux-musl-ranlib.1
Normal file
0
share/man/man1/x86_64-linux-musl-ranlib.1
Normal file
0
share/man/man1/x86_64-linux-musl-readelf.1
Normal file
0
share/man/man1/x86_64-linux-musl-readelf.1
Normal file
0
share/man/man1/x86_64-linux-musl-size.1
Normal file
0
share/man/man1/x86_64-linux-musl-size.1
Normal file
0
share/man/man1/x86_64-linux-musl-strings.1
Normal file
0
share/man/man1/x86_64-linux-musl-strings.1
Normal file
0
share/man/man1/x86_64-linux-musl-strip.1
Normal file
0
share/man/man1/x86_64-linux-musl-strip.1
Normal file
0
share/man/man1/x86_64-linux-musl-windmc.1
Normal file
0
share/man/man1/x86_64-linux-musl-windmc.1
Normal file
0
share/man/man1/x86_64-linux-musl-windres.1
Normal file
0
share/man/man1/x86_64-linux-musl-windres.1
Normal file
Reference in New Issue
Block a user