Print this page
6282 ONBLD man pages not pbchk clean
Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com>
Reviewed by: Josef Sipek <jeffpc@josefsipek.net>
@@ -17,19 +17,17 @@
.\" fields enclosed by brackets "[]" replaced with your own identifying
.\" information: Portions Copyright [yyyy] [name of copyright owner]
.\"
.\" CDDL HEADER END
.\"
-.TH check_rtime 1ONBLD "09 March 2010"
+.TH CHECK_RTIME 1ONBLD "Mar 09, 2010"
.SH NAME
.I check_rtime
\- check ELF runtime attributes
.SH SYNOPSIS
\fBcheck_rtime [-imosv] [-D depfile | -d depdir] [-E errfile] [-e exfile] [-f listfile] [-I infofile] [-w outdir] file | dir, ...\fP
-.LP
.SH DESCRIPTION
-.IX "OS-Net build tools" "check_rtime" "" "\fBcheck_rtime\fP"
.LP
.I check_rtime
attempts to check a number of ELF runtime attributes
for consistency with common build rules.
These checks involve running \fBldd(1)\fP and
@@ -242,11 +240,13 @@
Applications without this definition are displayed as:
.sp
.RS 6
foo: application requires non-executable stack \\
.br
+.nf
<no -Mmapfile_noexstk?>
+.fi
.RE
.sp
.TP
\(bu
x86 applications should have a non-executable data segment defined to make
@@ -257,11 +257,13 @@
Applications without this definition are displayed as:
.sp
.RS 6
foo: application requires non-executable data \\
.br
+.nf
<no -Mmapfile_noexdata?>
+.fi
.RE
.sp
.TP
\(bu
Solaris ELF files contain symbol sort sections used by DTrace to
@@ -305,11 +307,13 @@
do not contain direct binding information are displayed as:
.sp
.RS 6
foo: object has no direct bindings \\
.br
+.nf
<no -B direct or -z direct?>
+.fi
.RE
.sp
.LP
.I check_rtime also
@@ -360,13 +364,11 @@
Each symbol defined by the object is shown along with the version it belongs to.
Changes to the symbols defined by an object, or the versions they belong to,
do not necessarily indicate an error condition, but
provides information that is often useful for gatekeepers to track
changes in a release.
-.RE
.sp
-.LP
.SH OPTIONS
.LP
The following options are supported:
.TP 4
.B \-D depfile
@@ -420,11 +422,10 @@
Provide version definition information. Each symbol defined by the object
is printed along with the version it is assigned to.
.TP
.B -w outdir
Interpret the paths of all input and output files relative to \fIoutdir\fP.
-.LP
.SH EXCEPTION FILE FORMAT
Exceptions to the rules enforced by
.I check_rtime
are specified using an exception file. The \fB-e\fP option is used to
specify an explicit exception file. Otherwise, if used in an activated
@@ -434,11 +435,11 @@
$CODEMGR_WS/exception_list/check_rtime does not exist,
.I check_rtime
will use
.I /opt/onbld/etc/exception_list/check_rtime
as a fallback default exception file.
-.p
+.P
To run
.I check_rtime
without applying exceptions, specify \fB-e\fP with a value of /dev/null.
.P
A '#' character at the beginning of a line, or at any point in
@@ -474,183 +475,154 @@
The exceptions understood by
.I check_rtime
are:
.sp
.ne 2
-.mk
.na
\fBEXEC_DATA\fR
.ad
.RS 17n
-.rt
.sp
Executables that are not required to have non-executable writable
data segments
.RE
.sp
.ne 2
-.mk
.na
\fBEXEC_STACK\fR
.ad
.RS 17n
-.rt
.sp
Executables that are not required to have a non-executable stack
.RE
.sp
.ne 2
-.mk
.na
\fBNOCRLEALT\fR
.ad
.RS 17n
-.rt
.sp
Objects that should be skipped when building the alternative dependency
mapping via the \fB-d\fP option.
.RE
.sp
.ne 2
-.mk
.na
\fBNODIRECT\fR
.ad
.RS 17n
-.rt
.sp
Directories and files that are allowed to have no direct bound symbols.
.RE
.sp
.ne 2
-.mk
.na
\fBNOSYMSORT\fR
.ad
.RS 17n
-.rt
.sp
Files for which we skip checking of duplicate addresses in the
symbol sort sections.
.RE
.sp
.ne 2
-.mk
.na
\fBOLDDEP\fR
.ad
.RS 17n
-.rt
.sp
Objects that used to contain system functionality that has since
migrated to libc. We preserve these libraries as pure filters for
backward compatibility but nothing needs to link to them.
.RE
.sp
.ne 2
-.mk
.na
\fBSKIP\fR
.ad
.RS 17n
-.rt
.sp
Directories and/or individual objects to skip. Note that SKIP should be
a last resort, used only when one of the other exceptions will not suffice.
.RE
.sp
.ne 2
-.mk
.na
\fBSTAB\fR
.ad
.RS 17n
-.rt
.sp
Objects that are allowed to contain debugging information (stabs).
.RE
.sp
.ne 2
-.mk
.na
\fBTEXTREL\fR
.ad
.RS 17n
-.rt
.sp
Objects for which we allow relocations to the text segment.
.RE
.sp
.ne 2
-.mk
.na
\fBUNDEF_OBJ\fR
.ad
.RS 17n
-.rt
.sp
Objects that are allowed to be unreferenced.
.RE
.sp
.ne 2
-.mk
.na
\fBUNDEF_REF\fR
.ad
.RS 17n
-.rt
.sp
Objects that are allowed undefined references.
.RE
.sp
.ne 2
-.mk
.na
\fBUNUSED_DEPS\fR
.ad
.RS 17n
-.rt
.sp
Objects that are allowed to have unused dependencies.
.RE
.sp
.ne 2
-.mk
.na
\fBUNUSED_OBJ\fR
.ad
.RS 17n
-.rt
.sp
Objects that are always allowed to be unused dependencies.
.RE
.sp
.ne 2
-.mk
.na
\fBUNUSED_RPATH\fR
.ad
.RS 17n
-.rt
.sp
Objects that are allowed to have unused runpath directories.
.RE
-.LP
.SH ALTERNATIVE DEPENDENCY MAPPING
.I check_rtime
was primarily designed to process a nightly builds \fB$ROOT\fP
hierarchy. It is often the case that objects within this hierarchy
must bind to dependencies within the same hierarchy to satisfy
@@ -672,11 +644,10 @@
object under \fBldd(1)\fP will bind to the dependencies defined as
alternatives. Simply put, an object inspected in the \fIproto\fP
area will bind to its dependencies found in the \fIproto\fP area.
Dependencies that have no alternative mapping will continue to
bind to the underlying system.
-.LP
.SH ENVIRONMENT VARIABLES
.LP
When the \fB-D\fP or \fB-d\fP option isn't in use,
.I check_rtime
uses the following environment variables to
@@ -699,11 +670,10 @@
If \fBldd(1)\fP supports the \fB-U\fP option, it will be used to determine
any unreferenced dependencies. Otherwise \fBldd(1)\fP uses the older
\fB-u\fP option which only detects unused references. If the following
environment variable exists, and indicates an earlier release than \fB5.10\fP
then \fBldd(1)\fP also falls back to using the \fB-u\fP option.
-.RE
.LP
.B RELEASE
.RS 4
The release version number of the environment being built.
.RE
@@ -717,11 +687,10 @@
can not be fully inspected. These objects are displayed as:
.sp
.RS 4
foo: has wrong class or data encoding
.RE
-.LP
.SH FILES
.LP
.RS 5
$CODEMGR_WS/exception_list/check_rtime
/opt/onbld/etc/exception_list/check_rtime