Update core/Makefile to add variable PRODUCT_EXTRA_STUB_LIBRARIES.

This allows products to specify additional device-specific stub libraries that should be included in the system_linker_config. This is useful for products that need to include additional stub libraries that are not picked up by Soong automatically.

Bug: 361441210
Change-Id: Ia18c476e249ac5b14b43819fa0a4f0059dc620de
diff --git a/core/Makefile b/core/Makefile
index b0392cd..49b1432 100644
--- a/core/Makefile
+++ b/core/Makefile
@@ -3511,6 +3511,8 @@
 		--output $@ --value "$(STUB_LIBRARIES)" --system "$(TARGET_OUT)"
 	$(HOST_OUT_EXECUTABLES)/conv_linker_config append --source $@ --output $@ --key requireLibs \
 		--value "$(foreach lib,$(LLNDK_MOVED_TO_APEX_LIBRARIES), $(lib).so)"
+	$(HOST_OUT_EXECUTABLES)/conv_linker_config append --source $@ --output $@ --key provideLibs \
+		--value "$(foreach lib,$(PRODUCT_EXTRA_STUB_LIBRARIES), $(lib).so)"
 
 $(call declare-1p-target,$(SYSTEM_LINKER_CONFIG),)
 $(call declare-license-deps,$(SYSTEM_LINKER_CONFIG),$(INTERNAL_SYSTEMIMAGE_FILES) $(SYSTEM_LINKER_CONFIG_SOURCE))
diff --git a/core/product.mk b/core/product.mk
index 4c23e5d..b07e6e0 100644
--- a/core/product.mk
+++ b/core/product.mk
@@ -499,6 +499,10 @@
 # If set, build would generate system image from Soong-defined module.
 _product_single_value_vars += PRODUCT_SOONG_DEFINED_SYSTEM_IMAGE
 
+# List of stub libraries specific to the product that are already present in the system image and
+# should be included in the system_linker_config.
+_product_list_vars += PRODUCT_EXTRA_STUB_LIBRARIES
+
 .KATI_READONLY := _product_single_value_vars _product_list_vars
 _product_var_list :=$= $(_product_single_value_vars) $(_product_list_vars)