The Linux Foundation

 
Appbat

From The Linux Foundation

The LSB application battery (appbat) is a collection of example LSB compliant applications provided by the LSB project for several purposes:

  • A test of a candidate conforming system's ability to run real LSB applications.
  • A test of a system's ability to install conforming packages.
  • Collectively, exercise all required LSB libraries - providing a complement to the interface-level tests in the LSB Runtime Test suite.
  • A test of the ability of the lsbdev developer tools to correctly build compliant applications.
  • Provide an example to developers how to build compliant applications.

The application battery is a required part of the LSB Certification Program.

Contents

About the Application Battery

The appbat contains common applications that might normally come as part of a runtime system, but which have been compiled in such a way as to ensure they only use libraries and APIs from the LSB specification. This provides an example of how familiar programs can be made LSB compliant. The programs have been chosen so that collectively they stress all of the libraries described by the current version of the LSB.

Quick Links to Additional Information

Current Status

Each version of the LSB, and each supported processor architecture, has a specific list of required applications that must be used to certify a candidate platform. There may be more applications available than are required. The required applications will have a date in the LSB Certification Ready Date column. Other applications may be used as examples, for additional testing, etc.

Future Directions

Over time more programs will be added to the appbat, usually to provide additional testing for new interfaces and libraries that are added to the LSB specification, and to provide additional porting examples. As new processor architectures become supported by the LSB, the appbat must be ported and tested on those new architectures. Over time, the appbat programs also must be updated to reflect the state of the current upstream source for the packages.

Work continues on increasing the number number of LSB Certification Ready applications, to provide greater coverage for a runtime system seeking certification. The purpose of widening the set required for certification is to catch potential problems before the system is certified and shipped. Although this is a slight extra testing burden, it is well worth it. Ideally, the LSB team would like to be able to provide 100% test coverage in the the LSB Runtime Test, but as a practical matter there will always be gaps, and at the time of writing, some core libraries have no coverage at all in the Runtime Test suite.

There are also plans to provide some applications which will not be required for certification, but which may be useful for installing in minimal conforming environments. One such environment is the LSB Sample Implementation.

Call for Volunteers

More help is always needed in building, testing and expanding the application battery. The current build process aims to be easily reproducible, but it needs a dependency checker - a way to capture which libraries and headers must be available on the system to be able to build each application. The best way to help is to join the mailing list and check out the mailing list archive, then start contributing.

Subproject Reports

Periodic (out-of-date) reports may be found at AppBat reports.


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