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>
   1 interface_cmp(1ONBLD)         illumos Build Tools        interface_cmp(1ONBLD)
   2 
   3 
   4 
   5 NAME
   6        interface_cmp - compare shared object interface descriptions
   7 
   8 SYNOPSIS
   9        interface_cmp [-dot] [-e exfile] old new
  10 
  11 DESCRIPTION
  12        The interface_cmp command compares the interface definition files for
  13        two workspaces and reports versioning inconsistencies. Interface
  14        definition files are created by interface_check.
  15 
  16        interface_cmp is typically called from nightly(1ONBLD) when the -A
  17        option is in effect following the creation of a new database by
  18        interface_check.  To insure symbolic interface consistency between
  19        successive software releases, existing version definitions and their
  20        symbol association should remain intact.  Any discrepancies between the
  21        two interface definitions are flagged as errors.


  57            See EXCEPTION FILE FORMAT.
  58 
  59        -o  Produce one-liner output, with each line of diagnostic output
  60            prefixed with the object pathname.
  61 
  62        -t  If the -t option is present, only one argument is allowed.  The
  63            interface description file is parsed, and then regenerated on
  64            stdout in the same format used by the interface_check -I option.
  65            The -I output from interface_check and the output from
  66            interface_cmp -t should be identical, excluding header comments.
  67            This is a debugging feature, and not intended for general use.
  68 
  69 EXCEPTION FILE FORMAT
  70        Exceptions to the rules enforced by interface_cmp are specified using
  71        an exception file. The -e option is used to specify an explicit
  72        exception file. Otherwise, if used in an activated workspace, the
  73        default exception file is $CODEMGR_WS/exception_list/interface_cmp if
  74        that file exists. If not used in an activated workspace, or if
  75        $CODEMGR_WS/exception_list/interface_cmp does not exist, interface_cmp
  76        will use /opt/onbld/etc/exception_list/interface_cmp as a fallback
  77        default exception file.  To run interface_cmp without applying
  78        exceptions, specify -e with a value of /dev/null.
  79 



  80        A '#' character at the beginning of a line, or at any point in a line
  81        when preceded by whitespace, introduces a comment. Empty lines, and
  82        lines containing only comments, are ignored by interface_cmp.
  83        Exceptions are specified as space separated keyword, and perl(1)
  84        regular expressions. The number of regular expressions depends on the
  85        particular exception in questions:
  86 
  87            keyword  perl-regex...
  88 
  89        Since whitespace is used as a separator, the regular expression cannot
  90        itself contain whitespace. Use of the \s character class to represent
  91        whitespace within the regular expression is recommended.  Before the
  92        perl regular expression is used, constructs of the form MACH(dir) are
  93        expanded into a regular expression that matches the directory given, as
  94        well as any 64-bit architecture subdirectory that might be present
  95        (i.e. amd64, sparcv9). For instance, MACH(lib) will match any of the
  96        following:
  97 
  98            lib
  99            lib/amd64


 137 EXAMPLES
 138        The following example uses interface_cmp to compare this releases
 139        interface definition with a previous builds results:
 140 
 141               % interface_cmp -d -o $SRC/ELF-data.$MACH.ref/interfaces \
 142                      $SRC/ELF-data.$MACH/interfaces
 143               lib/libadm.so.1: SUNW_1.1: added interface: circf(4)
 144               lib/libaio.so.1: SUNW_1.1: deleted interface: _aiocancel
 145 
 146 
 147        Note: the above comparison files were doctored in order to provide the
 148        example, they do not indicate any real changes that have occurred in
 149        the associated system libraries.
 150 
 151 SEE ALSO
 152        find_elf(1ONBLD), interface_check(1ONBLD), ld(1), ldd(1), elfdump(1),
 153        pvs(1).
 154 
 155 
 156 
 157                                  25 March 2010           interface_cmp(1ONBLD)
   1 INTERFACE_CMP(1ONBLD)         illumos Build Tools        INTERFACE_CMP(1ONBLD)
   2 
   3 
   4 
   5 NAME
   6        interface_cmp - compare shared object interface descriptions
   7 
   8 SYNOPSIS
   9        interface_cmp [-dot] [-e exfile] old new
  10 
  11 DESCRIPTION
  12        The interface_cmp command compares the interface definition files for
  13        two workspaces and reports versioning inconsistencies. Interface
  14        definition files are created by interface_check.
  15 
  16        interface_cmp is typically called from nightly(1ONBLD) when the -A
  17        option is in effect following the creation of a new database by
  18        interface_check.  To insure symbolic interface consistency between
  19        successive software releases, existing version definitions and their
  20        symbol association should remain intact.  Any discrepancies between the
  21        two interface definitions are flagged as errors.


  57            See EXCEPTION FILE FORMAT.
  58 
  59        -o  Produce one-liner output, with each line of diagnostic output
  60            prefixed with the object pathname.
  61 
  62        -t  If the -t option is present, only one argument is allowed.  The
  63            interface description file is parsed, and then regenerated on
  64            stdout in the same format used by the interface_check -I option.
  65            The -I output from interface_check and the output from
  66            interface_cmp -t should be identical, excluding header comments.
  67            This is a debugging feature, and not intended for general use.
  68 
  69 EXCEPTION FILE FORMAT
  70        Exceptions to the rules enforced by interface_cmp are specified using
  71        an exception file. The -e option is used to specify an explicit
  72        exception file. Otherwise, if used in an activated workspace, the
  73        default exception file is $CODEMGR_WS/exception_list/interface_cmp if
  74        that file exists. If not used in an activated workspace, or if
  75        $CODEMGR_WS/exception_list/interface_cmp does not exist, interface_cmp
  76        will use /opt/onbld/etc/exception_list/interface_cmp as a fallback
  77        default exception file.

  78 
  79        To run interface_cmp without applying exceptions, specify -e with a
  80        value of /dev/null.
  81 
  82        A '#' character at the beginning of a line, or at any point in a line
  83        when preceded by whitespace, introduces a comment. Empty lines, and
  84        lines containing only comments, are ignored by interface_cmp.
  85        Exceptions are specified as space separated keyword, and perl(1)
  86        regular expressions. The number of regular expressions depends on the
  87        particular exception in questions:
  88 
  89            keyword  perl-regex...
  90 
  91        Since whitespace is used as a separator, the regular expression cannot
  92        itself contain whitespace. Use of the \s character class to represent
  93        whitespace within the regular expression is recommended.  Before the
  94        perl regular expression is used, constructs of the form MACH(dir) are
  95        expanded into a regular expression that matches the directory given, as
  96        well as any 64-bit architecture subdirectory that might be present
  97        (i.e. amd64, sparcv9). For instance, MACH(lib) will match any of the
  98        following:
  99 
 100            lib
 101            lib/amd64


 139 EXAMPLES
 140        The following example uses interface_cmp to compare this releases
 141        interface definition with a previous builds results:
 142 
 143               % interface_cmp -d -o $SRC/ELF-data.$MACH.ref/interfaces \
 144                      $SRC/ELF-data.$MACH/interfaces
 145               lib/libadm.so.1: SUNW_1.1: added interface: circf(4)
 146               lib/libaio.so.1: SUNW_1.1: deleted interface: _aiocancel
 147 
 148 
 149        Note: the above comparison files were doctored in order to provide the
 150        example, they do not indicate any real changes that have occurred in
 151        the associated system libraries.
 152 
 153 SEE ALSO
 154        find_elf(1ONBLD), interface_check(1ONBLD), ld(1), ldd(1), elfdump(1),
 155        pvs(1).
 156 
 157 
 158 
 159                                 March 25, 2010           INTERFACE_CMP(1ONBLD)