Skip to content

Use more target-centric cmake code

Also...

  • bump min KF version to 5.80 (implies min Qt 5.14), needed for target-argument variant of ecm_qt_declare_logging_category() as well as min CMake version to 3.11, needed for add_library() without sources
  • set TRANSLATION_DOMAIN also for ksanetwain

NOTE A: The windows variant is untested, written blindly.

NOTE B: The TRANSLATION_DOMAIN for ksanetwain should be backported to the stable branch by someone

Target-centric code is what cmake 3 has been all about, to be closer in code to what a build system is for: things that are build and their resources and what they propagate to other targets linking them and what not.

Also does not using global definitions, settings and variables, but instead directly operating on target properties give more control about what is set on which targets, instead of magic surprises because something global was set in some higher dir.

See e.g. these slides from 2017: http://www.steveire.com/embracing-modern-cmake.pdf

@astippich @sars

Edited by Friedrich W. H. Kossebau

Merge request reports