blob: f6c76b872d84237cb8732f80d1d4c9f842eeb791 [file] [log] [blame]
load("@rules_android//rules:rules.bzl", "android_library")
load("//tools/adt/idea/studio:studio.bzl", "studio_data")
load("//tools/base/bazel:android.bzl", "ANDROID_COPTS", "ANDROID_LINKOPTS", "android_cc_binary", "dex_library")
cc_library(
name = "screen-sharing-agent_lib",
srcs = glob(["app/src/main/cpp/**/*.cc"]),
hdrs = glob(["app/src/main/cpp/**/*.h"]),
copts = ANDROID_COPTS + [
"-Wno-macro-redefined",
"-D__ANDROID_API__=26",
],
includes = [
"app/src/main/cpp",
],
linkopts = ANDROID_LINKOPTS,
target_compatible_with = ["@platforms//os:android"],
alwayslink = True,
)
cc_binary(
name = "screen-sharing-agent.so",
linkopts = ANDROID_LINKOPTS + [
"-laaudio",
"-landroid",
"-lmediandk",
],
linkshared = True,
stamp = 0,
target_compatible_with = ["@platforms//os:android"],
deps = [
":screen-sharing-agent_lib",
],
)
android_cc_binary(
name = "native",
binary = ":screen-sharing-agent.so",
filename = "libscreen-sharing-agent.so",
target_compatible_with = select({
"@platforms//os:windows": ["@platforms//:incompatible"],
"//conditions:default": [],
}),
visibility = ["//visibility:public"],
)
android_library(
name = "apk_lib",
srcs = glob(
["app/src/main/java/**/*.java"],
exclude = ["app/src/main/java/android/**/*.java"],
),
idl_import_root = "app/src/main/aidl",
idl_srcs = glob(["app/src/main/aidl/**/*.aidl"]),
target_compatible_with = select({
"@platforms//os:windows": ["@platforms//:incompatible"],
"//conditions:default": [],
}),
deps = [
"//prebuilts/studio/sdk:platforms/latest_jar",
"//tools/base/annotations",
],
)
dex_library(
name = "screen-sharing-agent",
flags = ["--min-api 26"],
jars = [
":apk_lib",
],
visibility = ["//visibility:public"],
)
studio_data(
name = "bundle",
files = select({
"@platforms//os:linux": [
"native/arm64-v8a/libscreen-sharing-agent.so",
"native/armeabi-v7a/libscreen-sharing-agent.so",
"native/x86/libscreen-sharing-agent.so",
"native/x86_64/libscreen-sharing-agent.so",
"screen-sharing-agent.jar",
],
"@platforms//os:macos": [
"native/arm64-v8a/libscreen-sharing-agent.so",
"native/armeabi-v7a/libscreen-sharing-agent.so",
"native/x86/libscreen-sharing-agent.so",
"native/x86_64/libscreen-sharing-agent.so",
"screen-sharing-agent.jar",
],
"@platforms//os:windows": [],
}),
mappings = {
"tools/adt/idea/streaming/screen-sharing-agent/native/": "screen-sharing-agent/",
"tools/adt/idea/streaming/screen-sharing-agent/": "screen-sharing-agent/",
},
visibility = ["//visibility:public"],
)