diff options
author | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-28 21:19:08 +0000 |
---|---|---|
committer | Android Build Coastguard Worker <android-build-coastguard-worker@google.com> | 2024-02-28 21:19:08 +0000 |
commit | c9808a120d9604e2ff3ffcd6f461e2b8a91d4120 (patch) | |
tree | b56f2709657f5b4aaa51bc93d6583560f91aff08 | |
parent | 0412aa340d964b917d5c973f007ec14049aa5d47 (diff) | |
parent | 18119844192ab0af8f900b8821fedde56f677b29 (diff) | |
download | linkerconfig-simpleperf-release.tar.gz |
Snap for 11510257 from 18119844192ab0af8f900b8821fedde56f677b29 to simpleperf-releasesimpleperf-release
Change-Id: Ie760e109a87b0a1d339c701e989c01aa8d186f47
25 files changed, 87 insertions, 259 deletions
@@ -57,6 +57,14 @@ linker.config.json file is in json format which can contain properties as below. } ``` +### public.libraries.txt + +`linkerconfig` reads both `/system/etc/public.libraries.txt` and `/vendor/etc/public.libraries.txt` to identify +libraries that are provided by APEX and accessible from apps via `libnativeloader`. + +`linkerconfig` generates `apex.libraries.config.txt` file which lists public libraries provided APEX. `libnativeloader`, then, +links those libraries from classloader-namespace to providing APEXes. + ## Outputs ### /linkerconfig/ld.config.txt & /linkerconfig/*/ld.config.txt diff --git a/contents/configuration/baseconfig.cc b/contents/configuration/baseconfig.cc index 727270c..7f6a9c8 100644 --- a/contents/configuration/baseconfig.cc +++ b/contents/configuration/baseconfig.cc @@ -112,7 +112,7 @@ android::linkerconfig::modules::Configuration CreateBaseConfiguration( sections.emplace_back(BuildFuzzSection(ctx)); return android::linkerconfig::modules::Configuration(std::move(sections), - dirToSection); + std::move(dirToSection)); } } // namespace contents } // namespace linkerconfig diff --git a/contents/namespace/sphal.cc b/contents/namespace/sphal.cc index b80ef86..22a0003 100644 --- a/contents/namespace/sphal.cc +++ b/contents/namespace/sphal.cc @@ -51,6 +51,12 @@ Namespace BuildSphalNamespace([[maybe_unused]] const Context& ctx) { ns.AddPermittedPath("/vendor/odm/${LIB}"); ns.AddPermittedPath("/system/vendor/${LIB}"); + // TODO(b/326839235) Remove access to data once renderscript is deprecated. + if (!android::linkerconfig::modules::IsVendorVndkVersionDefined()) { + ns.AddPermittedPath("/data"); + ns.GetLink(ctx.GetSystemNamespaceName()).AddSharedLib("libft2.so"); + } + if (ctx.IsApexBinaryConfig() && !android::linkerconfig::modules::IsTreblelizedDevice()) { // If device is legacy, let Sphal libraries access to system lib path for diff --git a/modules/configuration.cc b/modules/configuration.cc index fdb0d16..4a08844 100644 --- a/modules/configuration.cc +++ b/modules/configuration.cc @@ -24,7 +24,7 @@ namespace android { namespace linkerconfig { namespace modules { -void Configuration::WriteConfig(ConfigWriter& writer) { +void Configuration::WriteConfig(ConfigWriter& writer) const { std::unordered_map<std::string, std::string> resolved_dirs; for (const auto& [dir, section] : dir_to_section_list_) { diff --git a/modules/include/linkerconfig/configuration.h b/modules/include/linkerconfig/configuration.h index e264f99..2e010cb 100644 --- a/modules/include/linkerconfig/configuration.h +++ b/modules/include/linkerconfig/configuration.h @@ -37,7 +37,7 @@ class Configuration { Configuration(const Configuration&) = delete; Configuration(Configuration&&) = default; - void WriteConfig(ConfigWriter& writer); + void WriteConfig(ConfigWriter& writer) const; // For test usage Section* GetSection(const std::string& name); diff --git a/modules/include/linkerconfig/namespace.h b/modules/include/linkerconfig/namespace.h index d8ea9d5..bd6d6f9 100644 --- a/modules/include/linkerconfig/namespace.h +++ b/modules/include/linkerconfig/namespace.h @@ -57,7 +57,7 @@ class Namespace { // it is returned, otherwise one is created and pushed back to tail. Link& GetLink(const std::string& target_namespace); - void WriteConfig(ConfigWriter& writer); + void WriteConfig(ConfigWriter& writer) const; void AddAllowedLib(const std::string& path); std::string GetName() const; @@ -128,7 +128,7 @@ class Namespace { const std::vector<std::string>& path_list); bool RequiresAsanPath(const std::string& path); const std::string CreateAsanPath(const std::string& path); - android::base::Result<void> VerifyContents(); + android::base::Result<void> VerifyContents() const; }; void InitializeWithApex(Namespace& ns, const ApexInfo& apex_info); diff --git a/modules/include/linkerconfig/section.h b/modules/include/linkerconfig/section.h index 730392c..7088e5c 100644 --- a/modules/include/linkerconfig/section.h +++ b/modules/include/linkerconfig/section.h @@ -76,7 +76,7 @@ class Section { Section(const Section&) = delete; Section(Section&&) = default; - void WriteConfig(ConfigWriter& writer); + void WriteConfig(ConfigWriter& writer) const; std::vector<std::string> GetBinaryPaths(); std::string GetName(); diff --git a/modules/namespace.cc b/modules/namespace.cc index bc675db..dd9ae52 100644 --- a/modules/namespace.cc +++ b/modules/namespace.cc @@ -90,7 +90,7 @@ Link& Namespace::GetLink(const std::string& target_namespace) { return links_.emplace_back(name_, target_namespace); } -void Namespace::WriteConfig(ConfigWriter& writer) { +void Namespace::WriteConfig(ConfigWriter& writer) const { auto verify_result = VerifyContents(); if (!verify_result.ok()) { LOG(ERROR) << "Namespace " << name_ @@ -169,7 +169,7 @@ const std::string Namespace::CreateAsanPath(const std::string& path) { return kDataAsanPath + path; } -Result<void> Namespace::VerifyContents() { +Result<void> Namespace::VerifyContents() const { auto apex_with_all_shared_link = VerifyIfApexNamespaceContainsAllSharedLink(*this); if (!apex_with_all_shared_link.ok()) { diff --git a/modules/section.cc b/modules/section.cc index c30f931..35d66b8 100644 --- a/modules/section.cc +++ b/modules/section.cc @@ -33,18 +33,9 @@ namespace android { namespace linkerconfig { namespace modules { -void Section::WriteConfig(ConfigWriter& writer) { +void Section::WriteConfig(ConfigWriter& writer) const { writer.WriteLine("[" + name_ + "]"); - std::sort(namespaces_.begin(), - namespaces_.end(), - [](const auto& lhs, const auto& rhs) -> bool { - // make "default" a smallest one - if (lhs.GetName() == "default") return true; - if (rhs.GetName() == "default") return false; - return lhs.GetName() < rhs.GetName(); - }); - if (namespaces_.size() > 1) { std::vector<std::string> additional_namespaces; for (const auto& ns : namespaces_) { @@ -56,7 +47,7 @@ void Section::WriteConfig(ConfigWriter& writer) { Join(additional_namespaces, ',')); } - for (auto& ns : namespaces_) { + for (const auto& ns : namespaces_) { ns.WriteConfig(writer); } } @@ -160,6 +151,15 @@ void Section::Resolve(const BaseContext& ctx, } iter++; } while (iter != namespaces_.end()); + + std::sort(namespaces_.begin(), + namespaces_.end(), + [](const auto& lhs, const auto& rhs) -> bool { + // make "default" a smallest one + if (lhs.GetName() == "default") return true; + if (rhs.GetName() == "default") return false; + return lhs.GetName() < rhs.GetName(); + }); } Namespace* Section::GetNamespace(const std::string& namespace_name) { diff --git a/testdata/golden_output/deprecate_vndk/com.android.adbd/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.adbd/ld.config.txt index f91e77a..c741be9 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.adbd/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.adbd/ld.config.txt @@ -199,6 +199,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -215,6 +216,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -231,8 +234,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.android.art/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.art/ld.config.txt index a10308c..473fb33 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.art/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.art/ld.config.txt @@ -259,6 +259,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -275,6 +276,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -291,8 +294,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.android.conscrypt/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.conscrypt/ld.config.txt index dde7cc8..be56485 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.conscrypt/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.conscrypt/ld.config.txt @@ -221,6 +221,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -237,6 +238,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -253,8 +256,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.android.media.swcodec/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.media.swcodec/ld.config.txt index e30dfe0..017b0ac 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.media.swcodec/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.media.swcodec/ld.config.txt @@ -220,6 +220,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -236,6 +237,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -252,8 +255,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.android.runtime/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.runtime/ld.config.txt index b601646..80c8f1a 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.runtime/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.runtime/ld.config.txt @@ -203,6 +203,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -219,6 +220,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -235,8 +238,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.android.sdkext/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.android.sdkext/ld.config.txt index 42c2ca9..8ad4d84 100644 --- a/testdata/golden_output/deprecate_vndk/com.android.sdkext/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.android.sdkext/ld.config.txt @@ -220,6 +220,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -236,6 +237,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -252,8 +255,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/com.product.service1/ld.config.txt b/testdata/golden_output/deprecate_vndk/com.product.service1/ld.config.txt index 88a1e0c..c5371e4 100644 --- a/testdata/golden_output/deprecate_vndk/com.product.service1/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/com.product.service1/ld.config.txt @@ -236,6 +236,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -252,6 +253,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -268,8 +271,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = system,com_android_neuralnetworks -namespace.sphal.link.system.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.system.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so namespace.system.isolated = true namespace.system.visible = true diff --git a/testdata/golden_output/deprecate_vndk/ld.config.txt b/testdata/golden_output/deprecate_vndk/ld.config.txt index c8c29be..11ddd72 100644 --- a/testdata/golden_output/deprecate_vndk/ld.config.txt +++ b/testdata/golden_output/deprecate_vndk/ld.config.txt @@ -511,6 +511,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -527,6 +528,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -543,8 +546,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = default,rs,com_android_neuralnetworks -namespace.sphal.link.default.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.default.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.rs.shared_libs = libRS_internal.so namespace.sphal.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so [vendor] @@ -1774,6 +1779,7 @@ namespace.sphal.permitted.paths = /odm/${LIB} namespace.sphal.permitted.paths += /vendor/${LIB} namespace.sphal.permitted.paths += /vendor/odm/${LIB} namespace.sphal.permitted.paths += /system/vendor/${LIB} +namespace.sphal.permitted.paths += /data 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} @@ -1790,6 +1796,8 @@ namespace.sphal.asan.permitted.paths += /data/asan/vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.asan.permitted.paths += /data/asan/system/vendor/${LIB} namespace.sphal.asan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.asan.permitted.paths += /data/asan/data +namespace.sphal.asan.permitted.paths += /data namespace.sphal.hwasan.search.paths = /odm/${LIB}/hwasan namespace.sphal.hwasan.search.paths += /odm/${LIB} namespace.sphal.hwasan.search.paths += /vendor/${LIB}/hwasan @@ -1806,8 +1814,10 @@ namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /vendor/odm/${LIB} namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB}/hwasan namespace.sphal.hwasan.permitted.paths += /system/vendor/${LIB} +namespace.sphal.hwasan.permitted.paths += /data/hwasan +namespace.sphal.hwasan.permitted.paths += /data namespace.sphal.links = default,rs,com_android_neuralnetworks -namespace.sphal.link.default.shared_libs = libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:libft2.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.default.shared_libs = libft2.so:libEGL.so:libGLESv1_CM.so:libGLESv2.so:libGLESv3.so:libRS.so:libandroid_net.so:libbinder_ndk.so:libc.so:libcgrouprc.so:libclang_rt.asan-i686-android.so:libdl.so:liblog.so:libm.so:libmediandk.so:libnativewindow.so:libsync.so:libvndksupport.so:libvulkan.so:libdl_android.so:libclang_rt.asan-arm-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.link.rs.shared_libs = libRS_internal.so namespace.sphal.link.com_android_neuralnetworks.shared_libs = libneuralnetworks.so [postinstall] diff --git a/testmodules/Android.bp b/testmodules/Android.bp deleted file mode 100644 index e69de29..0000000 --- a/testmodules/Android.bp +++ /dev/null diff --git a/testmodules/vndkext/Android.bp b/testmodules/vndkext/Android.bp deleted file mode 100644 index 2c459f9..0000000 --- a/testmodules/vndkext/Android.bp +++ /dev/null @@ -1,82 +0,0 @@ -/* - * 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. - */ - - -package { - default_applicable_licenses: ["Android-Apache-2.0"], -} - -cc_library_shared { - name: "libutils_vendor", - whole_static_libs: ["libutils"], - vendor: true, - vndk: { - enabled: true, - support_system_process: true, - extends: "libutils", - }, - shared_libs: [ - "libcutils", - "libprocessgroup", - "libvndksupport", - "liblog", - // vendor-only lib - "libvendor", - ], -} - -cc_library_shared { - name: "libutils_product", - whole_static_libs: ["libutils"], - product_specific: true, - vndk: { - enabled: true, - support_system_process: true, - extends: "libutils", - }, - shared_libs: [ - "libcutils", - "libprocessgroup", - "libvndksupport", - "liblog", - // product-only libs - "libproduct", - ], -} - -cc_library_shared { - name: "libvendor", - vendor: true, -} - -cc_library_shared { - name: "libproduct", - product_specific: true, -} - -cc_binary { - name: "binvendor", - vendor: true, - srcs: ["hello.cpp"], - shared_libs: ["libutils_vendor"], -} - -cc_binary { - name: "binproduct", - product_specific: true, - srcs: ["hello.cpp"], - shared_libs: ["libutils_product"], -} diff --git a/testmodules/vndkext/HelloActivityProduct/Android.bp b/testmodules/vndkext/HelloActivityProduct/Android.bp deleted file mode 100644 index ea9209c..0000000 --- a/testmodules/vndkext/HelloActivityProduct/Android.bp +++ /dev/null @@ -1,20 +0,0 @@ - -package { - default_applicable_licenses: ["Android-Apache-2.0"], -} - -android_app { - name: "HelloActivityProduct", - srcs: ["src/**/*.java"], - product_specific: true, - sdk_version: "current", - - jni_libs: ["libjni_product"], - jni_uses_platform_apis: true, -} - -cc_library { - name: "libjni_product", - product_specific: true, - shared_libs: ["libutils_product"], -} diff --git a/testmodules/vndkext/HelloActivityProduct/AndroidManifest.xml b/testmodules/vndkext/HelloActivityProduct/AndroidManifest.xml deleted file mode 100644 index a58cb58..0000000 --- a/testmodules/vndkext/HelloActivityProduct/AndroidManifest.xml +++ /dev/null @@ -1,33 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2007 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. ---> - -<!-- Declare the contents of this Android application. The namespace - attribute brings in the Android platform namespace, and the package - supplies a unique name for the application. When writing your - own application, the package name must be changed from "com.example.*" - to come from a domain that you own or have control over. --> -<manifest xmlns:android="http://schemas.android.com/apk/res/android" - package="com.example.android.helloactivity"> - <application android:label="Hello, Activity!"> - <activity android:name=".HelloActivity" - android:exported="true"> - <intent-filter> - <action android:name="android.intent.action.MAIN"/> - <category android:name="android.intent.category.LAUNCHER"/> - </intent-filter> - </activity> - </application> -</manifest> diff --git a/testmodules/vndkext/HelloActivityProduct/res/layout/hello_activity.xml b/testmodules/vndkext/HelloActivityProduct/res/layout/hello_activity.xml deleted file mode 100644 index bab9c9c..0000000 --- a/testmodules/vndkext/HelloActivityProduct/res/layout/hello_activity.xml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2007 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. ---> - -<EditText xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/text" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:textSize="18sp" - android:autoText="true" - android:capitalize="sentences" - android:text="@string/hello_activity_text_text" /> - diff --git a/testmodules/vndkext/HelloActivityProduct/res/values/strings.xml b/testmodules/vndkext/HelloActivityProduct/res/values/strings.xml deleted file mode 100644 index 7eab42c..0000000 --- a/testmodules/vndkext/HelloActivityProduct/res/values/strings.xml +++ /dev/null @@ -1,21 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- Copyright (C) 2007 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. ---> - -<resources> - - <string name="hello_activity_text_text">Hello, World!</string> - -</resources> diff --git a/testmodules/vndkext/HelloActivityProduct/src/com/example/android/helloactivity/HelloActivity.java b/testmodules/vndkext/HelloActivityProduct/src/com/example/android/helloactivity/HelloActivity.java deleted file mode 100644 index 0fdf3a3..0000000 --- a/testmodules/vndkext/HelloActivityProduct/src/com/example/android/helloactivity/HelloActivity.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * 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. - */ - -package com.example.android.helloactivity; - -import android.app.Activity; -import android.os.Bundle; -import android.view.View; -import android.view.WindowManager; - - -/** - * A minimal "Hello, World!" application. - */ -public class HelloActivity extends Activity { - /** - * Called with the activity is first created. - */ - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - - // Set the layout for this activity. You can find it - // in res/layout/hello_activity.xml - View view = getLayoutInflater().inflate(R.layout.hello_activity, null); - setContentView(view); - } - - static { - System.loadLibrary("jni_product"); - } -} diff --git a/testmodules/vndkext/hello.cpp b/testmodules/vndkext/hello.cpp deleted file mode 100644 index 071da07..0000000 --- a/testmodules/vndkext/hello.cpp +++ /dev/null @@ -1,6 +0,0 @@ -#include <iostream> - -int main() { - std::cout << "hello\n"; - return 0; -}
\ No newline at end of file |