mirror of
https://github.com/apple/swift.git
synced 2025-12-21 12:14:44 +01:00
Merge remote-tracking branch 'origin/master' into master-next
This commit is contained in:
@@ -354,11 +354,13 @@ class ModuleInterfaceLoaderImpl {
|
||||
DependencyTracker *const dependencyTracker;
|
||||
const ModuleLoadingMode loadMode;
|
||||
const bool remarkOnRebuildFromInterface;
|
||||
const bool disableInterfaceLock;
|
||||
|
||||
ModuleInterfaceLoaderImpl(
|
||||
ASTContext &ctx, StringRef modulePath, StringRef interfacePath,
|
||||
StringRef moduleName, StringRef cacheDir, StringRef prebuiltCacheDir,
|
||||
SourceLoc diagLoc, bool remarkOnRebuildFromInterface,
|
||||
bool disableInterfaceLock,
|
||||
DependencyTracker *dependencyTracker = nullptr,
|
||||
ModuleLoadingMode loadMode = ModuleLoadingMode::PreferSerialized)
|
||||
: ctx(ctx), fs(*ctx.SourceMgr.getFileSystem()), diags(ctx.Diags),
|
||||
@@ -366,7 +368,8 @@ class ModuleInterfaceLoaderImpl {
|
||||
moduleName(moduleName), prebuiltCacheDir(prebuiltCacheDir),
|
||||
cacheDir(cacheDir), diagnosticLoc(diagLoc),
|
||||
dependencyTracker(dependencyTracker), loadMode(loadMode),
|
||||
remarkOnRebuildFromInterface(remarkOnRebuildFromInterface) {}
|
||||
remarkOnRebuildFromInterface(remarkOnRebuildFromInterface),
|
||||
disableInterfaceLock(disableInterfaceLock) {}
|
||||
|
||||
/// Construct a cache key for the .swiftmodule being generated. There is a
|
||||
/// balance to be struck here between things that go in the cache key and
|
||||
@@ -902,7 +905,8 @@ class ModuleInterfaceLoaderImpl {
|
||||
ctx.SourceMgr, ctx.Diags, ctx.SearchPathOpts, ctx.LangOpts,
|
||||
ctx.getClangModuleLoader(), interfacePath, moduleName, cacheDir,
|
||||
prebuiltCacheDir, /*serializeDependencyHashes*/false,
|
||||
trackSystemDependencies, remarkOnRebuildFromInterface, diagnosticLoc,
|
||||
trackSystemDependencies, remarkOnRebuildFromInterface,
|
||||
disableInterfaceLock, diagnosticLoc,
|
||||
dependencyTracker);
|
||||
auto &subInvocation = builder.getSubInvocation();
|
||||
|
||||
@@ -1024,7 +1028,8 @@ std::error_code ModuleInterfaceLoader::findModuleFilesInDirectory(
|
||||
ModuleInterfaceLoaderImpl Impl(
|
||||
Ctx, ModPath, InPath, ModuleName,
|
||||
CacheDir, PrebuiltCacheDir, ModuleID.Loc,
|
||||
RemarkOnRebuildFromInterface, dependencyTracker,
|
||||
RemarkOnRebuildFromInterface, DisableInterfaceFileLock,
|
||||
dependencyTracker,
|
||||
llvm::is_contained(PreferInterfaceForModules,
|
||||
ModuleName) ?
|
||||
ModuleLoadingMode::PreferInterface : LoadMode);
|
||||
@@ -1062,13 +1067,14 @@ bool ModuleInterfaceLoader::buildSwiftModuleFromSwiftInterface(
|
||||
StringRef CacheDir, StringRef PrebuiltCacheDir,
|
||||
StringRef ModuleName, StringRef InPath, StringRef OutPath,
|
||||
bool SerializeDependencyHashes, bool TrackSystemDependencies,
|
||||
bool RemarkOnRebuildFromInterface) {
|
||||
bool RemarkOnRebuildFromInterface, bool DisableInterfaceFileLock) {
|
||||
ModuleInterfaceBuilder builder(SourceMgr, Diags, SearchPathOpts, LangOpts,
|
||||
/*clangImporter*/nullptr, InPath,
|
||||
ModuleName, CacheDir, PrebuiltCacheDir,
|
||||
SerializeDependencyHashes,
|
||||
TrackSystemDependencies,
|
||||
RemarkOnRebuildFromInterface);
|
||||
RemarkOnRebuildFromInterface,
|
||||
DisableInterfaceFileLock);
|
||||
// FIXME: We really only want to serialize 'important' dependencies here, if
|
||||
// we want to ship the built swiftmodules to another machine.
|
||||
return builder.buildSwiftModule(OutPath, /*shouldSerializeDeps*/true,
|
||||
|
||||
Reference in New Issue
Block a user