From 71b4bf30cf4015a2a89a3a8595ba659f3ffcc5e4 Mon Sep 17 00:00:00 2001 From: Jooyung Han Date: Thu, 2 Apr 2020 15:40:41 +0900 Subject: [PATCH] Add legacy test configuration And deprecated --legacy option. Instead, to run linkerconfig with legacy mode, run it without -v option. (-v is for setting vndk version). For example, $ linkerconfig -r -t Legacy mode: ro.vndk.version is not set and VNDK is not available. but other apexes are available. Bug: 140599044 Test: ./rundiff.sh Change-Id: I81cba2d6c6466737fcb4dd33407837b016c42b78 --- main.cc | 19 +-- prepare_root.sh | 28 ++++ rundiff.sh | 4 + .../legacy/com.android.adbd/ld.config.txt | 69 +++++++++ .../legacy/com.android.art/ld.config.txt | 91 +++++++++++ .../legacy/com.android.conscrypt/ld.config.txt | 84 ++++++++++ .../legacy/com.android.media.swcodec/ld.config.txt | 108 +++++++++++++ .../legacy/com.android.runtime/ld.config.txt | 80 ++++++++++ .../legacy/com.android.sdkext/ld.config.txt | 79 ++++++++++ testdata/golden_output/legacy/jni.config.txt | 1 + testdata/golden_output/legacy/ld.config.txt | 169 +++++++++++++++++++++ 11 files changed, 714 insertions(+), 18 deletions(-) create mode 100755 prepare_root.sh create mode 100644 testdata/golden_output/legacy/com.android.adbd/ld.config.txt create mode 100644 testdata/golden_output/legacy/com.android.art/ld.config.txt create mode 100644 testdata/golden_output/legacy/com.android.conscrypt/ld.config.txt create mode 100644 testdata/golden_output/legacy/com.android.media.swcodec/ld.config.txt create mode 100644 testdata/golden_output/legacy/com.android.runtime/ld.config.txt create mode 100644 testdata/golden_output/legacy/com.android.sdkext/ld.config.txt create mode 100644 testdata/golden_output/legacy/jni.config.txt create mode 100644 testdata/golden_output/legacy/ld.config.txt diff --git a/main.cc b/main.cc index 0e2f009..db59dff 100644 --- a/main.cc +++ b/main.cc @@ -60,7 +60,6 @@ const static struct option program_options[] = { {"vndk_lite", no_argument, 0, 'e'}, {"product_vndk", required_argument, 0, 'p'}, {"recovery", no_argument, 0, 'y'}, - {"legacy", no_argument, 0, 'l'}, #endif {"help", no_argument, 0, 'h'}, {0, 0, 0, 0}}; @@ -73,7 +72,6 @@ struct ProgramArgs { bool vndk_lite; std::string product_vndk_version; bool is_recovery; - bool is_legacy; }; [[noreturn]] void PrintUsage(int status = EXIT_SUCCESS) { @@ -85,7 +83,6 @@ struct ProgramArgs { " --vndk_lite" " --product_vndk " " --recovery" - " --legacy" #endif " [--help]" << std::endl; @@ -126,9 +123,6 @@ bool ParseArgs(int argc, char* argv[], ProgramArgs* args) { case 'y': args->is_recovery = true; break; - case 'l': - args->is_legacy = true; - break; case 'h': PrintUsage(); default: @@ -145,7 +139,7 @@ bool ParseArgs(int argc, char* argv[], ProgramArgs* args) { void LoadVariables(ProgramArgs args) { #ifndef __ANDROID__ - if (!args.is_recovery && (args.root == "" || args.vndk_version == "")) { + if (!args.is_recovery && args.root == "") { PrintUsage(); } android::linkerconfig::modules::Variables::AddValue("ro.vndk.version", @@ -156,7 +150,6 @@ void LoadVariables(ProgramArgs args) { android::linkerconfig::modules::Variables::AddValue("ro.vndk.lite", "true"); } #endif - if (!args.is_recovery) { android::linkerconfig::generator::LoadVariables(args.root); } @@ -258,14 +251,6 @@ Result GenerateRecoveryLinkerConfiguration(Context& ctx, false); } -Result GenerateLegacyLinkerConfiguration(Context& ctx, - const std::string& dir_path) { - return GenerateConfiguration( - android::linkerconfig::contents::CreateLegacyConfiguration(ctx), - dir_path, - false); -} - Result GenerateApexConfiguration( const std::string& base_dir, android::linkerconfig::contents::Context& ctx, const android::linkerconfig::modules::ApexInfo& target_apex) { @@ -353,8 +338,6 @@ int main(int argc, char* argv[]) { if (args.is_recovery) { ExitOnFailure( GenerateRecoveryLinkerConfiguration(ctx, args.target_directory)); - } else if (args.is_legacy) { - ExitOnFailure(GenerateLegacyLinkerConfiguration(ctx, args.target_directory)); } else { ExitOnFailure(GenerateBaseLinkerConfiguration(ctx, args.target_directory)); GenerateApexConfigurations(ctx, args.target_directory); diff --git a/prepare_root.sh b/prepare_root.sh new file mode 100755 index 0000000..821d2ca --- /dev/null +++ b/prepare_root.sh @@ -0,0 +1,28 @@ +#!/bin/bash + +# Copyright (C) 2020 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. + +set -e + +ROOT_OUT=$(realpath $(pwd)/$1) + +# to use relative paths +cd $(dirname $0) + +rm -iRf $ROOT_OUT +mkdir -p $ROOT_OUT +cp -R ./testdata/root/* $ROOT_OUT +find $ROOT_OUT -name apex_manifest.json -exec sh -c '$2 proto $1 -o ${1%.json}.pb' sh {} conv_apex_manifest \; +find $ROOT_OUT -name apex_manifest.json -exec sh -c 'mkdir `dirname $1`/lib' sh {} \; diff --git a/rundiff.sh b/rundiff.sh index 6625d4f..33e954c 100755 --- a/rundiff.sh +++ b/rundiff.sh @@ -80,6 +80,10 @@ function run_linkerconfig_to { mkdir -p $1/vndk-lite linkerconfig -v R -e -r $TMP_ROOT -t $1/vndk-lite + rm -iRf $TMP_ROOT/apex/com.android.vndk.vR + mkdir -p $1/legacy + linkerconfig -r $TMP_ROOT -t $1/legacy + # clean up testdata root rm -rf $TMP_ROOT } diff --git a/testdata/golden_output/legacy/com.android.adbd/ld.config.txt b/testdata/golden_output/legacy/com.android.adbd/ld.config.txt new file mode 100644 index 0000000..f2ca95b --- /dev/null +++ b/testdata/golden_output/legacy/com.android.adbd/ld.config.txt @@ -0,0 +1,69 @@ +dir.com.android.adbd = /apex/com.android.adbd/bin +[com.android.adbd] +additional.namespaces = com_android_art,com_android_neuralnetworks,system +namespace.default.isolated = true +namespace.default.search.paths = /apex/com.android.adbd/${LIB} +namespace.default.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.default.permitted.paths += /system/${LIB} +namespace.default.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.default.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.default.asan.permitted.paths += /system/${LIB} +namespace.default.links = system +namespace.default.link.system.shared_libs = libadbd_auth.so +namespace.default.link.system.shared_libs += libc.so +namespace.default.link.system.shared_libs += libdl.so +namespace.default.link.system.shared_libs += liblog.so +namespace.default.link.system.shared_libs += libm.so +namespace.default.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.default.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,default,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.default.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/com.android.art/ld.config.txt b/testdata/golden_output/legacy/com.android.art/ld.config.txt new file mode 100644 index 0000000..7007a32 --- /dev/null +++ b/testdata/golden_output/legacy/com.android.art/ld.config.txt @@ -0,0 +1,91 @@ +dir.com.android.art = /apex/com.android.art/bin +[com.android.art] +additional.namespaces = com_android_adbd,com_android_art,com_android_conscrypt,com_android_neuralnetworks,system +namespace.default.isolated = true +namespace.default.links = com_android_art,system,com_android_adbd +namespace.default.link.com_android_art.allow_all_shared_libs = true +namespace.default.link.system.allow_all_shared_libs = true +namespace.default.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = system +namespace.com_android_adbd.link.system.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.system.shared_libs += libc.so +namespace.com_android_adbd.link.system.shared_libs += libdl.so +namespace.com_android_adbd.link.system.shared_libs += liblog.so +namespace.com_android_adbd.link.system.shared_libs += libm.so +namespace.com_android_adbd.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_conscrypt.isolated = true +namespace.com_android_conscrypt.visible = true +namespace.com_android_conscrypt.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.permitted.paths += /system/${LIB} +namespace.com_android_conscrypt.asan.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.asan.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.asan.permitted.paths += /system/${LIB} +namespace.com_android_conscrypt.links = com_android_art,system +namespace.com_android_conscrypt.link.com_android_art.shared_libs = libandroidio.so +namespace.com_android_conscrypt.link.system.shared_libs = libc.so +namespace.com_android_conscrypt.link.system.shared_libs += libdl.so +namespace.com_android_conscrypt.link.system.shared_libs += liblog.so +namespace.com_android_conscrypt.link.system.shared_libs += libm.so +namespace.com_android_conscrypt.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_conscrypt.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.visible = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/com.android.conscrypt/ld.config.txt b/testdata/golden_output/legacy/com.android.conscrypt/ld.config.txt new file mode 100644 index 0000000..e5e18d6 --- /dev/null +++ b/testdata/golden_output/legacy/com.android.conscrypt/ld.config.txt @@ -0,0 +1,84 @@ +dir.com.android.conscrypt = /apex/com.android.conscrypt/bin +[com.android.conscrypt] +additional.namespaces = com_android_adbd,com_android_art,com_android_neuralnetworks,system +namespace.default.isolated = true +namespace.default.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.default.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.default.permitted.paths += /system/${LIB} +namespace.default.asan.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.default.asan.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.default.asan.permitted.paths += /system/${LIB} +namespace.default.links = com_android_art,system +namespace.default.link.com_android_art.shared_libs = libandroidio.so +namespace.default.link.system.shared_libs = libc.so +namespace.default.link.system.shared_libs += libdl.so +namespace.default.link.system.shared_libs += liblog.so +namespace.default.link.system.shared_libs += libm.so +namespace.default.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.default.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = system +namespace.com_android_adbd.link.system.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.system.shared_libs += libc.so +namespace.com_android_adbd.link.system.shared_libs += libdl.so +namespace.com_android_adbd.link.system.shared_libs += liblog.so +namespace.com_android_adbd.link.system.shared_libs += libm.so +namespace.com_android_adbd.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/com.android.media.swcodec/ld.config.txt b/testdata/golden_output/legacy/com.android.media.swcodec/ld.config.txt new file mode 100644 index 0000000..885e300 --- /dev/null +++ b/testdata/golden_output/legacy/com.android.media.swcodec/ld.config.txt @@ -0,0 +1,108 @@ +dir.com.android.media.swcodec = /apex/com.android.media.swcodec/bin +[com.android.media.swcodec] +additional.namespaces = com_android_adbd,com_android_art,com_android_neuralnetworks,sphal,system +namespace.default.isolated = true +namespace.default.search.paths = /apex/com.android.media.swcodec/${LIB} +namespace.default.permitted.paths = /apex/com.android.media.swcodec/${LIB} +namespace.default.permitted.paths += /system/${LIB} +namespace.default.asan.search.paths = /apex/com.android.media.swcodec/${LIB} +namespace.default.asan.permitted.paths = /apex/com.android.media.swcodec/${LIB} +namespace.default.asan.permitted.paths += /system/${LIB} +namespace.default.links = system +namespace.default.link.system.shared_libs = libEGL.so +namespace.default.link.system.shared_libs += libc.so +namespace.default.link.system.shared_libs += libcgrouprc.so +namespace.default.link.system.shared_libs += libdl.so +namespace.default.link.system.shared_libs += liblog.so +namespace.default.link.system.shared_libs += libm.so +namespace.default.link.system.shared_libs += libnativewindow.so +namespace.default.link.system.shared_libs += libsync.so +namespace.default.link.system.shared_libs += libvndksupport.so +namespace.default.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.default.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = system +namespace.com_android_adbd.link.system.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.system.shared_libs += libc.so +namespace.com_android_adbd.link.system.shared_libs += libdl.so +namespace.com_android_adbd.link.system.shared_libs += liblog.so +namespace.com_android_adbd.link.system.shared_libs += libm.so +namespace.com_android_adbd.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.sphal.isolated = true +namespace.sphal.visible = true +namespace.sphal.search.paths = /odm/${LIB} +namespace.sphal.search.paths += /vendor/${LIB} +namespace.sphal.search.paths += /vendor/${LIB}/hw +namespace.sphal.permitted.paths = /odm/${LIB} +namespace.sphal.permitted.paths += /vendor/${LIB} +namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.search.paths = /data/asan/odm/${LIB} +namespace.sphal.asan.search.paths += /odm/${LIB} +namespace.sphal.asan.search.paths += /data/asan/vendor/${LIB} +namespace.sphal.asan.search.paths += /vendor/${LIB} +namespace.sphal.asan.permitted.paths = /data/asan/odm/${LIB} +namespace.sphal.asan.permitted.paths += /odm/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /vendor/${LIB} +namespace.sphal.links = system +namespace.sphal.link.system.shared_libs = libz.so +namespace.sphal.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.sphal.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/com.android.runtime/ld.config.txt b/testdata/golden_output/legacy/com.android.runtime/ld.config.txt new file mode 100644 index 0000000..a8d9c2e --- /dev/null +++ b/testdata/golden_output/legacy/com.android.runtime/ld.config.txt @@ -0,0 +1,80 @@ +dir.com.android.runtime = /apex/com.android.runtime/bin +[com.android.runtime] +additional.namespaces = com_android_adbd,com_android_art,com_android_neuralnetworks,system +namespace.default.isolated = true +namespace.default.search.paths = /apex/com.android.runtime/${LIB} +namespace.default.permitted.paths = /apex/com.android.runtime/${LIB} +namespace.default.permitted.paths += /system/${LIB} +namespace.default.asan.search.paths = /apex/com.android.runtime/${LIB} +namespace.default.asan.permitted.paths = /apex/com.android.runtime/${LIB} +namespace.default.asan.permitted.paths += /system/${LIB} +namespace.default.links = system +namespace.default.link.system.shared_libs = liblog.so +namespace.default.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.default.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = system +namespace.com_android_adbd.link.system.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.system.shared_libs += libc.so +namespace.com_android_adbd.link.system.shared_libs += libdl.so +namespace.com_android_adbd.link.system.shared_libs += liblog.so +namespace.com_android_adbd.link.system.shared_libs += libm.so +namespace.com_android_adbd.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/com.android.sdkext/ld.config.txt b/testdata/golden_output/legacy/com.android.sdkext/ld.config.txt new file mode 100644 index 0000000..4bd62b9 --- /dev/null +++ b/testdata/golden_output/legacy/com.android.sdkext/ld.config.txt @@ -0,0 +1,79 @@ +dir.com.android.sdkext = /apex/com.android.sdkext/bin +[com.android.sdkext] +additional.namespaces = com_android_adbd,com_android_art,com_android_neuralnetworks,system +namespace.default.isolated = true +namespace.default.search.paths = /apex/com.android.sdkext/${LIB} +namespace.default.permitted.paths = /apex/com.android.sdkext/${LIB} +namespace.default.permitted.paths += /system/${LIB} +namespace.default.asan.search.paths = /apex/com.android.sdkext/${LIB} +namespace.default.asan.permitted.paths = /apex/com.android.sdkext/${LIB} +namespace.default.asan.permitted.paths += /system/${LIB} +namespace.default.links = system +namespace.default.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.default.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = system +namespace.com_android_adbd.link.system.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.system.shared_libs += libc.so +namespace.com_android_adbd.link.system.shared_libs += libdl.so +namespace.com_android_adbd.link.system.shared_libs += liblog.so +namespace.com_android_adbd.link.system.shared_libs += libm.so +namespace.com_android_adbd.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /data +namespace.com_android_art.permitted.paths += /system/framework +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /data +namespace.com_android_art.asan.permitted.paths += /system/framework +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = system,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.system.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = system +namespace.com_android_neuralnetworks.link.system.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.system.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.system.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.system.isolated = true +namespace.system.visible = true +namespace.system.search.paths = /system/${LIB} +namespace.system.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.asan.search.paths = /data/asan/system/${LIB} +namespace.system.asan.search.paths += /system/${LIB} +namespace.system.asan.permitted.paths = /apex/com.android.runtime/${LIB}/bionic +namespace.system.links = com_android_art +namespace.system.link.com_android_art.shared_libs = libandroidicu.so +namespace.system.link.com_android_art.shared_libs += libdexfile_external.so +namespace.system.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.system.link.com_android_art.shared_libs += libnativebridge.so +namespace.system.link.com_android_art.shared_libs += libnativehelper.so +namespace.system.link.com_android_art.shared_libs += libnativeloader.so +namespace.system.link.com_android_art.shared_libs += libpac.so diff --git a/testdata/golden_output/legacy/jni.config.txt b/testdata/golden_output/legacy/jni.config.txt new file mode 100644 index 0000000..c44e11f --- /dev/null +++ b/testdata/golden_output/legacy/jni.config.txt @@ -0,0 +1 @@ +com_android_cronet libcronet.80.0.3986.0.so diff --git a/testdata/golden_output/legacy/ld.config.txt b/testdata/golden_output/legacy/ld.config.txt new file mode 100644 index 0000000..a53b874 --- /dev/null +++ b/testdata/golden_output/legacy/ld.config.txt @@ -0,0 +1,169 @@ +dir.legacy = /system +dir.legacy = /system_ext +dir.legacy = /product +dir.legacy = /vendor +dir.legacy = /odm +dir.legacy = /sbin +dir.postinstall = /postinstall +dir.legacy = /data +[legacy] +additional.namespaces = com_android_adbd,com_android_art,com_android_conscrypt,com_android_cronet,com_android_media,com_android_neuralnetworks,com_android_resolv,com_android_runtime +namespace.default.isolated = false +namespace.default.visible = true +namespace.default.search.paths = /system/${LIB} +namespace.default.search.paths += /system_ext/${LIB} +namespace.default.search.paths += /product/${LIB} +namespace.default.search.paths += /vendor/${LIB} +namespace.default.search.paths += /odm/${LIB} +namespace.default.asan.search.paths = /data/asan/system/${LIB} +namespace.default.asan.search.paths += /system/${LIB} +namespace.default.asan.search.paths += /data/asan/system_ext/${LIB} +namespace.default.asan.search.paths += /system_ext/${LIB} +namespace.default.asan.search.paths += /data/asan/product/${LIB} +namespace.default.asan.search.paths += /product/${LIB} +namespace.default.asan.search.paths += /data/asan/vendor/${LIB} +namespace.default.asan.search.paths += /vendor/${LIB} +namespace.default.asan.search.paths += /data/asan/odm/${LIB} +namespace.default.asan.search.paths += /odm/${LIB} +namespace.default.links = com_android_art,com_android_resolv,com_android_neuralnetworks +namespace.default.link.com_android_art.shared_libs = libandroidicu.so +namespace.default.link.com_android_art.shared_libs += libdexfile_external.so +namespace.default.link.com_android_art.shared_libs += libdexfiled_external.so +namespace.default.link.com_android_art.shared_libs += libicui18n.so +namespace.default.link.com_android_art.shared_libs += libicuuc.so +namespace.default.link.com_android_art.shared_libs += libnativebridge.so +namespace.default.link.com_android_art.shared_libs += libnativehelper.so +namespace.default.link.com_android_art.shared_libs += libnativeloader.so +namespace.default.link.com_android_art.shared_libs += libpac.so +namespace.default.link.com_android_resolv.shared_libs = libnetd_resolv.so +namespace.default.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_adbd.isolated = true +namespace.com_android_adbd.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.permitted.paths += /system/${LIB} +namespace.com_android_adbd.asan.search.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths = /apex/com.android.adbd/${LIB} +namespace.com_android_adbd.asan.permitted.paths += /system/${LIB} +namespace.com_android_adbd.links = default +namespace.com_android_adbd.link.default.shared_libs = libadbd_auth.so +namespace.com_android_adbd.link.default.shared_libs += libc.so +namespace.com_android_adbd.link.default.shared_libs += libdl.so +namespace.com_android_adbd.link.default.shared_libs += liblog.so +namespace.com_android_adbd.link.default.shared_libs += libm.so +namespace.com_android_adbd.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_adbd.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_art.isolated = true +namespace.com_android_art.visible = true +namespace.com_android_art.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.permitted.paths += /system/${LIB} +namespace.com_android_art.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.asan.search.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths = /apex/com.android.art/${LIB} +namespace.com_android_art.asan.permitted.paths += /system/${LIB} +namespace.com_android_art.asan.permitted.paths += /apex/com.android.art/javalib +namespace.com_android_art.links = default,com_android_adbd,com_android_neuralnetworks +namespace.com_android_art.link.default.allow_all_shared_libs = true +namespace.com_android_art.link.com_android_adbd.shared_libs = libadbconnection_client.so +namespace.com_android_art.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so +namespace.com_android_conscrypt.isolated = true +namespace.com_android_conscrypt.visible = true +namespace.com_android_conscrypt.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.permitted.paths += /system/${LIB} +namespace.com_android_conscrypt.asan.search.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.asan.permitted.paths = /apex/com.android.conscrypt/${LIB} +namespace.com_android_conscrypt.asan.permitted.paths += /system/${LIB} +namespace.com_android_conscrypt.links = com_android_art,default +namespace.com_android_conscrypt.link.com_android_art.shared_libs = libandroidio.so +namespace.com_android_conscrypt.link.default.shared_libs = libc.so +namespace.com_android_conscrypt.link.default.shared_libs += libdl.so +namespace.com_android_conscrypt.link.default.shared_libs += liblog.so +namespace.com_android_conscrypt.link.default.shared_libs += libm.so +namespace.com_android_conscrypt.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_conscrypt.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_cronet.isolated = true +namespace.com_android_cronet.visible = true +namespace.com_android_cronet.search.paths = /apex/com.android.cronet/${LIB} +namespace.com_android_cronet.permitted.paths = /apex/com.android.cronet/${LIB} +namespace.com_android_cronet.permitted.paths += /system/${LIB} +namespace.com_android_cronet.asan.search.paths = /apex/com.android.cronet/${LIB} +namespace.com_android_cronet.asan.permitted.paths = /apex/com.android.cronet/${LIB} +namespace.com_android_cronet.asan.permitted.paths += /system/${LIB} +namespace.com_android_cronet.links = default +namespace.com_android_cronet.link.default.shared_libs = libandroid.so +namespace.com_android_cronet.link.default.shared_libs += libc.so +namespace.com_android_cronet.link.default.shared_libs += libdl.so +namespace.com_android_cronet.link.default.shared_libs += liblog.so +namespace.com_android_cronet.link.default.shared_libs += libm.so +namespace.com_android_cronet.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_cronet.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_media.isolated = true +namespace.com_android_media.visible = true +namespace.com_android_media.search.paths = /apex/com.android.media/${LIB} +namespace.com_android_media.permitted.paths = /apex/com.android.media/${LIB} +namespace.com_android_media.permitted.paths += /system/${LIB} +namespace.com_android_media.asan.search.paths = /apex/com.android.media/${LIB} +namespace.com_android_media.asan.permitted.paths = /apex/com.android.media/${LIB} +namespace.com_android_media.asan.permitted.paths += /system/${LIB} +namespace.com_android_media.links = default +namespace.com_android_media.link.default.shared_libs = libbinder_ndk.so +namespace.com_android_media.link.default.shared_libs += libc.so +namespace.com_android_media.link.default.shared_libs += libcgrouprc.so +namespace.com_android_media.link.default.shared_libs += libdl.so +namespace.com_android_media.link.default.shared_libs += liblog.so +namespace.com_android_media.link.default.shared_libs += libm.so +namespace.com_android_media.link.default.shared_libs += libmediandk.so +namespace.com_android_media.link.default.shared_libs += libvndksupport.so +namespace.com_android_media.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_media.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_neuralnetworks.isolated = true +namespace.com_android_neuralnetworks.visible = true +namespace.com_android_neuralnetworks.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.asan.search.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths = /apex/com.android.neuralnetworks/${LIB} +namespace.com_android_neuralnetworks.asan.permitted.paths += /system/${LIB} +namespace.com_android_neuralnetworks.links = default +namespace.com_android_neuralnetworks.link.default.shared_libs = libc.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libcgrouprc.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libdl.so +namespace.com_android_neuralnetworks.link.default.shared_libs += liblog.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libm.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libnativewindow.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libneuralnetworks_packageinfo.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libvndksupport.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_neuralnetworks.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_resolv.isolated = true +namespace.com_android_resolv.search.paths = /apex/com.android.resolv/${LIB} +namespace.com_android_resolv.permitted.paths = /apex/com.android.resolv/${LIB} +namespace.com_android_resolv.permitted.paths += /system/${LIB} +namespace.com_android_resolv.asan.search.paths = /apex/com.android.resolv/${LIB} +namespace.com_android_resolv.asan.permitted.paths = /apex/com.android.resolv/${LIB} +namespace.com_android_resolv.asan.permitted.paths += /system/${LIB} +namespace.com_android_resolv.links = default +namespace.com_android_resolv.link.default.shared_libs = libbinder_ndk.so +namespace.com_android_resolv.link.default.shared_libs += libc.so +namespace.com_android_resolv.link.default.shared_libs += libdl.so +namespace.com_android_resolv.link.default.shared_libs += libm.so +namespace.com_android_resolv.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_resolv.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +namespace.com_android_runtime.isolated = true +namespace.com_android_runtime.visible = true +namespace.com_android_runtime.search.paths = /apex/com.android.runtime/${LIB} +namespace.com_android_runtime.permitted.paths = /apex/com.android.runtime/${LIB} +namespace.com_android_runtime.permitted.paths += /system/${LIB} +namespace.com_android_runtime.asan.search.paths = /apex/com.android.runtime/${LIB} +namespace.com_android_runtime.asan.permitted.paths = /apex/com.android.runtime/${LIB} +namespace.com_android_runtime.asan.permitted.paths += /system/${LIB} +namespace.com_android_runtime.links = default +namespace.com_android_runtime.link.default.shared_libs = liblog.so +namespace.com_android_runtime.link.default.shared_libs += libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libaaudio.so:libadbd_auth.so:libadbd_fs.so:libandroid.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.asan-x86_64-android.so:libdl.so:libdl_android.so:libft2.so:libincident.so:liblog.so:libm.so:libmediametrics.so:libmediandk.so:libnativewindow.so:libneuralnetworks_packageinfo.so:libsync.so:libvndksupport.so:libvulkan.so:libselinux.so +namespace.com_android_runtime.link.default.shared_libs += libclang_rt.asan-arm-android.so:libclang_rt.asan-i686-android.so:libclang_rt.hwasan-arm-android.so:libclang_rt.hwasan-i686-android.so:libclang_rt.tsan-arm-android.so:libclang_rt.tsan-i686-android.so:libclang_rt.ubsan_standalone-arm-android.so:libclang_rt.ubsan_standalone-i686-android.so +[postinstall] +namespace.default.isolated = false +namespace.default.search.paths = /system/${LIB} +namespace.default.search.paths += /system_ext/${LIB} +namespace.default.search.paths += /product/${LIB} -- 2.11.0