KDE CI enforcing ECMEnableSanitizers.cmake/KDECompilerSettings.cmake?
Friedrich W. H. Kossebau
kossebau at kde.org
Wed Apr 27 03:49:18 BST 2016
Am Mittwoch, 27. April 2016, 01:29:06 CEST schrieb Jan Kundrát:
> On Wednesday, 27 April 2016 01:21:22 CEST, Albert Astals Cid wrote:
> > No, Qt5 is not built with ASAN on CI.
Okay, good to know.
(next to the failing tests I also remembered to have seen ASAN_OPTIONS
detect_leaks=0 as env setting with the qt5 builds on CI. So that is just
default env setup and those vars ignored otherwise, okay).
Next to documenting things, can we start with some rule what gets or should be
built with ASAN, so people know what to expect?
I would assume: any KDE software based on C++/C. And then there might be a few
exceptions, for whatever reasons (built screwed, incompatible, etc).
> > It is strange that your Qt5-only tests are failing, may it be that they
> > are
> > loading some plugin that is linked against some KF5 lib?
For Marble plugins only if something is not like it should be:
for one, the current build on CI even gets "-DQTONLY=TRUE" passed, which is
turned into the cmake var "set(WITH_KF5 FALSE)", and all KF5 deps are looked
for with "macro_optional_find_package(KF5 QUIET COMPONENTS something)", so
should always yield NOT_FOUND (looking at it I found a bug which still made
KF5DocTools to be found, but now fixed and should not have any effect on
linking to KF5 libs).
More, the only things being explicitely linked to KF5 libs are KF5 thumbnailer
plugin, KRunner plugin, and the KF5-enhanced Marble app variant. So nothing
which should be used in the tests.
Ah, Phonon! That is linked by at least the RoutingPlugin. And Phonon gets
instrumented with ASAN:
That might explain what we see currently.
> Qt guesses what platform one is running on in order to blend with it. In
> KDE and under the Plasma desktop, this involves loading
> plugins/platformthemes/KDEPlatformTheme.so which belongs to KF5's
> Is the KDE CI setting some variables which might trigger loading of these
> plugins [edited]?
Good idea, that might be indeed other intrusion path for ASAN deps.
@Scarlett, can you tell?
More information about the kde-core-devel