Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/5.6' into 5.7
Browse files Browse the repository at this point in the history
This change partially reverts 1bfc7f6 about QT_HAS_BUILTIN define
and undef in src/corelib/tools/qsimd_p.h.

This change is also squashed with "Fall back to c++11 standard
compiler flag for host builds" which is done by Peter Seiderer.

Conflicts:
	mkspecs/features/default_post.prf
	src/3rdparty/sqlite/0001-Fixing-the-SQLite3-build-for-WEC2013-again.patch
	src/3rdparty/sqlite/sqlite3.c
	src/corelib/tools/qsimd_p.h
	src/gui/kernel/qevent.cpp
	src/gui/kernel/qwindowsysteminterface.cpp
	src/gui/kernel/qwindowsysteminterface_p.h
	src/plugins/bearer/blackberry/blackberry.pro
	src/plugins/platforms/cocoa/qcocoasystemsettings.mm
	src/plugins/platformthemes/gtk2/gtk2.pro
	src/plugins/styles/bb10style/bb10style.pro
	src/sql/drivers/sqlite2/qsql_sqlite2.cpp
	tools/configure/configureapp.cpp

Task-number: QTBUG-51644
Done-with: Peter Seiderer <[email protected]>
Change-Id: I6100d6ace31b2e8d41a95f0b5d5ebf8f1fd88b44
  • Loading branch information
liangqi committed Mar 11, 2016
2 parents 713282d + 45dc347 commit 50d0f57
Show file tree
Hide file tree
Showing 179 changed files with 1,443 additions and 934 deletions.
2 changes: 1 addition & 1 deletion config.tests/unix/alsa/alsatest.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
****************************************************************************/

#include <alsa/asoundlib.h>
#if(!(SND_LIB_MAJOR == 1 && SND_LIB_MINOR == 0 && SND_LIB_SUBMINOR >= 10))
#if SND_LIB_VERSION < 0x1000a // 1.0.10
#error "Alsa version found too old, require >= 1.0.10"
#endif

Expand Down
4 changes: 1 addition & 3 deletions doc/global/manifest-meta.qdocconf
Original file line number Diff line number Diff line change
Expand Up @@ -55,9 +55,7 @@ manifestmeta.highlighted.names = "QtQuick/Qt Quick Demo - Same Game" \
"QtMultimedia/QML Video Shader Effects Example" \
"QtCanvas3D/Planets Example" \
"QtCanvas3D/Interactive Mobile Phone Example" \
"QtLocation/Map Viewer (QML)" \
"QtWebEngine/WebEngine Quick Nano Browser" \
"QtWebEngine/Markdown Editor Example"
"QtLocation/Map Viewer (QML)"

manifestmeta.highlighted.attributes = isHighlighted:true

Expand Down
1 change: 0 additions & 1 deletion mkspecs/common/wince/qplatformdefs.h
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@
#include <tchar.h>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>

#ifdef QT_LARGEFILE_SUPPORT
#define QT_STATBUF struct _stati64 // non-ANSI defs
Expand Down
1 change: 1 addition & 0 deletions mkspecs/features/benchmark.prf
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
load(testcase)
13 changes: 10 additions & 3 deletions mkspecs/features/default_post.prf
Original file line number Diff line number Diff line change
Expand Up @@ -96,9 +96,16 @@ breakpad {
}

c++11|c++14|c++1z {
c++1z: cxxstd = CXX1Z
else: c++14: cxxstd = CXX14
else: cxxstd = CXX11
# Disable special compiler flags for host builds
!host_build|!cross_compile {
c++1z: cxxstd = CXX1Z
else: c++14: cxxstd = CXX14
else: cxxstd = CXX11
} else {
# Fall back to c++11, because since 5.7 c++11 is required everywhere,
# including host builds
cxxstd = CXX11
}

# Check if we should disable the GNU extensions or not
!strict_c++:!isEmpty(QMAKE_CXXFLAGS_GNU$$cxxstd): cxxstd = GNU$$cxxstd
Expand Down
4 changes: 2 additions & 2 deletions mkspecs/features/qt_common.prf
Original file line number Diff line number Diff line change
Expand Up @@ -84,9 +84,9 @@ warnings_are_errors:warning_clean {
QMAKE_CXXFLAGS_WARN_ON += -Werror -ww177,1224,1478,1881 $$WERROR
}
} else:gcc:!clang:!intel_icc {
# GCC 4.6-4.9, 5.x
# GCC 4.6-4.9, 5.x, ...
ver = $${QT_GCC_MAJOR_VERSION}.$${QT_GCC_MINOR_VERSION}
contains(ver, "(4\\.[6789]|5\\..)") {
contains(ver, "(4\\.[6789]|[5-9]\\..)") {
QMAKE_CXXFLAGS_WARN_ON += -Werror -Wno-error=cpp -Wno-error=deprecated-declarations $$WERROR

# GCC prints this bogus warning, after it has inlined a lot of code
Expand Down
7 changes: 5 additions & 2 deletions mkspecs/features/qt_module_pris.prf
Original file line number Diff line number Diff line change
Expand Up @@ -42,8 +42,11 @@ MODULE_FWD_PRI = $$mod_work_pfx/qt_lib_$${MODULE_ID}.pri
module_libs = "\$\$QT_MODULE_HOST_LIB_BASE"
else: \
module_libs = "\$\$QT_MODULE_LIB_BASE"
!isEmpty(QT_PRIVATE): \
module_rundep = "QT.$${MODULE_ID}.run_depends = $$replace(QT_PRIVATE, -private$, _private)"
# In addition to the library's private deps, the private module's deps
# are logically runtime deps of the public module.
runtime_deps = $$QT_PRIVATE $$QT_FOR_PRIVATE
!isEmpty(runtime_deps): \
module_rundep = "QT.$${MODULE_ID}.run_depends = $$replace(runtime_deps, -private$, _private)"
else: \
module_rundep =
module_build_type = v2
Expand Down
43 changes: 23 additions & 20 deletions mkspecs/features/testcase.prf
Original file line number Diff line number Diff line change
Expand Up @@ -6,13 +6,16 @@ have_target {
# qt_build_config tells us to re-enable exceptions here.
testcase_exceptions: CONFIG += exceptions

check.files =
check.path = .
benchmark: type = benchmark
else: type = check

$${type}.files =
$${type}.path = .

# Add environment for non-installed builds. Do this first, so the
# 'make' variable expansions don't end up in a batch file/script.
QT_TOOL_NAME = target
qtAddTargetEnv(check.commands, QT)
qtAddTargetEnv($${type}.commands, QT)

# If the test ends up in a different directory, we should cd to that directory.
TESTRUN_CWD = $$DESTDIR
Expand All @@ -27,44 +30,44 @@ debug_and_release:debug_and_release_target {
}

# Allow for a custom test runner script
check.commands += $(TESTRUNNER)
$${type}.commands += $(TESTRUNNER)

unix {
isEmpty(TEST_TARGET_DIR): TEST_TARGET_DIR = .

app_bundle: \
check.commands += $${TEST_TARGET_DIR}/$(QMAKE_TARGET).app/Contents/MacOS/$(QMAKE_TARGET)
$${type}.commands += $${TEST_TARGET_DIR}/$(QMAKE_TARGET).app/Contents/MacOS/$(QMAKE_TARGET)
else: \
check.commands += $${TEST_TARGET_DIR}/$(QMAKE_TARGET)
$${type}.commands += $${TEST_TARGET_DIR}/$(QMAKE_TARGET)
} else {
# Windows
!isEmpty(TEST_TARGET_DIR): TEST_TARGET_DIR = $${TEST_TARGET_DIR}$${QMAKE_DIR_SEP}
check.commands += $${TEST_TARGET_DIR}$(TARGET)
$${type}.commands += $${TEST_TARGET_DIR}$(TARGET)
}

# Allow for custom arguments to tests
check.commands += $(TESTARGS)
$${type}.commands += $(TESTARGS)

!isEmpty(TESTRUN_CWD):!contains(TESTRUN_CWD, ^\\./?): \
check.commands = cd $$shell_path($$TESTRUN_CWD) && $$check.commands
$${type}.commands = cd $$shell_path($$TESTRUN_CWD) && $$eval($${type}.commands)

# If the test is marked as insignificant, discard the exit code
insignificant_test:check.commands = -$${check.commands}
insignificant_test: $${type}.commands = -$$eval($${type}.commands)

QMAKE_EXTRA_TARGETS *= check
QMAKE_EXTRA_TARGETS *= $${type}

isEmpty(BUILDS)|build_pass {
check.depends = first
$${type}.depends = first
} else {
# For exclusive builds, only run the test once.
check.CONFIG = recursive
check.target = check_all
check.recurse_target = check
check.commands =

check_first.depends = $$eval($$first(BUILDS).target)-check
check_first.target = check
QMAKE_EXTRA_TARGETS += check_first
$${type}.CONFIG = recursive
$${type}.target = $${type}_all
$${type}.recurse_target = $${type}
$${type}.commands =

$${type}_first.depends = $$eval($$first(BUILDS).target)-$${type}
$${type}_first.target = $${type}
QMAKE_EXTRA_TARGETS += $${type}_first
}

!no_testcase_installs:!contains(INSTALLS, target) {
Expand Down
10 changes: 10 additions & 0 deletions mkspecs/features/testcase_targets.prf
Original file line number Diff line number Diff line change
Expand Up @@ -7,3 +7,13 @@
check.depends = first # `make check' implies build
QMAKE_EXTRA_TARGETS += check
}

# ... and the same for benchmarks, too.
!contains(QMAKE_EXTRA_TARGETS, benchmark) {
contains(TEMPLATE, subdirs): \
prepareRecursiveTarget(benchmark)
else: \
benchmark.depends = first # `make benchmark' implies build
QMAKE_EXTRA_TARGETS += benchmark
}

2 changes: 1 addition & 1 deletion qmake/generators/unix/unixmake.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -564,7 +564,7 @@ UnixMakefileGenerator::defaultInstall(const QString &t)
dst = escapeFilePath(filePrefixRoot(root, targetdir + src.section('/', -1)));
if(!ret.isEmpty())
ret += "\n\t";
ret += "-$(INSTALL_FILE) " + escapeFilePath(src) + ' ' + dst;
ret += "-$(INSTALL_FILE) " + escapeFilePath(Option::fixPathToTargetOS(src, false)) + ' ' + dst;
if(!uninst.isEmpty())
uninst.append("\n\t");
uninst.append("-$(DEL_FILE) " + dst);
Expand Down
3 changes: 2 additions & 1 deletion qmake/library/qmakeparser.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -275,7 +275,8 @@ void QMakeParser::putHashStr(ushort *&pTokPtr, const ushort *buf, uint len)
*tokPtr++ = (ushort)hash;
*tokPtr++ = (ushort)(hash >> 16);
*tokPtr++ = (ushort)len;
memcpy(tokPtr, buf, len * 2);
if (len) // buf may be nullptr; don't pass that to memcpy (-> undefined behavior)
memcpy(tokPtr, buf, len * 2);
pTokPtr = tokPtr + len;
}

Expand Down
106 changes: 56 additions & 50 deletions src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,12 @@ CONFIG += \

load(qt_helper_lib)

# built-in shapers list configuration:
SHAPERS += opentype # HB's main shaper; enabling it should be enough most of the time
mac: SHAPERS += coretext # native shaper on OSX/iOS; could be used alone to handle both OT and AAT fonts

DEFINES += HAVE_CONFIG_H
DEFINES += HAVE_OT HB_NO_UNICODE_FUNCS HB_DISABLE_DEPRECATED
DEFINES += HB_NO_UNICODE_FUNCS HB_DISABLE_DEPRECATED

# platform/compiler specific definitions
DEFINES += HAVE_ATEXIT
Expand Down Expand Up @@ -78,57 +82,59 @@ HEADERS += \
$$PWD/src/hb-unicode.h \
$$PWD/src/hb-version.h

# Open Type
SOURCES += \
$$PWD/src/hb-ot-font.cc \
$$PWD/src/hb-ot-layout.cc \
$$PWD/src/hb-ot-map.cc \
$$PWD/src/hb-ot-shape.cc \
$$PWD/src/hb-ot-shape-complex-arabic.cc \
$$PWD/src/hb-ot-shape-complex-default.cc \
$$PWD/src/hb-ot-shape-complex-hangul.cc \
$$PWD/src/hb-ot-shape-complex-hebrew.cc \
$$PWD/src/hb-ot-shape-complex-indic.cc \
$$PWD/src/hb-ot-shape-complex-indic-table.cc \
$$PWD/src/hb-ot-shape-complex-myanmar.cc \
$$PWD/src/hb-ot-shape-complex-thai.cc \
$$PWD/src/hb-ot-shape-complex-tibetan.cc \
$$PWD/src/hb-ot-shape-complex-use.cc \
$$PWD/src/hb-ot-shape-complex-use-table.cc \
$$PWD/src/hb-ot-shape-fallback.cc \
$$PWD/src/hb-ot-shape-normalize.cc
contains(SHAPERS, opentype) {
DEFINES += HAVE_OT

HEADERS += \
$$PWD/src/hb-ot-layout-common-private.hh \
$$PWD/src/hb-ot-layout-gdef-table.hh \
$$PWD/src/hb-ot-layout-gpos-table.hh \
$$PWD/src/hb-ot-layout-gsubgpos-private.hh \
$$PWD/src/hb-ot-layout-gsub-table.hh \
$$PWD/src/hb-ot-layout-jstf-table.hh \
$$PWD/src/hb-ot-layout-private.hh \
$$PWD/src/hb-ot-map-private.hh \
$$PWD/src/hb-ot-shape-complex-arabic-fallback.hh \
$$PWD/src/hb-ot-shape-complex-arabic-private.hh \
$$PWD/src/hb-ot-shape-complex-arabic-table.hh \
$$PWD/src/hb-ot-shape-complex-indic-machine.hh \
$$PWD/src/hb-ot-shape-complex-indic-private.hh \
$$PWD/src/hb-ot-shape-complex-myanmar-machine.hh \
$$PWD/src/hb-ot-shape-complex-private.hh \
$$PWD/src/hb-ot-shape-complex-use-machine.hh \
$$PWD/src/hb-ot-shape-complex-use-private.hh \
$$PWD/src/hb-ot-shape-fallback-private.hh \
$$PWD/src/hb-ot-shape-normalize-private.hh \
$$PWD/src/hb-ot-shape-private.hh
SOURCES += \
$$PWD/src/hb-ot-font.cc \
$$PWD/src/hb-ot-layout.cc \
$$PWD/src/hb-ot-map.cc \
$$PWD/src/hb-ot-shape.cc \
$$PWD/src/hb-ot-shape-complex-arabic.cc \
$$PWD/src/hb-ot-shape-complex-default.cc \
$$PWD/src/hb-ot-shape-complex-hangul.cc \
$$PWD/src/hb-ot-shape-complex-hebrew.cc \
$$PWD/src/hb-ot-shape-complex-indic.cc \
$$PWD/src/hb-ot-shape-complex-indic-table.cc \
$$PWD/src/hb-ot-shape-complex-myanmar.cc \
$$PWD/src/hb-ot-shape-complex-thai.cc \
$$PWD/src/hb-ot-shape-complex-tibetan.cc \
$$PWD/src/hb-ot-shape-complex-use.cc \
$$PWD/src/hb-ot-shape-complex-use-table.cc \
$$PWD/src/hb-ot-shape-fallback.cc \
$$PWD/src/hb-ot-shape-normalize.cc

HEADERS += \
$$PWD/src/hb-ot.h \
$$PWD/src/hb-ot-font.h \
$$PWD/src/hb-ot-layout.h \
$$PWD/src/hb-ot-shape.h \
$$PWD/src/hb-ot-tag.h

mac {
# Apple Advanced Typography
HEADERS += \
$$PWD/src/hb-ot-layout-common-private.hh \
$$PWD/src/hb-ot-layout-gdef-table.hh \
$$PWD/src/hb-ot-layout-gpos-table.hh \
$$PWD/src/hb-ot-layout-gsubgpos-private.hh \
$$PWD/src/hb-ot-layout-gsub-table.hh \
$$PWD/src/hb-ot-layout-jstf-table.hh \
$$PWD/src/hb-ot-layout-private.hh \
$$PWD/src/hb-ot-map-private.hh \
$$PWD/src/hb-ot-shape-complex-arabic-fallback.hh \
$$PWD/src/hb-ot-shape-complex-arabic-private.hh \
$$PWD/src/hb-ot-shape-complex-arabic-table.hh \
$$PWD/src/hb-ot-shape-complex-indic-machine.hh \
$$PWD/src/hb-ot-shape-complex-indic-private.hh \
$$PWD/src/hb-ot-shape-complex-myanmar-machine.hh \
$$PWD/src/hb-ot-shape-complex-private.hh \
$$PWD/src/hb-ot-shape-complex-use-machine.hh \
$$PWD/src/hb-ot-shape-complex-use-private.hh \
$$PWD/src/hb-ot-shape-fallback-private.hh \
$$PWD/src/hb-ot-shape-normalize-private.hh \
$$PWD/src/hb-ot-shape-private.hh

HEADERS += \
$$PWD/src/hb-ot.h \
$$PWD/src/hb-ot-font.h \
$$PWD/src/hb-ot-layout.h \
$$PWD/src/hb-ot-shape.h \
$$PWD/src/hb-ot-tag.h
}

contains(SHAPERS, coretext) {
DEFINES += HAVE_CORETEXT

SOURCES += \
Expand Down
4 changes: 2 additions & 2 deletions src/concurrent/concurrent.pro
Original file line number Diff line number Diff line change
Expand Up @@ -7,8 +7,6 @@ win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x66000000

QMAKE_DOCS = $$PWD/doc/qtconcurrent.qdocconf

load(qt_module)

PRECOMPILED_HEADER = ../corelib/global/qt_pch.h

SOURCES += \
Expand Down Expand Up @@ -41,3 +39,5 @@ HEADERS += \
contains(QT_CONFIG, clock-gettime) {
linux-*|hpux-*|solaris-*: LIBS_PRIVATE *= -lrt
}

load(qt_module)
9 changes: 6 additions & 3 deletions src/corelib/corelib.pro
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ MODULE_CONFIG = moc resources
!isEmpty(QT_NAMESPACE): MODULE_DEFINES = QT_NAMESPACE=$$QT_NAMESPACE

CONFIG += $$MODULE_CONFIG
DEFINES += $$MODULE_DEFINES
DEFINES += QT_NO_USING_NAMESPACE
win32-msvc*|win32-icc:QMAKE_LFLAGS += /BASE:0x67000000
irix-cc*:QMAKE_CXXFLAGS += -no_prelink -ptused
Expand All @@ -29,7 +30,6 @@ ANDROID_PERMISSIONS = \
# variable and on FreeBSD, this variable is in the final executable itself
freebsd: QMAKE_LFLAGS_NOUNDEF =

load(qt_module)
load(qfeatures)

include(animation/animation.pri)
Expand Down Expand Up @@ -58,8 +58,6 @@ mac|darwin {
LIBS_PRIVATE += -framework CoreFoundation
LIBS_PRIVATE += -framework Foundation
}
win32:DEFINES-=QT_NO_CAST_TO_ASCII
DEFINES += $$MODULE_DEFINES

QMAKE_LIBS += $$QMAKE_LIBS_CORE

Expand All @@ -76,6 +74,11 @@ qt_conf.variable = QT_CONFIG

QMAKE_PKGCONFIG_VARIABLES += host_bins qt_conf

load(qt_module)

# Override qt_module, so the symbols are actually included into the library.
win32: DEFINES -= QT_NO_CAST_TO_ASCII

ctest_macros_file.input = $$PWD/Qt5CTestMacros.cmake
ctest_macros_file.output = $$DESTDIR/cmake/Qt5Core/Qt5CTestMacros.cmake
ctest_macros_file.CONFIG = verbatim
Expand Down
3 changes: 2 additions & 1 deletion src/corelib/doc/src/objectmodel/signalsandslots.qdoc
Original file line number Diff line number Diff line change
Expand Up @@ -251,7 +251,8 @@
This example illustrates that objects can work together without needing to
know any information about each other. To enable this, the objects only
need to be connected together, and this can be achieved with some simple
QObject::connect() function calls, or with \c{uic}'s {automatic connections} feature.
QObject::connect() function calls, or with \c{uic}'s
\l{Automatic Connections}{automatic connections} feature.


\section1 A Real Example
Expand Down
2 changes: 1 addition & 1 deletion src/corelib/global/qlogging.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -1191,7 +1191,7 @@ static void slog2_default_handler(QtMsgType msgType, const char *message)

buffer_config.buffer_set_name = __progname;
buffer_config.num_buffers = 1;
buffer_config.verbosity_level = SLOG2_INFO;
buffer_config.verbosity_level = SLOG2_DEBUG1;
buffer_config.buffer_config[0].buffer_name = "default";
buffer_config.buffer_config[0].num_pages = 8;

Expand Down
3 changes: 3 additions & 0 deletions src/corelib/global/qsystemdetection.h
Original file line number Diff line number Diff line change
Expand Up @@ -131,6 +131,9 @@
# if defined(WINCE) || defined(_WIN32_WCE)
# define Q_OS_WINCE
# elif defined(WINAPI_FAMILY)
# ifndef WINAPI_FAMILY_PC_APP
# define WINAPI_FAMILY_PC_APP WINAPI_FAMILY_APP
# endif
# if defined(WINAPI_FAMILY_PHONE_APP) && WINAPI_FAMILY==WINAPI_FAMILY_PHONE_APP
# define Q_OS_WINPHONE
# define Q_OS_WINRT
Expand Down
Loading

0 comments on commit 50d0f57

Please sign in to comment.