Hi, the first evaluation is complete. My mentors said that they have “enjoyed” my work lately so that was good to hear.

Previously, we had fully ported digiKam to Qt 5.15.2. So now it was time to introduce Qt6. First steps were to identify the required changes in the build system, checking and verifying dependencies.

Porting the build system

digiKam has a huge codebase and thus, a huge build system which is very finely tuned. So, it took some to time to fully study the build system and identify the required changes to it.

Our goal was that the build system should find a suitable Qt version, i.e., 5 or 6 and then accordingly generate build files. The current pipelines and tests with Qt5 should work as before and if the system finds Qt6 installation, then configure accordingly. All of the includes and linking steps in the CMakeLists.txts had hardcoded Qt 5 version.

I had attended this year’s “Akademy” and learned a great deal about porting the build system from the talk Porting user applications to Qt 6 by Kai Köhne.

I used cmake variables instead of hardcoding Qt versions, the MRs

I made some commits without an MR as similar patches were already approved. Most of these were patching include directories in cmake and had hardcoded Qt5 version. An example, Port cmake include dirs in bqm/metadata

Thanks for reading!