Loading rootdir/Android.mk +10 −9 Original line number Diff line number Diff line Loading @@ -192,11 +192,12 @@ endef # update_and_install_ld_config # ld.config.txt # # For VNDK enforced devices that have defined BOARD_VNDK_VERSION, use # "ld.config.txt.in" as a source file. This configuration includes strict VNDK # run-time restrictions for vendor process. # "ld.config.vndk.txt" as a source file. This configuration includes # strict VNDK run-time restrictions for vendor process. # Other treblized devices, that have not defined BOARD_VNDK_VERSION or that # have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.txt" as a source # file. This configuration does not have strict VNDK run-time restrictions. # have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.vndk_light.txt" # as a source file. This configuration does not have strict VNDK run-time # restrictions. # If the device is not treblized, use "ld.config.legacy.txt" for legacy # namespace configuration. include $(CLEAR_VARS) Loading @@ -216,7 +217,7 @@ ifeq ($(_enforce_vndk_at_runtime),true) LOCAL_MODULE_STEM := $(call append_vndk_version,$(LOCAL_MODULE)) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt.in,\ $(LOCAL_PATH)/etc/ld.config.vndk.txt,\ $(LOCAL_BUILT_MODULE),\ $(PLATFORM_VNDK_VERSION))) Loading @@ -225,7 +226,7 @@ else ifeq ($(PRODUCT_TREBLE_LINKER_NAMESPACES)|$(SANITIZE_TARGET),true|) LOCAL_MODULE_STEM := $(call append_vndk_version,$(LOCAL_MODULE)) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt,\ $(LOCAL_PATH)/etc/ld.config.vndk_light.txt,\ $(LOCAL_BUILT_MODULE),\ $(if $(BOARD_VNDK_VERSION),$(PLATFORM_VNDK_VERSION)))) Loading @@ -244,9 +245,9 @@ _enforce_vndk_at_runtime := # # This file is a temporary configuration file only for GSI. Originally GSI has # BOARD_VNDK_VERSION defined and has strict VNDK enforcing rule based on # "ld.config.txt.in". However for the devices, that have not defined # "ld.config.vndk.txt". However for the devices, that have not defined # BOARD_VNDK_VERSION, GSI provides this configuration file which is based on # "ld.config.txt". # "ld.config.vndk_light.txt". # Do not install this file for the devices other than GSI. include $(CLEAR_VARS) LOCAL_MODULE := ld.config.noenforce.txt Loading @@ -255,7 +256,7 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_ETC) LOCAL_MODULE_STEM := $(LOCAL_MODULE) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt,\ $(LOCAL_PATH)/etc/ld.config.vndk_light.txt,\ $(LOCAL_BUILT_MODULE),\ $(PLATFORM_VNDK_VERSION))) Loading rootdir/etc/ld.config.txt.in→rootdir/etc/ld.config.vndk.txt +0 −0 File moved. View file rootdir/etc/ld.config.txt→rootdir/etc/ld.config.vndk_light.txt +18 −72 Original line number Diff line number Diff line Loading @@ -82,35 +82,10 @@ namespace.sphal.asan.permitted.paths += /vendor/${LIB} # libs listed here can be used. namespace.sphal.links = default,vndk,rs # WARNING: only NDK libs can be listed here. namespace.sphal.link.default.shared_libs = libc.so namespace.sphal.link.default.shared_libs += libEGL.so namespace.sphal.link.default.shared_libs += libGLESv1_CM.so namespace.sphal.link.default.shared_libs += libGLESv2.so namespace.sphal.link.default.shared_libs += libdl.so namespace.sphal.link.default.shared_libs += liblog.so namespace.sphal.link.default.shared_libs += libm.so namespace.sphal.link.default.shared_libs += libnativewindow.so namespace.sphal.link.default.shared_libs += libstdc++.so namespace.sphal.link.default.shared_libs += libsync.so namespace.sphal.link.default.shared_libs += libvndksupport.so namespace.sphal.link.default.shared_libs += libz.so # WARNING: only VNDK-SP libs can be listed here. DO NOT EDIT this line. namespace.sphal.link.vndk.shared_libs = android.hardware.renderscript@1.0.so namespace.sphal.link.vndk.shared_libs += android.hardware.graphics.common@1.0.so namespace.sphal.link.vndk.shared_libs += android.hardware.graphics.mapper@2.0.so namespace.sphal.link.vndk.shared_libs += android.hidl.memory@1.0.so namespace.sphal.link.vndk.shared_libs += libbase.so namespace.sphal.link.vndk.shared_libs += libc++.so namespace.sphal.link.vndk.shared_libs += libcutils.so namespace.sphal.link.vndk.shared_libs += libhardware.so namespace.sphal.link.vndk.shared_libs += libhidlbase.so namespace.sphal.link.vndk.shared_libs += libhidlmemory.so namespace.sphal.link.vndk.shared_libs += libhidltransport.so namespace.sphal.link.vndk.shared_libs += libhwbinder.so namespace.sphal.link.vndk.shared_libs += libion.so namespace.sphal.link.vndk.shared_libs += libutils.so namespace.sphal.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.sphal.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% namespace.sphal.link.vndk.shared_libs = %VNDK_SAMEPROCESS_LIBRARIES% # Renderscript gets separate namespace namespace.sphal.link.rs.shared_libs = libRS_internal.so Loading Loading @@ -155,38 +130,13 @@ namespace.rs.asan.permitted.paths += /data namespace.rs.links = default,vndk namespace.rs.link.default.shared_libs = libc.so namespace.rs.link.default.shared_libs += libEGL.so namespace.rs.link.default.shared_libs += libGLESv1_CM.so namespace.rs.link.default.shared_libs += libGLESv2.so namespace.rs.link.default.shared_libs += libdl.so namespace.rs.link.default.shared_libs += liblog.so namespace.rs.link.default.shared_libs += libm.so namespace.rs.link.default.shared_libs += libnativewindow.so namespace.rs.link.default.shared_libs += libstdc++.so namespace.rs.link.default.shared_libs += libsync.so namespace.rs.link.default.shared_libs += libvndksupport.so namespace.rs.link.default.shared_libs += libz.so # These two libs are private LLNDK libs but are exceptionally visible # in this 'rs' namespace because RenderScript framework libraries # which are loaded into this namespace are using them. namespace.rs.link.default.shared_libs += libft2.so namespace.rs.link.default.shared_libs += libmediandk.so namespace.rs.link.vndk.shared_libs = android.hardware.renderscript@1.0.so namespace.rs.link.vndk.shared_libs += android.hardware.graphics.common@1.0.so namespace.rs.link.vndk.shared_libs += android.hardware.graphics.mapper@2.0.so namespace.rs.link.vndk.shared_libs += android.hidl.memory@1.0.so namespace.rs.link.vndk.shared_libs += libbase.so namespace.rs.link.vndk.shared_libs += libc++.so namespace.rs.link.vndk.shared_libs += libcutils.so namespace.rs.link.vndk.shared_libs += libhardware.so namespace.rs.link.vndk.shared_libs += libhidlbase.so namespace.rs.link.vndk.shared_libs += libhidlmemory.so namespace.rs.link.vndk.shared_libs += libhidltransport.so namespace.rs.link.vndk.shared_libs += libhwbinder.so namespace.rs.link.vndk.shared_libs += libion.so namespace.rs.link.vndk.shared_libs += libutils.so namespace.rs.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.rs.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% # Private LLNDK libs (e.g. libft2.so) are exceptionally allowed to this # namespace because RS framework libs are using them. namespace.rs.link.default.shared_libs += %PRIVATE_LLNDK_LIBRARIES% namespace.rs.link.vndk.shared_libs = %VNDK_SAMEPROCESS_LIBRARIES% ############################################################################### # "vndk" namespace Loading @@ -204,6 +154,8 @@ namespace.vndk.permitted.paths = /odm/${LIB}/hw namespace.vndk.permitted.paths += /odm/${LIB}/egl namespace.vndk.permitted.paths += /vendor/${LIB}/hw namespace.vndk.permitted.paths += /vendor/${LIB}/egl # This is exceptionally required since android.hidl.memory@1.0-impl.so is here namespace.vndk.permitted.paths += /system/${LIB}/vndk-sp%VNDK_VER%/hw namespace.vndk.asan.search.paths = /data/asan/odm/${LIB}/vndk-sp namespace.vndk.asan.search.paths += /odm/${LIB}/vndk-sp Loading @@ -221,21 +173,15 @@ namespace.vndk.asan.permitted.paths += /vendor/${LIB}/hw namespace.vndk.asan.permitted.paths += /data/asan/vendor/${LIB}/egl namespace.vndk.asan.permitted.paths += /vendor/${LIB}/egl namespace.vndk.asan.permitted.paths += /data/asan/system/${LIB}/vndk-sp%VNDK_VER%/hw namespace.vndk.asan.permitted.paths += /system/${LIB}/vndk-sp%VNDK_VER%/hw # When these NDK libs are required inside this namespace, then it is redirected # to the default namespace. This is possible since their ABI is stable across # Android releases. namespace.vndk.links = default namespace.vndk.link.default.shared_libs = android.hidl.memory@1.0-impl.so namespace.vndk.link.default.shared_libs += libEGL.so namespace.vndk.link.default.shared_libs += libc.so namespace.vndk.link.default.shared_libs += libdl.so namespace.vndk.link.default.shared_libs += liblog.so namespace.vndk.link.default.shared_libs += libm.so namespace.vndk.link.default.shared_libs += libnativewindow.so namespace.vndk.link.default.shared_libs += libstdc++.so namespace.vndk.link.default.shared_libs += libsync.so namespace.vndk.link.default.shared_libs += libvndksupport.so namespace.vndk.link.default.shared_libs += libz.so namespace.vndk.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.vndk.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% ############################################################################### # Namespace config for vendor processes. In O, no restriction is enforced for Loading Loading
rootdir/Android.mk +10 −9 Original line number Diff line number Diff line Loading @@ -192,11 +192,12 @@ endef # update_and_install_ld_config # ld.config.txt # # For VNDK enforced devices that have defined BOARD_VNDK_VERSION, use # "ld.config.txt.in" as a source file. This configuration includes strict VNDK # run-time restrictions for vendor process. # "ld.config.vndk.txt" as a source file. This configuration includes # strict VNDK run-time restrictions for vendor process. # Other treblized devices, that have not defined BOARD_VNDK_VERSION or that # have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.txt" as a source # file. This configuration does not have strict VNDK run-time restrictions. # have set BOARD_VNDK_RUNTIME_DISABLE to true, use "ld.config.vndk_light.txt" # as a source file. This configuration does not have strict VNDK run-time # restrictions. # If the device is not treblized, use "ld.config.legacy.txt" for legacy # namespace configuration. include $(CLEAR_VARS) Loading @@ -216,7 +217,7 @@ ifeq ($(_enforce_vndk_at_runtime),true) LOCAL_MODULE_STEM := $(call append_vndk_version,$(LOCAL_MODULE)) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt.in,\ $(LOCAL_PATH)/etc/ld.config.vndk.txt,\ $(LOCAL_BUILT_MODULE),\ $(PLATFORM_VNDK_VERSION))) Loading @@ -225,7 +226,7 @@ else ifeq ($(PRODUCT_TREBLE_LINKER_NAMESPACES)|$(SANITIZE_TARGET),true|) LOCAL_MODULE_STEM := $(call append_vndk_version,$(LOCAL_MODULE)) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt,\ $(LOCAL_PATH)/etc/ld.config.vndk_light.txt,\ $(LOCAL_BUILT_MODULE),\ $(if $(BOARD_VNDK_VERSION),$(PLATFORM_VNDK_VERSION)))) Loading @@ -244,9 +245,9 @@ _enforce_vndk_at_runtime := # # This file is a temporary configuration file only for GSI. Originally GSI has # BOARD_VNDK_VERSION defined and has strict VNDK enforcing rule based on # "ld.config.txt.in". However for the devices, that have not defined # "ld.config.vndk.txt". However for the devices, that have not defined # BOARD_VNDK_VERSION, GSI provides this configuration file which is based on # "ld.config.txt". # "ld.config.vndk_light.txt". # Do not install this file for the devices other than GSI. include $(CLEAR_VARS) LOCAL_MODULE := ld.config.noenforce.txt Loading @@ -255,7 +256,7 @@ LOCAL_MODULE_PATH := $(TARGET_OUT_ETC) LOCAL_MODULE_STEM := $(LOCAL_MODULE) include $(BUILD_SYSTEM)/base_rules.mk $(eval $(call update_and_install_ld_config,\ $(LOCAL_PATH)/etc/ld.config.txt,\ $(LOCAL_PATH)/etc/ld.config.vndk_light.txt,\ $(LOCAL_BUILT_MODULE),\ $(PLATFORM_VNDK_VERSION))) Loading
rootdir/etc/ld.config.txt→rootdir/etc/ld.config.vndk_light.txt +18 −72 Original line number Diff line number Diff line Loading @@ -82,35 +82,10 @@ namespace.sphal.asan.permitted.paths += /vendor/${LIB} # libs listed here can be used. namespace.sphal.links = default,vndk,rs # WARNING: only NDK libs can be listed here. namespace.sphal.link.default.shared_libs = libc.so namespace.sphal.link.default.shared_libs += libEGL.so namespace.sphal.link.default.shared_libs += libGLESv1_CM.so namespace.sphal.link.default.shared_libs += libGLESv2.so namespace.sphal.link.default.shared_libs += libdl.so namespace.sphal.link.default.shared_libs += liblog.so namespace.sphal.link.default.shared_libs += libm.so namespace.sphal.link.default.shared_libs += libnativewindow.so namespace.sphal.link.default.shared_libs += libstdc++.so namespace.sphal.link.default.shared_libs += libsync.so namespace.sphal.link.default.shared_libs += libvndksupport.so namespace.sphal.link.default.shared_libs += libz.so # WARNING: only VNDK-SP libs can be listed here. DO NOT EDIT this line. namespace.sphal.link.vndk.shared_libs = android.hardware.renderscript@1.0.so namespace.sphal.link.vndk.shared_libs += android.hardware.graphics.common@1.0.so namespace.sphal.link.vndk.shared_libs += android.hardware.graphics.mapper@2.0.so namespace.sphal.link.vndk.shared_libs += android.hidl.memory@1.0.so namespace.sphal.link.vndk.shared_libs += libbase.so namespace.sphal.link.vndk.shared_libs += libc++.so namespace.sphal.link.vndk.shared_libs += libcutils.so namespace.sphal.link.vndk.shared_libs += libhardware.so namespace.sphal.link.vndk.shared_libs += libhidlbase.so namespace.sphal.link.vndk.shared_libs += libhidlmemory.so namespace.sphal.link.vndk.shared_libs += libhidltransport.so namespace.sphal.link.vndk.shared_libs += libhwbinder.so namespace.sphal.link.vndk.shared_libs += libion.so namespace.sphal.link.vndk.shared_libs += libutils.so namespace.sphal.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.sphal.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% namespace.sphal.link.vndk.shared_libs = %VNDK_SAMEPROCESS_LIBRARIES% # Renderscript gets separate namespace namespace.sphal.link.rs.shared_libs = libRS_internal.so Loading Loading @@ -155,38 +130,13 @@ namespace.rs.asan.permitted.paths += /data namespace.rs.links = default,vndk namespace.rs.link.default.shared_libs = libc.so namespace.rs.link.default.shared_libs += libEGL.so namespace.rs.link.default.shared_libs += libGLESv1_CM.so namespace.rs.link.default.shared_libs += libGLESv2.so namespace.rs.link.default.shared_libs += libdl.so namespace.rs.link.default.shared_libs += liblog.so namespace.rs.link.default.shared_libs += libm.so namespace.rs.link.default.shared_libs += libnativewindow.so namespace.rs.link.default.shared_libs += libstdc++.so namespace.rs.link.default.shared_libs += libsync.so namespace.rs.link.default.shared_libs += libvndksupport.so namespace.rs.link.default.shared_libs += libz.so # These two libs are private LLNDK libs but are exceptionally visible # in this 'rs' namespace because RenderScript framework libraries # which are loaded into this namespace are using them. namespace.rs.link.default.shared_libs += libft2.so namespace.rs.link.default.shared_libs += libmediandk.so namespace.rs.link.vndk.shared_libs = android.hardware.renderscript@1.0.so namespace.rs.link.vndk.shared_libs += android.hardware.graphics.common@1.0.so namespace.rs.link.vndk.shared_libs += android.hardware.graphics.mapper@2.0.so namespace.rs.link.vndk.shared_libs += android.hidl.memory@1.0.so namespace.rs.link.vndk.shared_libs += libbase.so namespace.rs.link.vndk.shared_libs += libc++.so namespace.rs.link.vndk.shared_libs += libcutils.so namespace.rs.link.vndk.shared_libs += libhardware.so namespace.rs.link.vndk.shared_libs += libhidlbase.so namespace.rs.link.vndk.shared_libs += libhidlmemory.so namespace.rs.link.vndk.shared_libs += libhidltransport.so namespace.rs.link.vndk.shared_libs += libhwbinder.so namespace.rs.link.vndk.shared_libs += libion.so namespace.rs.link.vndk.shared_libs += libutils.so namespace.rs.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.rs.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% # Private LLNDK libs (e.g. libft2.so) are exceptionally allowed to this # namespace because RS framework libs are using them. namespace.rs.link.default.shared_libs += %PRIVATE_LLNDK_LIBRARIES% namespace.rs.link.vndk.shared_libs = %VNDK_SAMEPROCESS_LIBRARIES% ############################################################################### # "vndk" namespace Loading @@ -204,6 +154,8 @@ namespace.vndk.permitted.paths = /odm/${LIB}/hw namespace.vndk.permitted.paths += /odm/${LIB}/egl namespace.vndk.permitted.paths += /vendor/${LIB}/hw namespace.vndk.permitted.paths += /vendor/${LIB}/egl # This is exceptionally required since android.hidl.memory@1.0-impl.so is here namespace.vndk.permitted.paths += /system/${LIB}/vndk-sp%VNDK_VER%/hw namespace.vndk.asan.search.paths = /data/asan/odm/${LIB}/vndk-sp namespace.vndk.asan.search.paths += /odm/${LIB}/vndk-sp Loading @@ -221,21 +173,15 @@ namespace.vndk.asan.permitted.paths += /vendor/${LIB}/hw namespace.vndk.asan.permitted.paths += /data/asan/vendor/${LIB}/egl namespace.vndk.asan.permitted.paths += /vendor/${LIB}/egl namespace.vndk.asan.permitted.paths += /data/asan/system/${LIB}/vndk-sp%VNDK_VER%/hw namespace.vndk.asan.permitted.paths += /system/${LIB}/vndk-sp%VNDK_VER%/hw # When these NDK libs are required inside this namespace, then it is redirected # to the default namespace. This is possible since their ABI is stable across # Android releases. namespace.vndk.links = default namespace.vndk.link.default.shared_libs = android.hidl.memory@1.0-impl.so namespace.vndk.link.default.shared_libs += libEGL.so namespace.vndk.link.default.shared_libs += libc.so namespace.vndk.link.default.shared_libs += libdl.so namespace.vndk.link.default.shared_libs += liblog.so namespace.vndk.link.default.shared_libs += libm.so namespace.vndk.link.default.shared_libs += libnativewindow.so namespace.vndk.link.default.shared_libs += libstdc++.so namespace.vndk.link.default.shared_libs += libsync.so namespace.vndk.link.default.shared_libs += libvndksupport.so namespace.vndk.link.default.shared_libs += libz.so namespace.vndk.link.default.shared_libs = %LLNDK_LIBRARIES% namespace.vndk.link.default.shared_libs += %SANITIZER_RUNTIME_LIBRARIES% ############################################################################### # Namespace config for vendor processes. In O, no restriction is enforced for Loading