Re: [opensuse-buildservice] Proposal: Add LSB Symbol generation to the openSUSE build system.
Hello Build Team,
I have a proposal. I am working with the LSB (and ISP RAS) on a project to improve their symbol data in their database for ISV applications. If you look at their project ( http://ispras.linux-foundation.org/index.php/Main_Page ), you will see they have an LSB Application Test Kit (ATK). An application writer can have symbol data from their application submitted to the LSB Infrastructure Project DB. Currently, they have PERL scripts that use utilities like 'readelf' to extract the symbol information. They also have a web front end to make it easy to submit the data. The goal is that with symbol data from a broad set of applications, that better decisions can be made about what APIs are being used (and can be standardized) by the LSB.
The LSB (and Markus Rex) would like us to run these scripts to get the symbol data to add to the LSB database. It seems to me that it would be easier (and quicker) to add the scripts to the openSUSE build system. I would envision a check box that could be selected from the openSUSE build interface that would say "Generate LSB Symbol data files", to make it optional if people would like. Then, as part of the build, the symbol files would be generated and available for the LSB (ISP RAS) engineers to grab and put into the database.
Thoughts?
Why is adding of symbol data to the LSB database interesting to ISVs? Upload information about application binary dependencies to the LSB database is a "vote" for libraries and interfaces required by this particular application. More votes for an interface are more chances to be included into the next version of the LSB. The positive impact of the inclusion is as follows: - The Linux Foundation makes sure that all LSB certified distros provides the interface; - The LSB testing program checks that interfaces behaves as specified in its documentation on all distros (new tests are developed if required); - The Linux Foundation makes sure that the interface will be available in future LSB certified distros at least during 6 years [1]. Thus the LSB reduces ISV's expenses for support the Linux platform as a whole. There can be also additional benefits of integration of the LSB tools with the openSUSE Build Service. 1. The LSB tools detect some general and LSB-specific issues in application binaries. General purpose warnings includes: - superfluous library dependencies in application executables (when a library is in the NEEDED ELF section, but actually it is not required to the application) [2]; - usage of the interfaces, which are not the best practice or which are considered as obsolete; - known problems in the required interfaces according to the LSB problem knowledge base. LSB-specific warnings list usage of non-LSB interfaces and include recommendations how to make application LSB-compliant. 2. LSB Repository can be added to the standard list of the openSUSE Build Service repositories to automate creation of LSB-compliant packages. Creation of the LSB build target will require some improvements in LSB tools. [1] https://www.linux-foundation.org/en/Application_Compatibility [2] http://lists.debian.org/debian-devel-announce/2005/11/msg00016.html -- Alexey Khoroshilov, Linux Verification Center, ISPRAS web: http://www.linuxtesting.org e-mail: khoroshilov@ispras.ru --------------------------------------------------------------------- To unsubscribe, e-mail: opensuse-buildservice+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-buildservice+help@opensuse.org
participants (1)
-
Alexey Khoroshilov