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>

Split Close
Expand all
Collapse all
          --- old/usr/src/tools/scripts/find_elf.1onbld
          +++ new/usr/src/tools/scripts/find_elf.1onbld
↓ open down ↓ 11 lines elided ↑ open up ↑
  12   12  .\" and limitations under the License.
  13   13  .\"
  14   14  .\" When distributing Covered Code, include this CDDL HEADER in each
  15   15  .\" file and include the License file at usr/src/OPENSOLARIS.LICENSE.
  16   16  .\" If applicable, add the following below this CDDL HEADER, with the
  17   17  .\" fields enclosed by brackets "[]" replaced with your own identifying
  18   18  .\" information: Portions Copyright [yyyy] [name of copyright owner]
  19   19  .\"
  20   20  .\" CDDL HEADER END
  21   21  .\"
  22      -.TH find_elf 1ONBLD "25 March 2010"
       22 +.TH FIND_ELF 1ONBLD "Mar 25, 2010"
  23   23  .SH NAME
  24   24  find_elf \- Locate ELF shared objects and executables
  25   25  .SH SYNOPSIS
  26   26  \fBfind_elf [-afrs] path\fP
  27      -.LP
  28   27  .SH DESCRIPTION
  29      -.IX "OS-Net build tools" "find_elf" "" "\fBfind_elf\fP"
  30   28  The
  31   29  .I find_elf
  32   30  command descends a directory hierarchy and produces one line
  33   31  of output on stdout for each ELF executable or shared object found.
  34      -.LP
  35   32  .SH OPTIONS
  36   33  .LP
  37   34  The following options are supported:
  38   35  .TP 4
  39   36  .B \-a
  40   37  Disable alias processing. Symbolic links are treated as independent
  41   38  files, each such link results in a separate OBJECT output line,
  42   39  and ALIAS lines are not issued.
  43   40  .TP 4
  44   41  .B \-f
↓ open down ↓ 4 lines elided ↑ open up ↑
  49   46  shared objects must end with a .so extension. Files that do not
  50   47  meet these requirements are silently eliminated from consideration without
  51   48  further analysis.
  52   49  .TP 4
  53   50  .B \-r
  54   51  Report file names as relative paths, relative to the given file or directory,
  55   52  instead of fully qualified.
  56   53  .TP 4
  57   54  .B \-s
  58   55  Only report shared objects.
  59      -.LP
  60   56  .SH OUTPUT
  61   57  .LP
  62   58  .I find_elf
  63   59  produces a series of PREFIX, OBJECT, and ALIAS lines, which collectively
  64   60  describe the ELF objects located. Whitespace is used within each
  65   61  line to delimit the various fields of information provided.
  66   62  .P
  67   63  If the \fB-r\fP option is used to specify that file names be reported
  68   64  as relative paths, a PREFIX line is output to provide the base path from
  69   65  which the relative names should be interpreted.
↓ open down ↓ 8 lines elided ↑ open up ↑
  78   74  .sp
  79   75  For each object found, an OBJECT line is produced to describe it:
  80   76  .sp
  81   77  .in +4
  82   78  .nf
  83   79  OBJECT [32 | 64] [DYN | EXEC] [VERDEF | NOVERDEF] object-path
  84   80  .fi
  85   81  .in -4
  86   82  .sp
  87   83  The first field provides the ELF class of the object, and will be
  88      -either 32 or 64. 
       84 +either 32 or 64.
  89   85  The second field provides the type of object, either
  90   86  a shared object (DYN) or executable (EXEC).
  91   87  The third field will be VERDEF if the object contains ELF
  92   88  version definitions, and NOVERDEF if the object is not versioned.
  93   89  The final field gives the path to the object.
  94   90  .P
  95   91  Under Unix, a file can have multiple names. In the context of ELF
  96   92  objects, this often happens for one of two reasons:
  97   93  .RS +4
  98   94  .TP
  99   95  .ie t \(bu
 100   96  .el o
 101   97  Compilation symlinks, used to provide a non-versioned name for a shared object.
 102   98  .RE
 103   99  .RS +4
 104  100  .TP
 105  101  .ie t \(bu
 106      -.el o 
      102 +.el o
 107  103  Symlinks such as '32' and '64' used to provide alternative
 108  104  non-machine specific paths to objects.
 109  105  .RE
 110  106  .sp
 111  107  When
 112  108  .I find_elf
 113  109  identifies an object via such an aliased name, it issues an ALIAS line
 114  110  mapping it to the main name for the object:
 115  111  .sp
 116  112  .in +4
 117  113  .nf
 118  114  ALIAS object-path alias-path
 119  115  .fi
 120  116  .in -4
 121  117  .sp
 122  118  The \fB-a\fP option alters the handling of aliased names. When \fB-a\fP is
 123  119  specified, each file results in a separate OBJECT line, as if they were
 124  120  independent files rather than the same file with different names.
 125  121  .sp
 126      -.PP
 127  122  .SH EXAMPLES
 128  123  Assume the following hierarchy of files exist under /usr/lib/foo:
 129  124  .sp
 130  125  .in +4
 131  126  .nf
 132  127  % /bin/ls -alRF /usr/lib/foo
 133  128  /usr/lib/foo:
 134  129  total 111
 135  130  drwxr-xr-x  3 root root    7 Jul 16 17:35 ./
 136  131  drwxr-xr-x 34 root root   42 Jul 16 17:34 ../
↓ open down ↓ 7 lines elided ↑ open up ↑
 144  139  total 150
 145  140  drwxr-xr-x  2 root root   4 Jul 16 17:35 ./
 146  141  drwxr-xr-x  3 root root   7 Jul 16 17:35 ../
 147  142  lrwxrwxrwx  1 root bin    11 Jul 16 17:35 libfoo.so -> libfoo.so.1*
 148  143  -rwxr-xr-x  1 root bin 72536 Jul 16 17:35 libfoo.so.1*
 149  144  .fi
 150  145  .in -4
 151  146  .sp
 152  147  This hierarchy contains compilation symlinks (libfoo.so) and
 153  148  path alias symlinks (32, 64), as discussed in OUTPUT.
 154      -.p
      149 +.P
 155  150  .I find_elf
 156  151  produces the following output for the above hierarchy:
 157  152  .sp
 158  153  .in +4
 159  154  .nf
 160  155  % find_elf -r /usr/lib/foo
 161  156  PREFIX /usr/lib/foo
 162  157  OBJECT 64 DYN  VERDEF  amd64/libfoo.so.1
 163  158  ALIAS                  amd64/libfoo.so.1  64/libfoo.so
 164  159  ALIAS                  amd64/libfoo.so.1  64/libfoo.so.1
↓ open down ↓ 49 lines elided ↑ open up ↑
 214  209  .RS
 215  210  .nf
 216  211  .SH SEE ALSO
 217  212  .BR check_rtime (1ONBLD),
 218  213  .BR interface_check (1ONBLD),
 219  214  .BR interface_cmp (1ONBLD),
 220  215  .BR ld (1),
 221  216  .BR ldd (1),
 222  217  .BR elfdump (1),
 223  218  .BR pvs (1).
 224      -.LP
 225      -.TZ LLM
      219 +
    
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX