ABIinfo(3C)

ABIinfo - query system environment for features

As shipped in IRIX 6.5.19. Unchanged since IRIX 6.5.

NAME
     ABIinfo - query system environment for features

SYNOPSIS
     #include <ABIinfo.h>
     int ABIinfo(int selector);

DESCRIPTION
     ABIinfo queries whether a particular MIPS ABI feature indicated by
     selector is available on the target system, and if so, which version. A
     return value of -1 indicates that the feature represented by the selector
     is not present. A valid return value indicates that the feature is
     present, and the value indicates the version of MIPS Processor ABI
     Conformance Guide in which that version of the feature is documented. The
     return values and their meanings are listed in the ABIinfo selector table
     (see ABIinfo Selector Table below).

     This interface allows a feature which will appear in a future Conformance
     Guide to be supported by the host operating system prior to that system
     becoming conformant with that Conformance Guide . It also allows
     applications to determine whether features which are documented in the
     Conformance Guide , but are not mandatory features, are implemented on a
     particular host operating system.

     This interface also allows, via the ABIinfo_BlackBook selector, querying
     which version of the Conformance Guide this system conforms to.

       SELECTOR            FEATURE DESCRIPTION           RETURN     CONF.
                           Version Number of             VALUE      GUIDE
                           Conformance Guide                        VERSION
       ____________________________________________________________________
       ABIinfo_BlackBook   Supported on this System      0x010000   1.0
                                                         0x010200   1.2
                                                         0x020000   2.0
                                                         0x030000   3.0
       ABIinfo_mpconf      Documenting version of
                           mpconf supported              0x020000   2.0
       ABIinfo_abicc       Documenting version of
                           abicc supported               0x020000   2.0
       ABIinfo_XPG         Documenting version of
                           XPG interfaces supported      0x020000   2.0
       ABIinfo_backtrace   Documenting version of
                           stack backtracing supported   0x020000   2.0
       ABIinfo_largefile   Documenting version of
                           large file interfaces         0x020000   2.0
                           supported
       ABIinfo_longlong    Documenting version of
                           of 64-bit integral            0x020000   2.0
                           datatype supported
       ABIinfo_X11         Documenting X11 version
                           supported                     0x020000   2.0
       ABIinfo_mmap        Documenting version of
                           mmap supported                0x020000   2.0

SEE ALSO
     ABIinfo(1), <ABIinfo.h>

DIAGNOSTICS
     The ABIinfo routine will return -1 and set errno appropriately if the
     following is true:

          EINVAL Invalid argument. The passed selector does not correspond to
          a supported feature.

EXAMPLE
     /* This example routine queries the system as to whether Stack
      * Backtracing as specified in Conformance Guide 2.0 is supported.
      * it returns 1 if so, otherwise 0.
      */
     #include <ABIinfo.h>

     int
     backtrace_supported()
     {
          int info;

          info = ABIinfo (ABIinfo_backtrace);

          /* If selector not supported, then must be a pre-2.0
           * platform and so backtrace not supported. Also not
           * supported if return value indicates earlier than 2.0
           */
          if (info == -1 || info < ConformanceGuide_20)
               return 0;
          else
               return 1;
     }