digiKam build factory : add Android target "kf5-qt5 AndroidQt5.15"
Closed, ResolvedPublic

Description

Hi,

Please add a new build.kde.org digiKam target for OS-Android.

Thanks in advance

Best

Gilles Caulier

cgilles created this task.Jun 29 2022, 4:31 PM
bcooksley closed this task as Resolved.Jun 30 2022, 11:09 AM
bcooksley claimed this task.

At this time expansion of additional targets on build.kde.org is no longer supported as build.kde.org is in the process of being sunset.
Please configure Gitlab CI instead.

Hi Ben,

I configured the 3 new gitlab CI for Windows, Android and FreeBSD :

https://invent.kde.org/graphics/digikam/-/commit/8a9307ea5afab585ed86c909ae54b221d7817906

But Gitlab report errors :

https://invent.kde.org/graphics/digikam/-/pipelines/197800

What's missing exactly ?

Gilles

The job in that case is complaining that KSane does not exist for that platform/branch combination.

In the case of Android I would say SANE does not make much sense there so you need to update .kde-ci.yml accordingly to mark that dependency as only applicable for Linux/FreeBSD.

With regards to Qt 6, you would need to establish a Qt 6 port of libksane first.

Hi Ben,

libksane compile already with Qt6 since December 2021 with this commit from Laurent:

https://invent.kde.org/graphics/libksane/-/commit/5322bbca9b1c699ab2ef856efb0f3fb12b1bb04a

Here i use a VM with Qt6 and KF6 to port whole digiKam code, and libksane released with KApplication 22.04.02 compile fine.

So libksane must not be a problem for the Qt6 Linux target. I know that libksane is under split to 2 part (core/widgets) but typically the Qt6 port must be integrated de facto.

For other build targets i agree that libksane can be dropped from build (this digiKam dependency is optional). I will play with the Yaml configuration.

Extra Q: whole digiKam compile with Qt6 already, excepted the Geolocation which use Marble library. I don't see any progress in this direction from the git log/branches. Did you have any information for a future port to Qt6 of Marble ?

Gilles

Hi Ben ,

Another Q for you : in .kde-ci.yml file how i can distinguish "linux" build target and "linux-qt6" build target. Typically, Marble will build with Linux Qt5, but not with Linux Qt6.

Both Linux build targets are enabled now in .gitlab-ci.yml and i fear that the "Linux" branching in .kde-ci.yml will include Qt5 and Qt6 target. This last one will certainly broken.

Gilles

The system has no support for differentiating between Qt 5 and Qt 6 i'm afraid.

Hi Ben,

This morning i can see this error message when i try to push to master :

git commit Mainpage.dox -m"update"

[master 2dd7f6861a] update
1 file changed, 1 insertion(+), 1 deletion(-)

git push

Enumerating objects: 5, done.
Counting objects: 100% (5/5), done.
Delta compression using up to 8 threads
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 316 bytes | 316.00 KiB/s, done.
Total 3 (delta 2), reused 0 (delta 0), pack-reused 0
remote: GitLab: You are not allowed to push code to protected branches on this project.
To invent.kde.org:graphics/digikam.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'invent.kde.org:graphics/digikam.git'

What's wrong exactly ? The problem do not appear in "qt5-maintenanxe" branch.

Best

Gilles

This was a restriction imposed by another admin following the various adjustments you were making to .gitlab-ci.yml to disable Gitlab CI jobs because the "functionality was provided elsewhere".
Please note that both build.kde.org and binary-factory.kde.org will be going away, being replaced by native Gitlab CI in the future.

The only thing keeping build.kde.org alive at this time are some dashboards to show job statuses for the Release Managers of Frameworks, Plasma, etc.
Once that is implemented we will be shutting it down.

I've now lifted that restriction, however please do keep in mind that Gitlab is where things should be tracked now as much as possible.

Ah thanks Ben for the explanations.

Gilles