a0e75045e6
adbd (and its dependencies) are marked as recovery_available:true so that recovery version of the binary is built separately from the one for system partition. This allows us to stop copying the system version to the recovery partition and also opens up the way to enable shared libraries in the recovery partition. Then we can also build adbd as a dynamic executable. Bug: 79146551 Test: m -j adbd.recovery Change-Id: Ib95614c7435f9d0afc02a0c7d5ae1a94e439e32a
213 lines
4.5 KiB
Text
213 lines
4.5 KiB
Text
//
|
|
// Copyright (C) 2014 The Android Open Source Project
|
|
//
|
|
// Licensed under the Apache License, Version 2.0 (the "License");
|
|
// you may not use this file except in compliance with the License.
|
|
// You may obtain a copy of the License at
|
|
//
|
|
// http://www.apache.org/licenses/LICENSE-2.0
|
|
//
|
|
// Unless required by applicable law or agreed to in writing, software
|
|
// distributed under the License is distributed on an "AS IS" BASIS,
|
|
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
// See the License for the specific language governing permissions and
|
|
// limitations under the License.
|
|
//
|
|
|
|
cc_defaults {
|
|
name: "libbacktrace_common",
|
|
|
|
cflags: [
|
|
"-Wall",
|
|
"-Werror",
|
|
],
|
|
|
|
target: {
|
|
darwin: {
|
|
enabled: false,
|
|
},
|
|
},
|
|
|
|
multilib: {
|
|
lib32: {
|
|
suffix: "32",
|
|
},
|
|
lib64: {
|
|
suffix: "64",
|
|
},
|
|
},
|
|
}
|
|
|
|
libbacktrace_sources = [
|
|
"Backtrace.cpp",
|
|
"BacktraceCurrent.cpp",
|
|
"BacktracePtrace.cpp",
|
|
"thread_utils.c",
|
|
"ThreadEntry.cpp",
|
|
"UnwindStack.cpp",
|
|
"UnwindStackMap.cpp",
|
|
]
|
|
|
|
cc_library_headers {
|
|
name: "libbacktrace_headers",
|
|
vendor_available: true,
|
|
recovery_available: true,
|
|
export_include_dirs: ["include"],
|
|
}
|
|
|
|
cc_library {
|
|
name: "libbacktrace",
|
|
vendor_available: false,
|
|
recovery_available: true,
|
|
vndk: {
|
|
enabled: true,
|
|
support_system_process: true,
|
|
},
|
|
defaults: ["libbacktrace_common"],
|
|
host_supported: true,
|
|
|
|
cflags: [
|
|
"-Wexit-time-destructors",
|
|
],
|
|
|
|
srcs: [
|
|
"BacktraceMap.cpp",
|
|
],
|
|
|
|
export_include_dirs: ["include"],
|
|
|
|
target: {
|
|
darwin: {
|
|
enabled: true,
|
|
shared_libs: [
|
|
"libbase",
|
|
],
|
|
},
|
|
linux: {
|
|
srcs: libbacktrace_sources,
|
|
|
|
shared_libs: [
|
|
"libbase",
|
|
"liblog",
|
|
"libunwindstack",
|
|
"libdexfile",
|
|
],
|
|
|
|
static_libs: [
|
|
"libcutils",
|
|
"libprocinfo",
|
|
],
|
|
|
|
// libdexfile will eventually properly export headers, for now
|
|
// include these directly.
|
|
include_dirs: [
|
|
"art/runtime",
|
|
],
|
|
},
|
|
android: {
|
|
static_libs: ["libasync_safe"],
|
|
},
|
|
vendor: {
|
|
cflags: ["-DNO_LIBDEXFILE_SUPPORT"],
|
|
exclude_shared_libs: ["libdexfile"],
|
|
},
|
|
recovery: {
|
|
cflags: ["-DNO_LIBDEXFILE_SUPPORT"],
|
|
exclude_shared_libs: ["libdexfile"],
|
|
},
|
|
},
|
|
whole_static_libs: ["libdemangle"],
|
|
}
|
|
|
|
cc_library_shared {
|
|
name: "libbacktrace_test",
|
|
defaults: ["libbacktrace_common"],
|
|
host_supported: true,
|
|
strip: {
|
|
none: true,
|
|
},
|
|
cflags: ["-O0"],
|
|
srcs: ["backtrace_testlib.cpp"],
|
|
|
|
shared_libs: [
|
|
"libunwindstack",
|
|
],
|
|
}
|
|
|
|
//-------------------------------------------------------------------------
|
|
// The backtrace_test executable.
|
|
//-------------------------------------------------------------------------
|
|
cc_test {
|
|
name: "backtrace_test",
|
|
defaults: ["libbacktrace_common"],
|
|
host_supported: true,
|
|
srcs: [
|
|
"backtrace_offline_test.cpp",
|
|
"backtrace_test.cpp",
|
|
"GetPss.cpp",
|
|
"thread_utils.c",
|
|
],
|
|
|
|
cflags: [
|
|
"-fno-builtin",
|
|
"-O0",
|
|
"-g",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbacktrace_test",
|
|
"libbacktrace",
|
|
"libdexfile",
|
|
"libbase",
|
|
"libcutils",
|
|
"liblog",
|
|
"libunwindstack",
|
|
],
|
|
|
|
group_static_libs: true,
|
|
|
|
target: {
|
|
android: {
|
|
cflags: ["-DENABLE_PSS_TESTS"],
|
|
shared_libs: [
|
|
"libutils",
|
|
],
|
|
},
|
|
linux_glibc: {
|
|
static_libs: ["libutils"],
|
|
},
|
|
},
|
|
|
|
// libdexfile will eventually properly export headers, for now
|
|
// include these directly.
|
|
include_dirs: [
|
|
"art/runtime",
|
|
],
|
|
|
|
test_suites: ["device-tests"],
|
|
data: [
|
|
"testdata/arm/*",
|
|
"testdata/arm64/*",
|
|
"testdata/x86/*",
|
|
"testdata/x86_64/*",
|
|
],
|
|
required: [
|
|
"libbacktrace_test",
|
|
],
|
|
}
|
|
|
|
cc_benchmark {
|
|
name: "backtrace_benchmarks",
|
|
defaults: ["libbacktrace_common"],
|
|
|
|
srcs: [
|
|
"backtrace_benchmarks.cpp",
|
|
"backtrace_read_benchmarks.cpp",
|
|
],
|
|
|
|
shared_libs: [
|
|
"libbacktrace",
|
|
"libbase",
|
|
"libunwindstack",
|
|
],
|
|
}
|