The Linux Foundation

 
Application Checker Enhancements

From The Linux Foundation

Application Checker Enhancements

Thoughts for enhancements to the LSB application checker

  • Syntax change: from "-L libdir/libfoo.so" to "-L libdir -lfoo" bug 786
    • this eliminates the need for developers to learn new syntax for library inclusion
  • Provide a way, possibly via a front-end script, to simplify working out dependency order of libraries bug 1414 and bug 152
  • multiple-version support bug 1236
  • add new mode to appchk (verify)
    • in this mode appchk will only report failures and deprecation warnings, passing symbols are ignored for reporting purposes (see output options below)
    • current default analysis behavior becomes certification mode (see output options below)
  • consistent output
    • when the journal option is given all reporting is written to the journal, no output to stdout
    • when no journal is specified all output is written to stdout, the stdout output should be complete and correct (not complete in todays implementation)
  • integrate with new DB backend for symbol look up
    • each unknown symbol triggers the generation of a reference URL to allow developers to better understand the failure. Failures are categorized as follows:
      • symbol used to be in the LSB
      • symbol is being considered for LSB inclusion
      • symbol is unknown

DB symbol lookup needs to be optional, or appchk will misbehave when a good connection is not available.

How to deal with symbol categories

  • Symbol used to be in the LSB
    • the URL generated points to a page which provides information about in which version of the LSB the symbol was included, when it was deprecated, when it was removed, why it was removed, the name of the replacement symbol if applicable
  • Symbol is being considered for LSB inclusion
    • the URL generated points to a page which provides information about the inclusion timeline and the version of the LSB which will most likely contain the symbol. The page also contains a registration option such that users can register and get notified when a specific symbol is included in the LSB
  • Symbol is unknown
    • generate a generic error page URL

[Article] [Discussion] [View source] [History]