forked from qt-creator/qt-creator
Get rid of the hardcoded QML Debugging for Debug & RelWithDebInfo from the project template, because RelWithDebInfo is actually a good configuration for doing releases (we use it for Qt Creator), and enabling QML debugging for releases is a bad idea. Instead enable QML Debugging in Qt Creator for the Debug configuration, and add a 'Profile' configuration that is 'RelWithDebInfo + QML Debugging'. When importing a build, we only set the "QML debugging" option of the build configuration, if it is enabled in the imported build, even if it uses CMAKE_BUILD_TYPE=Debug . One drawback: When not importing a build, but just setting the build directory of a "Profile" or "Debug" configuration to an existing build, Qt Creator asks if it should apply "-DCMAKE_CXX_FLAGS=-DQT_QML_DEBUG". The user can choose not to, but then is asked the next time again, and it is not obvious that the "QML debugging" option is responsible for this. That is somewhat orthogonal to this change though: Even without this change, if the user changes the QML debugging option from "Leave at Default" to "Enable", the same happens, and it is also not clear to the user how to get rid of it. The user might not even have realized that they changed the option (e.g. on platforms where the mouse wheel cycles combo box values). I think the correct solution is to 1. make clearer where the CMake flags came from in that dialog, 2. allow the user to cancel a build from that dialog, 3. allow the user to discard these changes (by changing the setting) from that dialog. But that is for another patch. Amends3300182d40Amends77fed0b0fdChange-Id: I95de59473b67c5afd6a53ea7f49838dbaef770d4 Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io> Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Adam <cristian.adam@qt.io>
75 lines
2.7 KiB
C++
75 lines
2.7 KiB
C++
/****************************************************************************
|
|
**
|
|
** Copyright (C) 2016 The Qt Company Ltd.
|
|
** Contact: https://www.qt.io/licensing/
|
|
**
|
|
** This file is part of Qt Creator.
|
|
**
|
|
** Commercial License Usage
|
|
** Licensees holding valid commercial Qt licenses may use this file in
|
|
** accordance with the commercial license agreement provided with the
|
|
** Software or, alternatively, in accordance with the terms contained in
|
|
** a written agreement between you and The Qt Company. For licensing terms
|
|
** and conditions see https://www.qt.io/terms-conditions. For further
|
|
** information use the contact form at https://www.qt.io/contact-us.
|
|
**
|
|
** GNU General Public License Usage
|
|
** Alternatively, this file may be used under the terms of the GNU
|
|
** General Public License version 3 as published by the Free Software
|
|
** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
|
|
** included in the packaging of this file. Please review the following
|
|
** information to ensure the GNU General Public License requirements will
|
|
** be met: https://www.gnu.org/licenses/gpl-3.0.html.
|
|
**
|
|
****************************************************************************/
|
|
|
|
#pragma once
|
|
|
|
namespace CMakeProjectManager {
|
|
namespace Constants {
|
|
|
|
const char CMAKE_MIMETYPE[] = "text/x-cmake";
|
|
const char CMAKE_PROJECT_MIMETYPE[] = "text/x-cmake-project";
|
|
const char CMAKE_EDITOR_ID[] = "CMakeProject.CMakeEditor";
|
|
const char RUN_CMAKE[] = "CMakeProject.RunCMake";
|
|
const char CLEAR_CMAKE_CACHE[] = "CMakeProject.ClearCache";
|
|
const char RESCAN_PROJECT[] = "CMakeProject.RescanProject";
|
|
const char RUN_CMAKE_CONTEXT_MENU[] = "CMakeProject.RunCMakeContextMenu";
|
|
const char BUILD_FILE_CONTEXT_MENU[] = "CMakeProject.BuildFileContextMenu";
|
|
const char BUILD_FILE[] = "CMakeProject.BuildFile";
|
|
const char CMAKE_HOME_DIR[] = "CMakeProject.HomeDirectory";
|
|
const char QML_DEBUG_SETTING[] = "CMakeProject.EnableQmlDebugging";
|
|
|
|
// Project
|
|
const char CMAKE_PROJECT_ID[] = "CMakeProjectManager.CMakeProject";
|
|
|
|
const char CMAKE_BUILDCONFIGURATION_ID[] = "CMakeProjectManager.CMakeBuildConfiguration";
|
|
|
|
// Menu
|
|
const char M_CONTEXT[] = "CMakeEditor.ContextMenu";
|
|
|
|
// Settings page
|
|
const char CMAKE_SETTINGS_PAGE_ID[] = "Z.CMake";
|
|
|
|
// Snippets
|
|
const char CMAKE_SNIPPETS_GROUP_ID[] = "CMake";
|
|
|
|
// Icons
|
|
const char FILE_OVERLAY_CMAKE[] = ":/cmakeproject/images/fileoverlay_cmake.png";
|
|
|
|
// Actions
|
|
const char BUILD_TARGET_CONTEXT_MENU[] = "CMake.BuildTargetContextMenu";
|
|
|
|
// Build Step
|
|
const char CMAKE_BUILD_STEP_ID[] = "CMakeProjectManager.MakeStep";
|
|
|
|
// Features
|
|
const char CMAKE_FEATURE_ID[] = "CMakeProjectManager.Wizard.FeatureCMake";
|
|
|
|
// Tool
|
|
const char TOOL_ID[] = "CMakeProjectManager.CMakeKitInformation";
|
|
|
|
|
|
} // namespace Constants
|
|
} // namespace CMakeProjectManager
|