Make various bits of the Apper tool chain optional
ClosedPublic

Authored by leinir on Mar 27 2017, 12:25 PM.

Details

Summary

This introduces some options in cmake which allows you to build only some parts of Apper's collection of tools.

Note: Further work along this path might include adding runtime cmake check modules for e.g. apper-pk-session, so that can be optionally required by other tools (with sufficient documentation to support that mode of operation).

Suggested in https://bugs.kde.org/show_bug.cgi?id=377646#c2

Diff Detail

Repository
R549 Apper
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
leinir created this revision.Mar 27 2017, 12:25 PM
This revision is now accepted and ready to land.Mar 27 2017, 12:39 PM
apol edited edge metadata.Mar 27 2017, 1:13 PM

Can we split the parts we want into different repositories? This looks rather unpractical...

Since pk-session code needs libapper I'm not sure spliting would easy anything...

In D5194#97936, @apol wrote:

Can we split the parts we want into different repositories? This looks rather unpractical...

Having looked over the code over the last couple of days, i guess that would be possible - The dependency tree inside the repository is fairly shallow. However everything in the repository requires libapper (aka apper_private), we would end up with a repository without a framework, which is required by a bunch of other repositories... Not sure we would end up in a situation which is really superior to what we've got now... whereas if we simply add some runtime cmake modules in a few places instead, and suggest split packages for distributions shipping the tools, it would be less intrusive, and result in the ability for others (e.g. Discover) to only require a small part of the tree...

This revision was automatically updated to reflect the committed changes.
wbauer added a subscriber: wbauer.Mar 28 2017, 9:38 AM
wbauer added inline comments.
CMakeLists.txt
126

The docs are not built any more at all now.
Was this intentional?

leinir marked an inline comment as done.Mar 28 2017, 9:44 AM
leinir added inline comments.
CMakeLists.txt
126

It certainly was not, no - thank you for catching that one, i've pushed a fix for that