[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-users] [Xen-devel] Binary compatibility report for Xen base libraries
26.06.2016, 17:42, "Doug Goldstein": > On 6/24/16 9:21 AM, Ponomarenko Andrey wrote: >> Hello, >> >> I maintain a new project for backward compatibility analysis of the Linux >> ABIs. The report for Xen base libraries has been recently added to the >> project: http://abi-laboratory.pro/tracker/timeline/xen/ >> >> The report is generated daily with the help of the abi-compliance-checker, >> abi-dumper and abi-tracker tools: https://github.com/lvc/abi-tracker >> >> Hope this will help users, maintainers and developers to maintain backward >> compatibility. >> >> Thank you. > > Outstanding! I had mentioned your tools in the #xen-devel channel. And I > had talked about utilizing them as part of the Travis build process with > the goal of making this data available. Thank you for doing this. > > Do you have any advice for us if it would be positive to do some sort of > check on a per-commit basis or not? Hello, You can use basic tools to perform analysis per each commit: 1. Build shared objects of a library with debug info (with -g -Og additional GCC flags) 2. Extract ABI information with the help of the abi-dumper tool: abi-dumper xen-4.5.3/lib64/libxenguest.so.4.5.0 --vnum=4.5.3 --public-headers=xen-4.5.3/include --output=./ABI-4.5.3.dump abi-dumper xen-4.6.0/lib64/libxenguest.so.4.6.0 --vnum=4.6.0 --public-headers=xen-4.6.0/include --output=./ABI-4.6.0.dump 3. Compare ABI dumps to produce report: abi-compliance-checker -l libxenguest -old ABI-4.5.3.dump -new ABI-4.6.0.dump The abi-tracker and abi-monitor tools can also be used to perform analysis per each commit: 1. Create profile for a library (e.g. https://github.com/lvc/upstream-tracker/blob/master/profile/xen.json) and add the following property to it: "Git": "http://xenbits.xen.org/git-http/xen.git", 2. Create build script for a library (e.g. https://github.com/lvc/upstream-tracker/blob/master/build_script/xen.sh) 3. Retry this command per each commit to pull source from git repository, download latest stable releases and build them: abi-monitor -get -build-new profile/xen.json 4. Run this command to update ABI report after each run of the abi-monitor: abi-tracker -build profile/xen.json 5. The latest version of the library from git will be analyzed against the latest stable release. Thank you. _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxx http://lists.xen.org/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |