blob: ca9fe5ea431c824de603523b68dccd510187accf [file] [log] [blame]
package {
// See: http://go/android-license-faq
// A large-scale-change added 'default_applicable_licenses' to import
// all of the 'license_kinds' from "frameworks_native_license"
// to get the below license kinds:
// SPDX-license-identifier-Apache-2.0
default_applicable_licenses: ["frameworks_native_license"],
}
cc_defaults {
name: "gpuservice_defaults",
cflags: [
"-Wall",
"-Werror",
"-Wformat",
"-Wthread-safety",
"-Wunused",
"-Wunreachable-code",
],
}
cc_defaults {
name: "libgpuservice_defaults",
defaults: [
"gpuservice_defaults",
"libgfxstats_deps",
"libgpumem_deps",
"libgpumemtracer_deps",
"libvkjson_deps",
"libvkprofiles_deps",
],
cflags: [
"-DLOG_TAG=\"GpuService\"",
],
shared_libs: [
"libbase",
"libbinder",
"libcutils",
"libgpuwork",
"libgraphicsenv",
"liblog",
"libutils",
],
static_libs: [
"libgfxstats",
"libgpumem",
"libgpumemtracer",
"libserviceutils",
"libvkjson",
"libvkprofiles",
],
export_static_lib_headers: [
"libserviceutils",
],
export_shared_lib_headers: [
"libgraphicsenv",
],
}
cc_defaults {
name: "libgpuservice_production_defaults",
defaults: ["libgpuservice_defaults"],
cflags: [
"-fvisibility=hidden",
],
lto: {
thin: true,
},
whole_program_vtables: true, // Requires ThinLTO
}
filegroup {
name: "libgpuservice_sources",
srcs: [
"GpuService.cpp",
],
}
cc_library_static {
name: "libgpuservice",
defaults: ["libgpuservice_production_defaults"],
export_include_dirs: ["include"],
srcs: [
":libgpuservice_sources",
],
}
cc_defaults {
name: "libgpuservice_binary",
defaults: ["gpuservice_defaults"],
shared_libs: [
"libbinder",
"libcutils",
"liblog",
"libutils",
],
ldflags: ["-Wl,--export-dynamic"],
}
filegroup {
name: "gpuservice_binary_sources",
srcs: ["main_gpuservice.cpp"],
}
cc_binary {
name: "gpuservice",
defaults: [
"libgpuservice_binary",
"libgpuservice_production_defaults",
],
init_rc: ["gpuservice.rc"],
required: [
"bpfloader",
"gpuMem.o",
],
srcs: [":gpuservice_binary_sources"],
static_libs: [
"libgpuservice",
],
}