T3689: Add abi compliance checker to CI
Sandro Knauß
noreply at phabricator.kde.org
Wed Dec 12 19:48:25 GMT 2018
knauss added subscribers: kde-frameworks-devel, dfaure.
knauss added a comment.
I now looked at every repository that failed to build successfully a ABI dump for Frameworks.
As I'm not really deep into the Framworks code, so I'm unsure, if those are real issues or if those Frameworks need special handling.
Please give me any response you have to those issues. (@aacid , @dfaure, @kde-frameworks-devel)
From 79 packages inside Frameworks a lot run successfully. From those 5 packages I'm quite sure, that those are real issues, that needs to get fixed:
- kdelibs4support
- missing dependency to frameworks/kitemmodels
- failed to find #include <kns3/downloaddialog.h>
F6473565: log.txt <https://phabricator.kde.org/F6473565>
- kwayland
- KWayland/Client/xdgforeign_v2.h -> missing `include "xdgforeign.h"`
- kjs
- no include/KF5/kjs in INTERFACE_INCLUDE_DIRECTORIES
- CompileState.h includes non exported opcodes.h and bytecodes/opcodes.h #401955
*plasma-framework
- no include/KF5/KF5PlasmaQuick in INTERFACE_INCLUDE_DIRECTORIES for KF5PlasmaQuick
compiles but has still error on the log:
- networkmanager-qt
- failing building headers
F6473566: log.txt <https://phabricator.kde.org/F6473566>
And some repositories, that have no public library. Is this intended?
- KF5NewStuffQuick has no library (KF5NewStuff is fine)
- extra-cmake-modules
- kdesignerplugin
- kinit
- qqc2-desktop-style
How this ABI checker tool works. As input the tool uses the output made while installing the package.
- It scans this output for installs of ".*Config.cmake$" files
- runs cmake in trace-expand mode for "find_package({name} CONFIG REQUIRED)"
- scans this cmake output for
- PACKAGE_VERSION -> this is the library version
- IMPORTED_SONAME_DEBUG, -> to get the soversion
- IMPORTED_LOCATION_DEBUG -> the the path of the lib
- INTERFACE_INCLUDE_DIRECTORIES -> all needed include directories
- each exported header file is tried to be compiled and symbols are extracted.
The sourcecode of this script you find in sysadmin/ci-tooling/helpers/create-abi-dump.py
TASK DETAIL
https://phabricator.kde.org/T3689
To: knauss
Cc: dfaure, kde-frameworks-devel, bcooksley, sysadmin, scarlettclark, aacid, knauss, alexeymin, kaning, blazquez
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20181212/e6734db0/attachment.html>
More information about the Kde-frameworks-devel
mailing list