diff options
Diffstat (limited to 'src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel')
-rw-r--r-- | src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel | 95 |
1 files changed, 95 insertions, 0 deletions
diff --git a/src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel b/src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel new file mode 100644 index 00000000..1204c4ee --- /dev/null +++ b/src/main/java/com/code_intelligence/jazzer/android/BUILD.bazel @@ -0,0 +1,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", + ], +) |