Install cross partition symlinks in autogenerated vendor.img

These match the symlinks present in the kati built vendor.img file.

Since structs are not supported in `generateBpContent`, Android.bp
generation for vendor is skipped for now.

Bug: 374371755
Test: Verified that odm and lib/modules are present in vendor.img's
fileList for aosp_cf_x86_64_phone

Change-Id: I2564d23a5fc3b8e1aad360373ff2c103a074cfe7
diff --git a/fsgen/filesystem_creator.go b/fsgen/filesystem_creator.go
index c903338..cd44e57 100644
--- a/fsgen/filesystem_creator.go
+++ b/fsgen/filesystem_creator.go
@@ -387,6 +387,17 @@
 		fsProps.Gen_aconfig_flags_pb = proptools.BoolPtr(true)
 	case "vendor":
 		fsProps.Gen_aconfig_flags_pb = proptools.BoolPtr(true)
+		fsProps.Symlinks = []filesystem.SymlinkDefinition{
+			filesystem.SymlinkDefinition{
+				Target: proptools.StringPtr("/odm"),
+				Name:   proptools.StringPtr("vendor/odm"),
+			},
+			filesystem.SymlinkDefinition{
+				Target: proptools.StringPtr("/vendor_dlkm/lib/modules"),
+				Name:   proptools.StringPtr("vendor/lib/modules"),
+			},
+		}
+		fsProps.Base_dir = proptools.StringPtr("vendor")
 	}
 }
 
@@ -563,6 +574,9 @@
 	if !fsTypeSupported {
 		return ""
 	}
+	if partitionType == "vendor" {
+		return "" // TODO: Handle struct props
+	}
 
 	baseProps := generateBaseProps(proptools.StringPtr(generatedModuleNameForPartition(ctx.Config(), partitionType)))
 	deps := ctx.Config().Get(fsGenStateOnceKey).(*FsGenState).fsDeps[partitionType]