forked from qt-creator/qt-creator
CppEditor: Make CompilerOptionsBuilder take the actual clang include dir
This is more clear than passing in version and fallback path and calculating the real path from them somewhere down the line. No functional changes for now. Change-Id: Iae2fc8015c778d787ed6e0ce898f41a7a05b2607 Reviewed-by: <github-actions-qt-creator@cristianadam.eu> Reviewed-by: David Schulz <david.schulz@qt.io>
This commit is contained in:
@@ -375,10 +375,11 @@ CompilerOptionsBuilder clangOptionsBuilder(const ProjectPart &projectPart,
|
||||
const auto useBuildSystemWarnings = warningsConfig.useBuildSystemWarnings()
|
||||
? UseBuildSystemWarnings::Yes
|
||||
: UseBuildSystemWarnings::No;
|
||||
const FilePath clangIncludeDir = Core::ICore::clangIncludeDirectory(
|
||||
QString(CLANG_VERSION), FilePath(CLANG_INCLUDE_DIR));
|
||||
CompilerOptionsBuilder optionsBuilder(projectPart, UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No,
|
||||
useBuildSystemWarnings, QString(CLANG_VERSION),
|
||||
FilePath(CLANG_INCLUDE_DIR));
|
||||
useBuildSystemWarnings, clangIncludeDir);
|
||||
optionsBuilder.provideAdditionalMacros({ProjectExplorer::Macro("Q_CREATOR_RUN", "1")});
|
||||
optionsBuilder.build(ProjectFile::Unclassified, UsePrecompiledHeaders::No);
|
||||
const QString uiIncludePath
|
||||
|
@@ -119,13 +119,14 @@ AnalyzeUnit::AnalyzeUnit(const FileInfo &fileInfo,
|
||||
const FilePath &clangIncludeDir,
|
||||
const QString &clangVersion)
|
||||
{
|
||||
const FilePath actualClangIncludeDir = Core::ICore::clangIncludeDirectory(
|
||||
clangVersion, clangIncludeDir);
|
||||
CompilerOptionsBuilder optionsBuilder(*fileInfo.projectPart,
|
||||
UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Tools,
|
||||
UseLanguageDefines::No,
|
||||
UseBuildSystemWarnings::No,
|
||||
clangVersion,
|
||||
clangIncludeDir);
|
||||
actualClangIncludeDir);
|
||||
file = fileInfo.file.toString();
|
||||
arguments = extraClangToolsPrependOptions();
|
||||
arguments.append(optionsBuilder.build(fileInfo.kind, CppEditor::getPchUsage()));
|
||||
|
@@ -108,14 +108,12 @@ CompilerOptionsBuilder::CompilerOptionsBuilder(const ProjectPart &projectPart,
|
||||
UseTweakedHeaderPaths useTweakedHeaderPaths,
|
||||
UseLanguageDefines useLanguageDefines,
|
||||
UseBuildSystemWarnings useBuildSystemWarnings,
|
||||
const QString &clangVersion,
|
||||
const FilePath &clangIncludeDirectory)
|
||||
: m_projectPart(projectPart)
|
||||
, m_useSystemHeader(useSystemHeader)
|
||||
, m_useTweakedHeaderPaths(useTweakedHeaderPaths)
|
||||
, m_useLanguageDefines(useLanguageDefines)
|
||||
, m_useBuildSystemWarnings(useBuildSystemWarnings)
|
||||
, m_clangVersion(clangVersion)
|
||||
, m_clangIncludeDirectory(clangIncludeDirectory)
|
||||
{
|
||||
}
|
||||
@@ -351,7 +349,6 @@ void CompilerOptionsBuilder::addHeaderPathOptions()
|
||||
Internal::HeaderPathFilter filter{
|
||||
m_projectPart,
|
||||
m_useTweakedHeaderPaths,
|
||||
m_clangVersion,
|
||||
m_clangIncludeDirectory};
|
||||
|
||||
filter.process();
|
||||
@@ -362,8 +359,6 @@ void CompilerOptionsBuilder::addHeaderPathOptions()
|
||||
addIncludeDirOptionForPath(headerPath);
|
||||
|
||||
if (m_useTweakedHeaderPaths != UseTweakedHeaderPaths::No) {
|
||||
QTC_CHECK(!m_clangVersion.isEmpty()
|
||||
&& "Clang resource directory is required with UseTweakedHeaderPaths::Yes.");
|
||||
|
||||
// Exclude all built-in includes and Clang resource directory.
|
||||
m_options.prepend("-nostdinc++");
|
||||
|
@@ -50,7 +50,6 @@ public:
|
||||
UseTweakedHeaderPaths useTweakedHeaderPaths = UseTweakedHeaderPaths::No,
|
||||
UseLanguageDefines useLanguageDefines = UseLanguageDefines::No,
|
||||
UseBuildSystemWarnings useBuildSystemWarnings = UseBuildSystemWarnings::No,
|
||||
const QString &clangVersion = {},
|
||||
const Utils::FilePath &clangIncludeDirectory = {});
|
||||
|
||||
QStringList build(ProjectFile::Kind fileKind, UsePrecompiledHeaders usePrecompiledHeaders);
|
||||
@@ -116,7 +115,6 @@ private:
|
||||
const UseLanguageDefines m_useLanguageDefines;
|
||||
const UseBuildSystemWarnings m_useBuildSystemWarnings;
|
||||
|
||||
const QString m_clangVersion;
|
||||
const Utils::FilePath m_clangIncludeDirectory;
|
||||
|
||||
ProjectExplorer::Macros m_additionalMacros;
|
||||
|
@@ -209,13 +209,13 @@ void CompilerOptionsBuilderTest::testHeaderPathOptionsOrder()
|
||||
TestHelper t;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder{t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", ""};
|
||||
"/dummy"};
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
(QStringList{"-nostdinc", "-nostdinc++", "-I", t.toNative("/tmp/path"),
|
||||
"-I", t.toNative("/tmp/system_path"), "-isystem", "", "-isystem",
|
||||
t.toNative("/tmp/builtin_path")}));
|
||||
"-I", t.toNative("/tmp/system_path"), "-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
void CompilerOptionsBuilderTest::testHeaderPathOptionsOrderMsvc()
|
||||
@@ -224,14 +224,14 @@ void CompilerOptionsBuilderTest::testHeaderPathOptionsOrderMsvc()
|
||||
t.toolchainType = Constants::MSVC_TOOLCHAIN_TYPEID;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder{t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", ""};
|
||||
"/dummy"};
|
||||
compilerOptionsBuilder.evaluateCompilerFlags();
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
(QStringList{"-nostdinc", "-nostdinc++", "-I", t.toNative("/tmp/path"),
|
||||
"-I", t.toNative("/tmp/system_path"), "/clang:-isystem",
|
||||
"/clang:", "/clang:-isystem",
|
||||
"/clang:" + t.toNative("/dummy"), "/clang:-isystem",
|
||||
"/clang:" + t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
@@ -240,13 +240,14 @@ void CompilerOptionsBuilderTest::testUseSystemHeader()
|
||||
TestHelper t;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder{t.finalize(), UseSystemHeader::Yes,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", ""};
|
||||
"/dummy"};
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
(QStringList{"-nostdinc", "-nostdinc++", "-I", t.toNative("/tmp/path"),
|
||||
"-isystem", t.toNative("/tmp/system_path"),
|
||||
"-isystem", "", "-isystem", t.toNative("/tmp/builtin_path")}));
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
void CompilerOptionsBuilderTest::testNoClangHeadersPath()
|
||||
@@ -272,7 +273,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderMacOs()
|
||||
t.headerPaths = additionalHeaderPaths + t.headerPaths;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
@@ -281,7 +282,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderMacOs()
|
||||
"-isystem", t.toNative("/usr/include/c++/4.2.1"),
|
||||
"-isystem", t.toNative("/usr/include/c++/4.2.1/backward"),
|
||||
"-isystem", t.toNative("/usr/local/include"),
|
||||
"-isystem", "",
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/include"),
|
||||
"-isystem", t.toNative("/usr/include"),
|
||||
"-isystem", t.toNative("/tmp/builtin_path")}));
|
||||
@@ -301,7 +302,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderLinux()
|
||||
t.builtIn("/usr/include")};
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
@@ -310,7 +311,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderLinux()
|
||||
"-isystem", t.toNative("/usr/include/c++/4.8/backward"),
|
||||
"-isystem", t.toNative("/usr/include/x86_64-linux-gnu/c++/4.8"),
|
||||
"-isystem", t.toNative("/usr/local/include"),
|
||||
"-isystem", "",
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("/usr/lib/gcc/x86_64-linux-gnu/4.8/include"),
|
||||
"-isystem", t.toNative("/usr/include/x86_64-linux-gnu"),
|
||||
"-isystem", t.toNative("/usr/include")}));
|
||||
@@ -327,7 +328,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderNoVersio
|
||||
t.builtIn("C:/mingw530/i686-w64-mingw32/include/c++/backward")};
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
@@ -335,7 +336,7 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderNoVersio
|
||||
"-isystem", t.toNative("C:/mingw530/i686-w64-mingw32/include/c++"),
|
||||
"-isystem", t.toNative("C:/mingw530/i686-w64-mingw32/include/c++/i686-w64-mingw32"),
|
||||
"-isystem", t.toNative("C:/mingw530/i686-w64-mingw32/include/c++/backward"),
|
||||
"-isystem", "",
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("C:/mingw530/i686-w64-mingw32/include")}));
|
||||
}
|
||||
|
||||
@@ -351,14 +352,14 @@ void CompilerOptionsBuilderTest::testClangHeadersAndCppIncludePathsOrderAndroidC
|
||||
t.builtIn("C:/Android/sdk/ndk-bundle/sysroot/usr/include")};
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.addHeaderPathOptions();
|
||||
|
||||
QCOMPARE(compilerOptionsBuilder.options(),
|
||||
(QStringList{"-nostdinc", "-nostdinc++",
|
||||
"-isystem", t.toNative("C:/Android/sdk/ndk-bundle/sources/cxx-stl/llvm-libc++/include"),
|
||||
"-isystem", t.toNative("C:/Android/sdk/ndk-bundle/sources/cxx-stl/llvm-libc++abi/include"),
|
||||
"-isystem", t.toNative(""),
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("C:/Android/sdk/ndk-bundle/sysroot/usr/include/i686-linux-android"),
|
||||
"-isystem", t.toNative("C:/Android/sdk/ndk-bundle/sources/android/support/include"),
|
||||
"-isystem", t.toNative("C:/Android/sdk/ndk-bundle/sysroot/usr/include")}));
|
||||
@@ -434,8 +435,7 @@ void CompilerOptionsBuilderTest::testInsertWrappedQtHeaders()
|
||||
{
|
||||
TestHelper t;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder{t.finalize(), UseSystemHeader::Yes,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", ""};
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No};
|
||||
compilerOptionsBuilder.insertWrappedQtHeaders();
|
||||
|
||||
QVERIFY(Utils::contains(compilerOptionsBuilder.options(),
|
||||
@@ -446,7 +446,7 @@ void CompilerOptionsBuilderTest::testInsertWrappedMingwHeadersWithNonMingwToolch
|
||||
{
|
||||
TestHelper t;
|
||||
CompilerOptionsBuilder builder{t.finalize(), UseSystemHeader::Yes, UseTweakedHeaderPaths::Yes,
|
||||
UseLanguageDefines::No, UseBuildSystemWarnings::No, "dummy_version", ""};
|
||||
UseLanguageDefines::No, UseBuildSystemWarnings::No};
|
||||
builder.insertWrappedMingwHeaders();
|
||||
|
||||
QVERIFY(!Utils::contains(builder.options(),
|
||||
@@ -458,7 +458,7 @@ void CompilerOptionsBuilderTest::testInsertWrappedMingwHeadersWithMingwToolchain
|
||||
TestHelper t;
|
||||
t.toolchainType = Constants::MINGW_TOOLCHAIN_TYPEID;
|
||||
CompilerOptionsBuilder builder{t.finalize(), UseSystemHeader::Yes, UseTweakedHeaderPaths::Yes,
|
||||
UseLanguageDefines::No, UseBuildSystemWarnings::No, "dummy_version", ""};
|
||||
UseLanguageDefines::No, UseBuildSystemWarnings::No};
|
||||
builder.insertWrappedMingwHeaders();
|
||||
|
||||
QVERIFY(Utils::contains(builder.options(),
|
||||
@@ -600,7 +600,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptions()
|
||||
t.extraFlags = QStringList{"-arch", "x86_64"};
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.build(ProjectFile::CXXSource, UsePrecompiledHeaders::No);
|
||||
|
||||
const QString wrappedQtHeadersPath = Utils::findOrDefault(compilerOptionsBuilder.options(),
|
||||
@@ -614,7 +614,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptions()
|
||||
"-I", wrappedQtCoreHeadersPath,
|
||||
"-I", t.toNative("/tmp/path"),
|
||||
"-I", t.toNative("/tmp/system_path"),
|
||||
"-isystem", "",
|
||||
"-isystem", t.toNative("/dummy"),
|
||||
"-isystem", t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
@@ -624,7 +624,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptionsMsvc()
|
||||
t.toolchainType = Constants::MSVC_TOOLCHAIN_TYPEID;
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.build(ProjectFile::CXXSource, UsePrecompiledHeaders::No);
|
||||
|
||||
const QString wrappedQtHeadersPath = Utils::findOrDefault(compilerOptionsBuilder.options(),
|
||||
@@ -642,7 +642,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptionsMsvc()
|
||||
"-I", wrappedQtCoreHeadersPath,
|
||||
"-I", t.toNative("/tmp/path"),
|
||||
"-I", t.toNative("/tmp/system_path"),
|
||||
"/clang:-isystem", "/clang:",
|
||||
"/clang:-isystem", "/clang:" + t.toNative("/dummy"),
|
||||
"/clang:-isystem", "/clang:" + t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
@@ -653,7 +653,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptionsMsvcWithExceptions()
|
||||
t.toolchainMacros.append(Macro{"_CPPUNWIND", "1"});
|
||||
CompilerOptionsBuilder compilerOptionsBuilder(t.finalize(), UseSystemHeader::No,
|
||||
UseTweakedHeaderPaths::Yes, UseLanguageDefines::No, UseBuildSystemWarnings::No,
|
||||
"dummy_version", "");
|
||||
"/dummy");
|
||||
compilerOptionsBuilder.build(ProjectFile::CXXSource, UsePrecompiledHeaders::No);
|
||||
|
||||
const QString wrappedQtHeadersPath = Utils::findOrDefault(compilerOptionsBuilder.options(),
|
||||
@@ -672,7 +672,7 @@ void CompilerOptionsBuilderTest::testBuildAllOptionsMsvcWithExceptions()
|
||||
"-I", wrappedQtCoreHeadersPath,
|
||||
"-I", t.toNative("/tmp/path"),
|
||||
"-I", t.toNative("/tmp/system_path"),
|
||||
"/clang:-isystem", "/clang:",
|
||||
"/clang:-isystem", "/clang:" + t.toNative("/dummy"),
|
||||
"/clang:-isystem", "/clang:" + t.toNative("/tmp/builtin_path")}));
|
||||
}
|
||||
|
||||
|
@@ -103,17 +103,6 @@ void HeaderPathFilter::filterHeaderPath(const ProjectExplorer::HeaderPath &heade
|
||||
|
||||
namespace {
|
||||
|
||||
FilePath clangIncludeDirectory(const QString &clangVersion, const FilePath &clangFallbackIncludeDir)
|
||||
{
|
||||
#ifndef UNIT_TESTS
|
||||
return Core::ICore::clangIncludeDirectory(clangVersion, clangFallbackIncludeDir);
|
||||
#else
|
||||
Q_UNUSED(clangVersion)
|
||||
Q_UNUSED(clangFallbackIncludeDir)
|
||||
return {CLANG_INCLUDE_DIR};
|
||||
#endif
|
||||
}
|
||||
|
||||
HeaderPaths::iterator resourceIterator(HeaderPaths &headerPaths)
|
||||
{
|
||||
// include/c++, include/g++, libc++\include and libc++abi\include
|
||||
@@ -156,11 +145,8 @@ void HeaderPathFilter::tweakHeaderPaths()
|
||||
|
||||
auto split = resourceIterator(builtInHeaderPaths);
|
||||
|
||||
if (!clangVersion.isEmpty()) {
|
||||
const FilePath clangIncludePath
|
||||
= clangIncludeDirectory(clangVersion, clangFallbackIncludeDirectory);
|
||||
builtInHeaderPaths.insert(split, HeaderPath::makeBuiltIn(clangIncludePath));
|
||||
}
|
||||
if (!clangIncludeDirectory.isEmpty())
|
||||
builtInHeaderPaths.insert(split, HeaderPath::makeBuiltIn(clangIncludeDirectory));
|
||||
}
|
||||
|
||||
void HeaderPathFilter::addPreIncludesPath()
|
||||
|
@@ -37,13 +37,11 @@ class HeaderPathFilter
|
||||
public:
|
||||
HeaderPathFilter(const ProjectPart &projectPart,
|
||||
UseTweakedHeaderPaths useTweakedHeaderPaths = UseTweakedHeaderPaths::Yes,
|
||||
const QString &clangVersion = {},
|
||||
const Utils::FilePath &clangIncludeDirectory = {},
|
||||
const QString &projectDirectory = {},
|
||||
const QString &buildDirectory = {})
|
||||
: projectPart{projectPart}
|
||||
, clangVersion{clangVersion}
|
||||
, clangFallbackIncludeDirectory{clangIncludeDirectory}
|
||||
, clangIncludeDirectory{clangIncludeDirectory}
|
||||
, projectDirectory(ensurePathWithSlashEnding(projectDirectory))
|
||||
, buildDirectory(ensurePathWithSlashEnding(buildDirectory))
|
||||
, useTweakedHeaderPaths{useTweakedHeaderPaths}
|
||||
@@ -69,8 +67,7 @@ public:
|
||||
ProjectExplorer::HeaderPaths systemHeaderPaths;
|
||||
ProjectExplorer::HeaderPaths userHeaderPaths;
|
||||
const ProjectPart &projectPart;
|
||||
const QString clangVersion;
|
||||
const Utils::FilePath clangFallbackIncludeDirectory;
|
||||
const Utils::FilePath clangIncludeDirectory;
|
||||
const QString projectDirectory;
|
||||
const QString buildDirectory;
|
||||
const UseTweakedHeaderPaths useTweakedHeaderPaths;
|
||||
|
@@ -511,7 +511,7 @@ public:
|
||||
tcInfo.targetTriple = targetTriple;
|
||||
tcInfo.installDir = toolchainInstallDir;
|
||||
projectPart = ProjectPart::create({}, rpp, {}, {}, {}, {}, {}, tcInfo);
|
||||
filter.emplace(HeaderPathFilter(*projectPart, UseTweakedHeaderPaths::No, {}, {},
|
||||
filter.emplace(HeaderPathFilter(*projectPart, UseTweakedHeaderPaths::No, {},
|
||||
"/project", "/build"));
|
||||
return *projectPart;
|
||||
}
|
||||
@@ -602,7 +602,7 @@ void HeaderPathFilterTest::testDontAddInvalidPath()
|
||||
void HeaderPathFilterTest::testClangHeadersPath()
|
||||
{
|
||||
HeaderPathFilterTestHelper t;
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{t.builtIn("clang_dir"),
|
||||
@@ -631,7 +631,7 @@ void HeaderPathFilterTest::testClangHeadersAndCppIncludesPathsOrderMacOs()
|
||||
};
|
||||
std::copy(builtIns.begin(), builtIns.end(),
|
||||
std::inserter(t.headerPaths, t.headerPaths.begin()));
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{
|
||||
@@ -653,7 +653,7 @@ void HeaderPathFilterTest::testClangHeadersAndCppIncludesPathsOrderLinux()
|
||||
t.builtIn("/usr/include/x86_64-linux-gnu"), t.builtIn("/usr/include")};
|
||||
std::copy(builtIns.begin(), builtIns.end(),
|
||||
std::inserter(t.headerPaths, t.headerPaths.begin()));
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{
|
||||
@@ -675,7 +675,7 @@ void HeaderPathFilterTest::testRemoveGccInternalPaths()
|
||||
t.builtIn("/usr/lib/gcc/x86_64-linux-gnu/7/include"),
|
||||
t.builtIn("/usr/lib/gcc/x86_64-linux-gnu/7/include-fixed"),
|
||||
};
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{t.builtIn("clang_dir")}));
|
||||
@@ -697,7 +697,7 @@ void HeaderPathFilterTest::testRemoveGccInternalPathsExceptForStandardPaths()
|
||||
|
||||
HeaderPaths expected = t.headerPaths;
|
||||
expected.append(t.builtIn("clang_dir"));
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, expected);
|
||||
@@ -713,7 +713,7 @@ void HeaderPathFilterTest::testClangHeadersAndCppIncludesPathsOrderNoVersion()
|
||||
t.builtIn("C:/mingw/i686-w64-mingw32/include/c++/backward"),
|
||||
};
|
||||
t.targetTriple = "x86_64-w64-windows-gnu";
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{
|
||||
@@ -735,7 +735,7 @@ void HeaderPathFilterTest::testClangHeadersAndCppIncludesPathsOrderAndroidClang(
|
||||
t.builtIn("C:/Android/sdk/ndk-bundle/sysroot/usr/include")
|
||||
};
|
||||
t.targetTriple = "i686-linux-android";
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "6.0", "clang_dir");
|
||||
HeaderPathFilter filter(t.finalize(), UseTweakedHeaderPaths::Yes, "clang_dir");
|
||||
filter.process();
|
||||
|
||||
QCOMPARE(filter.builtInHeaderPaths, (HeaderPaths{
|
||||
|
Reference in New Issue
Block a user