Add a module for Vc.

This should fix a problem where the ClingTest unit test fails due to the fact
that std::vector is copied and delivered by Vc pulling a wrong dependency.
This commit is contained in:
Vassil Vassilev 2020-12-19 22:16:25 +00:00 committed by jenkins
parent fedeedc2cd
commit 84bcd07963
2 changed files with 10 additions and 0 deletions

View File

@ -0,0 +1,4 @@
module Vc {
header "Vc/Vc"
export *
}

View File

@ -575,6 +575,7 @@ namespace {
llvm::SmallString<256> boostIncLoc(getIncludePathForHeader(HS, "boost/version.hpp"));
llvm::SmallString<256> tinyxml2IncLoc(getIncludePathForHeader(HS, "tinyxml2.h"));
llvm::SmallString<256> cudaIncLoc(getIncludePathForHeader(HS, "cuda.h"));
llvm::SmallString<256> vcVcIncLoc(getIncludePathForHeader(HS, "Vc/Vc"));
llvm::SmallString<256> clingIncLoc(getIncludePathForHeader(HS,
"cling/Interpreter/RuntimeUniverse.h"));
@ -695,6 +696,11 @@ namespace {
clingIncLoc.str(), MOverlay,
/*RegisterModuleMap=*/ true,
/*AllowModulemapOverride=*/ false);
if (!vcVcIncLoc.empty())
maybeAppendOverlayEntry(vcVcIncLoc.str(), "vc.modulemap",
clingIncLoc.str(), MOverlay,
/*RegisterModuleMap=*/ true,
/*AllowModulemapOverride=*/ false);
if (!boostIncLoc.empty()) {
// Add the modulemap in the include/boost folder not in include.
llvm::sys::path::append(boostIncLoc, "boost");