summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorLiang Qi <liang.qi@qt.io>2016-05-20 13:46:21 +0200
committerOswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>2016-05-23 21:09:46 +0200
commit56d6e000f7487c59172330ebd23a718268c508f1 (patch)
tree1494432583b1569816075091a8075b31d795f77c /tools
parent9fd407fc6a29c94b4568dd042a05c208255179e0 (diff)
parentc276aa51303b7c6f8e4cd854aadf8344a906e50f (diff)
Merge remote-tracking branch 'origin/5.7' into dev
Conflicts: mkspecs/wince80colibri-armv7-msvc2012/qmake.conf qmake/generators/win32/msvc_vcproj.cpp src/corelib/global/qnamespace.h src/corelib/global/qnamespace.qdoc src/corelib/io/qfsfileengine_win.cpp src/corelib/tools/tools.pri src/network/ssl/qsslconfiguration_p.h src/plugins/platforms/linuxfb/qlinuxfbscreen.cpp src/plugins/platforms/windows/windows.pri src/src.pro src/tools/bootstrap/bootstrap.pro src/tools/uic/cpp/cppwriteinitialization.cpp src/widgets/dialogs/qfilesystemmodel.cpp tests/auto/testlib/selftests/expected_cmptest.teamcity tests/auto/testlib/selftests/expected_cmptest.txt Change-Id: I4d2ac78f0dcc97f008186bbbc769c6fe588ab0e5
Diffstat (limited to 'tools')
-rw-r--r--tools/configure/configureapp.cpp30
1 files changed, 27 insertions, 3 deletions
diff --git a/tools/configure/configureapp.cpp b/tools/configure/configureapp.cpp
index c40d11d284..87318bb8d5 100644
--- a/tools/configure/configureapp.cpp
+++ b/tools/configure/configureapp.cpp
@@ -256,6 +256,7 @@ Configure::Configure(int& argc, char** argv) : verbose(0)
dictionary[ "LIBPNG" ] = "auto";
dictionary[ "DOUBLECONVERSION" ] = "auto";
dictionary[ "FREETYPE" ] = "yes";
+ dictionary[ "FREETYPE_FROM" ] = "default";
dictionary[ "HARFBUZZ" ] = "qt";
dictionary[ "ACCESSIBILITY" ] = "yes";
@@ -606,12 +607,16 @@ void Configure::parseCmdLine()
dictionary[ "DOUBLECONVERSION" ] = "system";
// Text Rendering --------------------------------------------
- else if (configCmdLine.at(i) == "-no-freetype")
+ else if (configCmdLine.at(i) == "-no-freetype") {
dictionary[ "FREETYPE" ] = "no";
- else if (configCmdLine.at(i) == "-qt-freetype")
+ dictionary[ "FREETYPE_FROM" ] = "commandline";
+ } else if (configCmdLine.at(i) == "-qt-freetype") {
dictionary[ "FREETYPE" ] = "yes";
- else if (configCmdLine.at(i) == "-system-freetype")
+ dictionary[ "FREETYPE_FROM" ] = "commandline";
+ } else if (configCmdLine.at(i) == "-system-freetype") {
dictionary[ "FREETYPE" ] = "system";
+ dictionary[ "FREETYPE_FROM" ] = "commandline";
+ }
else if (configCmdLine.at(i) == "-no-harfbuzz")
dictionary[ "HARFBUZZ" ] = "no";
@@ -2373,6 +2378,9 @@ void Configure::autoDetection()
if (dictionary["FONT_CONFIG"] == "auto")
dictionary["FONT_CONFIG"] = checkAvailability("FONT_CONFIG") ? "yes" : "no";
+ if ((dictionary["FONT_CONFIG"] == "yes") && (dictionary["FREETYPE_FROM"] == "default"))
+ dictionary["FREETYPE"] = "system";
+
if (dictionary["DOUBLECONVERSION"] == "auto")
dictionary["DOUBLECONVERSION"] = checkAvailability("DOUBLECONVERSION") ? "system" : "qt";
@@ -2509,6 +2517,22 @@ bool Configure::verifyConfiguration()
}
}
+ if ((dictionary["FONT_CONFIG"] == "yes") && (dictionary["FREETYPE_FROM"] == "commandline")) {
+ if (dictionary["FREETYPE"] == "yes") {
+ cout << "WARNING: Bundled FreeType can't be used."
+ " FontConfig use requires system FreeType." << endl;
+ dictionary["FREETYPE"] = "system";
+ dictionary["FREETYPE_FROM"] = "override";
+ prompt = true;
+ } else if (dictionary["FREETYPE"] == "no") {
+ cout << "WARNING: FreeType can't be disabled."
+ " FontConfig use requires system FreeType." << endl;
+ dictionary["FREETYPE"] = "system";
+ dictionary["FREETYPE_FROM"] = "override";
+ prompt = true;
+ }
+ }
+
if (prompt)
promptKeyPress();