forked from openkylin/platform_build
Add system shared libs to a prebuilt_internal.mk path
This commit adds LOCAL_SYSTEM_SHARED_LIBRARIES to a `prebuilt_internal.mk` path. Before this commit, LOCAL_SYSTEM_SHARED_LIBRARIES is only supported when LOCAL_STRIP_MODULE is specified. If LOCAL_STRIP_MODULE is not specified, default system shared libs (libc, libdl, and libm) are not added implicitly. This commit makes both paths have the same behavior. See also. https://android-review.googlesource.com/814993 Bug: 119086738 Test: CHECK_ELF_FILES=true make -j check-elf-files Change-Id: I84ff9f6157ad6e5ee26234133fb7148a3e2b9551
This commit is contained in:
parent
59fa4ca993
commit
3291184ab6
|
@ -174,8 +174,26 @@ include $(BUILD_SYSTEM)/check_elf_file.mk
|
|||
# The real dependency will be added after all Android.mks are loaded and the install paths
|
||||
# of the shared libraries are determined.
|
||||
ifdef LOCAL_INSTALLED_MODULE
|
||||
ifdef LOCAL_SHARED_LIBRARIES
|
||||
my_shared_libraries := $(LOCAL_SHARED_LIBRARIES)
|
||||
ifdef LOCAL_IS_HOST_MODULE
|
||||
ifeq ($(LOCAL_SYSTEM_SHARED_LIBRARIES),none)
|
||||
my_system_shared_libraries :=
|
||||
else
|
||||
my_system_shared_libraries := $(LOCAL_SYSTEM_SHARED_LIBRARIES)
|
||||
endif
|
||||
else
|
||||
ifeq ($(LOCAL_SYSTEM_SHARED_LIBRARIES),none)
|
||||
my_system_shared_libraries := libc libm libdl
|
||||
else
|
||||
my_system_shared_libraries := $(LOCAL_SYSTEM_SHARED_LIBRARIES)
|
||||
my_system_shared_libraries := $(patsubst libc,libc libdl,$(my_system_shared_libraries))
|
||||
endif
|
||||
endif
|
||||
|
||||
my_shared_libraries := \
|
||||
$(filter-out $(my_system_shared_libraries),$(LOCAL_SHARED_LIBRARIES)) \
|
||||
$(my_system_shared_libraries)
|
||||
|
||||
ifdef my_shared_libraries
|
||||
# Extra shared libraries introduced by LOCAL_CXX_STL.
|
||||
include $(BUILD_SYSTEM)/cxx_stl_setup.mk
|
||||
ifdef LOCAL_USE_VNDK
|
||||
|
@ -185,7 +203,7 @@ endif
|
|||
$(LOCAL_2ND_ARCH_VAR_PREFIX)$(my_prefix)DEPENDENCIES_ON_SHARED_LIBRARIES += \
|
||||
$(my_register_name):$(LOCAL_INSTALLED_MODULE):$(subst $(space),$(comma),$(my_shared_libraries))
|
||||
endif
|
||||
endif
|
||||
endif # my_shared_libraries
|
||||
|
||||
# We need to enclose the above export_includes and my_built_shared_libraries in
|
||||
# "my_strip_module not true" because otherwise the rules are defined in dynamic_binary.mk.
|
||||
|
|
Loading…
Reference in New Issue