aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel
blob: 1204c4eea0eba0ae2a843c50613853df93651a77 (plain)
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
86
87
88
89
90
91
92
93
94
95
load("//bazel:compat.bzl", "SKIP_ON_WINDOWS")
load("@bazel_skylib//rules:copy_file.bzl", "copy_file")
load("@fmeum_rules_jni//jni:defs.bzl", "java_jni_library")

java_import(
    name = "jazzer_bootstrap_android_import",
    jars = [
        "//src/main/java/com/code_intelligence/jazzer/runtime:jazzer_bootstrap",
    ],
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
)

android_library(
    name = "jazzer_bootstrap_android_lib",
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
    visibility = [
        "//src/main/java/com/code_intelligence/jazzer/agent:__pkg__",
    ],
    exports = [
        ":jazzer_bootstrap_android_import",
    ],
)

android_binary(
    name = "jazzer_bootstrap_android_bin",
    manifest = "//launcher/android:android_manifest",
    min_sdk_version = 26,
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
    deps = [
        ":jazzer_bootstrap_android_lib",
    ],
)

copy_file(
    name = "jazzer_bootstrap_android",
    src = "jazzer_bootstrap_android_bin.apk",
    out = "jazzer_bootstrap_android.jar",
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
    visibility = [
        "//src/main/java/com/code_intelligence/jazzer/agent:__pkg__",
    ],
)

java_jni_library(
    name = "dex_file_manager",
    srcs = ["DexFileManager.java"],
    native_libs = [
        "//src/main/native/com/code_intelligence/jazzer/android:android_native_agent",
    ],
)

android_library(
    name = "jazzer_standalone_library",
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
    exports = [
        "//deploy:jazzer-api",
        "//src/main/java/com/code_intelligence/jazzer:jazzer_import",
    ],
)

android_binary(
    name = "jazzer_standalone_android",
    manifest = "//launcher/android:android_manifest",
    min_sdk_version = 26,
    tags = ["manual"],
    target_compatible_with = SKIP_ON_WINDOWS,
    visibility = [
        "//:__pkg__",
        "//launcher/android:__pkg__",
    ],
    deps = [
        ":dex_file_manager",
        ":jazzer_standalone_library",
    ],
)

java_jni_library(
    name = "android_runtime",
    srcs = ["AndroidRuntime.java"],
    native_libs = ["//src/main/native/com/code_intelligence/jazzer/driver:jazzer_android_tooling"],
    target_compatible_with = SKIP_ON_WINDOWS,
    visibility = [
        "//src/main/java/com/code_intelligence/jazzer:__pkg__",
        "//src/main/java/com/code_intelligence/jazzer/driver:__subpackages__",
        "//src/main/native/com/code_intelligence/jazzer/driver:__subpackages__",
    ],
    deps = [
        "//src/main/java/com/code_intelligence/jazzer/utils:log",
    ],
)