1//############################################# 2// Compile Robolectric processor 3//############################################# 4 5package { 6 // See: http://go/android-license-faq 7 // A large-scale-change added 'default_applicable_licenses' to import 8 // all of the 'license_kinds' from "external_robolectric_license" 9 // to get the below license kinds: 10 // SPDX-license-identifier-Apache-2.0 11 // SPDX-license-identifier-MIT 12 default_applicable_licenses: ["external_robolectric_license"], 13} 14 15java_library_host { 16 name: "libRobolectric_processor_upstream", 17 srcs: ["src/main/java/**/*.java"], 18 java_resource_dirs: ["src/main/resources"], 19 java_resources: ["sdks.txt"], 20 use_tools_jar: true, 21 plugins: [ 22 "auto_service_plugin", 23 ], 24 static_libs: [ 25 "Robolectric_annotations_upstream", 26 "Robolectric_shadowapi_upstream", 27 "auto_service_annotations", 28 "asm-commons-9.2", 29 "guava", 30 "asm-tree-9.2", 31 "gson-prebuilt-jar-2.9.1", 32 "asm-9.2", 33 "jsr305", 34 "auto-common-1.1.2", 35 ], 36 37 openjdk9: { 38 javacflags: [ 39 "--add-exports=jdk.compiler/com.sun.tools.javac.api=ALL-UNNAMED", 40 "--add-exports=jdk.compiler/com.sun.tools.javac.code=ALL-UNNAMED", 41 "--add-exports=jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED", 42 ], 43 }, 44} 45 46java_plugin { 47 name: "Robolectric_processor_upstream", 48 processor_class: "org.robolectric.annotation.processing.RobolectricProcessor", 49 static_libs: ["libRobolectric_processor_upstream"], 50} 51 52//############################################# 53// Compile Robolectric processor tests 54//############################################# 55java_test_host { 56 name: "Robolectric_processor_tests_upstream", 57 srcs: ["src/test/java/**/*.java"], 58 java_resource_dirs: ["src/test/resources"], 59 java_resources: [":Robolectric_processor_tests_resources_upstream"], 60 static_libs: [ 61 "Robolectric_annotations_upstream", 62 "libRobolectric_processor_upstream", 63 "Robolectric_shadowapi_upstream", 64 "robolectric-javax.annotation-api-1.2", 65 "robolectric-compile-testing-0.19", 66 "mockito", 67 "hamcrest", 68 "guava", 69 "objenesis", 70 "junit", 71 "truth-prebuilt", 72 "gson-prebuilt-jar-2.9.1", 73 "jsr305", 74 ], 75 76 test_suites: ["general-tests"], 77 78 // Disable annotation processing while compiling tests to avoid executing RobolectricProcessor. 79 javacflags: ["-proc:none"], 80 81 // Disabling as javahost test is broken bramble 82 test_options: { 83 unit_test: false, 84 }, 85 86} 87 88// Workaround: java_resource_dirs ignores *.java files 89filegroup { 90 name: "Robolectric_processor_tests_resources_upstream", 91 path: "src/test/resources", 92 srcs: ["src/test/resources/**/*.java"], 93} 94