• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1load("//bazel:compat.bzl", "SKIP_ON_WINDOWS")
2load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
3load("@fmeum_rules_jni//jni:defs.bzl", "java_jni_library")
4
5java_import(
6    name = "jazzer_bootstrap_android_import",
7    jars = [
8        "//src/main/java/com/code_intelligence/jazzer/runtime:jazzer_bootstrap",
9    ],
10    tags = ["manual"],
11    target_compatible_with = SKIP_ON_WINDOWS,
12)
13
14android_library(
15    name = "jazzer_bootstrap_android_lib",
16    tags = ["manual"],
17    target_compatible_with = SKIP_ON_WINDOWS,
18    visibility = [
19        "//src/main/java/com/code_intelligence/jazzer/agent:__pkg__",
20    ],
21    exports = [
22        ":jazzer_bootstrap_android_import",
23    ],
24)
25
26android_binary(
27    name = "jazzer_bootstrap_android_bin",
28    manifest = "//launcher/android:android_manifest",
29    min_sdk_version = 26,
30    tags = ["manual"],
31    target_compatible_with = SKIP_ON_WINDOWS,
32    deps = [
33        ":jazzer_bootstrap_android_lib",
34    ],
35)
36
37copy_file(
38    name = "jazzer_bootstrap_android",
39    src = "jazzer_bootstrap_android_bin.apk",
40    out = "jazzer_bootstrap_android.jar",
41    tags = ["manual"],
42    target_compatible_with = SKIP_ON_WINDOWS,
43    visibility = [
44        "//src/main/java/com/code_intelligence/jazzer/agent:__pkg__",
45    ],
46)
47
48java_jni_library(
49    name = "dex_file_manager",
50    srcs = ["DexFileManager.java"],
51    native_libs = [
52        "//src/main/native/com/code_intelligence/jazzer/android:android_native_agent",
53    ],
54)
55
56android_library(
57    name = "jazzer_standalone_library",
58    tags = ["manual"],
59    target_compatible_with = SKIP_ON_WINDOWS,
60    exports = [
61        "//deploy:jazzer-api",
62        "//src/main/java/com/code_intelligence/jazzer:jazzer_import",
63    ],
64)
65
66android_binary(
67    name = "jazzer_standalone_android",
68    manifest = "//launcher/android:android_manifest",
69    min_sdk_version = 26,
70    tags = ["manual"],
71    target_compatible_with = SKIP_ON_WINDOWS,
72    visibility = [
73        "//:__pkg__",
74        "//launcher/android:__pkg__",
75    ],
76    deps = [
77        ":dex_file_manager",
78        ":jazzer_standalone_library",
79    ],
80)
81
82java_jni_library(
83    name = "android_runtime",
84    srcs = ["AndroidRuntime.java"],
85    native_libs = ["//src/main/native/com/code_intelligence/jazzer/driver:jazzer_android_tooling"],
86    target_compatible_with = SKIP_ON_WINDOWS,
87    visibility = [
88        "//src/main/java/com/code_intelligence/jazzer:__pkg__",
89        "//src/main/java/com/code_intelligence/jazzer/driver:__subpackages__",
90        "//src/main/native/com/code_intelligence/jazzer/driver:__subpackages__",
91    ],
92    deps = [
93        "//src/main/java/com/code_intelligence/jazzer/utils:log",
94    ],
95)
96