blob: 575c09abc90621c6a94e64c1c53d99e58c07436c [file] [log] [blame]
EXCEPTION_SRCS = [
'NoAndroidSdkException.java',
]
java_library(
name = 'exceptions',
srcs = EXCEPTION_SRCS,
deps = [
'//third-party/java/jsr:jsr305',
'//src/com/facebook/buck/util:exceptions',
],
visibility = ['PUBLIC'],
)
PACKAGEABLE_SOURCES = [
'AndroidPackageable.java',
'AndroidPackageableCollection.java',
'AndroidPackageableCollector.java',
]
java_immutables_library(
name = 'packageable',
srcs = PACKAGEABLE_SOURCES,
deps = [
'//third-party/java/guava:guava',
'//src/com/facebook/buck/cxx:platform',
'//src/com/facebook/buck/java:classhash',
'//src/com/facebook/buck/java:nativelinkable',
'//src/com/facebook/buck/model:model',
'//src/com/facebook/buck/rules:build_rule',
'//src/com/facebook/buck/util:exceptions',
],
visibility = ['PUBLIC'],
)
RULES_SRCS = [
'AaptPackageResources.java',
'AndroidAar.java',
'AndroidAarDescription.java',
'AndroidBinaryGraphEnhancer.java',
'AndroidBinary.java',
'AndroidBinaryDescription.java',
'AndroidBuildConfig.java',
'AndroidBuildConfigDescription.java',
'AndroidBuildConfigJavaLibrary.java',
'AndroidGraphEnhancementResult.java',
'AndroidInstrumentationApk.java',
'AndroidInstrumentationApkDescription.java',
'AndroidLibraryDescription.java',
'AndroidLibraryGraphEnhancer.java',
'AndroidLibrary.java',
'AndroidManifest.java',
'AndroidManifestDescription.java',
'AndroidPrebuiltAar.java',
'AndroidPrebuiltAarDescription.java',
'AndroidPrebuiltAarGraphEnhancer.java',
'AndroidResource.java',
'AndroidResourceDescription.java',
'AndroidResourceHelper.java',
'AndroidTransitiveDependencyGraph.java',
'ApkGenrule.java',
'ApkGenruleDescription.java',
'AssembleDirectories.java',
'ComputeExopackageDepsAbi.java',
'CopyNativeLibraries.java',
'DexProducedFromJavaLibrary.java',
'DexWithClasses.java',
'DummyRDotJava.java',
'FilteredResourcesProvider.java',
'IdentityResourcesProvider.java',
'GenAidl.java',
'GenAidlDescription.java',
'HasAndroidResourceDeps.java',
'MergeAndroidResourcesStep.java',
'NativeLibraryBuildRule.java',
'NdkLibraryDescription.java',
'NdkLibrary.java',
'PackageStringAssets.java',
'PreDexedFilesSorter.java',
'PreDexMerge.java',
'PrebuiltNativeLibrary.java',
'PrebuiltNativeLibraryDescription.java',
'ProGuardConfig.java',
'ResourcesFilter.java',
'RobolectricTestDescription.java',
'RobolectricTest.java',
'RDotJava.java',
'UnsortedAndroidResourceDeps.java',
]
java_immutables_library(
name = 'rules',
srcs = RULES_SRCS,
deps = [
':exceptions',
':packageable',
':split_dex',
':steps',
':utils',
'//src/com/facebook/buck/android/aapt:aapt',
'//src/com/facebook/buck/cli:config',
'//src/com/facebook/buck/cxx:platform',
'//src/com/facebook/buck/cxx:rules',
'//src/com/facebook/buck/dalvik:dalvik',
'//src/com/facebook/buck/dalvik:steps',
'//src/com/facebook/buck/event:event',
'//src/com/facebook/buck/graph:graph',
'//src/com/facebook/buck/io:io',
'//src/com/facebook/buck/java:classhash',
'//src/com/facebook/buck/java:nativelinkable',
'//src/com/facebook/buck/java:rules',
'//src/com/facebook/buck/java:steps',
'//src/com/facebook/buck/java:support',
'//src/com/facebook/buck/java/abi:protocol',
'//src/com/facebook/buck/java/classes:classes',
'//src/com/facebook/buck/log:log',
'//src/com/facebook/buck/model:model',
'//src/com/facebook/buck/parser:rule_pattern',
'//src/com/facebook/buck/rules:build_rule',
'//src/com/facebook/buck/rules:rules',
'//src/com/facebook/buck/rules/macros:macros',
'//src/com/facebook/buck/shell:steps',
'//src/com/facebook/buck/shell:rules',
'//src/com/facebook/buck/step:step',
'//src/com/facebook/buck/step/fs:fs',
'//src/com/facebook/buck/util:constants',
'//src/com/facebook/buck/util:exceptions',
'//src/com/facebook/buck/util:util',
'//src/com/facebook/buck/zip:steps',
'//third-party/java/aosp:aosp',
'//third-party/java/guava:guava',
'//third-party/java/infer-annotations:infer-annotations',
'//third-party/java/jackson:jackson-core',
'//third-party/java/jackson:jackson-databind',
'//third-party/java/jsr:jsr305',
],
visibility = ['PUBLIC'],
)
SPLIT_DEX_SRCS = [
'DexSplitMode.java',
'DexStore.java',
]
java_library(
name = 'split_dex',
srcs = SPLIT_DEX_SRCS,
deps = [
'//third-party/java/guava:guava',
'//third-party/java/jsr:jsr305',
'//src/com/facebook/buck/dalvik:dalvik',
'//src/com/facebook/buck/util:util',
'//src/com/facebook/buck/rules:build_rule',
],
visibility = [
'PUBLIC',
],
)
UTILS_SRCS = [
'AndroidPlatformTarget.java',
'AndroidManifestReader.java',
'DefaultAndroidManifestReader.java',
'AndroidDirectoryResolver.java',
'DefaultAndroidDirectoryResolver.java',
]
java_library(
name = 'utils',
srcs = UTILS_SRCS,
deps = [
':exceptions',
'//src/com/facebook/buck/util:util',
'//src/com/facebook/buck/util:exceptions',
'//src/com/facebook/buck/io:io', # While we move classes
'//third-party/java/guava:guava',
],
visibility = ['PUBLIC'],
)
java_immutables_library(
name = 'steps',
srcs = glob(['*.java'],
excludes = EXCEPTION_SRCS + PACKAGEABLE_SOURCES + RULES_SRCS + SPLIT_DEX_SRCS + UTILS_SRCS),
deps = [
':exceptions',
':split_dex',
':utils',
'//src/com/facebook/buck/cxx:platform',
'//src/com/facebook/buck/dalvik/firstorder:firstorder',
'//src/com/facebook/buck/dalvik:dalvik',
'//src/com/facebook/buck/event:event',
'//src/com/facebook/buck/io:io',
'//src/com/facebook/buck/java:classhash',
'//src/com/facebook/buck/java/classes:classes',
'//src/com/facebook/buck/log:log',
'//src/com/facebook/buck/model:model',
'//src/com/facebook/buck/rules:build_rule',
'//src/com/facebook/buck/shell:steps',
'//src/com/facebook/buck/step:step',
'//src/com/facebook/buck/step/fs:fs',
'//src/com/facebook/buck/util:exceptions',
'//src/com/facebook/buck/util:io',
'//src/com/facebook/buck/util:util',
'//src/com/facebook/buck/util/concurrent:concurrent',
'//src/com/facebook/buck/util/environment:platform',
'//src/com/facebook/buck/zip:steps',
'//src/com/facebook/buck/zip:stream',
'//third-party/java/aosp:aosp',
'//third-party/java/asm:asm',
'//third-party/java/dx-from-kitkat:dx',
'//third-party/java/guava:guava',
'//third-party/java/jackson:jackson-core',
'//third-party/java/jackson:jackson-databind',
'//third-party/java/jsr:jsr305',
'//third-party/java/android:sdklib',
],
visibility = ['PUBLIC'],
)