Export related variables for vintf_data to soong

Export DEVICE_MATRIX_FILE, PRODUCT_MANIFEST_FILES,
DEVICE_FRAMEWORK_MANIFEST_FILE, and SYSTEM_EXT_MANIFEST_FILES to soong.
Also add related logic for hwservicemanager to PRODUCT_MANIFEST_FILES.

Bug: 340427295
Test: m vendor_compatibility_matrix.xml system_manifest.xml \
        product_manifest.xml system_ext_manifest.xml
Change-Id: Ib006a4fb7549d61beb6ec3c4c7ae49dec258daca
diff --git a/core/soong_config.mk b/core/soong_config.mk
index 0421e19..3fe1a01 100644
--- a/core/soong_config.mk
+++ b/core/soong_config.mk
@@ -420,6 +420,26 @@
 
 $(call end_json_map)
 
+# For converting vintf_data
+$(call add_json_list, DeviceMatrixFile, $(DEVICE_MATRIX_FILE))
+$(call add_json_list, ProductManifestFiles, $(PRODUCT_MANIFEST_FILES))
+$(call add_json_list, SystemManifestFile, $(DEVICE_FRAMEWORK_MANIFEST_FILE))
+SYSTEM_EXT_HWSERVICE_FILES :=
+ifeq ($(PRODUCT_HIDL_ENABLED),true)
+  ifneq ($(filter hwservicemanager,$(PRODUCT_PACKAGES)),)
+    SYSTEM_EXT_HWSERVICE_FILES += system/hwservicemanager/hwservicemanager_no_max.xml
+  else
+    $(error If PRODUCT_HIDL_ENABLED is set, hwservicemanager must be added to PRODUCT_PACKAGES explicitly)
+  endif
+else
+  ifneq ($(filter hwservicemanager,$(PRODUCT_PACKAGES)),)
+    SYSTEM_EXT_HWSERVICE_FILES += system/hwservicemanager/hwservicemanager.xml
+  else ifneq ($(filter hwservicemanager,$(PRODUCT_PACKAGES_SHIPPING_API_LEVEL_34)),)
+    SYSTEM_EXT_HWSERVICE_FILES += system/hwservicemanager/hwservicemanager.xml
+  endif
+endif
+$(call add_json_list, SystemExtManifestFiles, $(SYSTEM_EXT_MANIFEST_FILES) $(SYSTEM_EXT_HWSERVICE_FILES))
+
 $(call json_end)
 
 $(file >$(SOONG_VARIABLES).tmp,$(json_contents))