D9118: ki18n cmake macros: Mark UIC-generated .h files to skip AUTOMOC by default

Michael Pyne noreply at phabricator.kde.org
Sat Dec 2 22:00:16 UTC 2017


mpyne created this revision.
mpyne added reviewers: Frameworks, Build System, Localization.
Restricted Application added a project: Frameworks.

REVISION SUMMARY
  CMake in 3.10.0 has started warning that `.h` files which are automatically generated have historically been left out of AUTOMOC, and that future CMake releases will start including them in AUTOMOC.
  
  For now the warning can be squelched by either specifically opting in to future behavior (by setting policy CMP0071) or by manually marking the generated file as needing to skip AUTOMOC. Since the `ui_*.h` files do not create `QObject`-based subclasses, it seems to me that matching historical behavior and skipping AUTOMOC is the proper decision.
  
  The question is where in the CMake code to set that property.  The warnings I saw were generated for `*.h` files created by uic.  This generation step is ultimately setup by the `ki18n_wrap_ui` CMake macro from KI18n, so this seems like the right spot to flag the generated .h file as needing to skip AUTOMOC.

TEST PLAN
  KI18n builds and installs.
  My test app (JuK) now successfully builds and installs without the CMake warnings previously generated.

REPOSITORY
  R249 KI18n

REVISION DETAIL
  https://phabricator.kde.org/D9118

AFFECTED FILES
  cmake/KF5I18NMacros.cmake

To: mpyne, #frameworks, #build_system, #localization
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-frameworks-devel/attachments/20171202/bf03aef3/attachment-0001.html>


More information about the Kde-frameworks-devel mailing list