forked from qt-creator/qt-creator
PchManager: Split pch tasks in project and system pch tasks
Like you can see in the task numbers this patch is touching many different areas. So I will only touch the main parts. It is using a clang action instead of an extra process which will be enabling the handling of generated files in PCHs. The flags from the project part are now not anymore transformed in a command line but they are saved in the container semantically aware so that they can later be merged. Most of this patch is simply polishing of other patches. Task-number: QTCREATORBUG-21346 Task-number: QTCREATORBUG-21380 Task-number: QTCREATORBUG-21382 Task-number: QTCREATORBUG-21383 Task-number: QTCREATORBUG-21693 Task-number: QTCREATORBUG-21778 Change-Id: I9b0c02d8149b554254e819448fbc61eeaa5b7494 Reviewed-by: Ivan Donchevskii <ivan.donchevskii@qt.io>
This commit is contained in:
@@ -27,7 +27,7 @@
|
||||
|
||||
#include <projectparts.h>
|
||||
|
||||
#include <projectpartcontainerv2.h>
|
||||
#include <projectpartcontainer.h>
|
||||
|
||||
namespace {
|
||||
|
||||
@@ -35,7 +35,7 @@ using testing::ElementsAre;
|
||||
using testing::UnorderedElementsAre;
|
||||
using testing::IsEmpty;
|
||||
|
||||
using ClangBackEnd::V2::ProjectPartContainer;
|
||||
using ClangBackEnd::ProjectPartContainer;
|
||||
using ClangBackEnd::FilePathId;
|
||||
|
||||
class ProjectParts : public testing::Test
|
||||
@@ -47,24 +47,39 @@ protected:
|
||||
FilePathId firstSource{11};
|
||||
FilePathId secondSource{12};
|
||||
FilePathId thirdSource{13};
|
||||
ProjectPartContainer projectPartContainer1{"id",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{"/includes"},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource}};
|
||||
ProjectPartContainer updatedProjectPartContainer1{"id",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{"/includes"},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource, thirdSource}};
|
||||
ProjectPartContainer projectPartContainer2{"id2",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{"/includes"},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource}};
|
||||
ProjectPartContainer projectPartContainer1{
|
||||
"id",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{{"/includes", 1, ClangBackEnd::IncludeSearchPathType::BuiltIn}},
|
||||
{{"/project/includes", 1, ClangBackEnd::IncludeSearchPathType::User}},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource},
|
||||
Utils::Language::C,
|
||||
Utils::LanguageVersion::C11,
|
||||
Utils::LanguageExtension::All};
|
||||
ProjectPartContainer updatedProjectPartContainer1{
|
||||
"id",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{{"/includes", 1, ClangBackEnd::IncludeSearchPathType::BuiltIn}},
|
||||
{{"/project/includes", 1, ClangBackEnd::IncludeSearchPathType::User}},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource, thirdSource},
|
||||
Utils::Language::C,
|
||||
Utils::LanguageVersion::C11,
|
||||
Utils::LanguageExtension::All};
|
||||
ProjectPartContainer projectPartContainer2{
|
||||
"id2",
|
||||
{"-DUNIX", "-O2"},
|
||||
{{"DEFINE", "1", 1}},
|
||||
{{"/includes", 1, ClangBackEnd::IncludeSearchPathType::BuiltIn}},
|
||||
{{"/project/includes", 1, ClangBackEnd::IncludeSearchPathType::User}},
|
||||
{firstHeader, secondHeader},
|
||||
{firstSource, secondSource},
|
||||
Utils::Language::C,
|
||||
Utils::LanguageVersion::C11,
|
||||
Utils::LanguageExtension::All};
|
||||
};
|
||||
|
||||
TEST_F(ProjectParts, GetNoProjectPartsForAddingEmptyProjectParts)
|
||||
|
||||
Reference in New Issue
Block a user