From 6f1b78c980b5250b2bb8408a5fe422997b52eb0e Mon Sep 17 00:00:00 2001 From: Matt Hoosier Date: Wed, 2 Dec 2015 14:02:02 -0600 Subject: Fix version script generation when cross-compiling from Windows to QNX Recent versions of Qt have apparently added sufficient numbers of headers that the command lines used to spawn a custom header- parsing tool, started overflowing Windows' maximum command-line length. This change restructures the mechanism to use a GCC-style command- line arguments file rather than passing filenames all directly in the argv[] vector. Although QNX is the usual ELF target whose cross-build is supported on Windows, the mechanics introduced in this patch happen to affect all other ELF Unix systems' builds too. Change-Id: I5a7383cf9f2ebf9dffde8dbfdcdeca888265e085 Reviewed-by: Thiago Macieira Reviewed-by: Oswald Buddenhagen --- mkspecs/features/data/unix/findclasslist.pl | 17 +++++++++++++++-- mkspecs/features/qt_module.prf | 5 +++-- 2 files changed, 18 insertions(+), 4 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/data/unix/findclasslist.pl b/mkspecs/features/data/unix/findclasslist.pl index 9113b4921c..ac010ae0a7 100644 --- a/mkspecs/features/data/unix/findclasslist.pl +++ b/mkspecs/features/data/unix/findclasslist.pl @@ -33,8 +33,21 @@ ############################################################################# use strict; -my $syntax = "findclasslist.pl [private header list]\n" . +my $syntax = "findclasslist.pl \n" . "Replaces \@CLASSLIST\@ with the classes found in the header files\n"; + +die("Expected exactly one argument") if (@ARGV != 1); + +my @headers = (); + +# Expand contents of the command-line arguments file +open ARGFILE, "<$ARGV[0]" or die("Could not open arguments file $ARGV[0]: $!"); +while (my $line = ) { + chomp($line); + push @headers, $line; +} +close ARGFILE; + $\ = $/; while () { chomp; @@ -44,7 +57,7 @@ while () { } # Replace @CLASSLIST@ with the class list - for my $header (@ARGV) { + for my $header (@headers) { open HDR, "<$header" or die("Could not open header $header: $!"); my $comment = " /* $header */"; while (my $line = ) { diff --git a/mkspecs/features/qt_module.prf b/mkspecs/features/qt_module.prf index 9a4ed20af8..1dae370630 100644 --- a/mkspecs/features/qt_module.prf +++ b/mkspecs/features/qt_module.prf @@ -215,11 +215,12 @@ android: CONFIG += qt_android_deps no_linker_version_script } # Add a post-processing step to replace the @CLASSLIST@ - verscriptprocess.commands = perl $${PWD}/data/unix/findclasslist.pl < $^ > $@ + verscriptprocess.commands = perl $${PWD}/data/unix/findclasslist.pl < $${verscript}.in $${verscript}.in.args > $@ verscriptprocess.target = $$verscript - verscriptprocess.depends = $${verscript}.in for(header, SYNCQT.PRIVATE_HEADER_FILES): \ verscriptprocess.depends += $${_PRO_FILE_PWD_}/$$header + write_file($${verscript}.in.args, verscriptprocess.depends)|error("Aborting.") + verscriptprocess.depends += $${verscript}.in $${verscript}.in.args QMAKE_EXTRA_TARGETS += verscriptprocess PRE_TARGETDEPS += $$verscript verscript = $${verscript}.in -- cgit v1.2.3 From 959f09bbc5757bc42db603b2c085ad46fc12af96 Mon Sep 17 00:00:00 2001 From: Harald Fernengel Date: Thu, 17 Dec 2015 16:30:57 +0100 Subject: Remove CMake warning CMP0054 changes CMake behavior wrt. interpreting quoted arguments in if() statements. This change ensures that CMP0054 dev warnings are never emitted no matter how polluted the environment, e.g. even if the variable ${5.5.1} is defined and no matter whether CMP0054 is set to OLD, NEW or undefined. Change-Id: Iee008497b333e2db23fb1adbf8b02252314ffa8a Reviewed-by: Kevin Funk Reviewed-by: Stephen Kelly --- mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in b/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in index e804754912..7c42430e97 100644 --- a/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in +++ b/mkspecs/features/data/cmake/Qt5ConfigVersion.cmake.in @@ -1,11 +1,11 @@ set(PACKAGE_VERSION $$CMAKE_PACKAGE_VERSION) -if(\"\${PACKAGE_VERSION}\" VERSION_LESS \"\${PACKAGE_FIND_VERSION}\") +if(PACKAGE_VERSION VERSION_LESS PACKAGE_FIND_VERSION) set(PACKAGE_VERSION_COMPATIBLE FALSE) else() set(PACKAGE_VERSION_COMPATIBLE TRUE) - if(\"\${PACKAGE_FIND_VERSION}\" STREQUAL \"\${PACKAGE_VERSION}\") + if(PACKAGE_FIND_VERSION STREQUAL PACKAGE_VERSION) set(PACKAGE_VERSION_EXACT TRUE) endif() endif() -- cgit v1.2.3 From 190c76f685f1dcafbcc762082edcdccdb9bb8b0b Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Wed, 16 Dec 2015 15:33:42 +0100 Subject: winrt: Use winsock2 API for hostname resolution on WinRT/WinPhone That API has been available for WinRT and Windows Phone for some time now. By using it to get the machine name and for hostname resolution we can get rid of some winrt-only code and use qhostinfo_win.cpp on WinRT and Windows phone as well. Additionally the required capability was added to tst_qhostinfo so that this auto test can be run without any manual editing. Change-Id: I63fa5521bf8cdb0c919bd5a0100ea977c865622a Reviewed-by: Maurice Kalinowski --- mkspecs/common/winrt_winphone/qmake.conf | 4 ++-- mkspecs/common/winrt_winphone/qplatformdefs.h | 10 ---------- 2 files changed, 2 insertions(+), 12 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/common/winrt_winphone/qmake.conf b/mkspecs/common/winrt_winphone/qmake.conf index bf237882ff..a9450b0c32 100644 --- a/mkspecs/common/winrt_winphone/qmake.conf +++ b/mkspecs/common/winrt_winphone/qmake.conf @@ -78,9 +78,9 @@ QMAKE_PREFIX_STATICLIB = QMAKE_EXTENSION_STATICLIB = lib QMAKE_LIBS += runtimeobject.lib -QMAKE_LIBS_CORE = +QMAKE_LIBS_CORE += ws2_32.lib QMAKE_LIBS_GUI = -QMAKE_LIBS_NETWORK = +QMAKE_LIBS_NETWORK += ws2_32.lib QMAKE_LIBS_OPENGL_ES2 = $${LIBEGL_NAME}.lib $${LIBGLESV2_NAME}.lib QMAKE_LIBS_OPENGL_ES2_DEBUG = $${LIBEGL_NAME}d.lib $${LIBGLESV2_NAME}d.lib diff --git a/mkspecs/common/winrt_winphone/qplatformdefs.h b/mkspecs/common/winrt_winphone/qplatformdefs.h index 6abac1e94d..14f6c58253 100644 --- a/mkspecs/common/winrt_winphone/qplatformdefs.h +++ b/mkspecs/common/winrt_winphone/qplatformdefs.h @@ -130,14 +130,4 @@ typedef int mode_t; -#ifndef INADDR_ANY -# define INADDR_ANY (u_long)0x00000000 -#endif -#ifndef INADDR_LOOPBACK -# define INADDR_LOOPBACK 0x7f000001 -#endif -#ifndef INADDR_BROADCAST -# define INADDR_BROADCAST (u_long)0xffffffff -#endif - #endif // QPLATFORMDEFS_H -- cgit v1.2.3 From bddccfb839f4164039d929bf4f6a64e882855222 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Mon, 28 Dec 2015 13:47:09 +0200 Subject: Do not use gold linker on Windows Gold only supports ELF binaries, not Windows PE. Change-Id: I72b0f944566bbc8713c71b5cd01f217ab55c8103 Reviewed-by: Friedemann Kleint Reviewed-by: Oswald Buddenhagen --- mkspecs/win32-g++/qmake.conf | 1 - 1 file changed, 1 deletion(-) (limited to 'mkspecs') diff --git a/mkspecs/win32-g++/qmake.conf b/mkspecs/win32-g++/qmake.conf index 9cb811b5bf..61963c7b0d 100644 --- a/mkspecs/win32-g++/qmake.conf +++ b/mkspecs/win32-g++/qmake.conf @@ -85,7 +85,6 @@ QMAKE_LFLAGS_CXX11 = QMAKE_LFLAGS_CXX14 = QMAKE_LFLAGS_CXX1Z = QMAKE_LFLAGS_GCSECTIONS = -Wl,--gc-sections -QMAKE_LFLAGS_USE_GOLD = -fuse-ld=gold QMAKE_LINK_OBJECT_MAX = 10 QMAKE_LINK_OBJECT_SCRIPT = object_script QMAKE_PREFIX_SHLIB = -- cgit v1.2.3 From 6060ffff88fd4345aa5e89b6e3d761704379ad4e Mon Sep 17 00:00:00 2001 From: Oliver Wolff Date: Wed, 6 Jan 2016 13:01:22 +0100 Subject: Fixed recently added "excess colon in front of brace" qmake warning Change-Id: I3a650bb4e27cad00f639e6445c36fa8b69edb5b9 Reviewed-by: Oswald Buddenhagen --- mkspecs/features/android/android.prf | 2 +- mkspecs/features/qt.prf | 4 ++-- mkspecs/features/win32/idcidl.prf | 2 +- mkspecs/features/win32/windows.prf | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/android/android.prf b/mkspecs/features/android/android.prf index f428f7db87..7d77598e76 100644 --- a/mkspecs/features/android/android.prf +++ b/mkspecs/features/android/android.prf @@ -3,7 +3,7 @@ contains(TEMPLATE, ".*app") { !contains(TARGET, ".so"): TARGET = lib$${TARGET}.so QMAKE_LFLAGS += -Wl,-soname,$$shell_quote($$TARGET) - android_install: { + android_install { target.path=/libs/$$ANDROID_TARGET_ARCH/ INSTALLS *= target } diff --git a/mkspecs/features/qt.prf b/mkspecs/features/qt.prf index c3448718b9..72632a14ee 100644 --- a/mkspecs/features/qt.prf +++ b/mkspecs/features/qt.prf @@ -208,7 +208,7 @@ contains(qt_module_deps, qml): \ !isEmpty(IMPORTS._KEYS_) { # add import plugins to LIBS line - for (key, IMPORTS._KEYS_): { + for (key, IMPORTS._KEYS_) { PATH = $$eval(IMPORTS.$${key}.path) PLUGIN = $$eval(IMPORTS.$${key}.plugin) !isEmpty(PATH):!isEmpty(PLUGIN): LIBS *= -L$$PATH -l$${PLUGIN}$$qtPlatformTargetSuffix() @@ -347,7 +347,7 @@ for(QT_CURRENT_VERIFY, $$list($$QT_PLUGIN_VERIFY)) { QT_LINKAGE = -l$${QTPLUG}$$qtPlatformTargetSuffix() # Only link against plugin in static builds - isEqual(QT_CURRENT_VERIFY, QTPLUGIN): { + isEqual(QT_CURRENT_VERIFY, QTPLUGIN) { !isEmpty(QT_PLUGINPATH) { plugpath = $$eval(QT_PLUGIN.$${QTPLUG}.PATH) isEmpty(plugpath): \ diff --git a/mkspecs/features/win32/idcidl.prf b/mkspecs/features/win32/idcidl.prf index a688b3ff41..fba7173e79 100644 --- a/mkspecs/features/win32/idcidl.prf +++ b/mkspecs/features/win32/idcidl.prf @@ -1,4 +1,4 @@ -build_pass:console: { +build_pass:console { warning("QAxServer applications cannot be console applications.") warning("Remove 'console' from your CONFIG.") } diff --git a/mkspecs/features/win32/windows.prf b/mkspecs/features/win32/windows.prf index 6ea9756f9a..986067fc8c 100644 --- a/mkspecs/features/win32/windows.prf +++ b/mkspecs/features/win32/windows.prf @@ -5,7 +5,7 @@ contains(TEMPLATE, ".*app") { mingw:DEFINES += QT_NEEDS_QMAIN qt:for(entryLib, $$list($$unique(QMAKE_LIBS_QT_ENTRY))) { - isEqual(entryLib, -lqtmain): { + isEqual(entryLib, -lqtmain) { !contains(QMAKE_DEFAULT_LIBDIRS, $$QT.core.libs): \ QMAKE_LIBS += -L$$QT.core.libs CONFIG(debug, debug|release): QMAKE_LIBS += $${entryLib}$${QT_LIBINFIX}d -- cgit v1.2.3 From 282f15feaae4c525602d537ab65cb61987eb5f7f Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Mon, 23 Nov 2015 14:14:46 +0100 Subject: rewrite qtAddToolEnv() the primary purpose is making env var prepend mode work for unset variables on windows. this is achieved by using a conditional and delayed variable expansion. however, the latter is disabled by default and can be locally enabled only in batch files. therefore, write wrapper scripts and substitute them for the actual commands. we do this also on unix, both for consistency and simply because the commands look much less confusing. this change is slightly backwards-incompatible, as invoking qtAddToolEnv() multiple times on the same command will now make a total mess. also, invoking it on a command that contains 'make' macro expansions isn't a good idea, so testcase.prf needed an adjustment. the function is an undocumented internal, so Nobody Should Care (TM). this also reverts 80ebedecf9, as it's obsolete now. Change-Id: I8394b77868b495abcf27b688996ca74c40b80994 Reviewed-by: Simon Hausmann --- mkspecs/features/qt_functions.prf | 61 ++++++++++++++++++++++++++++++++------- mkspecs/features/testcase.prf | 9 +++--- 2 files changed, 56 insertions(+), 14 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index 00f4bdf93e..abb7439f18 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -70,6 +70,7 @@ defineTest(qtPrepareTool) { } } QT_TOOL_ENV += $$eval(QT_TOOL.$${2}.envvars) + QT_TOOL_NAME = $$2 !isEmpty(3)|!isEmpty(4) { $$1$$3 = for (arg, cmd): \ @@ -90,6 +91,7 @@ defineTest(qtAddToolEnv) { ds = $$QMAKE_DIR_SEP else: \ ds = $$DIR_SEPARATOR + batch_sets = for(env, 2) { value = $$eval($${env}.value) !isEmpty(value) { @@ -97,22 +99,61 @@ defineTest(qtAddToolEnv) { equals(ds, /) { contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name} else: infix = - val = "$$name=$$shell_quote($$join(value, :))$$infix" + # Under msys, this path is taken only in the non-system() + # case, so using shell_quote() always works. + batch_sets += \ + "$$name=$$shell_quote($$join(value, :))$$infix" \ + "export $$name" } else { - # Escape closing parens when expanding the variable, otherwise cmd confuses itself. - contains($${env}.CONFIG, prepend): infix = ;%$$name:)=^)% - else: infix = + value ~= s,\\^,^^^^,g + value ~= s,!,^^!,g value ~= s,\\),^),g - val = "(set $$name=$$join(value, ;)$$infix) &" - } - isEmpty(3): !contains(TEMPLATE, vc.*) { - contains(MAKEFILE_GENERATOR, MS.*): val ~= s,%,%%,g - val ~= s,\\\$,\$\$,g + contains($${env}.CONFIG, prepend) { + batch_sets += \ + "if defined $$name (" \ + " set $$name=$$join(value, ;);!$$name!" \ + ") else (" \ + " set $$name=$$join(value, ;)" \ + ")" + } else { + batch_sets += "(set $$name=$$join(value, ;))" + } } - $$1 = "$$val $$eval($$1)" } } + !isEmpty(batch_sets) { + batch_name = wrapper + !isEmpty(QT_TOOL_NAME): batch_name = $${QT_TOOL_NAME}_wrapper + cmd = $$eval($$1) + !isEmpty(cmd): cmd = "$$cmd " + equals(ds, /) { + batch_name = $${batch_name}.sh + batch_cont = \ + "$$LITERAL_HASH!/bin/sh" \ + $$batch_sets \ + "exec $$cmd\"$@\"" + # It would be nicer to use the '.' command (without 'exec' above), + # but that doesn't set the positional arguments under (d)ash. + $$1 = + } else { + batch_name = $${batch_name}.bat + batch_cont = \ + "@echo off" \ + "SetLocal EnableDelayedExpansion" \ + $$batch_sets \ + "$$cmd%*" \ + "EndLocal" + $$1 = call + } + !build_pass:!write_file($$OUT_PWD/$$batch_name, batch_cont, exe): error("Aborting.") + isEmpty(3): \ + $$1 += $$shell_quote($$shell_path($$OUT_PWD/$$batch_name)) + else: \ + $$1 += $$system_quote($$system_path($$OUT_PWD/$$batch_name)) + QMAKE_DISTCLEAN += $$OUT_PWD/$$batch_name + } export($$1) + export(QMAKE_DISTCLEAN) } # target variable, dependency var name, [non-empty: prepare for system(), not make] diff --git a/mkspecs/features/testcase.prf b/mkspecs/features/testcase.prf index 6bac0546c3..5ad372f976 100644 --- a/mkspecs/features/testcase.prf +++ b/mkspecs/features/testcase.prf @@ -9,6 +9,11 @@ testcase_exceptions: CONFIG += exceptions check.files = check.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) + # If the test ends up in a different directory, we should cd to that directory. TESTRUN_CWD = $$DESTDIR @@ -40,10 +45,6 @@ unix { # Allow for custom arguments to tests check.commands += $(TESTARGS) -# Add environment for non-installed builds -qtAddTargetEnv(check.commands, QT) - -# This must happen after adding the environment. !isEmpty(TESTRUN_CWD):!contains(TESTRUN_CWD, ^\\./?): \ check.commands = cd $$shell_path($$TESTRUN_CWD) && $$check.commands -- cgit v1.2.3 From c0efee2f265279a4ced90279ad2e7536c596f08c Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 11 Dec 2015 14:14:13 +0100 Subject: add always_prepend mode to qtAddToolEnv() this is just an optimization/clarification: variables which are known to be never empty (like PATH) can be extended with less convoluted code. Change-Id: Ib365bbec8301673ed1c874979b4de19bc983dab1 Reviewed-by: Romain Pokrzywka Reviewed-by: Simon Hausmann --- mkspecs/features/qt_functions.prf | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index abb7439f18..6b72db6101 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -96,8 +96,10 @@ defineTest(qtAddToolEnv) { value = $$eval($${env}.value) !isEmpty(value) { name = $$eval($${env}.name) + config = $$eval($${env}.CONFIG) equals(ds, /) { - contains($${env}.CONFIG, prepend): infix = \${$$name:+:\$$$name} + contains(config, prepend): infix = \${$$name:+:\$$$name} + else: contains(config, always_prepend): infix = :\$$$name else: infix = # Under msys, this path is taken only in the non-system() # case, so using shell_quote() always works. @@ -108,13 +110,15 @@ defineTest(qtAddToolEnv) { value ~= s,\\^,^^^^,g value ~= s,!,^^!,g value ~= s,\\),^),g - contains($${env}.CONFIG, prepend) { + contains(config, prepend) { batch_sets += \ "if defined $$name (" \ " set $$name=$$join(value, ;);!$$name!" \ ") else (" \ " set $$name=$$join(value, ;)" \ ")" + } else: contains(config, always_prepend) { + batch_sets += "(set $$name=$$join(value, ;);!$$name!)" } else { batch_sets += "(set $$name=$$join(value, ;))" } @@ -162,8 +166,10 @@ defineTest(qtAddTargetEnv) { deps = $$resolve_depends(deps, "QT.", ".depends" ".run_depends") !isEmpty(deps) { libs = libs + deppath.CONFIG = prepend equals(QMAKE_HOST.os, Windows) { libs = bins + deppath.CONFIG = always_prepend deppath.name = PATH } else:contains(QMAKE_HOST.os, Linux|FreeBSD|OpenBSD|NetBSD|DragonFly|SunOS|HP-UX|QNX|GNU) { deppath.name = LD_LIBRARY_PATH @@ -188,7 +194,6 @@ defineTest(qtAddTargetEnv) { ptypes += $$eval(QT.$${dep}.plugin_types) } deppath.value = $$unique(deppath) - deppath.CONFIG = prepend pluginpath.value = ppaths = $$[QT_INSTALL_PLUGINS/get] -- cgit v1.2.3 From d3518b752583d6d725f4adb14f804ae6d7cfa650 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 11 Dec 2015 14:53:18 +0100 Subject: Revert "use bindir instead of libdir when launching tools on windows" proper prefix builds don't have the redundant .dlls in bin (the copy step is simply omitted), so this is broken. the change would have to be done atomically with making DLLDESTDIR sane. This reverts commit 9b2e98245a95bec9179edf648d7b562d2d1cb692. Task-number: QTBUG-50065 Change-Id: I9ce0a2d1147a1a2d4bd2f22e619d5c737864a637 Reviewed-by: Romain Pokrzywka Reviewed-by: Tim Blechmann Reviewed-by: Frederik Gladhorn Reviewed-by: Simon Hausmann --- mkspecs/features/qt_functions.prf | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_functions.prf b/mkspecs/features/qt_functions.prf index 6b72db6101..c23d006d82 100644 --- a/mkspecs/features/qt_functions.prf +++ b/mkspecs/features/qt_functions.prf @@ -165,10 +165,8 @@ defineTest(qtAddTargetEnv) { deps = $$replace($$2, -private$, _private) deps = $$resolve_depends(deps, "QT.", ".depends" ".run_depends") !isEmpty(deps) { - libs = libs deppath.CONFIG = prepend equals(QMAKE_HOST.os, Windows) { - libs = bins deppath.CONFIG = always_prepend deppath.name = PATH } else:contains(QMAKE_HOST.os, Linux|FreeBSD|OpenBSD|NetBSD|DragonFly|SunOS|HP-UX|QNX|GNU) { @@ -188,9 +186,9 @@ defineTest(qtAddTargetEnv) { ptypes = for(dep, deps) { isEmpty(3): \ - deppath += $$shell_path($$eval(QT.$${dep}.$$libs)) + deppath += $$shell_path($$eval(QT.$${dep}.libs)) else: \ - deppath += $$system_path($$eval(QT.$${dep}.$$libs)) + deppath += $$system_path($$eval(QT.$${dep}.libs)) ptypes += $$eval(QT.$${dep}.plugin_types) } deppath.value = $$unique(deppath) -- cgit v1.2.3 From 09c92863001790a0304a5ef389901ee2b5b6cdc2 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 11 Dec 2015 15:01:24 +0100 Subject: fix doc builds in paths with spaces Change-Id: Ie76411e3a4a8df69ff9b12a18480d1a987fac639 Reviewed-by: Joerg Bornemann Reviewed-by: Frederik Gladhorn --- mkspecs/features/qt_docs.prf | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) (limited to 'mkspecs') diff --git a/mkspecs/features/qt_docs.prf b/mkspecs/features/qt_docs.prf index 15bd12072a..37b2f06193 100644 --- a/mkspecs/features/qt_docs.prf +++ b/mkspecs/features/qt_docs.prf @@ -31,9 +31,9 @@ qtdocs.value = $$[QT_INSTALL_DOCS/src] QT_TOOL_ENV = qtver qtmver qtvertag qtdocs qtPrepareTool(QDOC, qdoc) QT_TOOL_ENV = -QDOC += -outputdir $$QMAKE_DOCS_OUTPUTDIR +QDOC += -outputdir $$shell_quote($$QMAKE_DOCS_OUTPUTDIR) !build_online_docs: \ - QDOC += -installdir $$[QT_INSTALL_DOCS] + QDOC += -installdir $$shell_quote($$[QT_INSTALL_DOCS]) PREP_DOC_INDEXES = DOC_INDEXES = !isEmpty(QTREPOS) { @@ -46,14 +46,14 @@ DOC_INDEXES = mps += $$dirname(QT.$${d}.libs) mps = $$unique(mps) for (mp, mps): \ - PREP_DOC_INDEXES += -indexdir $$mp/doc + PREP_DOC_INDEXES += -indexdir $$shell_quote($$mp/doc) } for(qrep, QTREPOS): \ - DOC_INDEXES += -indexdir $$qrep/doc + DOC_INDEXES += -indexdir $$shell_quote($$qrep/doc) } else { prepare_docs: \ - PREP_DOC_INDEXES += -indexdir $$[QT_INSTALL_DOCS/get] - DOC_INDEXES += -indexdir $$[QT_INSTALL_DOCS/get] + PREP_DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) + DOC_INDEXES += -indexdir $$shell_quote($$[QT_INSTALL_DOCS/get]) } doc_command = $$QDOC $$QMAKE_DOCS prepare_docs { @@ -65,7 +65,7 @@ prepare_docs { !build_online_docs { qtPrepareTool(QHELPGENERATOR, qhelpgenerator) - qch_docs.commands = $$QHELPGENERATOR $$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp -o $$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch + qch_docs.commands = $$QHELPGENERATOR $$shell_quote($$QMAKE_DOCS_OUTPUTDIR/$${QMAKE_DOCS_TARGET}.qhp) -o $$shell_quote($$QMAKE_DOCS_BASE_OUTDIR/$${QMAKE_DOCS_TARGET}.qch) inst_html_docs.files = $$QMAKE_DOCS_OUTPUTDIR inst_html_docs.path = $$[QT_INSTALL_DOCS] -- cgit v1.2.3