diff options
Diffstat (limited to 'tools')
-rw-r--r-- | tools/configure/Makefile.mingw | 5 | ||||
-rw-r--r-- | tools/configure/Makefile.win32 | 16 | ||||
-rw-r--r-- | tools/configure/configure.pro | 4 | ||||
-rw-r--r-- | tools/configure/configure_pch.h | 29 | ||||
-rw-r--r-- | tools/configure/configureapp.cpp | 423 | ||||
-rw-r--r-- | tools/configure/configureapp.h | 30 | ||||
-rw-r--r-- | tools/configure/environment.cpp | 48 | ||||
-rw-r--r-- | tools/configure/environment.h | 29 | ||||
-rw-r--r-- | tools/configure/main.cpp | 29 | ||||
-rw-r--r-- | tools/configure/tools.cpp | 29 | ||||
-rw-r--r-- | tools/configure/tools.h | 29 | ||||
-rw-r--r-- | tools/shared/windows/registry.cpp | 29 | ||||
-rw-r--r-- | tools/shared/windows/registry_p.h | 29 |
13 files changed, 289 insertions, 440 deletions
diff --git a/tools/configure/Makefile.mingw b/tools/configure/Makefile.mingw index 5bdfc3f32c..ed13c1a776 100644 --- a/tools/configure/Makefile.mingw +++ b/tools/configure/Makefile.mingw @@ -4,9 +4,9 @@ CONFSRC = $(TOOLSRC)/configure RAW_PCH = configure_pch.h PCH = $(RAW_PCH).gch/c++ -DEFINES = -DUNICODE -DQT_NO_DATASTREAM -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_VERSION_STR=\"$(QTVERSION)\" -DQT_VERSION_MAJOR=$(QT_VERSION_MAJOR) -DQT_VERSION_MINOR=$(QT_VERSION_MINOR) -DQT_VERSION_PATCH=$(QT_VERSION_PATCH) +DEFINES = -DUNICODE -DQT_NO_DATASTREAM -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_USE_QSTRINGBUILDER -DQT_VERSION_STR=\"$(QTVERSION)\" -DQT_VERSION_MAJOR=$(QT_VERSION_MAJOR) -DQT_VERSION_MINOR=$(QT_VERSION_MINOR) -DQT_VERSION_PATCH=$(QT_VERSION_PATCH) INCPATH = -I"../../include" -I"../../include/QtCore" -I"../../include/QtCore/$(QTVERSION)" -I"../../include/QtCore/$(QTVERSION)/QtCore" -I"$(TOOLSRC)/shared" -I"$(QTSRC)mkspecs/win32-g++" -CXXFLAGS_BARE = -fno-rtti -fno-exceptions -mthreads -Wall -Wextra $(DEFINES) $(INCPATH) +CXXFLAGS_BARE = -std=c++11 -fno-rtti -fno-exceptions -mthreads -Wall -Wextra $(DEFINES) $(INCPATH) CXXFLAGS = -include $(RAW_PCH) $(CXXFLAGS_BARE) LINK = g++ LFLAGS = -Wl,-subsystem,console -mthreads @@ -62,6 +62,7 @@ OBJECTS = \ qregexp.o \ qstring.o \ qstring_compat.o \ + qstringbuilder.o \ qstringlist.o \ qvsnprintf.o \ qvariant.o \ diff --git a/tools/configure/Makefile.win32 b/tools/configure/Makefile.win32 index 8d6fe8bf72..aae3d57ce3 100644 --- a/tools/configure/Makefile.win32 +++ b/tools/configure/Makefile.win32 @@ -2,11 +2,17 @@ CORESRC = $(QTSRC)src\corelib TOOLSRC = $(QTSRC)tools CONFSRC = $(TOOLSRC)\configure -PCH = configure_pch.pch -DEFINES = -DUNICODE -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_VERSION_STR=\"$(QTVERSION)\" -DQT_VERSION_MAJOR=$(QT_VERSION_MAJOR) -DQT_VERSION_MINOR=$(QT_VERSION_MINOR) -DQT_VERSION_PATCH=$(QT_VERSION_PATCH) -INCPATH = -I"..\..\include" -I"..\..\include\QtCore" -I"..\..\include\QtCore\$(QTVERSION)" -I"..\..\include\QtCore\$(QTVERSION)\QtCore" -I"$(TOOLSRC)\shared" -I"$(QTSRC)mkspecs\win32-msvc2008" +DEFINES = -DUNICODE -DQT_NO_CODECS -DQT_NO_TEXTCODEC -DQT_NO_UNICODETABLES -DQT_LITE_COMPONENT -DQT_NO_COMPRESS -DQT_NO_THREAD -DQT_NO_QOBJECT -DQT_NO_GEOM_VARIANT -D_CRT_SECURE_NO_DEPRECATE -DQT_BOOTSTRAPPED -DQT_BUILD_CONFIGURE -DQT_USE_QSTRINGBUILDER -DQT_VERSION_STR=\"$(QTVERSION)\" -DQT_VERSION_MAJOR=$(QT_VERSION_MAJOR) -DQT_VERSION_MINOR=$(QT_VERSION_MINOR) -DQT_VERSION_PATCH=$(QT_VERSION_PATCH) +INCPATH = -I"..\..\include" -I"..\..\include\QtCore" -I"..\..\include\QtCore\$(QTVERSION)" -I"..\..\include\QtCore\$(QTVERSION)\QtCore" -I"$(TOOLSRC)\shared" -I"$(QTSRC)mkspecs\win32-msvc2012" CXXFLAGS_BARE = -nologo -Zc:wchar_t -W3 -GR -EHsc -w34100 -w34189 -wd4577 $(CFLAGS_CRT) $(EXTRA_CXXFLAGS) $(DEFINES) $(INCPATH) +!IF ("$(CXX)" != "clang-cl") +PCH = configure_pch.pch +PCH_OBJECT = configure_pch.obj CXXFLAGS = -FIconfigure_pch.h -Yuconfigure_pch.h -Fp$(PCH) -MP $(CXXFLAGS_BARE) +!ELSE +PCH = +CXXFLAGS = -Wmicrosoft $(CXXFLAGS_BARE) +!ENDIF LINK = link LFLAGS = /NOLOGO /DYNAMICBASE /NXCOMPAT /INCREMENTAL:NO /SUBSYSTEM:CONSOLE "/MANIFESTDEPENDENCY:type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' publicKeyToken='6595b64144ccf1df' language='*' processorArchitecture='*'" /MANIFEST /MANIFESTFILE:"configure.intermediate.manifest" LIBS = ole32.lib advapi32.lib shell32.lib @@ -61,6 +67,7 @@ OBJECTS = \ qregexp.obj \ qstring.obj \ qstring_compat.obj \ + qstringbuilder.obj \ qstringlist.obj \ qvsnprintf.obj \ qvariant.obj \ @@ -71,7 +78,7 @@ OBJECTS = \ qxmlutils.obj \ quuid.obj \ registry.obj \ - configure_pch.obj + $(PCH_OBJECT) $(TARGET): $(OBJECTS) $(LINK) $(LFLAGS) /OUT:$(TARGET) @<< @@ -135,6 +142,7 @@ qdatetime.obj: $(CORESRC)\tools\qdatetime.cpp $(PCH) qmap.obj: $(CORESRC)\tools\qmap.cpp $(PCH) qregexp.obj: $(CORESRC)\tools\qregexp.cpp $(PCH) qstring.obj: $(CORESRC)\tools\qstring.cpp $(PCH) +qstringbuilder.obj: $(CORESRC)\tools\qstringbuilder.cpp $(PCH) qstringlist.obj: $(CORESRC)\tools\qstringlist.cpp $(PCH) qvsnprintf.obj: $(CORESRC)\tools\qvsnprintf.cpp $(PCH) qvariant.obj: $(CORESRC)\kernel\qvariant.cpp $(PCH) diff --git a/tools/configure/configure.pro b/tools/configure/configure.pro index 939c9ea5ab..f1767e16cd 100644 --- a/tools/configure/configure.pro +++ b/tools/configure/configure.pro @@ -3,7 +3,7 @@ DESTDIR = $$PWD/../.. # build directly in source dir CONFIG += console flat stl rtti_off CONFIG -= moc qt -DEFINES = UNICODE QT_NO_CODECS QT_NO_TEXTCODEC QT_NO_UNICODETABLES QT_LITE_COMPONENT QT_NO_COMPRESS QT_NO_THREAD QT_NO_QOBJECT QT_NO_GEOM_VARIANT _CRT_SECURE_NO_DEPRECATE +DEFINES = UNICODE QT_NO_CODECS QT_NO_TEXTCODEC QT_NO_UNICODETABLES QT_LITE_COMPONENT QT_NO_COMPRESS QT_NO_THREAD QT_NO_QOBJECT QT_NO_GEOM_VARIANT _CRT_SECURE_NO_DEPRECATE QT_USE_QSTRINGBUILDER DEFINES += QT_BOOTSTRAPPED QT_BUILD_CONFIGURE win32 : LIBS += -lole32 -ladvapi32 @@ -70,6 +70,7 @@ HEADERS = configureapp.h environment.h tools.h\ $$QT_SOURCE_TREE/src/corelib/tools/qregexp.h \ $$QT_SOURCE_TREE/src/corelib/tools/qringbuffer_p.h \ $$QT_SOURCE_TREE/src/corelib/tools/qstring.h \ + $$QT_SOURCE_TREE/src/corelib/tools/qstringbuilder.h \ $$QT_SOURCE_TREE/src/corelib/tools/qstringlist.h \ $$QT_SOURCE_TREE/src/corelib/tools/qstringmatcher.h \ $$QT_SOURCE_TREE/src/corelib/tools/qunicodetables_p.h \ @@ -122,6 +123,7 @@ SOURCES = main.cpp configureapp.cpp environment.cpp tools.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qregexp.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qringbuffer.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qstring.cpp \ + $$QT_SOURCE_TREE/src/corelib/tools/qstringbuilder.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qstring_compat.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qstringlist.cpp \ $$QT_SOURCE_TREE/src/corelib/tools/qvsnprintf.cpp \ diff --git a/tools/configure/configure_pch.h b/tools/configure/configure_pch.h index 0d3da1ad7c..8e36f7e54e 100644 --- a/tools/configure/configure_pch.h +++ b/tools/configure/configure_pch.h @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp index 88dcd8170b..263cd6e78c 100644 --- a/tools/configure/configureapp.cpp +++ b/tools/configure/configureapp.cpp @@ -1,32 +1,27 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Copyright (C) 2015 Intel Corporation -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 Intel Corporation. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** @@ -57,10 +52,8 @@ QT_BEGIN_NAMESPACE enum Platforms { WINDOWS, - WINDOWS_CE, WINDOWS_RT, QNX, - BLACKBERRY, ANDROID, OTHER }; @@ -161,16 +154,15 @@ Configure::Configure(int& argc, char** argv) : verbose(0) dictionary[ "SSE4_2" ] = "auto"; dictionary[ "AVX" ] = "auto"; dictionary[ "AVX2" ] = "auto"; + dictionary[ "AVX512" ] = "auto"; dictionary[ "SYNCQT" ] = "auto"; - dictionary[ "CE_CRT" ] = "no"; - dictionary[ "CETEST" ] = "auto"; - dictionary[ "CE_SIGNATURE" ] = "no"; dictionary[ "AUDIO_BACKEND" ] = "auto"; dictionary[ "WMF_BACKEND" ] = "no"; dictionary[ "WMSDK" ] = "auto"; dictionary[ "QML_DEBUG" ] = "yes"; dictionary[ "PLUGIN_MANIFESTS" ] = "no"; dictionary[ "DIRECTWRITE" ] = "auto"; + dictionary[ "DIRECTWRITE2" ] = "auto"; dictionary[ "DIRECT2D" ] = "no"; dictionary[ "NIS" ] = "no"; dictionary[ "NEON" ] = "auto"; @@ -263,6 +255,7 @@ Configure::Configure(int& argc, char** argv) : verbose(0) dictionary[ "PNG" ] = "auto"; dictionary[ "LIBJPEG" ] = "auto"; dictionary[ "LIBPNG" ] = "auto"; + dictionary[ "DOUBLECONVERSION" ] = "auto"; dictionary[ "FREETYPE" ] = "yes"; dictionary[ "FREETYPE_FROM" ] = "default"; dictionary[ "HARFBUZZ" ] = "qt"; @@ -280,9 +273,6 @@ Configure::Configure(int& argc, char** argv) : verbose(0) dictionary[ "STYLE_WINDOWSXP" ] = "auto"; dictionary[ "STYLE_WINDOWSVISTA" ] = "auto"; dictionary[ "STYLE_FUSION" ] = "yes"; - dictionary[ "STYLE_WINDOWSCE" ] = "no"; - dictionary[ "STYLE_WINDOWSMOBILE" ] = "no"; - dictionary[ "STYLE_GTK" ] = "no"; dictionary[ "SQL_MYSQL" ] = "no"; dictionary[ "SQL_ODBC" ] = "no"; @@ -308,7 +298,7 @@ Configure::Configure(int& argc, char** argv) : verbose(0) dictionary[ "NATIVE_GESTURES" ] = "yes"; dictionary[ "MSVC_MP" ] = "no"; - if (dictionary["QMAKESPEC"] == QString("win32-g++")) { + if (dictionary["QMAKESPEC"].startsWith("win32-g++")) { const QString zero = QStringLiteral("0"); const QStringList parts = Environment::gccVersion().split(QLatin1Char('.')); dictionary["QT_GCC_MAJOR_VERSION"] = parts.value(0, zero); @@ -480,25 +470,21 @@ void Configure::parseCmdLine() dictionary[ "COMPILE_EXAMPLES" ] = "no"; } - else if (configCmdLine.at(i) == "-c++11") - dictionary[ "C++STD" ] = "c++11"; - else if (configCmdLine.at(i) == "-no-c++11") - dictionary[ "C++STD" ] = "c++98"; else if (configCmdLine.at(i) == "-c++std") { ++i; if (i == argCount) break; QString level = configCmdLine.at(i); - if (level == "c++98" || level == "c++11" || level == "c++14" || level == "c++1z" + if (level == "c++11" || level == "c++14" || level == "c++1z" || level == "auto") { dictionary[ "C++STD" ] = level; - } else if (level == "98" || level == "11" || level == "14" || level == "1z") { + } else if (level == "11" || level == "14" || level == "1z") { dictionary[ "C++STD" ] = "c++" + level; } else { dictionary[ "DONE" ] = "error"; cout << "ERROR: invalid C++ standard " << level - << "; valid options are: c++98 c++11 c++14 c++1z auto" << endl; + << "; valid options are: c++11 c++14 c++1z auto" << endl; return; } } @@ -546,6 +532,12 @@ void Configure::parseCmdLine() if (i == argCount) break; const QString option = configCmdLine.at(i); + if (option == "xp") { + cout << "ERROR: option \"-target xp\" is no longer valid" << endl; + dictionary["DONE"] = "error"; + return; + } + if (option != "xp") { cout << "ERROR: invalid argument for -target option" << endl; dictionary["DONE"] = "error"; @@ -640,6 +632,14 @@ void Configure::parseCmdLine() dictionary[ "LIBPNG" ] = "system"; } + // Double Conversion ----------------------------------------- + else if (configCmdLine.at(i) == "-no-doubleconversion") + dictionary[ "DOUBLECONVERSION" ] = "no"; + else if (configCmdLine.at(i) == "-qt-doubleconversion") + dictionary[ "DOUBLECONVERSION" ] = "qt"; + else if (configCmdLine.at(i) == "-system-doubleconversion") + dictionary[ "DOUBLECONVERSION" ] = "system"; + // Text Rendering -------------------------------------------- else if (configCmdLine.at(i) == "-no-freetype") { dictionary[ "FREETYPE" ] = "no"; @@ -659,58 +659,12 @@ void Configure::parseCmdLine() else if (configCmdLine.at(i) == "-system-harfbuzz") dictionary[ "HARFBUZZ" ] = "system"; - // CE- C runtime -------------------------------------------- - else if (configCmdLine.at(i) == "-crt") { - ++i; - if (i == argCount) - break; - QDir cDir(configCmdLine.at(i)); - if (!cDir.exists()) - cout << "WARNING: Could not find directory (" << qPrintable(configCmdLine.at(i)) << ")for C runtime deployment" << endl; - else - dictionary[ "CE_CRT" ] = QDir::toNativeSeparators(cDir.absolutePath()); - } else if (configCmdLine.at(i) == "-qt-crt") { - dictionary[ "CE_CRT" ] = "yes"; - } else if (configCmdLine.at(i) == "-no-crt") { - dictionary[ "CE_CRT" ] = "no"; - } - // cetest --------------------------------------------------- - else if (configCmdLine.at(i) == "-no-cetest") { - dictionary[ "CETEST" ] = "no"; - dictionary[ "CETEST_REQUESTED" ] = "no"; - } else if (configCmdLine.at(i) == "-cetest") { - // although specified to use it, we stay at "auto" state - // this is because checkAvailability() adds variables - // we need for crosscompilation; but remember if we asked - // for it. - dictionary[ "CETEST_REQUESTED" ] = "yes"; - } - // Qt/CE - signing tool ------------------------------------- - else if (configCmdLine.at(i) == "-signature") { - ++i; - if (i == argCount) - break; - QFileInfo info(configCmdLine.at(i)); - if (!info.exists()) - cout << "WARNING: Could not find signature file (" << qPrintable(configCmdLine.at(i)) << ")" << endl; - else - dictionary[ "CE_SIGNATURE" ] = QDir::toNativeSeparators(info.absoluteFilePath()); - } // Styles --------------------------------------------------- else if (configCmdLine.at(i) == "-qt-style-windows") dictionary[ "STYLE_WINDOWS" ] = "yes"; else if (configCmdLine.at(i) == "-no-style-windows") dictionary[ "STYLE_WINDOWS" ] = "no"; - else if (configCmdLine.at(i) == "-qt-style-windowsce") - dictionary[ "STYLE_WINDOWSCE" ] = "yes"; - else if (configCmdLine.at(i) == "-no-style-windowsce") - dictionary[ "STYLE_WINDOWSCE" ] = "no"; - else if (configCmdLine.at(i) == "-qt-style-windowsmobile") - dictionary[ "STYLE_WINDOWSMOBILE" ] = "yes"; - else if (configCmdLine.at(i) == "-no-style-windowsmobile") - dictionary[ "STYLE_WINDOWSMOBILE" ] = "no"; - else if (configCmdLine.at(i) == "-qt-style-windowsxp") dictionary[ "STYLE_WINDOWSXP" ] = "yes"; else if (configCmdLine.at(i) == "-no-style-windowsxp") @@ -911,6 +865,10 @@ void Configure::parseCmdLine() dictionary[ "AVX2" ] = "no"; else if (configCmdLine.at(i) == "-avx2") dictionary[ "AVX2" ] = "yes"; + else if (configCmdLine.at(i) == "-no-avx512") + dictionary[ "AVX512" ] = ""; + else if (configCmdLine.at(i) == "-avx512") + dictionary[ "AVX512" ] = "auto"; else if (configCmdLine.at(i) == "-no-ssl") { dictionary[ "SSL"] = "no"; @@ -1449,19 +1407,12 @@ void Configure::parseCmdLine() cout << "See the README file for a list of supported operating systems and compilers." << endl; } else { if (dictionary[ "QMAKESPEC" ].endsWith("-icc") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc.net") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2002") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2003") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2005") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2008") || - dictionary[ "QMAKESPEC" ].endsWith("-msvc2010") || dictionary[ "QMAKESPEC" ].endsWith("-msvc2012") || dictionary[ "QMAKESPEC" ].endsWith("-msvc2013") || dictionary[ "QMAKESPEC" ].endsWith("-msvc2015")) { if (dictionary[ "MAKE" ].isEmpty()) dictionary[ "MAKE" ] = "nmake"; dictionary[ "QMAKEMAKEFILE" ] = "Makefile.win32"; - } else if (dictionary[ "QMAKESPEC" ] == QString("win32-g++")) { + } else if (dictionary[ "QMAKESPEC" ].startsWith(QLatin1String("win32-g++"))) { if (dictionary[ "MAKE" ].isEmpty()) dictionary[ "MAKE" ] = "mingw32-make"; dictionary[ "QMAKEMAKEFILE" ] = "Makefile.unix"; } else { @@ -1498,28 +1449,6 @@ void Configure::parseCmdLine() } } - // Ensure that the crt to be deployed can be found - if (dictionary["CE_CRT"] != QLatin1String("yes") && dictionary["CE_CRT"] != QLatin1String("no")) { - QDir cDir(dictionary["CE_CRT"]); - QStringList entries = cDir.entryList(); - bool hasDebug = entries.contains("msvcr80.dll"); - bool hasRelease = entries.contains("msvcr80d.dll"); - if ((dictionary["BUILDALL"] == "auto") && (!hasDebug || !hasRelease)) { - cout << "Could not find debug and release c-runtime." << endl; - cout << "You need to have msvcr80.dll and msvcr80d.dll in" << endl; - cout << "the path specified. Setting to -no-crt"; - dictionary[ "CE_CRT" ] = "no"; - } else if ((dictionary["BUILD"] == "debug") && !hasDebug) { - cout << "Could not find debug c-runtime (msvcr80d.dll) in the directory specified." << endl; - cout << "Setting c-runtime automatic deployment to -no-crt" << endl; - dictionary[ "CE_CRT" ] = "no"; - } else if ((dictionary["BUILD"] == "release") && !hasRelease) { - cout << "Could not find release c-runtime (msvcr80.dll) in the directory specified." << endl; - cout << "Setting c-runtime automatic deployment to -no-crt" << endl; - dictionary[ "CE_CRT" ] = "no"; - } - } - // Allow tests for private classes to be compiled against internal builds if (dictionary["BUILDDEV"] == "yes") { qtConfig << "private_tests"; @@ -1716,23 +1645,9 @@ void Configure::applySpecSpecifics() dictionary[ "ZLIB" ] = "qt"; dictionary[ "PCRE" ] = "qt"; dictionary[ "ICU" ] = "qt"; - dictionary[ "CE_CRT" ] = "yes"; dictionary[ "LARGE_FILE" ] = "no"; dictionary[ "ANGLE" ] = "yes"; dictionary[ "DYNAMICGL" ] = "no"; - } else if (dictionary.value("XQMAKESPEC").startsWith("wince")) { - dictionary[ "STYLE_WINDOWSXP" ] = "no"; - dictionary[ "STYLE_WINDOWSVISTA" ] = "no"; - dictionary[ "STYLE_FUSION" ] = "no"; - dictionary[ "STYLE_WINDOWSCE" ] = "yes"; - dictionary[ "STYLE_WINDOWSMOBILE" ] = "yes"; - dictionary[ "CE_CRT" ] = "yes"; - dictionary[ "LARGE_FILE" ] = "no"; - dictionary[ "ANGLE" ] = "no"; - dictionary[ "DYNAMICGL" ] = "no"; - if (dictionary[ "XQMAKESPEC" ].startsWith("wincewm")) { - dictionary[ "MMX" ] = "yes"; - } } else if (dictionary.value("XQMAKESPEC").startsWith("linux")) { //TODO actually wrong. //TODO dictionary[ "STYLE_WINDOWSXP" ] = "no"; @@ -1752,7 +1667,7 @@ void Configure::applySpecSpecifics() dictionary[ "ANGLE" ] = "no"; dictionary["DECORATIONS"] = "default windows styled"; - } else if ((platform() == QNX) || (platform() == BLACKBERRY)) { + } else if (platform() == QNX) { dictionary[ "REDUCE_EXPORTS" ] = "yes"; dictionary["STACK_PROTECTOR_STRONG"] = "auto"; dictionary["SLOG2"] = "auto"; @@ -1764,6 +1679,8 @@ void Configure::applySpecSpecifics() dictionary[ "DYNAMICGL" ] = "no"; dictionary[ "FONT_CONFIG" ] = "auto"; dictionary[ "ICU" ] = "auto"; + dictionary[ "POLL" ] = "poll"; + dictionary[ "ZLIB" ] = "system"; } else if (platform() == ANDROID) { dictionary[ "REDUCE_EXPORTS" ] = "yes"; dictionary[ "BUILD" ] = "release"; @@ -1776,6 +1693,8 @@ void Configure::applySpecSpecifics() dictionary[ "QT_XKBCOMMON" ] = "no"; dictionary["ANDROID_STYLE_ASSETS"] = "yes"; dictionary[ "STYLE_ANDROID" ] = "yes"; + dictionary[ "POLL" ] = "poll"; + dictionary[ "ZLIB" ] = "system"; } } @@ -1843,7 +1762,7 @@ bool Configure::displayHelp() desc("OPENSOURCE", "opensource", "-opensource", "Compile and link the Open-Source Edition of Qt."); desc("COMMERCIAL", "commercial", "-commercial", "Compile and link the Commercial Edition of Qt.\n"); - desc( "-c++std <edition>", "Compile Qt with C++ standard edition (c++98, c++11, c++14, c++1z)\n" + desc( "-c++std <edition>", "Compile Qt with C++ standard edition (c++11, c++14, c++1z)\n" "Default: highest supported. This option is not supported for MSVC.\n"); desc("USE_GOLD_LINKER", "yes", "-use-gold-linker", "Link using the GNU gold linker (gcc only)."); @@ -1910,9 +1829,6 @@ bool Configure::displayHelp() desc( "-xplatform <spec>", "The operating system and compiler you are cross compiling to.\n"); desc( "", "See the README file for a list of supported operating systems and compilers.\n", false, ' '); - desc("TARGET_OS", "*", "-target", "Set target OS version. Currently the only valid value is 'xp' for targeting Windows XP.\n" - "MSVC >= 2012 targets Windows Vista by default.\n"); - desc( "-sysroot <dir>", "Sets <dir> as the target compiler's and qmake's sysroot and also sets pkg-config paths."); desc( "-no-gcc-sysroot", "When using -sysroot, it disables the passing of --sysroot to the compiler.\n"); @@ -1987,6 +1903,10 @@ bool Configure::displayHelp() desc("LIBJPEG", "qt", "-qt-libjpeg", "Use the libjpeg bundled with Qt."); desc("LIBJPEG", "system","-system-libjpeg", "Use libjpeg from the operating system.\nSee http://www.ijg.org\n"); + desc("DOUBLECONVERSION", "no", "-no-doubleconversion", "Use sscanf_l and snprintf_l for (imprecise) double conversion."); + desc("DOUBLECONVERSION", "qt", "-qt-doubleconversion", "Use the libdouble-conversion bundled with Qt."); + desc("DOUBLECONVERSION", "system", "-system-doubleconversion", "Use the libdouble-conversion provided by the system."); + desc("FREETYPE", "no", "-no-freetype", "Do not compile in Freetype2 support."); desc("FREETYPE", "yes", "-qt-freetype", "Use the libfreetype bundled with Qt."); desc("FREETYPE", "system","-system-freetype", "Use the libfreetype provided by the system.\n"); @@ -2003,7 +1923,7 @@ bool Configure::displayHelp() "by setting the QT_HARFBUZZ environment variable to \"old\".\n" "See http://www.harfbuzz.org\n"); - if ((platform() == QNX) || (platform() == BLACKBERRY)) { + if (platform() == QNX) { desc("SLOG2", "yes", "-slog2", "Compile with slog2 support."); desc("SLOG2", "no", "-no-slog2", "Do not compile with slog2 support."); desc("QNX_IMF", "yes", "-imf", "Compile with imf support."); @@ -2049,6 +1969,8 @@ bool Configure::displayHelp() desc("AVX", "yes", "-avx", "Compile with use of AVX instructions."); desc("AVX2", "no", "-no-avx2", "Do not compile with use of AVX2 instructions."); desc("AVX2", "yes", "-avx2", "Compile with use of AVX2 instructions.\n"); + desc("AVX512", "no", "-no-avx512", "Do not compile with use of AVX512 instructions."); + desc("AVX512", "yes", "-avx512", "Compile with use of AVX512 instructions.\n"); desc("SSL", "no", "-no-ssl", "Do not compile support for SSL."); desc("SSL", "yes", "-ssl", "Enable run-time SSL support."); desc("OPENSSL", "no", "-no-openssl", "Do not compile support for OpenSSL."); @@ -2080,8 +2002,6 @@ bool Configure::displayHelp() desc("STYLE_WINDOWSXP", "auto", "", " windowsxp", ' '); desc("STYLE_WINDOWSVISTA", "auto", "", " windowsvista", ' '); desc("STYLE_FUSION", "yes", "", " fusion", ' '); - desc("STYLE_WINDOWSCE", "yes", "", " windowsce", ' '); - desc("STYLE_WINDOWSMOBILE" , "yes", "", " windowsmobile\n", ' '); desc("NATIVE_GESTURES", "no", "-no-native-gestures", "Do not use native gestures on Windows 7."); desc("NATIVE_GESTURES", "yes", "-native-gestures", "Use native gestures on Windows 7.\n"); desc("MSVC_MP", "no", "-no-mp", "Do not use multiple processors for compiling with MSVC"); @@ -2091,15 +2011,6 @@ bool Configure::displayHelp() desc( "-saveconfig <config>", "Run configure and save the parameters in file configure_<config>.cache."); desc( "-redo", "Run configure with the same parameters as last time.\n"); desc( "-v, -verbose", "Run configure tests with verbose output.\n"); - - // Qt\Windows CE only options go below here ----------------------------------------------------------------------------- - desc("Qt for Windows CE only:\n\n"); - desc("CE_CRT", "no", "-no-crt" , "Do not add the C runtime to default deployment rules."); - desc("CE_CRT", "yes", "-qt-crt", "Qt identifies C runtime during project generation."); - desc( "-crt <path>", "Specify path to C runtime used for project generation.\n"); - desc("CETEST", "no", "-no-cetest", "Do not compile Windows CE remote test application."); - desc("CETEST", "yes", "-cetest", "Compile Windows CE remote test application.\n"); - desc( "-signature <file>", "Use <file> for signing the target project."); return true; } return false; @@ -2193,11 +2104,6 @@ bool Configure::checkAngleAvailability(QString *errorMessage /* = 0 */) const // it is also present in MinGW. const QString directXSdk = Environment::detectDirectXSdk(); const Compiler compiler = Environment::compilerFromQMakeSpec(dictionary[QStringLiteral("QMAKESPEC")]); - if (compiler >= CC_MSVC2005 && compiler <= CC_MSVC2008) { - if (errorMessage) - *errorMessage = QStringLiteral("ANGLE is no longer supported for this compiler."); - return false; - } if (compiler < CC_MSVC2012 && directXSdk.isEmpty()) { if (errorMessage) *errorMessage = QStringLiteral("There is no Direct X SDK installed or the environment variable \"DXSDK_DIR\" is not set."); @@ -2237,6 +2143,24 @@ bool Configure::checkAngleAvailability(QString *errorMessage /* = 0 */) const return true; } +QString Configure::checkAvx512Availability() +{ + static const char avx512features[][5] = { "cd", "er", "pf", "bw", "dq", "vl", "ifma", "vbmi" }; + + // try AVX512 Foundation. No Foundation, nothing else works. + if (!tryCompileProject("common/avx512", "AVX512=F")) + return QString(); + + QString available = "avx512f"; + for (size_t i = 0; i < sizeof(avx512features)/sizeof(avx512features[0]); ++i) { + if (tryCompileProject("common/avx512", QStringLiteral("AVX512=%0").arg(avx512features[i]).toUpper())) { + available += " avx512"; + available += avx512features[i]; + } + } + return available; +} + /*! Checks the system for the availability of a feature. Returns true if the feature is available, else false. @@ -2257,6 +2181,9 @@ bool Configure::checkAvailability(const QString &part) else if (part == "ATOMIC64-LIBATOMIC") available = tryCompileProject("common/atomic64", "LIBS+=-latomic"); + else if (part == "ATOMICFPTR") + available = tryCompileProject("common/atomicfptr"); + else if (part == "ZLIB") available = findFile("zlib.h"); @@ -2293,7 +2220,7 @@ bool Configure::checkAvailability(const QString &part) available = true; // Built in, we have a fork else if (part == "SQL_SQLITE_LIB") { if (dictionary[ "SQL_SQLITE_LIB" ] == "system") { - if ((platform() == QNX) || (platform() == BLACKBERRY)) { + if (platform() == QNX) { available = true; dictionary[ "QT_LFLAGS_SQLITE" ] += "-lsqlite3 -lz"; } else { @@ -2308,8 +2235,6 @@ bool Configure::checkAvailability(const QString &part) available = findFile("sqlite.h") && findFile("sqlite.lib"); else if (part == "SQL_IBASE") available = findFile("ibase.h") && (findFile("gds32_ms.lib") || findFile("gds32.lib")); - else if (part == "OPENGL_ES_2") - available = (dictionary.value("XQMAKESPEC").startsWith("wince")); else if (part == "SSE2") available = tryCompileProject("common/sse2"); else if (part == "SSE3") @@ -2330,20 +2255,7 @@ bool Configure::checkAvailability(const QString &part) available = dictionary.contains("XQMAKESPEC") && tryCompileProject("common/libproxy"); else if (part == "DBUS") available = findFile("dbus\\dbus.h"); - else if (part == "CETEST") { - const QString rapiHeader = QDir::toNativeSeparators(locateFile("rapi.h")); - const QString rapiLib = QDir::toNativeSeparators(locateFile("rapi.lib")); - available = (dictionary.value("XQMAKESPEC").startsWith("wince")) && !rapiHeader.isEmpty() && !rapiLib.isEmpty(); - if (available) { - dictionary[ "QT_CE_RAPI_INC" ] += QLatin1String("\"") + rapiHeader + QLatin1String("\""); - dictionary[ "QT_CE_RAPI_LIB" ] += QLatin1String("\"") + rapiLib + QLatin1String("\""); - } - else if (dictionary[ "CETEST_REQUESTED" ] == "yes") { - cout << "cetest could not be enabled: rapi.h and rapi.lib could not be found." << endl; - cout << "Make sure the environment is set up for compiling with ActiveSync." << endl; - dictionary[ "DONE" ] = "error"; - } - } else if (part == "INCREDIBUILD_XGE") { + else if (part == "INCREDIBUILD_XGE") { available = !QStandardPaths::findExecutable(QStringLiteral("BuildConsole.exe")).isEmpty() && !QStandardPaths::findExecutable(QStringLiteral("xgConsole.exe")).isEmpty(); } else if (part == "WMSDK") { @@ -2354,6 +2266,8 @@ bool Configure::checkAvailability(const QString &part) available = findFile("mfapi.h") && findFile("mf.lib"); } else if (part == "DIRECTWRITE") { available = tryCompileProject("win/directwrite"); + } else if (part == "DIRECTWRITE2") { + available = tryCompileProject("win/directwrite2"); } else if (part == "DIRECT2D") { available = tryCompileProject("qpa/direct2d"); } else if (part == "ICONV") { @@ -2369,22 +2283,23 @@ bool Configure::checkAvailability(const QString &part) } else if (part == "QT_EVENTFD") { available = tryCompileProject("unix/eventfd"); } else if (part == "CUPS") { - available = (platform() != WINDOWS) && (platform() != WINDOWS_CE) && (platform() != WINDOWS_RT) && tryCompileProject("unix/cups"); + available = (platform() != WINDOWS) && (platform() != WINDOWS_RT) && tryCompileProject("unix/cups"); } else if (part == "STACK_PROTECTOR_STRONG") { - available = (platform() == QNX || platform() == BLACKBERRY) && compilerSupportsFlag("qcc -fstack-protector-strong"); + available = (platform() == QNX) && compilerSupportsFlag("qcc -fstack-protector-strong"); } else if (part == "SLOG2") { available = tryCompileProject("unix/slog2"); } else if (part == "QNX_IMF") { available = tryCompileProject("unix/qqnx_imf"); } else if (part == "PPS") { - available = (platform() == QNX || platform() == BLACKBERRY) && tryCompileProject("unix/pps"); + available = (platform() == QNX) && tryCompileProject("unix/pps"); } else if (part == "LGMON") { - available = (platform() == QNX || platform() == BLACKBERRY) - && tryCompileProject("unix/lgmon"); + available = (platform() == QNX) && tryCompileProject("unix/lgmon"); } else if (part == "NEON") { available = dictionary["QT_CPU_FEATURES"].contains("neon"); } else if (part == "FONT_CONFIG") { available = tryCompileProject("unix/fontconfig"); + } else if (part == "DOUBLECONVERSION") { + available = tryCompileProject("unix/doubleconversion"); } return available; @@ -2401,9 +2316,7 @@ void Configure::autoDetection() detectArch(); if (dictionary["C++STD"] == "auto" && !dictionary["QMAKESPEC"].contains("msvc")) { - if (!tryCompileProject("common/c++11")) { - dictionary["C++STD"] = "c++98"; - } else if (!tryCompileProject("common/c++14")) { + if (!tryCompileProject("common/c++14")) { dictionary["C++STD"] = "c++11"; } else if (!tryCompileProject("common/c++1z")) { dictionary["C++STD"] = "c++14"; @@ -2432,6 +2345,15 @@ void Configure::autoDetection() dictionary["ATOMIC64"] = checkAvailability("ATOMIC64") ? "yes" : checkAvailability("ATOMIC64-LIBATOMIC") ? "libatomic" : "no"; + // special case: + if (!checkAvailability("ATOMICFPTR")) { + dictionary["DONE"] = "error"; + cout << "ERROR: detected an std::atomic implementation that fails for function pointers." << endl + << "Please apply the patch corresponding to your Standard Library vendor, found in" << endl + << sourcePath << "/config.tests/common/atomicfptr" << endl; + return; + } + // Style detection if (dictionary["STYLE_WINDOWSXP"] == "auto") dictionary["STYLE_WINDOWSXP"] = checkAvailability("STYLE_WINDOWSXP") ? defaultTo("STYLE_WINDOWSXP") : "no"; @@ -2512,6 +2434,8 @@ void Configure::autoDetection() dictionary["AVX"] = checkAvailability("AVX") ? "yes" : "no"; if (dictionary["AVX2"] == "auto") dictionary["AVX2"] = checkAvailability("AVX2") ? "yes" : "no"; + if (dictionary["AVX512"] == "auto") + dictionary["AVX512"] = checkAvx512Availability(); if (dictionary["NEON"] == "auto") dictionary["NEON"] = checkAvailability("NEON") ? "yes" : "no"; if (dictionary["SSL"] == "auto") { @@ -2541,10 +2465,6 @@ void Configure::autoDetection() if (dictionary["WMSDK"] == "auto") dictionary["WMSDK"] = checkAvailability("WMSDK") ? "yes" : "no"; - // Qt/WinCE remote test application - if (dictionary["CETEST"] == "auto") - dictionary["CETEST"] = checkAvailability("CETEST") ? "yes" : "no"; - // Detection of IncrediBuild buildconsole if (dictionary["INCREDIBUILD_XGE"] == "auto") dictionary["INCREDIBUILD_XGE"] = checkAvailability("INCREDIBUILD_XGE") ? "yes" : "no"; @@ -2577,11 +2497,11 @@ void Configure::autoDetection() if (dictionary["STACK_PROTECTOR_STRONG"] == "auto") dictionary["STACK_PROTECTOR_STRONG"] = checkAvailability("STACK_PROTECTOR_STRONG") ? "yes" : "no"; - if ((platform() == QNX || platform() == BLACKBERRY) && dictionary["SLOG2"] == "auto") { + if (platform() == QNX && dictionary["SLOG2"] == "auto") { dictionary["SLOG2"] = checkAvailability("SLOG2") ? "yes" : "no"; } - if ((platform() == QNX || platform() == BLACKBERRY) && dictionary["QNX_IMF"] == "auto") { + if (platform() == QNX && dictionary["QNX_IMF"] == "auto") { dictionary["QNX_IMF"] = checkAvailability("QNX_IMF") ? "yes" : "no"; } @@ -2589,7 +2509,7 @@ void Configure::autoDetection() dictionary["PPS"] = checkAvailability("PPS") ? "yes" : "no"; } - if ((platform() == QNX || platform() == BLACKBERRY) && dictionary["LGMON"] == "auto") { + if (platform() == QNX && dictionary["LGMON"] == "auto") { dictionary["LGMON"] = checkAvailability("LGMON") ? "yes" : "no"; } @@ -2602,9 +2522,17 @@ void Configure::autoDetection() if ((dictionary["FONT_CONFIG"] == "yes") && (dictionary["FREETYPE_FROM"] == "default")) dictionary["FREETYPE"] = "system"; + if (dictionary["DOUBLECONVERSION"] == "auto") + dictionary["DOUBLECONVERSION"] = checkAvailability("DOUBLECONVERSION") ? "system" : "qt"; + if (dictionary["DIRECTWRITE"] == "auto") dictionary["DIRECTWRITE"] = checkAvailability("DIRECTWRITE") ? "yes" : "no"; + if (dictionary["DIRECTWRITE"] == "no") + dictionary["DIRECTWRITE2"] = "no"; + else if (dictionary["DIRECTWRITE2"] == "auto") + dictionary["DIRECTWRITE2"] = checkAvailability("DIRECTWRITE2") ? "yes" : "no"; + // Mark all unknown "auto" to the default value.. for (QMap<QString,QString>::iterator i = dictionary.begin(); i != dictionary.end(); ++i) { if (i.value() == "auto") @@ -2657,9 +2585,8 @@ bool Configure::verifyConfiguration() << "Oracle driver, as the current build will most likely fail." << endl; prompt = true; } - if (dictionary["QMAKESPEC"].endsWith("win32-msvc.net")) { - cout << "WARNING: The makespec win32-msvc.net is deprecated. Consider using" << endl - << "win32-msvc2002 or win32-msvc2003 instead." << endl; + if (dictionary["QMAKESPEC"].endsWith("win32-msvc2008") || dictionary["QMAKESPEC"].endsWith("win32-msvc2010")) { + cout << "ERROR: Qt cannot be compiled with Visual Studio 2008 or 2010." << endl; prompt = true; } if (0 != dictionary["ARM_FPU_TYPE"].size()) { @@ -2869,6 +2796,14 @@ void Configure::generateOutputVars() if (dictionary[ "LIBPNG" ] == "system") qtConfig += "system-png"; + // Double conversion ----------------------------------------------- + if (dictionary[ "DOUBLECONVERSION" ] == "qt") + qtConfig += "doubleconversion"; + else if (dictionary[ "DOUBLECONVERSION" ] == "system") + qtConfig += "system-doubleconversion"; + else if (dictionary[ "DOUBLECONVERSION" ] == "no") + qtConfig += "no-doubleconversion"; + // Text rendering -------------------------------------------------- if (dictionary[ "FREETYPE" ] == "yes") qtConfig += "freetype"; @@ -2893,12 +2828,6 @@ void Configure::generateOutputVars() if (dictionary[ "STYLE_WINDOWSVISTA" ] == "yes") qmakeStyles += "windowsvista"; - if (dictionary[ "STYLE_WINDOWSCE" ] == "yes") - qmakeStyles += "windowsce"; - - if (dictionary[ "STYLE_WINDOWSMOBILE" ] == "yes") - qmakeStyles += "windowsmobile"; - if (dictionary[ "STYLE_ANDROID" ] == "yes") qmakeStyles += "android"; @@ -3027,9 +2956,6 @@ void Configure::generateOutputVars() else if (dictionary[ "DBUS" ] == "linked") qtConfig += "dbus dbus-linked"; - if (dictionary[ "CETEST" ] == "yes") - qtConfig += "cetest"; - // ### Vestige if (dictionary["AUDIO_BACKEND"] == "yes") qtConfig += "audio-backend"; @@ -3043,6 +2969,9 @@ void Configure::generateOutputVars() if (dictionary["DIRECTWRITE"] == "yes") qtConfig += "directwrite"; + if (dictionary["DIRECTWRITE2"] == "yes") + qtConfig += "directwrite2"; + if (dictionary["DIRECT2D"] == "yes") qtConfig += "direct2d"; @@ -3094,6 +3023,9 @@ void Configure::generateOutputVars() if (dictionary["REDUCE_EXPORTS"] == "yes") qtConfig += "reduce_exports"; + if (!dictionary["POLL"].isEmpty()) + qtConfig += "poll_" + dictionary["POLL"]; + // We currently have no switch for QtConcurrent, so add it unconditionally. qtConfig += "concurrent"; @@ -3217,14 +3149,6 @@ void Configure::generateCachefile() if (dictionary["QT_XKBCOMMON"] == "no") moduleStream << "DEFINES += QT_NO_XKBCOMMON" << endl; - if (dictionary["CETEST"] == "yes") { - moduleStream << "QT_CE_RAPI_INC = " << formatPath(dictionary["QT_CE_RAPI_INC"]) << endl; - moduleStream << "QT_CE_RAPI_LIB = " << formatPath(dictionary["QT_CE_RAPI_LIB"]) << endl; - } - - if (dictionary["CE_SIGNATURE"] != QLatin1String("no")) - moduleStream << "DEFAULT_SIGNATURE=" << dictionary["CE_SIGNATURE"] << endl; - // embedded if (!dictionary["KBD_DRIVERS"].isEmpty()) moduleStream << "kbd-drivers += "<< dictionary["KBD_DRIVERS"]<<endl; @@ -3250,6 +3174,8 @@ void Configure::generateCachefile() moduleStream << " avx"; if (dictionary[ "AVX2" ] == "yes") moduleStream << " avx2"; + if (!dictionary[ "AVX512" ].isEmpty()) + moduleStream << ' ' << dictionary[ "AVX512" ]; if (dictionary[ "NEON" ] == "yes") moduleStream << " neon"; if (dictionary[ "LARGE_FILE" ] == "yes") @@ -3571,6 +3497,9 @@ void Configure::generateQConfigPri() if (dictionary["DIRECTWRITE"] == "yes") configStream << " directwrite"; + if (dictionary["DIRECTWRITE2"] == "yes") + configStream << " directwrite2"; + if (dictionary["ANDROID_STYLE_ASSETS"] == "yes") configStream << " android-style-assets"; @@ -3583,11 +3512,6 @@ void Configure::generateQConfigPri() configStream << " QT_TARGET_ARCH = " << dictionary["QT_ARCH"] << endl; configStream << "} else {" << endl; configStream << " QT_ARCH = " << dictionary["QT_ARCH"] << endl; - if (dictionary.contains("XQMAKESPEC") && !dictionary["XQMAKESPEC"].startsWith("wince")) { - // FIXME: add detection - configStream << " QMAKE_DEFAULT_LIBDIRS = /lib /usr/lib" << endl; - configStream << " QMAKE_DEFAULT_INCDIRS = /usr/include /usr/local/include" << endl; - } configStream << "}" << endl; configStream << "QT_CONFIG += " << qtConfig.join(' ') << endl; @@ -3740,6 +3664,8 @@ void Configure::generateConfigfiles() tmpStream << "#define QT_COMPILER_SUPPORTS_AVX 1" << endl; if (dictionary[ "AVX2" ] == "yes") tmpStream << "#define QT_COMPILER_SUPPORTS_AVX2 1" << endl; + foreach (const QString &avx512feature, dictionary[ "AVX512" ].split(' ', QString::SkipEmptyParts)) + tmpStream << "#define QT_COMPILER_SUPPRTS_" << avx512feature.toUpper() << " 1" << endl; if (dictionary["QREAL"] != "double") { tmpStream << "#define QT_COORD_TYPE " << dictionary["QREAL"] << endl; @@ -3754,9 +3680,6 @@ void Configure::generateConfigfiles() if (dictionary["STYLE_WINDOWSXP"] != "yes" && dictionary["STYLE_WINDOWSVISTA"] != "yes") qconfigList += "QT_NO_STYLE_WINDOWSXP"; if (dictionary["STYLE_WINDOWSVISTA"] != "yes") qconfigList += "QT_NO_STYLE_WINDOWSVISTA"; - if (dictionary["STYLE_WINDOWSCE"] != "yes") qconfigList += "QT_NO_STYLE_WINDOWSCE"; - if (dictionary["STYLE_WINDOWSMOBILE"] != "yes") qconfigList += "QT_NO_STYLE_WINDOWSMOBILE"; - if (dictionary["STYLE_GTK"] != "yes") qconfigList += "QT_NO_STYLE_GTK"; if (dictionary["GIF"] == "yes") qconfigList += "QT_BUILTIN_GIF_READER=1"; if (dictionary["PNG"] != "yes") qconfigList += "QT_NO_IMAGEFORMAT_PNG"; @@ -3794,8 +3717,7 @@ void Configure::generateConfigfiles() if (dictionary["POSIX_IPC"] == "yes") qconfigList += "QT_POSIX_IPC"; - else if ((platform() != ANDROID) && (platform() != WINDOWS) && (platform() != WINDOWS_CE) - && (platform() != WINDOWS_RT)) + else if ((platform() != ANDROID) && (platform() != WINDOWS) && (platform() != WINDOWS_RT)) qconfigList << "QT_NO_SYSTEMSEMAPHORE" << "QT_NO_SHAREDMEMORY"; if (dictionary["FONT_CONFIG"] == "no") qconfigList += "QT_NO_FONTCONFIG"; @@ -3907,13 +3829,19 @@ void Configure::displayConfig() sout << "Using PCH .................." << dictionary[ "PCH" ] << endl; sout << "Accessibility support......." << dictionary[ "ACCESSIBILITY" ] << endl; sout << "RTTI support................" << dictionary[ "RTTI" ] << endl; - sout << "SSE2 support................" << dictionary[ "SSE2" ] << endl; - sout << "SSE3 support................" << dictionary[ "SSE3" ] << endl; - sout << "SSSE3 support..............." << dictionary[ "SSSE3" ] << endl; - sout << "SSE4.1 support.............." << dictionary[ "SSE4_1" ] << endl; - sout << "SSE4.2 support.............." << dictionary[ "SSE4_2" ] << endl; - sout << "AVX support................." << dictionary[ "AVX" ] << endl; - sout << "AVX2 support................" << dictionary[ "AVX2" ] << endl; + sout << "SSE support................." + << (dictionary[ "SSE2" ] == "no" ? "<none>" : "SSE2") + << (dictionary[ "SSE3" ] == "no" ? "" : " SSE3") + << (dictionary[ "SSSE3" ] == "no" ? "" : " SSSE3") + << (dictionary[ "SSE4_1" ] == "no" ? "" : " SSE4.1") + << (dictionary[ "SSE4_2" ] == "no" ? "" : " SSE4.2") + << endl; + sout << "AVX support................." + << (dictionary[ "AVX" ] == "no" ? "<none>" : "AVX") + << (dictionary[ "AVX2" ] == "no" ? "" : " AVX2") + << endl; + sout << "AVX512 support.............." + << (dictionary[ "AVX512" ].isEmpty() ? QString("<none>") : dictionary[ "AVX512" ].toUpper()) << endl; sout << "NEON support................" << dictionary[ "NEON" ] << endl; sout << "OpenGL support.............." << dictionary[ "OPENGL" ] << endl; sout << "Large File support.........." << dictionary[ "LARGE_FILE" ] << endl; @@ -3934,6 +3862,7 @@ void Configure::displayConfig() sout << "Qt GUI module support......." << dictionary[ "GUI" ] << endl; sout << "QML debugging..............." << dictionary[ "QML_DEBUG" ] << endl; sout << "DirectWrite support........." << dictionary[ "DIRECTWRITE" ] << endl; + sout << "DirectWrite 2 support......." << dictionary[ "DIRECTWRITE2" ] << endl; sout << "Use system proxies.........." << dictionary[ "SYSTEM_PROXIES" ] << endl; sout << endl; @@ -3947,12 +3876,13 @@ void Configure::displayConfig() sout << " GIF support............." << dictionary[ "GIF" ] << endl; sout << " JPEG support............" << dictionary[ "JPEG" ] << endl; sout << " PNG support............." << dictionary[ "PNG" ] << endl; + sout << " DoubleConversion........" << dictionary[ "DOUBLECONVERSION" ] << endl; sout << " FreeType support........" << dictionary[ "FREETYPE" ] << endl; sout << " Fontconfig support......" << dictionary[ "FONT_CONFIG" ] << endl; sout << " HarfBuzz support........" << dictionary[ "HARFBUZZ" ] << endl; sout << " PCRE support............" << dictionary[ "PCRE" ] << endl; sout << " ICU support............." << dictionary[ "ICU" ] << endl; - if ((platform() == QNX) || (platform() == BLACKBERRY)) { + if (platform() == QNX) { sout << " SLOG2 support..........." << dictionary[ "SLOG2" ] << endl; sout << " IMF support............." << dictionary[ "QNX_IMF" ] << endl; sout << " PPS support............." << dictionary[ "PPS" ] << endl; @@ -3967,8 +3897,6 @@ void Configure::displayConfig() sout << " Windows XP.............." << dictionary[ "STYLE_WINDOWSXP" ] << endl; sout << " Windows Vista..........." << dictionary[ "STYLE_WINDOWSVISTA" ] << endl; sout << " Fusion.................." << dictionary[ "STYLE_FUSION" ] << endl; - sout << " Windows CE.............." << dictionary[ "STYLE_WINDOWSCE" ] << endl; - sout << " Windows Mobile.........." << dictionary[ "STYLE_WINDOWSMOBILE" ] << endl; sout << endl; sout << "Sql Drivers:" << endl; @@ -4000,13 +3928,6 @@ void Configure::displayConfig() sout << "Examples installed to......." << formatConfigPath("QT_REL_INSTALL_EXAMPLES") << endl; sout << "Tests installed to.........." << formatConfigPath("QT_REL_INSTALL_TESTS") << endl; - if (dictionary.contains("XQMAKESPEC") && dictionary["XQMAKESPEC"].startsWith(QLatin1String("wince"))) { - sout << "Using c runtime detection..." << dictionary[ "CE_CRT" ] << endl; - sout << "Cetest support.............." << dictionary[ "CETEST" ] << endl; - sout << "Signature..................." << dictionary[ "CE_SIGNATURE"] << endl; - sout << endl; - } - if (checkAvailability("INCREDIBUILD_XGE")) sout << "Using IncrediBuild XGE......" << dictionary["INCREDIBUILD_XGE"] << endl; if (!qmakeDefines.isEmpty()) { @@ -4068,14 +3989,6 @@ void Configure::displayConfig() << "will be the same unless you are cross-compiling)." << endl << endl; } - if (dictionary["C++STD"] == "c++98") { - sout << endl - << "NOTE: The -no-c++11 / -c++-level c++98 option is deprecated." << endl - << endl - << "Qt 5.7 will require C++11 support. The options are in effect for this" << endl - << "Qt 5.6 build, but you should update your build scripts to remove the" << endl - << "option and, if necessary, upgrade your compiler." << endl; - } if (dictionary["RELEASE_TOOLS"] == "yes" && dictionary["BUILD"] != "debug" ) { sout << endl << "NOTE: -optimized-tools is not useful in -release mode." << endl; @@ -4318,7 +4231,7 @@ void Configure::generateQConfigCpp() << confStrings[1] << "#endif\n" << ";\n" << endl; - if ((platform() != WINDOWS) && (platform() != WINDOWS_CE) && (platform() != WINDOWS_RT)) + if ((platform() != WINDOWS) && (platform() != WINDOWS_RT)) tmpStream << "#define QT_CONFIGURE_SETTINGS_PATH \"" << dictionary["QT_REL_INSTALL_SETTINGS"] << "\"" << endl; tmpStream << endl @@ -4373,10 +4286,10 @@ void Configure::buildQmake() << "QT_MAJOR_VERSION = " << dictionary["VERSION_MAJOR"] << endl << "QT_MINOR_VERSION = " << dictionary["VERSION_MINOR"] << endl << "QT_PATCH_VERSION = " << dictionary["VERSION_PATCH"] << endl; - if (dictionary[ "QMAKESPEC" ] == QString("win32-g++")) { - stream << "QMAKESPEC = $(SOURCE_PATH)\\mkspecs\\win32-g++" << endl + if (dictionary[ "QMAKESPEC" ].startsWith("win32-g++")) { + stream << "QMAKESPEC = $(SOURCE_PATH)\\mkspecs\\" << dictionary[ "QMAKESPEC" ] << endl << "EXTRA_CFLAGS = -DUNICODE -ffunction-sections" << endl - << "EXTRA_CXXFLAGS = -DUNICODE -ffunction-sections" << endl + << "EXTRA_CXXFLAGS = -std=c++11 -DUNICODE -ffunction-sections" << endl << "EXTRA_LFLAGS = -Wl,--gc-sections" << endl << "QTOBJS = qfilesystemengine_win.o \\" << endl << " qfilesystemiterator_win.o \\" << endl @@ -4554,18 +4467,17 @@ bool Configure::showLicense(QString orgLicenseFile) return true; } - bool showLgpl2 = true; + bool showGpl2 = true; QString licenseFile = orgLicenseFile; QString theLicense; if (dictionary["EDITION"] == "OpenSource") { if (platform() != WINDOWS_RT - && platform() != WINDOWS_CE && (platform() != ANDROID || dictionary["ANDROID_STYLE_ASSETS"] == "no")) { - theLicense = "GNU Lesser General Public License (LGPL) version 2.1" - "\nor the GNU Lesser General Public License (LGPL) version 3"; + theLicense = "GNU Lesser General Public License (LGPL) version 3\n" + "or the GNU General Public License (GPL) version 2"; } else { theLicense = "GNU Lesser General Public License (LGPL) version 3"; - showLgpl2 = false; + showGpl2 = false; } } else { // the first line of the license file tells us which license it is @@ -4583,9 +4495,9 @@ bool Configure::showLicense(QString orgLicenseFile) << "the " << theLicense << "." << endl << endl; if (dictionary["EDITION"] == "OpenSource") { - cout << "Type '3' to view the Lesser GNU General Public License version 3 (LGPLv3)." << endl; - if (showLgpl2) - cout << "Type 'L' to view the Lesser GNU General Public License version 2.1 (LGPLv2.1)." << endl; + cout << "Type 'L' to view the GNU Lesser General Public License version 3 (LGPLv3)." << endl; + if (showGpl2) + cout << "Type 'G' to view the GNU General Public License version 2 (GPLv2)." << endl; } else { cout << "Type '?' to view the " << theLicense << "." << endl; } @@ -4602,10 +4514,10 @@ bool Configure::showLicense(QString orgLicenseFile) return false; } else { if (dictionary["EDITION"] == "OpenSource") { - if (accept == '3') - licenseFile = orgLicenseFile + "/LICENSE.LGPLv3"; + if (accept == 'L') + licenseFile = orgLicenseFile + "/LICENSE.LGPL3"; else - licenseFile = orgLicenseFile + "/LICENSE.LGPLv21"; + licenseFile = orgLicenseFile + "/LICENSE.GPL2"; } // Get console line height, to fill the screen properly int i = 0, screenHeight = 25; // default @@ -4640,7 +4552,7 @@ void Configure::readLicense() dictionary["LICENSE FILE"] = sourcePath; bool openSource = false; - bool hasOpenSource = QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.LGPLv3") || QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.LGPLv21"); + bool hasOpenSource = QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.LGPL3") || QFile::exists(dictionary["LICENSE FILE"] + "/LICENSE.GPL2"); if (dictionary["BUILDTYPE"] == "commercial") { openSource = false; } else if (dictionary["BUILDTYPE"] == "opensource") { @@ -4726,14 +4638,10 @@ QString Configure::platformName() const default: case WINDOWS: return QStringLiteral("Qt for Windows"); - case WINDOWS_CE: - return QStringLiteral("Qt for Windows CE"); case WINDOWS_RT: return QStringLiteral("Qt for Windows Runtime"); case QNX: return QStringLiteral("Qt for QNX"); - case BLACKBERRY: - return QStringLiteral("Qt for Blackberry"); case ANDROID: return QStringLiteral("Qt for Android"); case OTHER: @@ -4746,14 +4654,11 @@ QString Configure::qpaPlatformName() const switch (platform()) { default: case WINDOWS: - case WINDOWS_CE: return QStringLiteral("windows"); case WINDOWS_RT: return QStringLiteral("winrt"); case QNX: return QStringLiteral("qnx"); - case BLACKBERRY: - return QStringLiteral("blackberry"); case ANDROID: return QStringLiteral("android"); case OTHER: @@ -4769,15 +4674,9 @@ int Configure::platform() const if ((xQMakeSpec.startsWith("winphone") || xQMakeSpec.startsWith("winrt"))) return WINDOWS_RT; - if ((qMakeSpec.startsWith("wince") || xQMakeSpec.startsWith("wince"))) - return WINDOWS_CE; - if (xQMakeSpec.contains("qnx")) return QNX; - if (xQMakeSpec.contains("blackberry")) - return BLACKBERRY; - if (xQMakeSpec.contains("android")) return ANDROID; diff --git a/tools/configure/configureapp.h b/tools/configure/configureapp.h index 78cc118a9d..bd90ead703 100644 --- a/tools/configure/configureapp.h +++ b/tools/configure/configureapp.h @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** @@ -92,6 +87,7 @@ public: private: bool checkAngleAvailability(QString *errorMessage = 0) const; + QString checkAvx512Availability(); int verbose; diff --git a/tools/configure/environment.cpp b/tools/configure/environment.cpp index 153a141d7a..8f18f3c489 100644 --- a/tools/configure/environment.cpp +++ b/tools/configure/environment.cpp @@ -1,31 +1,27 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2016 Intel Corporation. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** @@ -69,9 +65,6 @@ struct CompilerInfo{ {CC_BORLAND, "Borland C++", 0, "bcc32.exe"}, {CC_MINGW, "MinGW (Minimalist GNU for Windows)", 0, "g++.exe"}, {CC_INTEL, "Intel(R) C++ Compiler for 32-bit applications", 0, "icl.exe"}, // xilink.exe, xilink5.exe, xilink6.exe, xilib.exe - {CC_MSVC2005, "Microsoft (R) Visual Studio 2005 C/C++ Compiler (8.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\8.0", "cl.exe"}, // link.exe, lib.exe - {CC_MSVC2008, "Microsoft (R) Visual Studio 2008 C/C++ Compiler (9.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\9.0", "cl.exe"}, // link.exe, lib.exe - {CC_MSVC2010, "Microsoft (R) Visual Studio 2010 C/C++ Compiler (10.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\10.0", "cl.exe"}, // link.exe, lib.exe {CC_MSVC2012, "Microsoft (R) Visual Studio 2012 C/C++ Compiler (11.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\11.0", "cl.exe"}, // link.exe, lib.exe {CC_MSVC2013, "Microsoft (R) Visual Studio 2013 C/C++ Compiler (12.0)", "Software\\Microsoft\\VisualStudio\\SxS\\VC7\\12.0", "cl.exe"}, // link.exe, lib.exe // Microsoft skipped version 13 @@ -110,15 +103,6 @@ QString Environment::detectQMakeSpec() case CC_MSVC2012: spec = "win32-msvc2012"; break; - case CC_MSVC2010: - spec = "win32-msvc2010"; - break; - case CC_MSVC2008: - spec = "win32-msvc2008"; - break; - case CC_MSVC2005: - spec = "win32-msvc2005"; - break; case CC_INTEL: spec = "win32-icc"; break; @@ -143,12 +127,6 @@ Compiler Environment::compilerFromQMakeSpec(const QString &qmakeSpec) return CC_MSVC2013; if (qmakeSpec == QLatin1String("win32-msvc2012")) return CC_MSVC2012; - if (qmakeSpec == QLatin1String("win32-msvc2010")) - return CC_MSVC2010; - if (qmakeSpec == QLatin1String("win32-msvc2008")) - return CC_MSVC2008; - if (qmakeSpec == QLatin1String("win32-msvc2005")) - return CC_MSVC2005; if (qmakeSpec == QLatin1String("win32-icc")) return CC_INTEL; if (qmakeSpec == QLatin1String("win32-g++")) diff --git a/tools/configure/environment.h b/tools/configure/environment.h index d096782e70..344404505e 100644 --- a/tools/configure/environment.h +++ b/tools/configure/environment.h @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/configure/main.cpp b/tools/configure/main.cpp index 2b41658b40..d4f654150e 100644 --- a/tools/configure/main.cpp +++ b/tools/configure/main.cpp @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/configure/tools.cpp b/tools/configure/tools.cpp index 095e798332..fb80e2136b 100644 --- a/tools/configure/tools.cpp +++ b/tools/configure/tools.cpp @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/configure/tools.h b/tools/configure/tools.h index 04e41bdedd..17dcc88518 100644 --- a/tools/configure/tools.h +++ b/tools/configure/tools.h @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the tools applications of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/shared/windows/registry.cpp b/tools/shared/windows/registry.cpp index 432c707e28..74c912ca43 100644 --- a/tools/shared/windows/registry.cpp +++ b/tools/shared/windows/registry.cpp @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the qmake application of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** diff --git a/tools/shared/windows/registry_p.h b/tools/shared/windows/registry_p.h index 4fa2d6aa9f..3526dffd45 100644 --- a/tools/shared/windows/registry_p.h +++ b/tools/shared/windows/registry_p.h @@ -1,31 +1,26 @@ /**************************************************************************** ** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ ** ** This file is part of the qmake application of the Qt Toolkit. ** -** $QT_BEGIN_LICENSE:LGPL21$ +** $QT_BEGIN_LICENSE:GPL-EXCEPT$ ** Commercial License Usage ** Licensees holding valid commercial Qt licenses may use this file in ** accordance with the commercial license agreement provided with the ** Software or, alternatively, in accordance with the terms contained in ** a written agreement between you and The Qt Company. For licensing terms -** and conditions see http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. +** and conditions see https://www.qt.io/terms-conditions. For further +** information use the contact form at https://www.qt.io/contact-us. ** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 2.1 or version 3 as published by the Free -** Software Foundation and appearing in the file LICENSE.LGPLv21 and -** LICENSE.LGPLv3 included in the packaging of this file. Please review the -** following information to ensure the GNU Lesser General Public License -** requirements will be met: https://www.gnu.org/licenses/lgpl.html and -** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html. -** -** As a special exception, The Qt Company gives you certain additional -** rights. These rights are described in The Qt Company LGPL Exception -** version 1.1, included in the file LGPL_EXCEPTION.txt in this package. +** GNU General Public License Usage +** Alternatively, this file may be used under the terms of the GNU +** General Public License version 3 as published by the Free Software +** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT +** included in the packaging of this file. Please review the following +** information to ensure the GNU General Public License requirements will +** be met: https://www.gnu.org/licenses/gpl-3.0.html. ** ** $QT_END_LICENSE$ ** |