Merge remote-tracking branch 'origin/15.0' into qds/dev

Conflicts:
	share/qtcreator/templates/wizards/projects/qtquickapplication/wizard.json
	share/qtcreator/templates/wizards/projects/qtquickuiprototype/wizard.json
	src/plugins/qmldesigner/components/contentlibrary/contentlibraryview.cpp
	src/plugins/qmldesigner/components/materialbrowser/materialbrowserview.cpp
	src/plugins/qmldesigner/components/timelineeditor/timelinetoolbar.cpp
	src/plugins/qmldesigner/libs/designercore/rewriter/texttomodelmerger.cpp
	src/plugins/texteditor/texteditor.cpp

Change-Id: I88519e366a153375e0d2aae2798d05828816657d
This commit is contained in:
Tim Jenßen
2024-11-25 15:47:54 +01:00
2265 changed files with 77537 additions and 84296 deletions

View File

@@ -9,7 +9,7 @@ on:
env:
QT_VERSION: 6.7.2
MACOS_DEPLOYMENT_TARGET: 11.0
CLANG_VERSION: 18.1.7
CLANG_VERSION: 19.1.0
ELFUTILS_VERSION: 0.175
CMAKE_VERSION: 3.30.3
NINJA_VERSION: 1.10.2
@@ -73,7 +73,20 @@ jobs:
file(APPEND "$ENV{GITHUB_OUTPUT}" "tag=${{github.run_id}}\n")
endif()
- name: Setup Go 1.22.x
uses: actions/setup-go@v5
with:
go-version: 1.22.x
- name: Install UPX
if: ${{ !startsWith(matrix.config.os, 'macos') }}
uses: crazy-max/ghaction-upx@v3
with:
install-only: true
- name: Install UPX (macOS)
if: ${{ startsWith(matrix.config.os, 'macos') }}
run: |
brew update
brew install upx
- name: Download Ninja and CMake
shell: cmake -P {0}
run: |
@@ -141,7 +154,7 @@ jobs:
COMMAND
sudo apt install chrpath
libgl1-mesa-dev libvulkan-dev libxcb-xinput-dev libxcb-xinerama0-dev libxkbcommon-dev libxkbcommon-x11-dev
libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-xkb1 libxcb-randr0 libxcb-icccm4
libxcb-image0 libxcb-keysyms1 libxcb-render-util0 libxcb-xkb1 libxcb-randr0 libxcb-icccm4 libsecret-1-dev
xvfb
RESULT_VARIABLE result
)
@@ -477,15 +490,12 @@ jobs:
- name: Download ccache archive
shell: cmake -P {0}
run: |
file(WRITE $ENV{GITHUB_WORKSPACE}/netrc.txt
"default login runneradmin password ${{ secrets.GITHUB_TOKEN }}")
foreach(page_id RANGE 1 10)
file(
DOWNLOAD "https://api.github.com/repos/${{ github.repository }}/actions/artifacts?per_page=100&page=${page_id}"
HTTPHEADER "Accept: application/vnd.github.v3+json"
NETRC_FILE "$ENV{GITHUB_WORKSPACE}/netrc.txt"
NETRC REQUIRED
HTTPHEADER "Accept: application/vnd.github+json"
HTTPHEADER "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"
HTTPHEADER "X-GitHub-Api-Version: 2022-11-28"
SHOW_PROGRESS
artifacts.json)
file(READ artifacts.json artifacts_json)
@@ -502,8 +512,9 @@ jobs:
foreach(retry RANGE 10)
file(DOWNLOAD "${download_url}"
"${{ steps.ccache.outputs.archive_name }}.zip"
NETRC_FILE "$ENV{GITHUB_WORKSPACE}/netrc.txt"
NETRC REQUIRED
HTTPHEADER "Accept: application/vnd.github+json"
HTTPHEADER "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}"
HTTPHEADER "X-GitHub-Api-Version: 2022-11-28"
SHOW_PROGRESS)
file(SIZE "${{ steps.ccache.outputs.archive_name }}.zip" fileSize)
if (fileSize GREATER 0)

1
.gitignore vendored
View File

@@ -29,6 +29,7 @@
.DS_Store
.qmake.cache
.qmake.stash
.qmlls.ini
.vscode
Makefile*
Thumbs.db

View File

@@ -1,4 +1,4 @@
cmake_minimum_required(VERSION 3.16)
cmake_minimum_required(VERSION 3.20)
option(BUILD_DESIGNSTUDIO "Build and install design studio plugins, examples and settings." OFF)
if (BUILD_DESIGNSTUDIO)
@@ -113,10 +113,9 @@ find_package(Threads)
find_package(Clang QUIET)
# Crashpad
set(CRASHPAD_BACKEND_URL "" CACHE STRING "Crashpad backend URL")
set(CRASHPAD_BACKEND_URL "$ENV{QTC_CRASHPAD_BACKEND_URL}" CACHE STRING "Crashpad backend URL")
set(BUILD_WITH_CRASHPAD OFF)
# Linux is not supported for now
# x86_64;arm64 is not supported for now
if(CRASHPAD_BACKEND_URL AND (WIN32 OR APPLE)) # Linux is not supported for now
find_package(Crashpad QUIET)
if(TARGET Crashpad::Crashpad)

View File

@@ -8,11 +8,8 @@ https://wiki.qt.io/Setting_up_Gerrit#How_to_get_started_-_Gerrit_registration
Qt Creator has integrated auto tests, and further external tests in the
subdirectory 'tests'.
To build the integrated auto tests, build Qt Creator with the additional
QMake option TEST=1
To build also the auto tests, manual tests and unit tests in the 'tests'
subdirectory, use the QMake option BUILD_TESTS=1
To build the auto tests, manual tests and unit tests in the 'tests'
subdirectory, configure with the CMake option WITH_TESTS=ON.
Afterwards:

View File

@@ -16,9 +16,11 @@ https://doc.qt.io/qtcreator/creator-overview.html
The standalone binary packages support the following platforms:
* Windows 10 (64-bit) or later
* (K)Ubuntu Linux 22.04 (64-bit) or later
* macOS 11 or later
* Windows 10 (x86_64) or later
* Windows 11 (ARM64) or later
* (K)Ubuntu Linux 22.04 (x86_64) or later
* (K)Ubuntu Linux 24.04 (arm64) or later
* macOS 12 or later
When you compile Qt Creator yourself, the Qt version that you build with
determines the supported platforms.
@@ -46,7 +48,7 @@ Prerequisites:
* MinGW with GCC 11.2 or Visual Studio 2019 or later
* Python 3.8 or later (optional, needed for the python enabled debug helper)
* Debugging Tools for Windows (optional, for MSVC debugging support with CDB)
* On Mac OS X: latest Xcode
* On macOS: latest Xcode
* On Linux: GCC 9 or later
* LLVM/Clang 14 or later (optional, LLVM/Clang 17 is recommended.
See [instructions](#getting-llvmclang-for-the-clang-code-model) on how to

View File

@@ -10,7 +10,7 @@ find_package(yaml-cpp 0.5 QUIET NO_MODULE)
if (yaml-cpp_FOUND)
# target doesn't set include directory for some reason
get_filename_component(yaml_cpp_include_dir "${YAML_CPP_INCLUDE_DIR}" ABSOLUTE)
if (NOT EXISTS yaml_cpp_include_dir)
if (NOT EXISTS ${yaml_cpp_include_dir})
unset(yaml_cpp_include_dir)
unset(yaml_cpp_include_dir CACHE)
find_path(yaml_cpp_include_dir yaml-cpp/yaml.h)

View File

@@ -331,10 +331,29 @@ function(add_qtc_library name)
endif()
endfunction(add_qtc_library)
function(markdown_to_json resultVarName filepath)
file(STRINGS ${filepath} markdown)
set(result "")
foreach(line IN LISTS markdown)
string(REPLACE "\\" "\\\\" line "${line}") # Replace \ with \\
string(REPLACE "\"" "\\\"" line "${line}") # Replace " with \"
string(PREPEND line " \"")
string(APPEND line "\"")
# We have to escape ; because list(APPEND ...) will split the string at ;
# list(JOIN ...) will replace the \; with ; again
string(REPLACE ";" "\\;" line "${line}")
list(APPEND result "${line}")
endforeach()
list(JOIN result ",\n" result)
set(result "[\n${result}\n ]")
set("${resultVarName}" ${result} PARENT_SCOPE)
endfunction()
function(add_qtc_plugin target_name)
cmake_parse_arguments(_arg
"SKIP_INSTALL;INTERNAL_ONLY;SKIP_TRANSLATION;EXPORT;SKIP_PCH"
"VERSION;COMPAT_VERSION;PLUGIN_PATH;PLUGIN_NAME;OUTPUT_NAME;BUILD_DEFAULT;PLUGIN_CLASS"
"VERSION;COMPAT_VERSION;PLUGIN_PATH;PLUGIN_NAME;OUTPUT_NAME;BUILD_DEFAULT;PLUGIN_CLASS;LONG_DESCRIPTION_MD;LICENSE_MD"
"CONDITION;DEPENDS;PUBLIC_DEPENDS;DEFINES;PUBLIC_DEFINES;INCLUDES;SYSTEM_INCLUDES;PUBLIC_INCLUDES;PUBLIC_SYSTEM_INCLUDES;SOURCES;EXPLICIT_MOC;SKIP_AUTOMOC;EXTRA_TRANSLATIONS;PLUGIN_DEPENDS;PLUGIN_RECOMMENDS;PLUGIN_TEST_DEPENDS;PLUGIN_MANUAL_DEPENDS;PROPERTIES;PRIVATE_COMPILE_OPTIONS;PUBLIC_COMPILE_OPTIONS"
${ARGN}
)
@@ -346,6 +365,11 @@ function(add_qtc_plugin target_name)
message(FATAL_ERROR "add_qtc_plugin had unparsed arguments")
endif()
# ignore _arg_EXPORT for main repository and super repository build
if (QTC_MERGE_BINARY_DIR)
set(_arg_EXPORT "")
endif()
update_cached_list(__QTC_PLUGINS "${target_name}")
set(name ${target_name})
@@ -395,38 +419,35 @@ function(add_qtc_plugin target_name)
endif()
# Generate dependency list:
find_dependent_plugins(_DEP_PLUGINS ${_arg_PLUGIN_DEPENDS})
set(_arg_DEPENDENCY_STRING "\"Dependencies\" : [\n")
foreach(i IN LISTS _DEP_PLUGINS)
foreach(i IN LISTS _arg_PLUGIN_DEPENDS)
get_property(_v TARGET "${i}" PROPERTY QTC_PLUGIN_VERSION)
if (i MATCHES "^QtCreator::")
set(_v ${IDE_VERSION})
string(REPLACE "QtCreator::" "" i ${i})
else()
get_property(_v TARGET "${i}" PROPERTY _arg_VERSION)
endif()
string(TOLOWER ${i} i)
string(APPEND _arg_DEPENDENCY_STRING
" { \"Name\" : \"${i}\", \"Version\" : \"${_v}\" }"
" { \"Id\" : \"${i}\", \"Version\" : \"${_v}\" }"
)
endforeach(i)
foreach(i IN LISTS _arg_PLUGIN_RECOMMENDS)
get_property(_v TARGET "${i}" PROPERTY QTC_PLUGIN_VERSION)
if (i MATCHES "^QtCreator::")
set(_v ${IDE_VERSION})
string(REPLACE "QtCreator::" "" i ${i})
else()
get_property(_v TARGET "${i}" PROPERTY _arg_VERSION)
endif()
string(TOLOWER ${i} i)
string(APPEND _arg_DEPENDENCY_STRING
" { \"Name\" : \"${i}\", \"Version\" : \"${_v}\", \"Type\" : \"optional\" }"
" { \"Id\" : \"${i}\", \"Version\" : \"${_v}\", \"Type\" : \"optional\" }"
)
endforeach(i)
foreach(i IN LISTS _arg_PLUGIN_TEST_DEPENDS)
if (i MATCHES "^QtCreator::")
string(REPLACE "QtCreator::" "" i ${i})
endif()
string(TOLOWER ${i} i)
set(_v ${IDE_VERSION})
string(APPEND _arg_DEPENDENCY_STRING
" { \"Name\" : \"${i}\", \"Version\" : \"${_v}\", \"Type\" : \"test\" }"
" { \"Id\" : \"${i}\", \"Version\" : \"${_v}\", \"Type\" : \"test\" }"
)
endforeach(i)
list(LENGTH _arg_PLUGIN_MANUAL_DEPENDS manualdep_len)
@@ -436,11 +457,12 @@ function(add_qtc_plugin target_name)
foreach (i RANGE 0 ${manualdep_maxindex} 3)
math(EXPR dep_version_i "${i} + 1")
math(EXPR dep_type_i "${i} + 2")
list(GET _arg_PLUGIN_MANUAL_DEPENDS ${i} dep_name)
list(GET _arg_PLUGIN_MANUAL_DEPENDS ${i} dep_id)
list(GET _arg_PLUGIN_MANUAL_DEPENDS ${dep_version_i} dep_version)
list(GET _arg_PLUGIN_MANUAL_DEPENDS ${dep_type_i} dep_type)
string(TOLOWER ${dep_id} dep_id)
string(APPEND _arg_DEPENDENCY_STRING
" { \"Name\" : \"${dep_name}\", \"Version\" : \"${dep_version}\", \"Type\" : \"${dep_type}\" }"
" { \"Id\" : \"${dep_id}\", \"Version\" : \"${dep_version}\", \"Type\" : \"${dep_type}\" }"
)
endforeach()
endif()
@@ -452,6 +474,19 @@ function(add_qtc_plugin target_name)
set(IDE_PLUGIN_DEPENDENCIES ${_arg_DEPENDENCY_STRING})
set(LONG_DESCRIPTION "[]")
if (_arg_LONG_DESCRIPTION_MD)
markdown_to_json(LONG_DESCRIPTION ${_arg_LONG_DESCRIPTION_MD})
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${_arg_LONG_DESCRIPTION_MD})
endif()
set(LICENSE "[]")
if (_arg_LICENSE_MD)
markdown_to_json(LICENSE ${_arg_LICENSE_MD})
set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${_arg_LICENSE_MD})
endif()
### Configure plugin.json file:
if (EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/${name}.json.in")
list(APPEND _arg_SOURCES ${name}.json.in)
@@ -488,6 +523,12 @@ function(add_qtc_plugin target_name)
if (WITH_TESTS)
set(TEST_DEFINES WITH_TESTS SRCDIR="${CMAKE_CURRENT_SOURCE_DIR}")
else()
# Many source files have Q_OBJECT inside #ifdef WITH_TESTS. Automoc uses
# a very basic parser that detects this file as mocable, but moc shows a
# warning: "No relevant classes found."
# Just suppress the warning on this case.
set_target_properties(${target_name} PROPERTIES AUTOMOC_MOC_OPTIONS "-nw")
endif()
if (WITH_SANITIZE)
@@ -501,8 +542,8 @@ function(add_qtc_plugin target_name)
PUBLIC_SYSTEM_INCLUDES ${_arg_PUBLIC_SYSTEM_INCLUDES}
DEFINES ${DEFAULT_DEFINES} ${_arg_DEFINES} ${TEST_DEFINES}
PUBLIC_DEFINES ${_arg_PUBLIC_DEFINES}
DEPENDS ${_arg_DEPENDS} ${_DEP_PLUGINS} ${IMPLICIT_DEPENDS}
PUBLIC_DEPENDS ${_arg_PUBLIC_DEPENDS}
DEPENDS ${_arg_DEPENDS} ${IMPLICIT_DEPENDS}
PUBLIC_DEPENDS ${_arg_PUBLIC_DEPENDS} ${_arg_PLUGIN_DEPENDS}
EXPLICIT_MOC ${_arg_EXPLICIT_MOC}
SKIP_AUTOMOC ${_arg_SKIP_AUTOMOC}
EXTRA_TRANSLATIONS ${_arg_EXTRA_TRANSLATIONS}
@@ -552,8 +593,7 @@ function(add_qtc_plugin target_name)
CXX_EXTENSIONS OFF
CXX_VISIBILITY_PRESET hidden
VISIBILITY_INLINES_HIDDEN ON
_arg_DEPENDS "${_arg_PLUGIN_DEPENDS}"
_arg_VERSION "${_arg_VERSION}"
QTC_PLUGIN_VERSION "${_arg_VERSION}"
BUILD_RPATH "${_PLUGIN_RPATH};${CMAKE_BUILD_RPATH}"
INSTALL_RPATH "${_PLUGIN_RPATH};${CMAKE_INSTALL_RPATH}"
LIBRARY_OUTPUT_DIRECTORY "${_output_binary_dir}/${plugin_dir}"
@@ -566,7 +606,8 @@ function(add_qtc_plugin target_name)
${_arg_PROPERTIES}
)
set_property(TARGET ${target_name} APPEND PROPERTY EXPORT_PROPERTIES "QTC_PLUGIN_CLASS_NAME")
set_property(TARGET ${target_name} APPEND PROPERTY EXPORT_PROPERTIES
"QTC_PLUGIN_CLASS_NAME;QTC_PLUGIN_VERSION")
if (NOT _arg_SKIP_PCH)
enable_pch(${target_name})

View File

@@ -23,7 +23,9 @@ list(APPEND DEFAULT_DEFINES
QT_NO_JAVA_STYLE_ITERATORS
QT_NO_CAST_TO_ASCII QT_RESTRICTED_CAST_FROM_ASCII QT_NO_FOREACH
QT_DISABLE_DEPRECATED_BEFORE=0x050900
QT_DISABLE_DEPRECATED_UP_TO=0x050900
QT_WARN_DEPRECATED_BEFORE=0x060400
QT_WARN_DEPRECATED_UP_TO=0x060400
QT_USE_QSTRINGBUILDER
)
@@ -354,33 +356,6 @@ function(add_qtc_depends target_name)
endforeach()
endfunction()
function(find_dependent_plugins varName)
set(_RESULT ${ARGN})
foreach(i ${ARGN})
if(NOT TARGET ${i})
continue()
endif()
get_property(_class_name TARGET "${i}" PROPERTY QTC_PLUGIN_CLASS_NAME)
if (NOT _class_name)
message(SEND_ERROR "${i} is a library, not a plugin!")
endif()
set(_dep)
get_property(_dep TARGET "${i}" PROPERTY _arg_DEPENDS)
if (_dep)
find_dependent_plugins(_REC ${_dep})
list(APPEND _RESULT ${_REC})
endif()
endforeach()
if (_RESULT)
list(REMOVE_DUPLICATES _RESULT)
list(SORT _RESULT)
endif()
set("${varName}" ${_RESULT} PARENT_SCOPE)
endfunction()
function(check_library_dependencies)
foreach(i ${ARGN})
if (NOT TARGET ${i})

View File

@@ -265,8 +265,8 @@ function(add_qtc_documentation qdocconf_file)
# Set up environment for qdoc:
set(QTC_VERSION "${IDE_VERSION_DISPLAY}")
set(QTCREATOR_COPYRIGHT_YEAR "${IDE_COPYRIGHT_YEAR}")
string(REPLACE "." "" QTC_VERSION_TAG "${IDE_VERSION}")
string(REPLACE "(C)" "<acronym title=\"Copyright\">&copy\\\;</acronym>" QTCREATOR_COPYRIGHT "${IDE_COPYRIGHT}")
set(QDOC_INDEX_DIR "${QT_INSTALL_DOCS}")
if (QT_INSTALL_DOCS_src)
set(QT_INSTALL_DOCS "${QT_INSTALL_DOCS_src}")
@@ -274,7 +274,7 @@ function(add_qtc_documentation qdocconf_file)
list(APPEND _qdoc_params ENVIRONMENT_EXPORTS
IDE_ID IDE_CASED_ID IDE_DISPLAY_NAME
QTC_DOCS_DIR QTC_VERSION QTC_VERSION_TAG
QTCREATOR_COPYRIGHT_YEAR
QTCREATOR_COPYRIGHT
QT_INSTALL_DOCS QDOC_INDEX_DIR
${_arg_ENVIRONMENT_EXPORTS}
)

View File

@@ -1,7 +1,6 @@
set(IDE_VERSION "14.0.2") # The IDE version.
set(IDE_VERSION_COMPAT "14.0.0") # The IDE Compatibility version.
set(IDE_VERSION_DISPLAY "14.0.2") # The IDE display version.
set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year.
set(IDE_VERSION "15.0.0") # The IDE version.
set(IDE_VERSION_COMPAT "15.0.0") # The IDE Compatibility version.
set(IDE_VERSION_DISPLAY "15.0.0") # The IDE display version.
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.
set(IDE_DISPLAY_NAME "Qt Creator") # The IDE display name.
@@ -9,7 +8,8 @@ set(IDE_ID "qtcreator") # The IDE id (no spaces, l
set(IDE_CASED_ID "QtCreator") # The cased IDE id (no spaces!)
set(IDE_BUNDLE_IDENTIFIER "org.qt-project.${IDE_ID}") # The macOS application bundle identifier.
set(IDE_APP_ID "org.qt-project.${IDE_ID}") # The free desktop application identifier.
set(IDE_AUTHOR "The Qt Company Ltd. and other contributors.")
set(IDE_COPYRIGHT "Copyright (C) ${IDE_AUTHOR}")
set(PROJECT_USER_FILE_EXTENSION .user)
set(IDE_DOC_FILE "qtcreator/qtcreator.qdocconf")

View File

@@ -1,7 +1,5 @@
# Defines function add_translation_targets
include(${CMAKE_CURRENT_LIST_DIR}/Utils.cmake)
function(_extract_ts_data_from_targets outprefix)
set(_sources "")
set(_includes "")
@@ -20,7 +18,9 @@ function(_extract_ts_data_from_targets outprefix)
if (NOT _skip_translation)
if(_include_dirs)
remove_generator_expressions(_include_dirs ${_include_dirs})
list(FILTER _include_dirs EXCLUDE REGEX "\\$<TARGET_PROPERTY")
list(FILTER _include_dirs EXCLUDE REGEX "\\$<INSTALL_INTERFACE")
list(TRANSFORM _include_dirs REPLACE "\\$<BUILD_INTERFACE:([^>]+)>" "\\1")
list(APPEND _includes ${_include_dirs})
endif()

View File

@@ -119,11 +119,3 @@ function(configure_qml_designer Qt6_VERSION)
endif()
endif()
endfunction()
function(remove_generator_expressions out_var list)
set(result ${list})
list(FILTER result EXCLUDE REGEX "\\$<TARGET_PROPERTY")
list(FILTER result EXCLUDE REGEX "\\$<INSTALL_INTERFACE")
list(TRANSFORM result REPLACE "\\$<BUILD_INTERFACE:([^>]+)>" "\\1")
set(${out_var} ${result} PARENT_SCOPE)
endfunction()

View File

@@ -1,48 +1,33 @@
type: Group
instructions:
- type: MakeDirectory
directory: "{{.AgentWorkingDir}}/build/qt_temp"
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_TEST_OPTION
variableValue: "--with-tests"
enable_if:
condition: property
property: features
not_contains_value: DisableTests
- type: Group
instructions:
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}/build/qt_temp/elfutils-release_0.175qt-linux-x86_64.7z https://master.qt.io/development_releases/prebuilt/elfutils/elfutils-release_0.175qt-linux-x86_64.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download elfutils package, check logs."
- type: ExecuteCommand
command: "7z x -y {{.AgentWorkingDir}}/build/qt_temp/elfutils-release_0.175qt-linux-x86_64.7z -o{{.AgentWorkingDir}}/build/qt_temp/elfutils"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract elfutils package, check logs."
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}/build/qt_temp/libclang.7z {{.Env.LLVM_BASE_URL}}-linux-Rhel8.6-gcc10.3-x86_64.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: "7z x -y {{.AgentWorkingDir}}/build/qt_temp/libclang.7z -o{{.AgentWorkingDir}}/build/qt_temp/"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
- type: ExecuteCommand
command: "python3 -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build.py --build-type {{.Env.QTC_BUILD_TYPE}} --src {{.AgentWorkingDir}}/qt-creator/qt-creator --build {{.AgentWorkingDir}}/qt-creator/qt-creator_build --qt-path {{.AgentWorkingDir}}/build/qt_install_dir --elfutils-path {{.AgentWorkingDir}}/build/qt_temp/elfutils --llvm-path {{.AgentWorkingDir}}/build/qt_temp/libclang {{.Env.QTC_TEST_OPTION}} --no-zip {{.Env.QTC_SCCACHE_C_OPTION}} {{.Env.QTC_SCCACHE_CXX_OPTION}} {{.Env.QTC_SCCACHE_ENABLE_OPTION}}"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build.py
--build-type {{.Env.QTC_BUILD_TYPE}}
--src {{.AgentWorkingDir}}/qt-creator/qt-creator
--build {{.AgentWorkingDir}}/qt-creator/qt-creator_build
--qt-path {{.AgentWorkingDir}}/build/qt_install_dir
--elfutils-path {{.AgentWorkingDir}}/build/qt_temp/elfutils
--llvm-path {{.AgentWorkingDir}}/build/qt_temp/libclang
{{.Env.QTC_TEST_OPTION}}
--no-zip
{{.Env.QTC_SCCACHE_C_OPTION}}
{{.Env.QTC_SCCACHE_CXX_OPTION}}
{{.Env.QTC_SCCACHE_ENABLE_OPTION}}
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to run build.py, check logs."
- type: ChangeDirectory
directory: "{{.AgentWorkingDir}}/build/tqtc-qtsdk/packaging_tools"
- type: ExecuteCommand
command: "python3 -m pipenv run python -u bld_sdktool.py --qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}} --qt-build {{.AgentWorkingDir}}/build/sdktool/qt --src {{.AgentWorkingDir}}/qt-creator/qt-creator/src/tools/sdktool --build {{.AgentWorkingDir}}/build/sdktool/build --install {{.AgentWorkingDir}}/build/sdktool/install --make-command ninja"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build_sdktool.py
--qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}}
--qt-build {{.AgentWorkingDir}}/build/sdktool/qt
--src {{.AgentWorkingDir}}/qt-creator/qt-creator/src/tools/sdktool
--build {{.AgentWorkingDir}}/build/sdktool/build
--install {{.AgentWorkingDir}}/build/sdktool/install
--make-command ninja
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to build sdktool, check logs."
@@ -52,34 +37,39 @@ instructions:
- condition: property
property: host.os
equals_value: Linux
- condition: property
property: target.compiler
in_values: [GCC]
- type: Group
instructions:
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}/build/qt_temp/libclang.7z {{.Env.LLVM_BASE_URL}}-macos-universal.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: "7z x -y {{.AgentWorkingDir}}/build/qt_temp/libclang.7z -o{{.AgentWorkingDir}}/build/qt_temp/"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
- type: ExecuteCommand
command: "python3 -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build.py --build-type {{.Env.QTC_BUILD_TYPE}} --src {{.AgentWorkingDir}}/qt-creator/qt-creator --build {{.AgentWorkingDir}}/qt-creator/qt-creator_build --qt-path {{.AgentWorkingDir}}/build/qt_install_dir --llvm-path {{.AgentWorkingDir}}/build/qt_temp/libclang --keychain-unlock-script /Users/qt/unlock-keychain.sh {{.Env.QTC_TEST_OPTION}} --no-zip {{.Env.QTC_SCCACHE_C_OPTION}} {{.Env.QTC_SCCACHE_CXX_OPTION}} {{.Env.QTC_SCCACHE_ENABLE_OPTION}}"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build.py
--build-type {{.Env.QTC_BUILD_TYPE}}
--src {{.AgentWorkingDir}}/qt-creator/qt-creator
--build {{.AgentWorkingDir}}/qt-creator/qt-creator_build
--qt-path {{.AgentWorkingDir}}/build/qt_install_dir
--llvm-path {{.AgentWorkingDir}}/build/qt_temp/libclang
--keychain-unlock-script /Users/qt/unlock-keychain.sh
{{.Env.QTC_TEST_OPTION}}
--no-zip
{{.Env.QTC_SCCACHE_C_OPTION}}
{{.Env.QTC_SCCACHE_CXX_OPTION}}
{{.Env.QTC_SCCACHE_ENABLE_OPTION}}
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to run build.py, check logs."
- type: ChangeDirectory
directory: "{{.AgentWorkingDir}}/build/tqtc-qtsdk/packaging_tools"
- type: EnvironmentVariable
variableName: MACOSX_DEPLOYMENT_TARGET
variableValue: "{{.Env.SDKTOOL_MACOSX_DEPLOYMENT_TARGET}}"
- type: ExecuteCommand
command: "python3 -m pipenv run python -u bld_sdktool.py --qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}} --qt-build {{.AgentWorkingDir}}/build/sdktool/qt --src {{.AgentWorkingDir}}/qt-creator/qt-creator/src/tools/sdktool --build {{.AgentWorkingDir}}/build/sdktool/build --install {{.AgentWorkingDir}}/build/sdktool/install --make-command ninja --universal"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/build_sdktool.py
--qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}}
--qt-build {{.AgentWorkingDir}}/build/sdktool/qt
--src {{.AgentWorkingDir}}/qt-creator/qt-creator/src/tools/sdktool
--build {{.AgentWorkingDir}}/build/sdktool/build
--install {{.AgentWorkingDir}}/build/sdktool/install
--make-command ninja
--universal
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to build sdktool, check logs."
@@ -91,64 +81,45 @@ instructions:
- type: Group
instructions:
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}\\build\\qt_temp\\elfutils-release_0.175qt-windows-x86_64.7z https://master.qt.io/development_releases/prebuilt/elfutils/elfutils-release_0.175qt-windows-x86_64.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download elfutils package, check logs."
- type: ExecuteCommand
command: "7z.exe x -y {{.AgentWorkingDir}}\\build\\qt_temp\\elfutils-release_0.175qt-windows-x86_64.7z -o{{.AgentWorkingDir}}\\build\\qt_temp\\elfutils"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract elfutils package, check logs."
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}\\build\\qt_temp\\Python38-win-x64.7z https://master.qt.io/development_releases/prebuilt/python/Python38-win-x64.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download python package, check logs."
- type: ExecuteCommand
command: "7z.exe x -y {{.AgentWorkingDir}}\\build\\qt_temp\\Python38-win-x64.7z -o{{.AgentWorkingDir}}\\build\\qt_temp\\python"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract python package, check logs."
- type: ExecuteCommand
command: "curl --fail -L --retry 5 --retry-delay 5 -o {{.AgentWorkingDir}}\\build\\qt_temp\\libclang.7z {{.Env.LLVM_BASE_URL}}-windows-vs2019_64.7z"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: "7z.exe x -y {{.AgentWorkingDir}}\\build\\qt_temp\\libclang.7z -o{{.AgentWorkingDir}}\\build\\qt_temp\\"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
- type: ExecuteCommand
command: "python -u {{.AgentWorkingDir}}\\qt-creator\\qt-creator\\scripts\\build.py --build-type {{.Env.QTC_BUILD_TYPE}} --src {{.AgentWorkingDir}}\\qt-creator\\qt-creator --build {{.AgentWorkingDir}}\\qt-creator\\qt-creator_build --qt-path {{.AgentWorkingDir}}/build/qt_install_dir --python-path {{.AgentWorkingDir}}\\build\\qt_temp\\python --elfutils-path {{.AgentWorkingDir}}\\buid\\qt_temp\\elfutils --llvm-path {{.AgentWorkingDir}}\\build\\qt_temp\\libclang {{.Env.QTC_TEST_OPTION}} --no-zip {{.Env.QTC_SCCACHE_C_OPTION}} {{.Env.QTC_SCCACHE_CXX_OPTION}} {{.Env.QTC_SCCACHE_ENABLE_OPTION}}"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}\qt-creator\qt-creator\scripts\build.py
--build-type {{.Env.QTC_BUILD_TYPE}}
--src {{.AgentWorkingDir}}\qt-creator\qt-creator
--build {{.AgentWorkingDir}}\qt-creator\qt-creator_build
--qt-path {{.AgentWorkingDir}}/build/qt_install_dir
--python-path {{.AgentWorkingDir}}\build\qt_temp\python
--add-config=-DPythonTargetx64Dll={{.AgentWorkingDir}}\build\qt_temp\python-amd64\python311.dll
--add-config=-DPythonTargetarm64Dll={{.AgentWorkingDir}}\build\qt_temp\python-arm64\python311.dll
--add-config=-DPythonTargetwin32Dll={{.AgentWorkingDir}}\build\qt_temp\python-win32\python311.dll
--elfutils-path {{.AgentWorkingDir}}/buid/qt_temp/elfutils
--llvm-path {{.AgentWorkingDir}}/build/qt_temp/libclang
--no-zip
{{.Env.QTC_TEST_OPTION}}
{{.Env.QTC_SCCACHE_C_OPTION}}
{{.Env.QTC_SCCACHE_CXX_OPTION}}
{{.Env.QTC_SCCACHE_ENABLE_OPTION}}
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to run build.py, check logs."
- type: ChangeDirectory
directory: "{{.AgentWorkingDir}}\\build\\tqtc-qtsdk\\packaging_tools"
- type: ExecuteCommand
command: "python -m pipenv run python -u bld_sdktool.py --qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}} --qt-build {{.AgentWorkingDir}}\\build\\sdktool\\qt --src {{.AgentWorkingDir}}\\qt-creator\\qt-creator\\src\\tools\\sdktool --build {{.AgentWorkingDir}}\\build\\sdktool\\build --install {{.AgentWorkingDir}}\\build\\sdktool\\install --make-command ninja"
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}\qt-creator\qt-creator\scripts\build_sdktool.py
--qt-url {{.Env.QTC_SDKTOOL_QT_BASE_URL}}{{.Env.QTC_SDKTOOL_QT_EXT}}
--qt-build {{.AgentWorkingDir}}\build\sdktool\qt
--src {{.AgentWorkingDir}}\qt-creator\qt-creator\src\tools\sdktool
--build {{.AgentWorkingDir}}\build\sdktool\build
--install {{.AgentWorkingDir}}\build\sdktool\install
--make-command ninja
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "Failed to build sdktool, check logs."
enable_if:
condition: and
conditions:
- condition: property
property: target.compiler
in_values: [MSVC2013, MSVC2015, MSVC2017, MSVC2019]
- condition: property
property: target.arch
equals_value: X86_64
condition: property
property: host.os
equals_value: Windows
- type: UploadArtifact
archiveDirectory: "{{.AgentWorkingDir}}/qt-creator/qt-creator_build/build"
transferType: UploadModuleBuildArtifact
maxTimeInSeconds: 1800
maxTimeBetweenOutput: 1800
enable_if:
condition: property
property: features
not_contains_value: "Qt5"

View File

@@ -2,59 +2,195 @@ type: Group
instructions:
- type: Group
instructions:
# Currently used Qt version for packaging ...
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_BASE_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/qt/6.8.0/release_content/"
- type: EnvironmentVariable
variableName: MACOSX_DEPLOYMENT_TARGET
variableValue: 12.0
enable_if:
condition: property
property: features
not_contains_value: "OldestQt"
# ... or oldest supported Qt version
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_BASE_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/qt/6.4.3/release_content/"
- type: EnvironmentVariable
variableName: MACOSX_DEPLOYMENT_TARGET
variableValue: 11.0
enable_if:
condition: property
property: features
contains_value: "OldestQt"
- type: SetBuildDirectory
directory: "{{.AgentWorkingDir}}/build"
- type: MakeDirectory
directory: "{{.BuildDir}}"
- type: EnvironmentVariable
variableName: QTC_BUILD_TYPE
variableValue: "RelWithDebInfo"
- type: EnvironmentVariable
variableName: LLVM_BASE_URL
variableValue: https://ci-files02-hki.ci.qt.io/packages/jenkins/qtcreator_libclang/libclang-release_18.1.7-based
- type: EnvironmentVariable
variableName: QTC_QT_BASE_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/archive/qt/6.7/6.7.2-released/Qt"
variableValue: https://ci-files02-hki.ci.qt.io/packages/jenkins/qtcreator_libclang/libclang-release_19.1.0-based
- type: EnvironmentVariable
variableName: QTC_QT_MODULES
variableValue: "qt5compat qtbase qtdeclarative qtimageformats qtquick3d qtquicktimeline qtserialport qtshadertools qtsvg qttools qttranslations qtwebengine"
- type: EnvironmentVariable
variableName: MACOSX_DEPLOYMENT_TARGET
variableValue: 11.0
- type: EnvironmentVariable
variableName: SDKTOOL_MACOSX_DEPLOYMENT_TARGET
variableValue: 11.0
- type: EnvironmentVariable
variableName: QTC_SDKTOOL_QT_BASE_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/archive/qt/6.6/6.6.0-released/Qt/src/submodules/qtbase-everywhere-src-6.6.0"
- type: EnvironmentVariable
variableName: GOFLAGS
variableValue: "-buildvcs=false"
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-Windows-Windows_10_22H2-MSVC2019-Windows-Windows_10_22H2-X86_64.7z"
variableValue: "-Windows-Windows_11_23H2-MSVC2022-Windows-Windows_11_23H2-X86_64.7z"
enable_if:
condition: property
property: features
not_contains_value: "OldestQt"
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-Windows-Windows_11_22H2-MSVC2019-Windows-Windows_11_22H2-X86_64.7z"
enable_if:
condition: property
property: features
contains_value: "OldestQt"
- type: EnvironmentVariable
variableName: QTC_SDKTOOL_QT_EXT
variableValue: ".zip"
- type: EnvironmentVariable
variableName: QTC_ELFUTILS_URL
variableValue: "https://master.qt.io/development_releases/prebuilt/elfutils/elfutils-release_0.175qt-windows-x86_64.7z"
- type: EnvironmentVariable
variableName: QTC_LLVM_POSTFIX
variableValue: "-windows-vs2019_64.7z"
- type: EnvironmentVariable
variableName: PYTHON_EXECUTABLE
variableValue: "python"
enable_if:
condition: property
property: target.os
equals_value: Windows
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z"
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-Linux-RHEL_8_8-GCC-Linux-RHEL_8_8-X86_64.7z"
- type: EnvironmentVariable
variableName: QTC_ICU_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/icu/prebuilt/73.2/icu-linux-g++-Rhel8.6-x64.7z"
enable_if:
condition: property
property: features
not_contains_value: "OldestQt"
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-Linux-RHEL_8_4-GCC-Linux-RHEL_8_4-X86_64.7z"
- type: EnvironmentVariable
variableName: QTC_ICU_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/icu/prebuilt/56.1/icu-linux-g++-Rhel7.2-x64.7z"
enable_if:
condition: property
property: features
contains_value: "OldestQt"
- type: EnvironmentVariable
variableName: QTC_SDKTOOL_QT_EXT
variableValue: ".tar.xz"
- type: EnvironmentVariable
variableName: QTC_ELFUTILS_URL
variableValue: "https://master.qt.io/development_releases/prebuilt/elfutils/elfutils-release_0.175qt-linux-x86_64.7z"
- type: EnvironmentVariable
variableName: QTC_LLVM_POSTFIX
variableValue: "-linux-Rhel8.8-gcc10.3-x86_64.7z"
- type: EnvironmentVariable
variableName: PYTHON_EXECUTABLE
variableValue: "python3"
# RHEL 8.10 comes with Python 3.6, we need explicitly python3.11
- type: EnvironmentVariable
variableName: PYTHON_EXECUTABLE
variableValue: "python3.11"
enable_if:
condition: property
property: host.osVersion
contains_value: "RHEL"
enable_if:
condition: property
property: target.os
equals_value: Linux
condition: and
conditions:
- condition: property
property: target.os
equals_value: Linux
- condition: property
property: target.arch
equals_value: X86_64
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-MacOS-MacOS_13-Clang-MacOS-MacOS_13-X86_64-ARM64.7z"
variableValue: "-Linux-Debian_11_6-GCC-Linux-Debian_11_6-AARCH64.7z"
- type: EnvironmentVariable
variableName: QTC_SDKTOOL_QT_EXT
variableValue: ".tar.xz"
- type: EnvironmentVariable
variableName: QTC_ELFUTILS_URL
variableValue: "https://master.qt.io/development_releases/prebuilt/elfutils/elfutils-release_0.175qt-linux-arm64.7z"
- type: EnvironmentVariable
variableName: QTC_LLVM_POSTFIX
variableValue: "-linux-Debian-11.6-gcc10.2-arm64.7z"
- type: EnvironmentVariable
variableName: QTC_ICU_URL
variableValue: "https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/icu/prebuilt/73.2/icu-linux-g++-Debian11.6-aarch64.7z"
- type: EnvironmentVariable
variableName: PYTHON_EXECUTABLE
variableValue: "python3"
enable_if:
condition: and
conditions:
- condition: property
property: target.os
equals_value: Linux
- condition: property
property: target.arch
equals_value: AARCH64
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-MacOS-MacOS_14-Clang-MacOS-MacOS_14-X86_64-ARM64.7z"
enable_if:
condition: property
property: features
not_contains_value: "OldestQt"
- type: EnvironmentVariable
variableName: QTC_QT_POSTFIX
variableValue: "-MacOS-MacOS_12-Clang-MacOS-MacOS_12-X86_64-ARM64.7z"
enable_if:
condition: property
property: features
contains_value: "OldestQt"
- type: EnvironmentVariable
variableName: QTC_SDKTOOL_QT_EXT
variableValue: ".tar.xz"
- type: EnvironmentVariable
variableName: QTC_LLVM_POSTFIX
variableValue: "-macos-universal.7z"
- type: EnvironmentVariable
variableName: PYTHON_EXECUTABLE
variableValue: "python3"
enable_if:
condition: property
property: target.os
@@ -74,6 +210,15 @@ instructions:
condition: property
property: features
contains_value: Sccache
- type: Group
instructions:
- type: EnvironmentVariable
variableName: QTC_TEST_OPTION
variableValue: "--with-tests"
enable_if:
condition: property
property: features
not_contains_value: DisableTests
- type: Group
instructions:
@@ -112,8 +257,3 @@ instructions:
condition: property
property: host.os
equals_value: Linux
enable_if:
condition: property
property: features
not_contains_value: "Qt5"

View File

@@ -1,82 +1,192 @@
type: Group
instructions:
- type: MakeDirectory
directory: ".git"
- type: SetBuildDirectory
directory: "{{.SourceDir}}"
disable_if:
condition: property
property: features
contains_value: OutOfSourceBuild
directory: "{{.AgentWorkingDir}}/build/qt_temp"
- type: Group
instructions:
- type: SetBuildDirectory
directory: "{{.AgentWorkingDir}}/build"
- type: MakeDirectory
directory: "{{.BuildDir}}"
- type: ChangeDirectory
directory: "{{.BuildDir}}"
- type: InstallSourceArchive
maxTimeInSeconds: 600
maxTimeBetweenOutput: 600
project: qtsdk/tqtc-qtsdk
ref: production
directory: "build/tqtc-qtsdk"
userMessageOnFailure: "Failed to install tqtc-qtsdk, check logs"
- type: Group
instructions:
- type: ExecuteCommand
command: python tqtc-qtsdk/jenkins-templates/jenkins/scripts/pkg_bootstrap.py
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "pkg_bootstrap.py failed"
enable_if:
condition: and
conditions:
- condition: property
property: host.os
equals_value: Windows
- type: Group
instructions:
- type: ExecuteCommand
command: python3 tqtc-qtsdk/jenkins-templates/jenkins/scripts/pkg_bootstrap.py
maxTimeInSeconds: 36000
maxTimeBetweenOutput: 3600
userMessageOnFailure: "pkg_bootstrap.py failed"
enable_if:
condition: and
conditions:
- condition: property
property: host.os
not_equals_value: Windows
- type: ChangeDirectory
directory: "{{.BuildDir}}/tqtc-qtsdk/packaging_tools"
- type: ExecuteCommand
command: "python3 -m pipenv run python -u install_qt.py --qt-path {{.BuildDir}}/qt_install_dir --base-url {{.Env.QTC_QT_BASE_URL}} --base-url-postfix={{.Env.QTC_QT_POSTFIX}} --icu7z https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/icu/prebuilt/56.1/icu-linux-g++-Rhel7.2-x64.7z {{.Env.QTC_QT_MODULES}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: ExecuteCommand
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/install_qt.py
--qt-path {{.BuildDir}}/qt_install_dir
--base-url {{.Env.QTC_QT_BASE_URL}}
--base-url-postfix={{.Env.QTC_QT_POSTFIX}}
--icu7z {{.Env.QTC_ICU_URL}}
{{.Env.QTC_QT_MODULES}}
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}/build/qt_temp/elfutils.7z
{{.Env.QTC_ELFUTILS_URL}}
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download elfutils package, check logs."
- type: ExecuteCommand
command: >-
7z x -y {{.AgentWorkingDir}}/build/qt_temp/elfutils.7z
-o{{.AgentWorkingDir}}/build/qt_temp/elfutils
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract elfutils package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}/build/qt_temp/libclang.7z
{{.Env.LLVM_BASE_URL}}{{.Env.QTC_LLVM_POSTFIX}}
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: "7z x -y {{.AgentWorkingDir}}/build/qt_temp/libclang.7z -o{{.AgentWorkingDir}}/build/qt_temp/"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
enable_if:
condition: property
property: host.os
equals_value: Linux
- type: ExecuteCommand
command: "python3 -m pipenv run python -u install_qt.py --qt-path {{.BuildDir}}/qt_install_dir --base-url {{.Env.QTC_QT_BASE_URL}} --base-url-postfix={{.Env.QTC_QT_POSTFIX}} {{.Env.QTC_QT_MODULES}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: Group
instructions:
- type: ExecuteCommand
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}/qt-creator/qt-creator/scripts/install_qt.py
--qt-path {{.BuildDir}}/qt_install_dir
--base-url {{.Env.QTC_QT_BASE_URL}}
--base-url-postfix={{.Env.QTC_QT_POSTFIX}}
{{.Env.QTC_QT_MODULES}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}/build/qt_temp/libclang.7z
{{.Env.LLVM_BASE_URL}}{{.Env.QTC_LLVM_POSTFIX}}
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: "7z x -y {{.AgentWorkingDir}}/build/qt_temp/libclang.7z -o{{.AgentWorkingDir}}/build/qt_temp/"
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
enable_if:
condition: property
property: host.os
equals_value: MacOS
- type: ExecuteCommand
command: "python -m pipenv run python -u install_qt.py --qt-path {{.BuildDir}}/qt_install_dir --base-url {{.Env.QTC_QT_BASE_URL}} --base-url-postfix={{.Env.QTC_QT_POSTFIX}} --opengl32sw7z https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/llvmpipe/windows/opengl32sw-64.7z --d3dcompiler7z https://ci-files02-hki.ci.qt.io/packages/jenkins/development_releases/prebuilt/d3dcompiler/msvc2013/d3dcompiler_47-x64.7z --openssl7z https://ci-files02-hki.ci.qt.io/packages/jenkins/openssl/openssl_1.1.1d_prebuild_x64.7z {{.Env.QTC_QT_MODULES}}"
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: Group
instructions:
- type: ExecuteCommand
command: >-
{{.Env.PYTHON_EXECUTABLE}} -u {{.AgentWorkingDir}}\qt-creator\qt-creator\scripts\install_qt.py
--qt-path {{.BuildDir}}/qt_install_dir
--base-url {{.Env.QTC_QT_BASE_URL}}
--base-url-postfix={{.Env.QTC_QT_POSTFIX}}
{{.Env.QTC_QT_MODULES}}
executeCommandArgumentSplitingBehavior: SplitAfterVariableSubstitution
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to install qt, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\elfutils.7z
{{.Env.QTC_ELFUTILS_URL}}
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download elfutils package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\elfutils.7z
-o{{.AgentWorkingDir}}\build\qt_temp\elfutils
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract elfutils package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\Python311-win-x64.7z
https://master.qt.io/development_releases/prebuilt/python/Python311-win-x64.7z
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download python package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\Python311-win-x64.7z
-o{{.AgentWorkingDir}}\build\qt_temp\python
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract python package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-amd64.zip
https://master.qt.io/development_releases/prebuilt/python/python-3.11.9-embed-amd64.zip
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download python package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-amd64.zip
-o{{.AgentWorkingDir}}\build\qt_temp\python-amd64
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract python package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-arm64.zip
https://master.qt.io/development_releases/prebuilt/python/python-3.11.9-embed-arm64.zip
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download python package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-arm64.zip
-o{{.AgentWorkingDir}}\build\qt_temp\python-arm64
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract python package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-win32.zip
https://master.qt.io/development_releases/prebuilt/python/python-3.11.9-embed-win32.zip
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download python package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\python-3.11.9-embed-win32.zip
-o{{.AgentWorkingDir}}\build\qt_temp\python-win32
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract python package, check logs."
- type: ExecuteCommand
command: >-
curl --fail -L --retry 5 --retry-delay 5
-o {{.AgentWorkingDir}}\build\qt_temp\libclang.7z
{{.Env.LLVM_BASE_URL}}{{.Env.QTC_LLVM_POSTFIX}}
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to download LLVM package, check logs."
- type: ExecuteCommand
command: >-
7z.exe x -y
{{.AgentWorkingDir}}\build\qt_temp\libclang.7z
-o{{.AgentWorkingDir}}\build\qt_temp
maxTimeInSeconds: 3600
maxTimeBetweenOutput: 360
userMessageOnFailure: "Failed to extract LLVM package, check logs."
enable_if:
condition: and
conditions:
@@ -86,8 +196,3 @@ instructions:
- condition: property
property: target.arch
equals_value: X86_64
enable_if:
condition: property
property: features
not_contains_value: "Qt5"

View File

@@ -13,7 +13,3 @@ instructions:
maxTimeInSeconds: 600
maxTimeBetweenOutput: 600
userMessageOnFailure: "Failed to run tests, check logs"
enable_if:
condition: property
property: features
not_contains_value: "Qt5"

View File

@@ -1,34 +1,4 @@
version: 2
accept_configuration:
condition: or
conditions:
- condition: property
property: features
contains_value: LicenseCheck
- condition: and
conditions:
- condition: property
property: host.os
equals_value: Windows
- condition: property
property: host
equals_property: target
- condition: property
property: target.compiler
equals_value: MSVC2019
- condition: property
property: target.arch
not_equals_value: X86
- condition: and
conditions:
- condition: property
property: host.os
equals_value: Linux
- condition: and
conditions:
- condition: property
property: host.os
equals_value: MacOS
machine_type:
Build:

View File

@@ -1,4 +1,3 @@
dependencies:
../../qt/qt5.git:
ref: "6.7"
ref: "6.8"

View File

@@ -1,7 +1,6 @@
set(IDE_VERSION "4.7.0") # The IDE version.
set(IDE_VERSION_COMPAT "4.7.0") # The IDE Compatibility version.
set(IDE_VERSION_DISPLAY "4.7") # The IDE display version.
set(IDE_COPYRIGHT_YEAR "2024") # The IDE current copyright year.
set(IDE_SETTINGSVARIANT "QtProject") # The IDE settings variation.
set(IDE_COPY_SETTINGSVARIANT "Nokia") # The IDE settings to initially import.
@@ -10,6 +9,8 @@ set(IDE_ID "qtdesignstudio") # The IDE id (no spaces, l
set(IDE_CASED_ID "QtDesignStudio") # The cased IDE id (no spaces!)
set(IDE_BUNDLE_IDENTIFIER "org.qt-project.${IDE_ID}") # The macOS application bundle identifier.
set(IDE_APP_ID "io.qt.${IDE_ID}") # The free desktop application identifier.
set(IDE_AUTHOR "The Qt Company Ltd. and other contributors.")
set(IDE_COPYRIGHT "Copyright (C) ${IDE_AUTHOR}")
set(PROJECT_USER_FILE_EXTENSION .qtds)
set(IDE_DOC_FILE "qtdesignstudio/qtdesignstudio.qdocconf")

121
dist/changelog/changes-14.0.2.md vendored Normal file
View File

@@ -0,0 +1,121 @@
Qt Creator 14.0.2
=================
Qt Creator version 14.0.2 contains bug fixes.
The most important changes are listed in this document. For a complete list of
changes, see the Git log for the Qt Creator sources that you can check out from
the public Git repository. For example:
<https://code.qt.io/cgit/qt-creator/qt-creator.git/log/?id=v14.0.1..v14.0.2>
Editing
-------
* Fixed performance issues when long lines are highlighted
* Fixed a crash after completion
(QTCREATORBUG-31563)
### C++
* Fixed generating getters and setters for static pointer members
(QTCREATORBUG-27547)
* Fixed a crash while parsing
(QTCREATORBUG-31569)
* Built-in
* Fixed an issue with empty lists in member initializations
(QTCREATORBUG-30797)
* Fixed an issue with empty lists in the placement version of `new`
(QTCREATORBUG-30798)
### QML
* Fixed that automatic formatting on save with `qmlformat` ignored
`.qmlformat.ini`
(QTCREATORBUG-29668)
* `qmlls`
* Fixed semantic highlighting
(QTCREATORBUG-31148)
* Fixed that enabling `qmlls` disabled code snippets
(QTCREATORBUG-31322)
### Python
* Fixed the state of the `Generate Kit` button
### Language Server Protocol
* Fixed the line number for diagnostics
### Widget Designer
* Fixed issues with switching to Design mode when external editor windows are
open
(QTCREATORBUG-31378)
* Fixed a crash when renaming widgets
(QTCREATORBUG-31519)
Projects
--------
* Fixed a crash when editing the project environment
(QTCREATORBUG-31483)
### CMake
* Fixed that `Clear CMake Configuration` was visible regardless of the used
build system
* Presets
* Fixed the handling of the `PATH` environment variable
(QTCREATORBUG-31439)
### vcpkg
* Fixed that the wrong `vcpkg` executable could be used
Debugging
---------
### C++
* CDB
* Fixed the debugging of 32bit applications
(QTCREATORBUG-31345)
Platforms
---------
### Windows
* Fixed the detection of ARM compilers and debuggers
### Android
* Fixed that the debugger could be interrupted a lot during startup
(QTCREATORBUG-29928)
### Remote Linux
* Fixed that deployment with `rsync` preserved owner, group, and permissions
(QTCREATORBUG-31138)
Credits for these changes go to:
--------------------------------
Alessandro Portale
Alexandre Laurent
Aurélien Brooke
Christian Kandeler
Christian Stenger
Cristian Adam
David Schulz
Eike Ziller
Friedemann Kleint
Jaroslaw Kobus
Jussi Witick
Leena Miettinen
Marcus Tillmanns
Oliver Wolff
Orgad Shaneh
Robert Löhning
Sami Shalayel
Semih Yavuz

388
dist/changelog/changes-15.0.0.md vendored Normal file
View File

@@ -0,0 +1,388 @@
Qt Creator 15
=============
Qt Creator version 15 contains bug fixes and new features.
The most important changes are listed in this document. For a complete list of
changes, see the Git log for the Qt Creator sources that you can check out from
the public Git repository or view online at
<https://code.qt.io/cgit/qt-creator/qt-creator.git/log/?id=14.0..v15.0.0>
General
-------
* Changed the default MIME types to the Apache Tika MIME type database
* Added the option to hide modes (`View > Modes` and the context menu on the
mode selector)
* Added the option to exclude binary files in `Search Results`
([QTCREATORBUG-1756](https://bugreports.qt.io/browse/QTCREATORBUG-1756))
* Added new dark and light themes
([Blog Post](https://www.qt.io/blog/review-new-themes-for-qt-creator))
* Added `Tools > Scripting > New Script` for creating Lua based Qt Creator
scripts
([Documentation](https://doc-snapshots.qt.io/qtcreator-15.0/creator-how-to-create-lua-scripts.html))
* Plugins
* Added `DocumentationUrl` and new mandatory fields `Id` and `VendorId`
to the plugin meta data
* Changed the plugin descriptions to Markdown in
`Help > About Plugins > Details` and `Extensions` mode
* Extended the API available to Lua plugins
([Documentation](https://doc-snapshots.qt.io/qtcreator-extending/lua-extensions.html))
* Prebuilt binaries
* Added opt-in crash reporting to
`Edit > Preferences > Environment > System`
([Documentation](https://doc-snapshots.qt.io/qtcreator-15.0/creator-how-to-turn-on-crash-reports.html))
Editing
-------
* Added actions for opening the next and previous documents from the
`Open Documents` view
([QTCREATORBUG-1208](https://bugreports.qt.io/browse/QTCREATORBUG-1208))
* Added actions for moving and sorting bookmarks in the `Bookmarks` view
([QTCREATORBUG-30286](https://bugreports.qt.io/browse/QTCREATORBUG-30286))
* Added the folding actions to the context menu on the folding marks
([QTCREATORBUG-7461](https://bugreports.qt.io/browse/QTCREATORBUG-7461))
* Added `Fold Recursively` and `Unfold Recursively`
* Fixed the display of multi-line annotations
([QTCREATORBUG-29951](https://bugreports.qt.io/browse/QTCREATORBUG-29951))
* Fixed the tab order in `Advanced Search`
([QTCREATORBUG-31771](https://bugreports.qt.io/browse/QTCREATORBUG-31771))
### C++
* Added a syntax highlighting style for C++ attributes
* Merged the `C` and `C++` compiler categories
([QTCREATORBUG-31132](https://bugreports.qt.io/browse/QTCREATORBUG-31132),
[QTCREATORBUG-30630](https://bugreports.qt.io/browse/QTCREATORBUG-30630))
* Fixed that `Clang` was preferred over `GCC` on Linux when automatically
assigning toolchains to kits
([QTCREATORBUG-29913](https://bugreports.qt.io/browse/QTCREATORBUG-29913))
* Fixed that include statements could be added before `#pragma once`
([QTCREATORBUG-30808](https://bugreports.qt.io/browse/QTCREATORBUG-30808))
* Fixed that symbol locations could be mixed up between different open projects
([QTCREATORBUG-19636](https://bugreports.qt.io/browse/QTCREATORBUG-19636))
* Fixed issues with code folding and `ifdef` statements
([QTCREATORBUG-21064](https://bugreports.qt.io/browse/QTCREATORBUG-21064))
* Fixed the indentation after multi-line comments
([QTCREATORBUG-31256](https://bugreports.qt.io/browse/QTCREATORBUG-31256))
* Fixed the display of annotations with array operators
([QTCREATORBUG-31670](https://bugreports.qt.io/browse/QTCREATORBUG-31670))
* Fixed code formatting after `Apply Changes to Declaration / Definition`
([QTCREATORBUG-31293](https://bugreports.qt.io/browse/QTCREATORBUG-31293))
* ClangFormat
* Implemented `Export` and `Import` for the settings
### QML
* Moved the option for creating Qt Design Studio compatible projects from the
`Qt Quick Application` to the `Qt Quick UI Prototype` wizard
([QTCREATORBUG-31355](https://bugreports.qt.io/browse/QTCREATORBUG-31355),
[QTCREATORBUG-31657](https://bugreports.qt.io/browse/QTCREATORBUG-31657))
* Fixed the indentation of files created by `Move Component into Separate File`
([QTCREATORBUG-31084](https://bugreports.qt.io/browse/QTCREATORBUG-31084))
### Language Server Protocol
* Fixed that global environment changes were not applied to language servers
### Copilot
* Fixed the application of multi-line suggestions
([QTCREATORBUG-31418](https://bugreports.qt.io/browse/QTCREATORBUG-31418))
### Compiler Explorer
* Added the option to change the server URL
([QTCREATORBUG-31261](https://bugreports.qt.io/browse/QTCREATORBUG-31261))
([Documentation](https://doc.qt.io/qtcreator/creator-how-to-explore-compiler-code.html))
### Lua
* Added an interactive shell (REPL) as an output view
### SCXML
* Made names and conditions movable
([QTCREATORBUG-31397](https://bugreports.qt.io/browse/QTCREATORBUG-31397))
* Fixed that the colors didn't follow the theme
([QTCREATORBUG-29701](https://bugreports.qt.io/browse/QTCREATORBUG-29701))
### Binary Files
* Fixed searching text when a codec is set
([QTCREATORBUG-30589](https://bugreports.qt.io/browse/QTCREATORBUG-30589))
Projects
--------
* Removed the Qt Linguist related external tool items, which did not work for
CMake
([QTCREATORBUG-28467](https://bugreports.qt.io/browse/QTCREATORBUG-28467))
* Improved the performance of compile and application output parsing and added
the option to `Discard excessive output`
([QTCREATORBUG-30135](https://bugreports.qt.io/browse/QTCREATORBUG-30135),
[QTCREATORBUG-31449](https://bugreports.qt.io/browse/QTCREATORBUG-31449))
* Improved the display of toolchains in the kit options by sorting and showing
issue icons
* Improved the warning against editing files that are not part of the project
([QTCREATORBUG-31542](https://bugreports.qt.io/browse/QTCREATORBUG-31542))
* Added `Create Header File` and `Create Source File` to the context menu
for source files and header files in the project tree respectively
([QTCREATORBUG-24575](https://bugreports.qt.io/browse/QTCREATORBUG-24575))
* Added the option to deploy dependent projects
([QTCREATORBUG-27406](https://bugreports.qt.io/browse/QTCREATORBUG-27406))
* Added the option to run build and deploy steps as root user
([QTCREATORBUG-31012](https://bugreports.qt.io/browse/QTCREATORBUG-31012))
* Added `Copy Contents to Scratch Buffer` to the context menu of output views
([QTCREATORBUG-31144](https://bugreports.qt.io/browse/QTCREATORBUG-31144))
* Added the list of open files to the session overview, for sessions that
do not have any projects
([QTCREATORBUG-7660](https://bugreports.qt.io/browse/QTCREATORBUG-7660))
* Added the project names to the `Recent Projects` menu
([QTCREATORBUG-31753](https://bugreports.qt.io/browse/QTCREATORBUG-31753))
* Fixed issues with creating subprojects for non-active projects
* Fixed that the wizards were asking for a build system type when creating
subprojects
([QTCREATORBUG-30281](https://bugreports.qt.io/browse/QTCREATORBUG-30281))
* Fixed that new build configurations could use the wrong build directory
([QTCREATORBUG-31470](https://bugreports.qt.io/browse/QTCREATORBUG-31470))
* Fixed that temporary kits could stay around
([QTCREATORBUG-31461](https://bugreports.qt.io/browse/QTCREATORBUG-31461))
* Fixed that Qt Creator could freeze while trying to stop a user application
([QTCREATORBUG-31319](https://bugreports.qt.io/browse/QTCREATORBUG-31319))
* Fixed that the application exit code was not shown after grazefully
terminating it
([QTCREATORBUG-31141](https://bugreports.qt.io/browse/QTCREATORBUG-31141))
* Fixed a focus issue when renaming files
([QTCREATORBUG-30926](https://bugreports.qt.io/browse/QTCREATORBUG-30926))
### CMake
* Implemented `New Subproject` for CMake projects
([QTCREATORBUG-30471](https://bugreports.qt.io/browse/QTCREATORBUG-30471),
[QTCREATORBUG-30818](https://bugreports.qt.io/browse/QTCREATORBUG-30818))
* Added support for the `FOLDER` property of targets
([QTCREATORBUG-28873](https://bugreports.qt.io/browse/QTCREATORBUG-28873))
* Added groups for resources when `Package manager auto setup` is enabled
(opt-out)
([QTCREATORBUG-31308](https://bugreports.qt.io/browse/QTCREATORBUG-31308),
[QTCREATORBUG-31312](https://bugreports.qt.io/browse/QTCREATORBUG-31312))
* Added `CMakeLists.txt` items to targets in the `Projects` tree, to the point
where they are defined
([QTCREATORBUG-31362](https://bugreports.qt.io/browse/QTCREATORBUG-31362))
* Added `Open...` to CMake folders in the `Projects` tree
([QTCREATORBUG-31362](https://bugreports.qt.io/browse/QTCREATORBUG-31362))
* Added `Build`, `Rebuild`, and `Clean` operations for subprojects to the
`Build` menu and `Projects` tree
([QTCREATORBUG-27588](https://bugreports.qt.io/browse/QTCREATORBUG-27588))
* Added the parsing of `AUTOMOC` and `AUTOUIC` warnings and errors
([QTCREATORBUG-29345](https://bugreports.qt.io/browse/QTCREATORBUG-29345),
[QTCREATORBUG-31597](https://bugreports.qt.io/browse/QTCREATORBUG-31597))
* Added the option of opening `CMakeCache.txt` to open the project
([QTCREATORBUG-24439](https://bugreports.qt.io/browse/QTCREATORBUG-24439),
[QTCREATORBUG-30507](https://bugreports.qt.io/browse/QTCREATORBUG-30507))
* Fixed the option `Build Only the Application to Be Run` for the
`Build before deploying` preferences
([QTCREATORBUG-31416](https://bugreports.qt.io/browse/QTCREATORBUG-31416))
* Fixed the `vcpkg` support for Android
([QTCREATORBUG-31883](https://bugreports.qt.io/browse/QTCREATORBUG-31883))
### Workspace
* Added the option to add build configurations into
`Projects > Build & Run > Build > Add`
([Documentation](https://doc.qt.io/qtcreator/creator-project-opening.html))
* Added automatic updating of the project tree in `Projects`
* Fixed that cloned run configurations were not editable
### vcpkg
* Fixed the detection of `VCPKG_TARGET_TRIPLET` on ARM macOS
Debugging
---------
* Added `Disable All Breakpoints` to the debugger toolbar
* Fixed that the port range for debugging was not customizable for the
desktop
([QTCREATORBUG-31406](https://bugreports.qt.io/browse/QTCREATORBUG-31406))
* Fixed the unfolding of items in the debugger tooltip
([QTCREATORBUG-31250](https://bugreports.qt.io/browse/QTCREATORBUG-31250))
* Fixed issues with breakpoints in threads
([QTCREATORBUG-23219](https://bugreports.qt.io/browse/QTCREATORBUG-23219))
* Pretty printers
* Added pretty printers for `std:dequeue` and `std::forward_list`
([QTCREATORBUG-29994](https://bugreports.qt.io/browse/QTCREATORBUG-29994))
* Fixed various standard library types
* Fixed issues with `_GLIBCXX_DEBUG` enabled
([QTCREATORBUG-20476](https://bugreports.qt.io/browse/QTCREATORBUG-20476))
### C++
* Added `Load Last Core File`
([QTCREATORBUG-29256](https://bugreports.qt.io/browse/QTCREATORBUG-29256))
* Fixed the display of 64-bit `QFlags`
Analyzer
--------
### Clang
* Fixed issues with the compiler options by using the compilation database
([QTCREATORBUG-29529](https://bugreports.qt.io/browse/QTCREATORBUG-29529))
### Axivion
* Moved the Axivion views to a Debug perspective
* Improved the handling of invalid filters
* Removed the linking between Dashboard and a project. Now, the Dashboard
has to be selected on the Axivion issues view.
* Added the option to define path mappings
(`Preferences > Axivion > Path Mapping`)
* Added a tool button for `Show issue markers inline`
* Added column sorting to the list of issues
* Added a `Reload` button
Version Control Systems
-----------------------
* Improved the error dialog when adding files fails
([QTCREATORBUG-31161](https://bugreports.qt.io/browse/QTCREATORBUG-31161))
* Added `Log Directory` to the context menu of the `Projects` tree
### Git
* Added actions for blame at the revision, blame of the parent, the file
from the revision, and the log for the line to the tooltip for `Instant Blame`
([Documentation](https://doc-snapshots.qt.io/qtcreator-15.0/creator-vcs-git.html#using-instant-blame))
* Added visual indications that files are modified to the `Projects` view
([QTCREATORBUG-8857](https://bugreports.qt.io/browse/QTCREATORBUG-8857))
* Added the option to include all local branches in the log
* Gerrit
* Fixed the support for pushing patches with topics
([QTCREATORBUG-31411](https://bugreports.qt.io/browse/QTCREATORBUG-31411))
Test Integration
----------------
* Added test duration information for test frameworks that support it
([QTCREATORBUG-31242](https://bugreports.qt.io/browse/QTCREATORBUG-31242))
Extension Manager
-----------------
* Added filters and sorting
([QTCREATORBUG-31179](https://bugreports.qt.io/browse/QTCREATORBUG-31179))
* Added a button for opening the preferences
Platforms
---------
### Windows
* Fixed that it wasn't possible to select a remote `qmake` executable
([QTCREATORBUG-31939](https://bugreports.qt.io/browse/QTCREATORBUG-31939))
### macOS
* Added support for back and forward gestures
([QTCREATORBUG-7387](https://bugreports.qt.io/browse/QTCREATORBUG-7387))
### Android
* Improved the responsiveness of Qt Creator during Android related operations
* Fixed that the setup wizard could use the wrong NDK and build tools version
([QTCREATORBUG-31311](https://bugreports.qt.io/browse/QTCREATORBUG-31311))
* Fixed a freeze in the preferences while an emulator is running
([QTCREATORBUG-31912](https://bugreports.qt.io/browse/QTCREATORBUG-31912))
### iOS
* Improved the error messages when installation on the Simulator fails
([QTCREATORBUG-25833](https://bugreports.qt.io/browse/QTCREATORBUG-25833))
* Fixed issues when multiple devices are open in the Simulator
### Docker
* Improved the performance of operations on the device by deploying
a helper application (GoCmdBridge)
### WebAssembly
* Improved error messages on registration failure
([QTCREATORBUG-30057](https://bugreports.qt.io/browse/QTCREATORBUG-30057))
### VxWorks
* Added support for VxWorks 24.03
([Documentation](https://doc-snapshots.qt.io/qtcreator-15.0/creator-how-to-create-vxworks-kits.html))
Credits for these changes go to:
--------------------------------
Aleksei German
Alessandro Portale
Alexandru Croitor
Ali Kianian
Andre Hartmann
André Pönitz
Andrii Batyiev
Andrii Semkiv
Artem Sokolovskii
Artur Twardy
Assam Boudjelthia
Audun Sutterud
BogDan Vatra
Burak Hancerli
Christian Kandeler
Christian Stenger
Cristian Adam
David Schulz
Dominik Holland
Eike Ziller
Francisco Boni
Friedemann Kleint
Henning Gruendl
Jaroslaw Kobus
Jussi Witick
Justyna Hudziak
Kai Köhne
Karim Pinter
Knud Dollereder
Kwangsub Kim
Leena Miettinen
Liu Zhangjian
Lukasz Papierkowski
Mahmoud Badri
Marc Mutz
Marco Bubke
Marcus Tillmanns
Mariusz Szczepanik
Mathias Hasselmann
Mats Honkamaa
Mehdi Salem
Michael Weghorn
Miikka Heikkinen
Orgad Shaneh
Pino Toscano
Pranta Dastider
Przemyslaw Lewandowski
Rauno Pennanen
Renaud Guezennec
Robert Löhning
Sami Shalayel
Semih Yavuz
Shrief Gabr
Sivert Krøvel
styxer
Teea Poldsam
Thiago Macieira
Thomas Hartmann
Tim Jenßen
Toni Saario
Ulf Hermann
Vikas Pachdha
Ville Lavonius
Xavier Besson
Zoltan Gera

View File

@@ -134,5 +134,9 @@ Platforms
### Bare Metal
### WebAssembly
### VxWorks
Credits for these changes go to:
--------------------------------

View File

@@ -1,7 +1,5 @@
# Generate documentation
include(Utils)
option(BUILD_DEVELOPER_DOCS "Include developer documentation" OFF)
add_feature_info("Include developer documentation" BUILD_DEVELOPER_DOCS "")

View File

@@ -70,7 +70,7 @@
<h2>Reference</h2>
</div>
<ul>
<li><a href="creator-acknowledgements.html">Acknowledgements</a></li>
<li><a href="creator-acknowledgements.html">Licenses and Acknowledgments</a></li>
<li><a href="creator-cli.html">Command-Line Options</a></li>
<li><a href="creator-project-wizards.html">Custom Wizards</a></li>
<li><a href="creator-faq.html">FAQ</a></li>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

View File

@@ -1,7 +1,4 @@
{HTML.extraimages,qhp.QtCreator.extraFiles} += \
images/commercial.png \
images/5OiIqFTjUZI.jpg \
images/EhJ1eV_6RH8.jpg \
images/FTSvDmcAgPI.jpg \
images/hOx3dod5-1A.jpg \
images/LnVjI0I7cKs.jpg
images/5OiIqFTjUZI.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 203 B

After

Width:  |  Height:  |  Size: 423 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 272 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 319 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 6.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 10 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.3 KiB

After

Width:  |  Height:  |  Size: 3.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.7 KiB

After

Width:  |  Height:  |  Size: 9.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.1 KiB

After

Width:  |  Height:  |  Size: 4.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.0 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 7.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 5.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 8.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 7.3 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.9 KiB

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

@@ -4,7 +4,7 @@ include(config/qtcreator-project.qdocconf)
HTML.footer = \
" </div>\n" \
" <p class=\"copy-notice\">\n" \
" <acronym title=\"Copyright\">&copy;</acronym> $QTCREATOR_COPYRIGHT_YEAR The Qt Company Ltd.\n" \
" $QTCREATOR_COPYRIGHT\n" \
" Documentation contributions included herein are the copyrights of\n" \
" their respective owners. " \
" The documentation provided herein is licensed under the terms of the" \

View File

@@ -10,7 +10,7 @@ HTML.footer = \
"</div>\n" \
"<div class=\"footer\">\n" \
" <p>\n" \
" <acronym title=\"Copyright\">&copy;</acronym> $QTCREATOR_COPYRIGHT_YEAR The Qt Company Ltd.\n" \
" $QTCREATOR_COPYRIGHT\n" \
" Documentation contributions included herein are the copyrights of\n" \
" their respective owners.<br>" \
" The documentation provided herein is licensed under the terms of the" \

View File

@@ -257,7 +257,7 @@
The \uicontrol Timeline view displays a graphical representation of CPU
usage per thread and a condensed view of all recorded events.
\image qtcreator-performance-analyzer-timeline.png {Performance Analyzer}
\image qtcreator-performance-analyzer-timeline.webp {Performance Analyzer Timeline view}
Each category in the timeline describes a thread in the application. Move
the cursor on an event (5) on a row to see how long it takes and which
@@ -452,12 +452,16 @@
\section1 Loading and Saving Trace Files
You can save and load trace data in a format specific to the
Performance Analyzer with the respective entries in \uicontrol Analyze >
\uicontrol {Performance Analyzer Options}. This format is self-contained, and
Performance Analyzer (.ptq). This format is self-contained, and
therefore loading it does not require you to specify the recording
environment. You can transfer such trace files to a different computer
without any toolchain or debug symbols and analyze them there.
To load trace data, go to \uicontrol Analyze >
\uicontrol {Performance Analyzer Options} > \uicontrol {Load Trace File}.
To save trace data, select \uicontrol {Save Trace File}.
\section1 Troubleshooting
Performance Analyzer might fail to record data for the following reasons:

View File

@@ -7,37 +7,56 @@
\ingroup creator-how-to-analyze
\title Prevent code erosion
\title View Axivion static code analysis results
Connect to an Axivion dashboard server from \QC to view results of code
analysis.
\note Enable the Axivion plugin to use it.
\note Enable the Axivion plugin to use it. To use the plugin, you must be
connected to an Axivion dashboard server.
To use the plugin, you must set up a project in the Axivion dashboard
server and link to it from \QC. You can then see found issues in the
\uicontrol Edit mode, issues in the \uicontrol Axivion dashboard, and
issue details in the \uicontrol Axivion sidebar view.
\section1 View inline annotations in editor
The editor shows found issues as inline annotations. Hover the mouse over
an annotation to bring up a tool tip with a short description of the issue.
The editor shows found issues as inline annotations if the project matches
the currently open one and the respective file is part of the project.
Hover the mouse over an annotation to bring up a tooltip with a short
description of the issue.
\image qtcreator-axivion-annotation.webp {Annotation popup}
Select \inlineimage icons/info.png to view detailed information about the
issue in the \uicontrol Axivion sidebar view.
issue in the \uicontrol {Issue Details} view.
\image qtcreator-axivion-view-rule.webp {Axivion sidebar view}
\image qtcreator-axivion-view-rule.webp {Issue Details view}
\section1 View issue counts
To hide inline annotations, go to \uicontrol Analyze > \uicontrol Axivion
and clear \inlineimage icons/warning.png.
To view the issue counts, select \inlineimage icons/home.png
(\uicontrol {Show Dashboard}) in the \uicontrol Axivion dashboard.
\section1 View issues
\image qtcreator-axivion-view.webp {Axivion dashboard}
To inspect issues found during the analyses:
The \uicontrol Axivion dashboard lists the numbers of the following types of
issues that Axivion found in the linked project:
\list 1
\li To go to the \uicontrol Axivion view:
\image qtcreator-axivion-issue-search.webp {Issues in Axivion view}
\list
\li Go to \uicontrol Analyze > \uicontrol Axivion.
\li In the mode selector, select \uicontrol Debug >
\uicontrol Axivion.
\li Switch to the \uicontrol Debug mode, and select
\uicontrol Axivion in the debugger toolbar.
\endlist
\li Select a dashboard and a project.
\li Select the icon of an issue type.
\endlist
To refresh the list, select \inlineimage icons/reload_gray.png.
To get help, select \inlineimage icons/info.png.
\section1 Issue types
Axivion looks for the following types of issues in the selected project:
\table
\header
@@ -73,16 +92,8 @@
or coding conventions.
\endtable
To clear the view, select \inlineimage icons/clean_pane_small.png
(\uicontrol Clear).
To view issues, select \inlineimage icons/zoom.png
(\uicontrol {Search for Issues}).
\section1 Filter issues
\image qtcreator-axivion-issue-search.webp {Issues in Axivion view}
To filter issues, select:
\list
@@ -98,8 +109,13 @@
match the pattern.
\endlist
Select \inlineimage icons/filtericon.png for a column to set or clear the
filter expression for the column.
The information you see depends on the issue type. Double-click an issue
to see more information about it in the \uicontrol Axivion sidebar view.
to see more information about it in the \uicontrol {Issue Details} view.
To show inline issues, select \inlineimage icons/location.png.
\section1 Jump to issues in the editor
@@ -119,8 +135,7 @@
or \uicontrol {Target Path} column.
\sa {Enable and disable plugins}, {Analyze}{How To: Analyze},
{Link projects to Axivion dashboards}, {Analyzers}, {Axivion},
{Analyzing Code}
{Analyzers}, {Axivion}, {Analyzing Code}
*/
/*!
@@ -133,14 +148,16 @@
\brief Create a connection to an Axivion dashboard server.
To set preferences for the Axivion static code analysis tool, go to
\preferences > \uicontrol Axivion.
You can connect to an Axivion dashboard server and map dashboard projects to
local projects.
\image qtcreator-preferences-axivion.webp {General tab in Axivion Preferences}
\section1 Connecting to a Dashboard Server
To connect to an Axivion dashboard server:
\list
\li Go to \preferences > \uicontrol Axivion > \uicontrol General.
\image qtcreator-preferences-axivion-general.webp {General tab in Axivion Preferences}
\li Select \uicontrol Add to add a new connection to an Axivion
dashboard server.
\li Select \uicontrol Edit to modify an existing connection to
@@ -161,31 +178,22 @@
Select \uicontrol {Highlight marks} to highlight found issues on the
scrollbar in the editor.
\sa {Enable and disable plugins}, {Link projects to Axivion dashboards},
{Prevent code erosion}
*/
\section1 Mapping Paths
/*!
\page creator-link-axivion-dashboards.html
\previouspage creator-how-tos.html
Projects on the dashboard might have subprojects that also appear on the
dashboard because they are analyzed separately.
\ingroup creator-how-to-projects-configure
\title Link projects to Axivion dashboards
To link a project to an Axivion dashboard:
To map dashboard projects to local projects:
\list 1
\li Go to \uicontrol Projects > \uicontrol {Project Settings} >
\uicontrol Axivion.
\image qtcreator-preferences-axivion-project.webp {Axivion settings in Project Settings}
\li Select the Axivion dashboard server to fetch projects from.
\li Select \uicontrol {Fetch Projects} to list projects from the server.
\li In \uicontrol {Dashboard projects} select a project.
\li Select \uicontrol {Link Project} to link to the project.
\li Go to \preferences > \uicontrol Axivion > \uicontrol {Path Mapping}.
\image qtcreator-preferences-axivion-path-mapping.webp {Path Mapping tab in Axivion Preferences}
\li In \uicontrol {Project name}, enter the project name on the dashboard.
\li In \uicontrol {Local path}, enter the path to the project on the
computer.
\li In \uicontrol {Analysis path}, enter the path to the analysis of a
subproject. You need this only to map analyses of subprojects.
\endlist
To unlink a project, select \uicontrol {Unlink Project}.
\sa {Enable and disable plugins}, {Prevent code erosion}, {Axivion}
\sa {Enable and disable plugins}, {View Axivion static code analysis results}
*/

View File

@@ -43,7 +43,7 @@
automatically download, install, and configure for you.
\endlist
\sa {Android}{How To: Develop for Android}
\sa {Android}{How To: Develop for Android}, {Get and Install Qt}
*/
/*!
@@ -319,15 +319,14 @@
\li Go to \preferences > \uicontrol Devices.
\li Select \uicontrol Add > \uicontrol {Android Device} >
\uicontrol {Start Wizard}.
\image qtcreator-android-create-avd.png {Create New AVD dialog}
\image qtcreator-android-create-avd.webp {Create New AVD dialog}
\li In \uicontrol Name, give the AVD a name.
\li In \uicontrol {Device definition}, select the AVD type, and then
select one of the predefined AVDs or \uicontrol Custom for a custom
AVD.
\li In \uicontrol {Architecture (ABI)}, select an Android system image
that you installed on the computer.
\li In \uicontrol {Target API level}, select the \l{What is API Level?}
{API level} to use for building the application.
\li In \uicontrol {Target ABI / API}, select an Android system image
architecture (ABI) and \l{What is API Level?}{API level} that you
installed on the computer.
\li In \uicontrol {Skin definition}, select the AVD type, and then
select one of the predefined AVD skins or \uicontrol Custom for
a custom AVD skin.
\li In \uicontrol {SD card size}, set the size of the SD card for the
AVD.
\li Select \uicontrol {Override existing AVD name} to overwrite an

View File

@@ -31,8 +31,8 @@
sources. Because the client has a local cache for package storage, you can
work offline, as long as no new packages are needed from remote servers.
To use Conan, install it by using \QOI or the tools that
your operating system has. For example, on Windows, you can use the
To use Conan, install it by using \l{Get and Install Qt}{\QOI} or the tools
that your operating system has. For example, on Windows, you can use the
\c {choco install conan} or \c {pip install conan} command.
\note Enable the Conan plugin to use it.

View File

@@ -146,7 +146,8 @@
\generatelist studio-how-to-debug
\else
\sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger}
\sa {Add breakpoints}, {Debug}{How To: Debug}, {Debugging}, {Debuggers},
{Debugger}
\endif
*/
@@ -461,15 +462,19 @@
\brief Compute values of arithmetic expressions or function calls.
To compute values of arithmetic expressions or function calls, use
To access global data that is not visible in the
\l {Local Variables and Function Parameters}{Locals} view or to compute
values of arithmetic expressions or function calls, use
expression evaluators in the \uicontrol Expressions view.
You can examine static variables that the debuggers don't pick up as
\e {local variables}. For example, if you define
For example, if you define
\c {static int staticVar = 42;} in a source file and then add \c staticVar
as an evaluated expression, you should see \e 42 in the view when the
debugger stops in the source file.
You can also use Expression Evaluators as shortcuts to items that are
nested deeply in the locals tree.
\image qtcreator-debugger-expressions.webp {Expressions view}
\section1 Adding Expression Evaluators
@@ -480,8 +485,8 @@
You can also:
\list
\li Double-click in the \uicontrol {Expressions} or
\l {Local Variables and Function Parameters}{Locals} view.
\li Double-click in the \uicontrol {Expressions} or \uicontrol {Locals}
view.
\li Select \uicontrol {Add New Expression Evaluator} from the context
menu.
\endlist
@@ -501,21 +506,12 @@
The set of evaluated expressions is saved in your session.
\note Expression evaluators are powerful, but slow down debugger operation
significantly. Use them sparingly and remove them when you no longer need
them.
Expression evaluators are re-evaluated whenever the current frame changes.
The functions used in the expressions are called each time, even if
they have side-effects.
\if defined(qtcreator)
\section1 Expressions View Actions
Right-click the \uicontrol Expressions view to select the following actions:
\include creator-debug-views.qdoc 0
\endif
\note Evaluating expressions is slow, so remove expression evaluators after
use.
\section1 JavaScript Expressions
@@ -525,27 +521,46 @@
\section1 C and C++ Expressions
GDB, LLDB and CDB support the evaluation of simple C and C++ expressions.
CDB, GDB, and LLDB support the evaluation of simple C and C++ expressions,
such as arithmetic expressions made of simple values and pointers.
Depending on the backend and concrete location, some function calls
can be evaluated. CDB is the most limited backend in this respect.
\section2 Function Calls
Functions can be called only if they are actually compiled into the debugged
executable or a library used by the executable. Inlined
functions such as most \c{operator[]} implementations of standard containers
are typically \e{not} available.
\note When an expression has a function call, anything can happen, including
corruption of the application's state, or using the application's permission
to perform arbitrary actions.
\section2 Ranged Syntax
When using GDB or LLDB as backend, you can use a special ranged syntax to
display multiple values with one expression. A sub-expression of form
\c{foo[a..b]} is split into a sequence of individually evaluated expressions
\c{foo[a], ..., foo[b]}.
\section2 Compound Variables
You can expand compound variables of struct or class type to show their
members. As you also see the variable value and type, you can examine and
traverse the low-level layout of object data.
\section2 Optimized Builds
GDB and LLDB, and therefore \QC's debugger, also work for optimized
builds on Linux and \macos. Optimization can lead to re-ordering
of instructions or removal of some local variables, causing the
\uicontrol {Locals} and \uicontrol {Expressions} views to show
unexpected data.
\section2 GCC
The debug information from GCC does not include enough
information about the time when a variable is initialized.
Therefore, \QC can not tell whether the contents of a local
@@ -554,6 +569,12 @@
\uicontrol {not in scope}. Not all uninitialized objects,
however, can be recognized as such.
\section1 Expressions View Actions
Right-click the \uicontrol Expressions view to select the following actions:
\include creator-debug-views.qdoc 0
\sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger}
\endif
*/

View File

@@ -15,7 +15,7 @@
\uicontrol Debugger. In the \uicontrol General tab, you can specify settings
that are common to all debuggers.
\image qtcreator-debugger-general-options.png "Debugger General preferences"
\image qtcreator-preferences-debugger-general.webp {Debugger General preferences}
You can customize the appearance and behavior of the debug views and
setting breakpoints, as well as map source paths to target paths.

View File

@@ -421,6 +421,8 @@
generated from crashed processes on Linux and Unix systems if the system is
set up to allow this.
\section1 Get core files
To enable the dumping of core files on a Unix system, enter the following
command in the shell from which the application is launched:
@@ -428,11 +430,13 @@
ulimit -c unlimited
\endcode
\section1 Attach to a core file
To launch the debugger in the core mode:
\list 1
\li Go to \uicontrol Debug > \uicontrol {Start Debugging} >
\uicontrol {Load Core File}.
\li Go to \uicontrol Debug > \uicontrol {Start Debugging}, and then
select \uicontrol {Load Core File}.
\image qtcreator-debugger-load-core-file.png
\li In \uicontrol Kit, select a build and run kit that was
used for building the binary for which the core file was created.
@@ -452,8 +456,17 @@
the \c sysroot to use instead of the default \c sysroot.
\endlist
Even though using a properly configured project that has the sources of the
crashed application is not strictly necessary, it is helpful.
For better results, use a properly configured project that has the sources of
the crashed application.
\section1 Attach to the latest core file
On Linux systems, \QC uses the \c coredumpctl command provided by the
\c systemd crash handling to get core files. For more information, see
\l {systemd-coredump}.
To attach to the latest core file, go to \uicontrol Debug >
\uicontrol {Start Debugging}, and then select \uicontrol {Load Last Core File}.
\sa {Debug}{How To: Debug}, {Debugging}, {Debuggers}, {Debugger}, {Kits}
*/
@@ -825,7 +838,7 @@
To change the appearance and behavior of the debug views, set preferences
in \preferences > \uicontrol Debugger > \uicontrol General.
\image qtcreator-debugger-general-options.png {General tab in Debugger preferences}
\image qtcreator-preferences-debugger-general.webp {General tab in Debugger preferences}
For example, you can:
@@ -1257,7 +1270,7 @@
at which the libraries were built, you can map source paths to target
paths in \preferences > \uicontrol Debugger > \uicontrol General.
\image qtcreator-debugger-general-options.png {General tab in Debugger preferences}
\image qtcreator-preferences-debugger-general.webp {General tab in Debugger preferences}
For more information, see \l{Source Paths Mapping}.

View File

@@ -102,7 +102,7 @@
\row
\li \uicontrol {Do not modify entry point}
\li Stops \QC from modifying the \l {Modify entry points}{entry point}
of the image. Make sure that the entry point starts a shell.
of the image. Make sure that the entry point of the image does not exit immediately.
\row
\li \uicontrol {Enable flags needed for LLDB}
\li Adds the following flags to the container to allow LLDB to run:

View File

@@ -74,8 +74,8 @@
To use a context-specific margin when available, select the
\uicontrol {Use context-specific margin} check box.
\if defined(qtcreator)
Then, use the ClangFormat \c ColumnLimit option to set the margin, for
example.
Then, use the \l{ClangFormat Style Options}{ClangFormat} \c ColumnLimit
option to set the margin, for example.
\sa {C++ Code Style}
\endif

View File

@@ -708,12 +708,6 @@
and most likely invalid
\li
\row
\li M325
\li Warning
\li Logical value does not depend on actual values
\li Removed: This warning is no longer being used since Qt Creator version 12.
\row
\li M326
\li Error
@@ -747,6 +741,13 @@
\li The alias property cannot reference the root component in a
hierarchy. Create an instance of the component instead.
\row
\li M403
\li Error
\li A when condition cannot contain an object
\li Set the \c when condition to an expression that evaluates to \c true
when the condition is met.
\endtable
\section1 Resetting the Code Model

View File

@@ -23,7 +23,7 @@
\li \l{http://astyle.sourceforge.net}{Artistic Style}
\li \l{http://clang.llvm.org/docs/ClangFormat.html}{ClangFormat}
\li \l{ClangFormat: Documentation}{ClangFormat}
\li \l{http://uncrustify.sourceforge.net}{Uncrustify}
@@ -41,7 +41,7 @@
\list
\li \l{http://sourceforge.net/projects/astyle/files/astyle}
{Artistic Style}
\li \l{http://llvm.org/releases/download.html}{ClangFormat}
\li \l{ClangFormat: Download}{ClangFormat}
\li \l{http://sourceforge.net/projects/uncrustify/files/uncrustify}
{Uncrustify}
\endlist

View File

@@ -378,7 +378,7 @@
\image qtcreator-add-resource.png {Resource Browser}
\sa {Edit Code}{How To: Edit Code}, {Edit Mode}, {Editing Keyboard Shortcuts},
\sa {Edit Code}{How To: Edit Code}, {Edit Mode}, {Editor Shortcuts},
{Navigate with locator}
*/
@@ -632,7 +632,14 @@
move between bookmarks, select the \uicontrol {Previous Bookmark} or
\uicontrol {Next Bookmark} button or use the keyboard shortcuts.
\image qtcreator-bookmarks-view.png "Listing bookmarks in Bookmarks view"
\image qtcreator-bookmarks-view.webp {Listing bookmarks in Bookmarks view}
To move bookmarks up and down, select \uicontrol {Move Up} or
\uicontrol {Move Down} in the context menu or press \key {Ctrl+Alt+,} or
\key {Ctrl+Alt+.}.
To list bookmarks alphabetically by the name of the file where you set them,
select \uicontrol {Sort by Filenames}.
\sa {Edit Code}{How To: Edit Code}, {Edit Mode}
*/

Some files were not shown because too many files have changed in this diff Show More