diff options
author | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-11-19 01:00:11 +0100 |
---|---|---|
committer | Qt Forward Merge Bot <qt_forward_merge_bot@qt-project.org> | 2019-11-19 01:00:12 +0100 |
commit | 587f1cbc5d9bbac019be7877e2847f25b7afb52c (patch) | |
tree | 15390cd7d30e167a15f44f0cf1ef40067bda4c97 /qmake | |
parent | e19345987714f4f76c8d7075355980b154adbc44 (diff) | |
parent | d17094df60d7d05bb583d26fb8d1de1a7a4fb072 (diff) |
Merge remote-tracking branch 'origin/5.14' into 5.15
Change-Id: I4e5c8a1fcef443c3383e207102f21d41000ff322
Diffstat (limited to 'qmake')
-rw-r--r-- | qmake/generators/unix/unixmake.cpp | 21 | ||||
-rw-r--r-- | qmake/generators/unix/unixmake2.cpp | 11 |
2 files changed, 18 insertions, 14 deletions
diff --git a/qmake/generators/unix/unixmake.cpp b/qmake/generators/unix/unixmake.cpp index e56e8c41b6..f7bd6dc663 100644 --- a/qmake/generators/unix/unixmake.cpp +++ b/qmake/generators/unix/unixmake.cpp @@ -208,15 +208,15 @@ UnixMakefileGenerator::init() escapeFilePath(pchBaseName + language + headerSuffix)); const ProStringList pchArchs = project->values("QMAKE_PCH_ARCHS"); for (const ProString &arch : pchArchs) { - QString suffix = headerSuffix; - suffix.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); + QString file = pchBaseName + language + headerSuffix; + file.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); if (project->isActiveConfig("clang_pch_style") - && (suffix.endsWith(QLatin1String(".pch")) - || suffix.endsWith(QLatin1String(".gch")))) { - suffix.chop(4); // must omit header suffix for -include to recognize the PCH + && (file.endsWith(QLatin1String(".pch")) + || file.endsWith(QLatin1String(".gch")))) { + file.chop(4); // must omit header suffix for -include to recognize the PCH } pchFlags.replace(QLatin1String("${QMAKE_PCH_OUTPUT_") + arch + QLatin1Char('}'), - escapeFilePath(pchBaseName + language + suffix)); + escapeFilePath(file)); } } } @@ -363,10 +363,11 @@ QStringList if (pchArchs.isEmpty()) pchArchs << ProString(); // normal single-arch PCH for (const ProString &arch : qAsConst(pchArchs)) { - QString suffix = header_suffix; - if (!arch.isEmpty()) - suffix.replace(QLatin1String("${QMAKE_PCH_ARCH}"), arch.toQString()); - QString precompiledHeader = header_prefix + language + suffix; + QString precompiledHeader = header_prefix + language + header_suffix; + if (!arch.isEmpty()) { + precompiledHeader.replace(QLatin1String("${QMAKE_PCH_ARCH}"), + arch.toQString()); + } if (!ret.contains(precompiledHeader)) ret += precompiledHeader; } diff --git a/qmake/generators/unix/unixmake2.cpp b/qmake/generators/unix/unixmake2.cpp index 20f2c88444..550fa9d834 100644 --- a/qmake/generators/unix/unixmake2.cpp +++ b/qmake/generators/unix/unixmake2.cpp @@ -1017,10 +1017,10 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) if (pchArchs.isEmpty()) pchArchs << ProString(); // normal single-arch PCH for (const ProString &arch : qAsConst(pchArchs)) { - auto suffix = header_suffix.toQString(); + QString file = precomph_out_dir + header_prefix + language + header_suffix; if (!arch.isEmpty()) - suffix.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); - precomp_files += precomph_out_dir + header_prefix + language + suffix; + file.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); + precomp_files += file; } } } @@ -1140,7 +1140,10 @@ UnixMakefileGenerator::writeMakeParts(QTextStream &t) t << "\n\techo \"// Automatically generated, do not modify\" > " << sourceFile_f << "\n\trm -f " << escapeFilePath(pchArchOutput); } else { - t << "\n\t" << mkdir_p_asstring(pchOutputDir); + QString outDir = pchOutputDir; + if (!arch.isEmpty()) + outDir.replace(QStringLiteral("${QMAKE_PCH_ARCH}"), arch.toQString()); + t << "\n\t" << mkdir_p_asstring(outDir); } auto pchArchFlags = pchFlags; |