[kde-community] Proper KDE SDK - was - Re: Applications in KDE Generation 5

Ben Cooksley bcooksley at kde.org
Sat Jan 18 00:06:08 UTC 2014

On Sat, Jan 18, 2014 at 12:58 PM, Pau Garcia i Quiles
<pgquiles at elpauer.org> wrote:
> On Thu, Jan 16, 2014 at 9:53 PM, Ben Cooksley <bcooksley at kde.org> wrote:
>> > Where can I find the CI scripts? If someone could give me access to
>> > Jenkins
>> > and give me a little introduction to what's already in place for CI, I
>> > can
>> > probably help with automating the SDK generation so that it's available
>> > from
>> > the Qt SDK Maintenance Tool.
>> The CI scripts are located at websites/build-kde-org on git.kde.org,
>> in the "production" branch.
>> Please let me know if you have any questions on what they do.
> How does one start? I've set JENKINS_SLAVE_HOME to where I cloned that
> repository, and run setup-env.sh, but it fails with:

You'll need to clone kde-build-metadata as 'dependencies' there as
well. The script "setup-env.sh" should take care of cloning in the
various repos which are needed.

> Traceback (most recent call last):
>   File "tools/prepare-environment.py", line 21, in <module>
>     load_projects( 'kde_projects.xml',
> 'http://projects.kde.org/kde_projects.xml', 'config/projects',
> 'dependencies/logical-module-structure' )
>   File
> "/home/pgquiles/personal/software/kde/kf5sdk/build-kde-org/tools/kdecilib.py",
> line 886, in load_projects
>     with open(moduleStructure, 'r') as fileHandle:
> IOError: [Errno 2] No such file or directory:
> 'dependencies/logical-module-structure'
> (and indeed that file is not in the repository, nor has it been downloaded)
> I have also skimmed over the configuration for several of the repositories
> and I've noticed a few potential problems:
> If we want KF5 to be available for Qt SDK users, we should compile with
> exactly the Qt version Qt SDK ships. Otherwise, we may face ABI problems.
> But that means compiling everything *again*.

As I expect this to be rather one off, that shouldn't be too much of an issue.

> What about compilation for Windows and Mac? It seems there are no Jenkins
> slaves for those platforms. Or maybe I didn't read enough?

You are correct. For Windows, we have a lack of licenses - so cannot
setup any virtual machines to provide this service.
For Mac, we'd need corresponding physical systems due to the way that
is licensed.

> I am a bit worried about dependencies. Qt SDK does not need to care about
> dependencies because there are very few dependencies and they can be
> contained in Qt Core. KDE, on the other hand, has a lot of dependencies.
> Either I add a new component ("Third-party dependencies") with a long list
> of subcomponents (each third party library), or I include dependencies with
> each KF5 add-on (which will quickly grow into a problem, as it would need
> tracking which KF5 module provides which depedency). I am open to other
> suggestions.
> Is there a test build machine I could use once I have something useful?

I can arrange access to one of the current CI nodes once you have
something workable. If you need any pointers on the scripts, or have
patches, please let me know.

> Thank you


> --
> Pau Garcia i Quiles
> http://www.elpauer.org
> (Due to my workload, I may need 10 days to answer)
> _______________________________________________
> kde-community mailing list
> kde-community at kde.org
> https://mail.kde.org/mailman/listinfo/kde-community

More information about the kde-community mailing list