Bugzilla – Bug 1109420
plasma5-desktop does not build reproducibly (parallelism)
Last modified: 2018-11-27 10:04:07 UTC
While working on reproducible builds for openSUSE, I found that when comparing builds of plasma5-desktop with osc build --vm-type=kvm -j1 and -j2 There is always such a difference: http://rb.zq1.de/compare.factory-20180916/plasma5-desktop-compare.out /usr/bin/kcolorschemeeditor differs in assembler output -_ZN18SchemeEditorDialog18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv.part.1: +_ZN19SchemeEditorEffects18qt_static_metacallEP7QObjectN11QMetaObject4CallEiPPv.part.1: and comparing build-roots shows Binary files /var/tmp/build-root.4/.mount/home/abuild/rpmbuild/BUILD/plasma-desktop-5.13.5/build/kcms/colors/CMakeFiles/kcolorschemeeditor.dir/kcolorschemeeditor_autogen/mocs_compilation.cpp.o and /var/tmp/build-root.4b/.mount/home/abuild/rpmbuild/BUILD/plasma-desktop-5.13.5/build/kcms/colors/CMakeFiles/kcolorschemeeditor.dir/kcolorschemeeditor_autogen/mocs_compilation.cpp.o differ But interestingly, the mocs_compilation.cpp files do not differ. This could indicate that plasma-desktop-5.13.5/kcms/colors/CMakeLists.txt does not sufficiently specify dependencies for ordering or that some other kind of build-time race occurs. The diff goes away when building with make -C kcms/colors/ %make_jobs But that would only be a workaround and it would be much better to understand and fix the cause of the diff.
difflog shows that in the parallel case, there is + [ 0%] Automatic MOC for target kcolorschemeeditor [ 0%] Automatic MOC for target kcm_colors 2 MOC generators being run at the same time / in different order => submitted https://phabricator.kde.org/D17076
This is fixed upstream now.