From 557e5d898bf95cfb999c1a0a4d9bd0c4bd5fe178 Mon Sep 17 00:00:00 2001 From: Harald Sitter Date: Mon, 19 Aug 2019 15:59:37 +0200 Subject: disable autouic again - it breaks builds Summary: autouic (like automoc) assumes that every ui_*.h include statement it finds relates to a .ui file that needs generating. this is not always true. e.g. we have software which generates ui_debug.h which is simply a qloggingcategory header for the UI category of that software which would then trip up autouic because it would assume there's a .ui file when there really isn't one. unfortunately the ui_ assumption cannot be selectively disabled, so we can't have explicit listing of .ui in source lists ``` set(foo_SRCS foo.cpp foo.ui) ``` without also getting the not particularly compatible include assumptions. this should be revisited for kf6 since there isn't a technical need for files to be called ui_*, they could just as well be *_ui or anything else so as to not clash with autouic assumption. autorcc does not suffer from this problem so we can leave it enabled, for now anyway. Test Plan: sonnet builds again Reviewers: apol, nicolasfella, cullmann Reviewed By: apol Subscribers: kde-frameworks-devel, kde-buildsystem Tags: #frameworks, #build_system Differential Revision: https://phabricator.kde.org/D23262 --- kde-modules/KDECMakeSettings.cmake | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/kde-modules/KDECMakeSettings.cmake b/kde-modules/KDECMakeSettings.cmake index 6bbb90da..0be3d35b 100644 --- a/kde-modules/KDECMakeSettings.cmake +++ b/kde-modules/KDECMakeSettings.cmake @@ -78,8 +78,7 @@ # - Uninstall target functionality since 1.7.0. # - ``APPLE_FORCE_X11`` option since 5.14.0 (detecting X11 was previously the default behavior) # - ``APPLE_SUPPRESS_X11_WARNING`` option since 5.14.0 -# - CMAKE_AUTORCC and CMAKE_AUTOUIC enabled by default when supported by cmake -# (>= 3.0) since 5.62.0 +# - CMAKE_AUTORCC enabled by default when supported by cmake (>= 3.0) since 5.62.0 # # Translations # ~~~~~~~~~~~~ @@ -240,11 +239,12 @@ if(NOT KDE_SKIP_BUILD_SETTINGS) # Since CMake 2.8.6 set(CMAKE_AUTOMOC ON) - # Enable autorcc and autouic in cmake so qrc and ui files get generated. + # Enable autorcc and in cmake so qrc files get generated. # Since CMake 3.0 + # TODO KF6: discuss enabling AUTOUIC and note porting requirements. autouic + # acts on all #include "ui_*.h" assuming *.ui exists if(NOT CMAKE_VERSION VERSION_LESS 3.0) set(CMAKE_AUTORCC ON) - set(CMAKE_AUTOUIC ON) endif() # By default, create 'GUI' executables. This can be reverted on a per-target basis -- cgit v1.2.1