Merge "Use ro.build.type instead of ro.debuggable" into sc-dev am: 381ed8f9d2
Original change: https://googleplex-android-review.googlesource.com/c/platform/bionic/+/14907816 Change-Id: I42f24a47d09197f640ef1b212214e909d473cd40
This commit is contained in:
commit
d9a8756c70
1 changed files with 9 additions and 6 deletions
|
@ -264,8 +264,11 @@ static void create_ld_config_file(const char* config_file) {
|
|||
#endif
|
||||
|
||||
#if defined(__BIONIC__)
|
||||
static bool is_debuggable_build() {
|
||||
return android::base::GetBoolProperty("ro.debuggable", false);
|
||||
// This test can't rely on ro.debuggable, because it might have been forced on
|
||||
// in a user build ("Force Debuggable"). In that configuration, ro.debuggable is
|
||||
// true, but Bionic's LD_CONFIG_FILE testing support is still disabled.
|
||||
static bool is_user_build() {
|
||||
return android::base::GetProperty("ro.build.type", "user") == std::string("user");
|
||||
}
|
||||
#endif
|
||||
|
||||
|
@ -282,7 +285,7 @@ static bool is_debuggable_build() {
|
|||
TEST(dl, exec_with_ld_config_file) {
|
||||
#if defined(__BIONIC__)
|
||||
SKIP_WITH_HWASAN << "libclang_rt.hwasan is not found with custom ld config";
|
||||
if (!is_debuggable_build()) {
|
||||
if (is_user_build()) {
|
||||
GTEST_SKIP() << "LD_CONFIG_FILE is not supported on user build";
|
||||
}
|
||||
std::string helper = GetTestlibRoot() +
|
||||
|
@ -319,7 +322,7 @@ TEST(dl, exec_with_ld_config_file) {
|
|||
TEST(dl, exec_with_ld_config_file_with_ld_preload) {
|
||||
#if defined(__BIONIC__)
|
||||
SKIP_WITH_HWASAN << "libclang_rt.hwasan is not found with custom ld config";
|
||||
if (!is_debuggable_build()) {
|
||||
if (is_user_build()) {
|
||||
GTEST_SKIP() << "LD_CONFIG_FILE is not supported on user build";
|
||||
}
|
||||
std::string helper = GetTestlibRoot() +
|
||||
|
@ -356,8 +359,8 @@ TEST(dl, disable_ld_config_file) {
|
|||
// This test is only for CTS.
|
||||
GTEST_SKIP() << "test is not supported with root uid";
|
||||
}
|
||||
if (is_debuggable_build()) {
|
||||
GTEST_SKIP() << "test is not supported on debuggable build";
|
||||
if (!is_user_build()) {
|
||||
GTEST_SKIP() << "test requires user build";
|
||||
}
|
||||
|
||||
std::string error_message = std::string("CANNOT LINK EXECUTABLE ") +
|
||||
|
|
Loading…
Reference in a new issue