java_library(
  name = 'types',
  srcs = [
    'KnownBuildRuleTypes.java',
  ],
  deps = [
    ':build_rule',
    ':rules',
    '//lib:guava',
    '//src/com/facebook/buck/android:rules',
    '//src/com/facebook/buck/java:rules',
    '//src/com/facebook/buck/parcelable:rules',
    '//src/com/facebook/buck/parser:project',
    '//src/com/facebook/buck/parser:support',
    '//src/com/facebook/buck/python:rules',
    '//src/com/facebook/buck/shell:rules',
    '//src/com/facebook/buck/util:exceptions',
  ],
  visibility = [
    '//src/com/facebook/buck/cli:cli',
    '//src/com/facebook/buck/parser:parser',
    '//test/...',
  ])

# Ideally, BuildRule.java would require only a handful of other source files
# in order to compile it. Because BuildContext is referenced in the BuildRule
# interface, its dependencies are much broader than desired.
java_library(
  name = 'build_rule',
  srcs = [
    'AnnotationProcessingData.java',
    'ArtifactCache.java',
    'BinaryBuildRule.java',
    'Buildable.java',
    'Buildables.java',
    'BuildableContext.java',
    'BuildableProperties.java',
    'BuildContext.java',
    'BuildDependencies.java',
    'BuildInfo.java',
    'BuildInfoRecorder.java',
    'BuildRule.java',
    'BuildRuleSuccess.java',
    'BuildRuleType.java',
    'CacheResult.java',
    'DependencyGraph.java',
    'InputRule.java',
    'JavaPackageFinder.java',
    'OnDiskBuildInfo.java',
    'RuleKey.java',
    'Sha1HashCode.java',
    'SourcePath.java',
    'SourceRoot.java',
  ],
  deps = [
    '//lib:guava',
    '//lib:jackson-annotations',
    '//lib:jackson-core',
    '//lib:jsr305',
    '//src/com/facebook/buck/android:exceptions',
    '//src/com/facebook/buck/event:event',
    '//src/com/facebook/buck/graph:graph',
    '//src/com/facebook/buck/model:model',
    '//src/com/facebook/buck/step:step',
    '//src/com/facebook/buck/util:constants',
    '//src/com/facebook/buck/util:exceptions',
    '//src/com/facebook/buck/util:io',
    '//src/com/facebook/buck/util:util',
    '//src/com/facebook/buck/util/hash:hash',
  ],
  visibility = [
    'PUBLIC',
  ],
)

java_library(
  name = 'rules',
  srcs = [
    'AbiRule.java',
    'AbstractBuildable.java',
    'AbstractBuildRuleBuilder.java',
    'AbstractBuildRuleBuilderParams.java',
    'AbstractBuildRule.java',
    'AbstractCachingBuildRule.java',
    'AbstractDependencyVisitor.java',
    'AbstractSourcePath.java',
    'ArtifactCacheEvent.java',
    'Builder.java',
    'BuildEvent.java',
    'BuildRuleBuilder.java',
    'BuildRuleEvent.java',
    'BuildRuleParams.java',
    'BuildRuleResolver.java',
    'BuildRuleStatus.java',
    'BuildTargetSourcePath.java',
    'CassandraArtifactCache.java',
    'DefaultBuildableContext.java',
    'DefaultBuildRuleBuilderParams.java',
    'DirArtifactCache.java',
    'DoNotUseAbstractBuildable.java',
    'FileSourcePath.java',
    'IndividualTestEvent.java',
    'InstallableBuildRule.java',
    'LabelsAttributeBuilder.java',
    'LoggingArtifactCacheDecorator.java',
    'MultiArtifactCache.java',
    'NoopArtifactCache.java',
    'ProjectConfigRule.java',
    'RecordArtifactsInDirectoryStep.java',
    'ResourcesAttributeBuilder.java',
    'SourcePaths.java',
    'SrcsAttributeBuilder.java',
    'TestRule.java',
    'TestRunEvent.java',
  ],
  deps = [
    ':build_rule',
    '//lib:guava',
    '//lib:jackson-annotations',
    '//lib:jackson-core',
    '//lib:jackson-databind',
    '//lib:jsr305',
    '//src/com/facebook/buck/android:exceptions',
    '//src/com/facebook/buck/android:steps',
    '//src/com/facebook/buck/cli:events',
    '//src/com/facebook/buck/event:event',
    '//src/com/facebook/buck/graph:graph',
    '//src/com/facebook/buck/model:model',
    '//src/com/facebook/buck/shell:steps',
    '//src/com/facebook/buck/step:step',
    '//src/com/facebook/buck/step/fs:fs',
    '//src/com/facebook/buck/test:test',
    '//src/com/facebook/buck/util:constants',
    '//src/com/facebook/buck/util:exceptions',
    '//src/com/facebook/buck/util:io',
    '//src/com/facebook/buck/util:network',
    '//src/com/facebook/buck/timing:timing',
    '//src/com/facebook/buck/util:util',
    '//src/com/facebook/buck/util/concurrent:concurrent',
    '//src/com/facebook/buck/util/environment:environment',
    '//third-party/java/astyanax:astyanax-cassandra',
    '//third-party/java/astyanax:astyanax-core',
    '//third-party/java/astyanax:astyanax-thrift',
    '//third-party/java/astyanax:cassandra',
    '//third-party/java/astyanax:cassandra-thrift',
    '//third-party/java/astyanax:commons-cli',
    '//third-party/java/astyanax:commons-codec',
    '//third-party/java/astyanax:commons-lang',
    '//third-party/java/astyanax:high-scale-lib',
    '//third-party/java/astyanax:joda-time',
    '//third-party/java/astyanax:libthrift',
    '//third-party/java/astyanax:log4j',
    '//third-party/java/astyanax:slf4j-api',
    '//third-party/java/astyanax:slf4j-log4j12',
  ],
  visibility = ['PUBLIC'],
)
