-
Notifications
You must be signed in to change notification settings - Fork 527
/
BUILD.bazel
85 lines (78 loc) · 2.51 KB
/
BUILD.bazel
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
# TODO(#1532): Rename file to 'BUILD' post-Gradle.
# Corresponds to being accessible to all Oppia targets. This should be used for production APIs &
# modules that may be used both in production targets and in tests.
package_group(
name = "oppia_api_visibility",
packages = [
"//...",
],
)
# Corresponds to being accessible to the Oppia binary. This should only be used by production-facing
# modules that must be included in the top-level binary in order for the app to build.
package_group(
name = "oppia_binary_visibility",
packages = [
"//",
],
)
# Corresponds to being accessible to Oppia tests. This should be used by fakes & test-only modules
# that can be included in tests for custom state arrangement or to satisfy upstream/downstream
# dependency requirements for components whose production implementations cannot be used in test
# environments.
# TODO(#2773): Remove the open visibility access granted here & instead restrict this access to only
# test targets.
package_group(
name = "oppia_testing_visibility",
packages = [
"//app/...",
"//data/...",
"//domain/...",
"//instrumentation/...",
"//testing/...",
"//utility/...",
],
)
package_group(
name = "oppia_e2e_testing_visibility",
packages = [
"//instrumentation/...",
],
)
# Special visibility group specific to debug mode. This provides access to the target for both the
# Oppia tests and specific debug only packages.
package_group(
name = "oppia_debug_visibility",
includes = [
":oppia_testing_visibility",
],
packages = [
"//app/src/main/java/org/oppia/android/app/devoptions/...",
],
)
# Special visibility group specific to prod modules. This provides access to the module for both the
# Oppia binary & tests.
package_group(
name = "oppia_prod_module_visibility",
includes = [
":oppia_binary_visibility",
":oppia_testing_visibility",
],
)
# TODO(#1640): Move binary manifest to top-level package post-Gradle.
android_binary(
name = "oppia",
custom_package = "org.oppia.android",
enable_data_binding = True,
manifest = "//app:src/main/AndroidManifest.xml",
manifest_values = {
"applicationId": "org.oppia.android",
"minSdkVersion": "19",
"targetSdkVersion": "29",
"versionCode": "0",
"versionName": "0.1-alpha",
},
multidex = "native", # TODO(#1875): Re-enable legacy for optimized release builds.
deps = [
"//app",
],
)