Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/5.15' into dev
Browse files Browse the repository at this point in the history
 Conflicts:
	src/widgets/widgets/qabstractbutton.cpp
	src/widgets/widgets/qbuttongroup.cpp
	src/widgets/widgets/qbuttongroup.h
	src/widgets/widgets/qsplashscreen.cpp
	tests/auto/widgets/widgets/qbuttongroup/tst_qbuttongroup.cpp
        tests/benchmarks/opengl/main.cpp

  Needed update:
	src/plugins/platforms/cocoa/CMakeLists.txt

Change-Id: I7be4baebb63844ec2b3e0de859ca9de1bc730bb5
  • Loading branch information
Qt Forward Merge Bot authored and ediosyncratic committed Apr 22, 2020
2 parents 1c80d05 + e10e531 commit efd7757
Show file tree
Hide file tree
Showing 128 changed files with 1,383 additions and 980 deletions.
2 changes: 1 addition & 1 deletion bin/syncqt.pl
Original file line number Diff line number Diff line change
Expand Up @@ -231,7 +231,6 @@ sub classNames {
$line .= ";" if($line =~ m/^Q_[A-Z_0-9]*\(.*\)[\r\n]*$/); #qt macro
$line .= ";" if($line =~ m/^QT_(BEGIN|END)_HEADER[\r\n]*$/); #qt macro
$line .= ";" if($line =~ m/^QT_(BEGIN|END)_NAMESPACE(_[A-Z]+)*[\r\n]*$/); #qt macro
$line .= ";" if($line =~ m/^QT_DEPRECATED_X\(.*\)[\r\n]*$/); #qt macro
$line .= ";" if($line =~ m/^QT_MODULE\(.*\)[\r\n]*$/); # QT_MODULE macro
$line .= ";" if($line =~ m/^QT_WARNING_(PUSH|POP|DISABLE_\w+\(.*\))[\r\n]*$/); # qt macros
$$requires = $1 if ($line =~ m/^QT_REQUIRE_CONFIG\((.*)\);[\r\n]*$/);
Expand Down Expand Up @@ -298,6 +297,7 @@ sub classNames {

if($definition) {
$definition =~ s=[\n\r]==g;
$definition =~ s/QT_DEPRECATED_X\s*\(\s*".*?"\s*\)//g;
my @symbols;
my $post_kw = qr/Q_DECL_FINAL|final|sealed/; # add here macros and keywords that go after the class-name of a class definition
if($definition =~ m/^ *typedef *.*\(\*([^\)]*)\)\(.*\);$/) {
Expand Down
16 changes: 16 additions & 0 deletions doc/global/externalsites/external-resources.qdoc
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,22 @@
** $QT_END_LICENSE$
**
****************************************************************************/
/*!
\externalpage https://source.android.com/setup/start/build-numbers
\title Android: Build Numbers
*/
/*!
\externalpage https://developer.android.com/guide/topics/manifest/uses-feature-element
\title Android: <uses-feature>
*/
/*!
\externalpage https://developer.android.com/guide/topics/manifest/uses-permission-element
\title Android: <uses-permission>
*/
/*!
\externalpage https://developer.android.com/studio/publish/versioning#appversioning
\title Android: App Versioning
*/
/*!
\externalpage http://www.freedesktop.org/
\title freedesktop.org
Expand Down
12 changes: 10 additions & 2 deletions mkspecs/common/ghs-integrity-armv8.conf
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,16 @@ os_directory = $$(INTEGRITY_DIR)
isEmpty(os_directory): \
error("This qmakespec requires $INTEGRITY_DIR to be set")

QMAKE_CC = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared
QMAKE_CXX = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared
iy_build_target = $$(INTEGRITY_BUILD_TARGET)
isEmpty(iy_build_target): \
message("This qmakespec requires $INTEGRITY_BUILD_TARGET to be set [dbg|rel|chk|cov] for Integrity versions 11.7.6 and higher")

start_name = $$(INTEGRITY_DIR)/libs/$$(INTEGRITY_BSP)/$$(INTEGRITY_BUILD_TARGET)
rtos_name= libs/$$(INTEGRITY_BSP)/$$(INTEGRITY_BUILD_TARGET)

QMAKE_CC = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared -startfile_dir=$$start_name --rtos_library_directory=$$rtos_name --rtos_library_directory=libs/arm64/$$iy_build_target
QMAKE_CXX = cxintarm64 -bsp $$bsp_name -os_dir $$os_directory -non_shared -startfile_dir=$$start_name --rtos_library_directory=$$rtos_name --rtos_library_directory=libs/arm64/$$iy_build_target

QMAKE_LINK = $$QMAKE_CXX
QMAKE_AR = $$QMAKE_CXX -archive -o

Expand Down
43 changes: 43 additions & 0 deletions mkspecs/devices/integrity-armv8-SA8155P/qmake.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
#
# qmake configuration for INTEGRITY Qualcomm SA8155P ADP
#

load(device_config)

include(../../common/ghs-integrity-armv8.conf)

QT_QPA_DEFAULT_PLATFORM = eglfs
EGLFS_DEVICE_INTEGRATION = eglfs_openwfd

qc_multimedia_inc_directory = $$(QC_MULTIMEDIA_INC_DIR)
isEmpty(qc_multimedia_inc_directory): \
error("This makespec requires the environment variable QC_MULTIMEDIA_INC_DIR to be set.")

QMAKE_INCDIR += $$(QC_MULTIMEDIA_INC_DIR)

QMAKE_LIBS_EGL += -lESXEGL_Adreno -lESXGLESv2_Adreno -ladreno_utils -lGSLUser -lOSUser -lpanel -livfs -lposix -lpmem -ltzbsp -lpaged_alloc -lglnext-llvm -lopenwfd -lplanedef -llogger -lnet -lsocket -lrfs_client -lshm_client -lmmosalrfs -lmmosalfile -lOSAbstraction

QMAKE_LIBS_OPENGL_ES2 += $${QMAKE_LIBS_EGL}

QMAKE_CFLAGS += -DINTEGRITY
QMAKE_CXXFLAGS += -DINTEGRITY

QMAKE_CFLAGS += -bigswitch
QMAKE_CXXFLAGS += -bigswitch
QMAKE_LFLAGS += -bigswitch

dirs = $$(GL_INC_DIR)
isEmpty(dirs): \
error("This makespec requires the environment variable GL_INC_DIR to be set.")

QMAKE_INCDIR_EGL = $$split(dirs, $$QMAKE_DIRLIST_SEP)
QMAKE_INCDIR_OPENGL_ES2 = $$QMAKE_INCDIR_EGL

dirs = $$(GL_LIB_DIR)
isEmpty(dirs): \
error("This makespec requires the environment variable GL_LIB_DIR to be set.")

QMAKE_LIBDIR_EGL = $$split(dirs, $$QMAKE_DIRLIST_SEP)
QMAKE_LIBDIR_OPENGL_ES2 = $$QMAKE_LIBDIR_EGL

load(qt_config)
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
/****************************************************************************
**
** Copyright (C) 2018 The Qt Company Ltd.
** Copyright (C) 2020 The Qt Company Ltd.
** Contact: https://www.qt.io/licensing/
**
** This file is part of the plugins of the Qt Toolkit.
** This file is part of the qmake spec of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** Commercial License Usage
Expand Down Expand Up @@ -37,33 +37,9 @@
**
****************************************************************************/

#ifndef MESSAGES_H
#define MESSAGES_H
#ifndef QPLATFORMDEFS_H
#define QPLATFORMDEFS_H

#include <QString>
#include <qpa/qplatformmenu.h>
#include "../../common/integrity/qplatformdefs.h"

QT_BEGIN_NAMESPACE

enum {
AboutAppMenuItem = 0,
PreferencesAppMenuItem,
ServicesAppMenuItem,
HideAppMenuItem,
HideOthersAppMenuItem,
ShowAllAppMenuItem,
QuitAppMenuItem
};


QString msgAboutQt();

QString qt_mac_applicationmenu_string(int type);

QPlatformMenuItem::MenuRole detectMenuRole(const QString &caption);

QString msgDialogButtonDiscard();

QT_END_NAMESPACE

#endif // MESSAGES_H
#endif // QPLATFORMDEFS_H
3 changes: 2 additions & 1 deletion mkspecs/features/qt_common.prf
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ qtConfig(stack-protector-strong): CONFIG += stack_protector_strong
contains(TEMPLATE, .*lib) {
# module and plugins
unix:qtConfig(reduce_relocations): CONFIG += bsymbolic_functions

}
contains(TEMPLATE, .*lib)|contains(TEMPLATE, aux) {
!isEmpty(_QMAKE_SUPER_CACHE_): \
rplbase = $$dirname(_QMAKE_SUPER_CACHE_)/[^/][^/]*
else: \
Expand Down
12 changes: 10 additions & 2 deletions mkspecs/features/resolve_target.prf
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,11 @@ win32 {
plugin_target = $$QMAKE_PLUGIN_BUNDLE_NAME
else: \
plugin_target = $$TARGET
QMAKE_RESOLVED_BUNDLE = $${QMAKE_RESOLVED_TARGET}$${plugin_target}.plugin
isEmpty(QMAKE_BUNDLE_EXTENSION): \
plugin_ext = .plugin
else: \
plugin_ext = $$QMAKE_BUNDLE_EXTENSION
QMAKE_RESOLVED_BUNDLE = $${QMAKE_RESOLVED_TARGET}$${plugin_target}$${plugin_ext}
!shallow_bundle: \
QMAKE_RESOLVED_TARGET = $${QMAKE_RESOLVED_BUNDLE}/Contents/MacOS/$${TARGET}
else: \
Expand All @@ -46,7 +50,11 @@ win32 {
framework_target = $$QMAKE_FRAMEWORK_BUNDLE_NAME
else: \
framework_target = $$TARGET
QMAKE_RESOLVED_BUNDLE = $${QMAKE_RESOLVED_TARGET}$${framework_target}.framework
isEmpty(QMAKE_BUNDLE_EXTENSION): \
framework_ext = .framework
else: \
framework_ext = $$QMAKE_BUNDLE_EXTENSION
QMAKE_RESOLVED_BUNDLE = $${QMAKE_RESOLVED_TARGET}$${framework_target}$${framework_ext}
!shallow_bundle {
TEMP_VERSION = $$section(VERSION, ., 0, 0)
isEmpty(TEMP_VERSION):TEMP_VERSION = A
Expand Down
188 changes: 188 additions & 0 deletions qmake/doc/src/qmake-manual.qdoc
Original file line number Diff line number Diff line change
Expand Up @@ -905,6 +905,187 @@
to specify a list of libraries that each project needs to link against,
and \c QMAKE_LIBS_X11 would be used to extend this list.

\target ANDROID_ABI
\section1 ANDROID_ABI

\note This variable applies only to Android targets.

Specifies the Android target ABI. Valid values are: armeabi-v7a, arm64-v8a,
x86, x86_64.

\target ANDROID_ABIS
\section1 ANDROID_ABIS

\note This variable applies only to Android targets.

Specifies a list of Android target ABIs. Valid values are: armeabi-v7a,
arm64-v8a, x86, x86_64.

\badcode
qmake ANDROID_ABIS="armeabi-v7a arm64-v8a"
\endcode

\target ANDROID_API_VERSION
\section1 ANDROID_API_VERSION

\note This variable applies only to Android targets.

Specifies the Android API level number. For more information, see
\l{Android: Build Numbers}{Android Build Numbers}.

\target ANDROID_BUNDLED_JAR_DEPENDENCIES
\section1 ANDROID_BUNDLED_JAR_DEPENDENCIES

\note This variable applies only to Android modules.

This is useful when writing a Qt module. It specifies a list of pre-bundled
dependencies used by the module in a \c .jar format, for example:

\badcode
ANDROID_BUNDLED_JAR_DEPENDENCIES += jar/QtAndroid.jar
\endcode

\target ANDROID_DEPLOYMENT_DEPENDENCIES
\section1 ANDROID_DEPLOYMENT_DEPENDENCIES

\note This variable applies only to Android targets.

By default, \l androiddeployqt will detect the dependencies of your
application. However, since run-time usage of plugins cannot be detected,
there could be false positives, as your application might depend on any
plugin that is a potential dependency. If you want to minimize the size of
your \c APK, it's possible to override the automatic detection using the
this variable. This should contain a list of all Qt files which need to be
included, with paths relative to the Qt install root.

\note Only the Qt files specified with this variable are included. Failing
to include all the correct files can result in crashes. It's also important
to make sure the files are listed in the correct loading order. This variable
provides a way to override the automatic detection entirely, so if a library
is listed before its dependencies, it will fail to load on some devices.

\target ANDROID_DEPLOYMENT_SETTINGS_FILE
\section1 ANDROID_DEPLOYMENT_SETTINGS_FILE

\note This variable applies only to Android targets.

Specifies the path to the \c {android-deployment-settings.json} file needed
by \l androiddeployqt and \c androidtestrunner. This overrides the path to
the settings file generated by qmake, thus you have to make sure to provide
a valid settings file.

\target ANDROID_EXTRA_LIBS
\section1 ANDROID_EXTRA_LIBS

\note This variable applies only to Android targets.

A list of external libraries that will be copied into your application's
\c libs folder and loaded on start-up. This can be used, for instance,
to enable OpenSSL in your application. For more information, see
\l{Adding OpenSSL Support for Android}.

\target ANDROID_EXTRA_PLUGINS
\section1 ANDROID_EXTRA_PLUGINS

\note This variable applies only to Android targets.

Specifies different resources that your application has to bundle but that
cannot be delivered through the assets system, such as QML plugins. With this
variable, \l androiddeployqt will make sure everything is packaged and
deployed properly.

\target ANDROID_FEATURES
\section1 ANDROID_FEATURES

\note This variable applies only to Android modules.

Specifies a module's features list:

\badcode
ANDROID_FEATURES += android.hardware.location.gps
\endcode

For more information, see \l{Android: <uses-feature>}{Android <uses-feature> Docs}.

\target ANDROID_LIB_DEPENDENCIES
\section1 ANDROID_LIB_DEPENDENCIES

\note This variable applies only to Android modules.

This is useful when writing a Qt module. It specifies a list of pre-built
dependencies used by the module, for example:

\badcode
ANDROID_LIB_DEPENDENCIES += \
plugins/libplugins_platforms_qtforandroid.so
\endcode

\target ANDROID_MIN_SDK_VERSION
\section1 ANDROID_MIN_SDK_VERSION

\note This variable applies only to Android targets.

Specifies the minimum Android API level for the project. By default, this
variable is set to API level 21.

\target ANDROID_PACKAGE_SOURCE_DIR
\section1 ANDROID_PACKAGE_SOURCE_DIR

\note This variable applies only to Android targets.

Specifies the path for a custom Android package template. The Android package
template contains:
\list
\li AndroidManifest.xml file
\li build.gradle file and other Gradle scripts
\li res/values/libs.xml file
\endlist

The path specified by this variable can contain custom Java classes under
\c src directory. By default, the \l androiddeployqt tool copies the
application template from the Qt for Android installation path into your
project's build directory, then it copies the contents of the path specified
by this variable on top of that, overwriting any existing files. For
instance, you can make a custom \c {AndroidManifest.xml} for your application,
then place this directly into the directory specified by this variable.

\target ANDROID_PERMISSIONS
\section1 ANDROID_PERMISSIONS

\note This variable applies only to Android modules.

Specifies a module's permissions list:

\badcode
ANDROID_PERMISSIONS += android.permission.ACCESS_FINE_LOCATION
\endcode

For more information, see \l{Android: <uses-permission>}{Android <uses-permission> Docs}.

\target ANDROID_TARGET_SDK_VERSION
\section1 ANDROID_TARGET_SDK_VERSION

\note This variable applies only to Android targets.

Specifies the target Android API level for the project. By default, this
variable is set to API level 28.

\target ANDROID_VERSION_CODE
\section1 ANDROID_VERSION_CODE

\note This variable applies only to Android targets.

Specifies the application's version number. For more information, see
\l{Android: App Versioning}{Android App Versioning}.

\target ANDROID_VERSION_NAME
\section1 ANDROID_VERSION_NAME

\note This variable applies only to Android targets.

Specifies the application's version in as a human readable string. For more
information, see \l{Android: App Versioning}{Android App Versioning}.

\target CONFIG
\section1 CONFIG

Expand Down Expand Up @@ -1376,6 +1557,13 @@
This variable is also used to specify which additional files will be
deployed to embedded devices.

\target JAVA_HOME
\section1 JAVA_HOME

\note This variable is useful only to Android targets.

Specifies the JDK/OpenJDK installation path used for building the project.

\target LEXIMPLS
\section1 LEXIMPLS

Expand Down
Loading

0 comments on commit efd7757

Please sign in to comment.