public class ProjectGenerator extends Object
Modifier and Type | Class and Description |
---|---|
static class |
ProjectGenerator.FilterFlags
Filter Flags for subdividing dependencies
|
Constructor and Description |
---|
ProjectGenerator(XCodeDescriptions xcodeDescriptions,
TargetGraph targetGraph,
AppleDependenciesCache dependenciesCache,
ProjectGenerationStateCache projGenerationStateCache,
Set<BuildTarget> initialTargets,
Cell cell,
Path outputDirectory,
String projectName,
String buildFileName,
com.facebook.buck.features.apple.project.ProjectGeneratorOptions options,
RuleKeyConfiguration ruleKeyConfiguration,
boolean isMainProject,
Optional<BuildTarget> workspaceTarget,
com.google.common.collect.ImmutableSet<BuildTarget> targetsInRequiredProjects,
FocusedModuleTargetMatcher focusModules,
CxxPlatform defaultCxxPlatform,
com.google.common.collect.ImmutableSet<Flavor> appleCxxFlavors,
java.util.function.Function<? super TargetNode<?>,ActionGraphBuilder> actionGraphBuilderForNode,
BuckEventBus buckEventBus,
HalideBuckConfig halideBuckConfig,
CxxBuckConfig cxxBuckConfig,
AppleConfig appleConfig,
SwiftBuckConfig swiftBuckConfig,
Optional<com.google.common.collect.ImmutableMap<BuildTarget,TargetNode<?>>> sharedLibraryToBundle) |
Modifier and Type | Method and Description |
---|---|
static com.google.common.collect.ImmutableMap<BuildTarget,TargetNode<?>> |
computeSharedLibrariesToBundles(com.google.common.collect.ImmutableSet<TargetNode<?>> targetNodes,
TargetGraph targetGraph)
Generate a mapping from libraries to the framework bundles that include them.
|
void |
createXcodeProjects() |
com.google.common.collect.ImmutableMap<BuildTarget,PBXTarget> |
getBuildTargetToGeneratedTargetMap() |
com.google.common.collect.ImmutableList<CopyInXcode> |
getFilesToCopyInXcode() |
com.google.common.collect.ImmutableSetMultimap<PBXProject,PBXTarget> |
getGeneratedProjectToGeneratedTargets() |
Path |
getProjectPath() |
com.google.common.collect.ImmutableSet<BuildTarget> |
getRequiredBuildTargets() |
com.google.common.collect.ImmutableSet<Path> |
getXcconfigPaths() |
boolean |
isProjectGenerated() |
static com.google.common.collect.ImmutableMap<Path,SourcePath> |
parseAllPlatformHeaders(BuildTarget buildTarget,
SourcePathResolverAdapter sourcePathResolverAdapter,
ProjectFilesystem filesystem,
com.google.common.collect.ImmutableList<SourceSortedSet> platformHeaders,
boolean export,
CxxLibraryDescription.CommonArg args) |
public ProjectGenerator(XCodeDescriptions xcodeDescriptions, TargetGraph targetGraph, AppleDependenciesCache dependenciesCache, ProjectGenerationStateCache projGenerationStateCache, Set<BuildTarget> initialTargets, Cell cell, Path outputDirectory, String projectName, String buildFileName, com.facebook.buck.features.apple.project.ProjectGeneratorOptions options, RuleKeyConfiguration ruleKeyConfiguration, boolean isMainProject, Optional<BuildTarget> workspaceTarget, com.google.common.collect.ImmutableSet<BuildTarget> targetsInRequiredProjects, FocusedModuleTargetMatcher focusModules, CxxPlatform defaultCxxPlatform, com.google.common.collect.ImmutableSet<Flavor> appleCxxFlavors, java.util.function.Function<? super TargetNode<?>,ActionGraphBuilder> actionGraphBuilderForNode, BuckEventBus buckEventBus, HalideBuckConfig halideBuckConfig, CxxBuckConfig cxxBuckConfig, AppleConfig appleConfig, SwiftBuckConfig swiftBuckConfig, Optional<com.google.common.collect.ImmutableMap<BuildTarget,TargetNode<?>>> sharedLibraryToBundle)
public Path getProjectPath()
public com.google.common.collect.ImmutableMap<BuildTarget,PBXTarget> getBuildTargetToGeneratedTargetMap()
public com.google.common.collect.ImmutableSetMultimap<PBXProject,PBXTarget> getGeneratedProjectToGeneratedTargets()
public com.google.common.collect.ImmutableSet<BuildTarget> getRequiredBuildTargets()
public com.google.common.collect.ImmutableSet<Path> getXcconfigPaths()
public com.google.common.collect.ImmutableList<CopyInXcode> getFilesToCopyInXcode()
public boolean isProjectGenerated()
public void createXcodeProjects() throws IOException
IOException
public static com.google.common.collect.ImmutableMap<Path,SourcePath> parseAllPlatformHeaders(BuildTarget buildTarget, SourcePathResolverAdapter sourcePathResolverAdapter, ProjectFilesystem filesystem, com.google.common.collect.ImmutableList<SourceSortedSet> platformHeaders, boolean export, CxxLibraryDescription.CommonArg args)
public static com.google.common.collect.ImmutableMap<BuildTarget,TargetNode<?>> computeSharedLibrariesToBundles(com.google.common.collect.ImmutableSet<TargetNode<?>> targetNodes, TargetGraph targetGraph) throws HumanReadableException
HumanReadableException