Remove make information from compliant db in soong-only build

Soong only builds won't have the make-metadata.csv/make-modules.csv
files, so don't try to import them into the compliance db.

Bug: 383902856
Test: m --soong-only dist
Change-Id: I081a33bf5cddcbdce548f768d56508d772250329
diff --git a/android/compliance_metadata.go b/android/compliance_metadata.go
index 0b876c3..2f11df6 100644
--- a/android/compliance_metadata.go
+++ b/android/compliance_metadata.go
@@ -236,8 +236,8 @@
 		blueprint.RuleParams{
 			Command: `rm -rf $out && ` +
 				`${sqlite3} $out ".import --csv $in modules" && ` +
-				`${sqlite3} $out ".import --csv ${make_metadata} make_metadata" && ` +
-				`${sqlite3} $out ".import --csv ${make_modules} make_modules"`,
+				`([ -z "${make_metadata}" ] || ${sqlite3} $out ".import --csv ${make_metadata} make_metadata") && ` +
+				`([ -z "${make_modules}" ] || ${sqlite3} $out ".import --csv ${make_modules} make_modules")`,
 			CommandDeps: []string{"${sqlite3}"},
 		}, "make_metadata", "make_modules")
 )
@@ -307,24 +307,29 @@
 	modulesCsv := PathForOutput(ctx, "compliance-metadata", deviceProduct, "soong-modules.csv")
 	WriteFileRuleVerbatim(ctx, modulesCsv, buffer.String())
 
-	// Metadata generated in Make
-	makeMetadataCsv := PathForOutput(ctx, "compliance-metadata", deviceProduct, "make-metadata.csv")
-	makeModulesCsv := PathForOutput(ctx, "compliance-metadata", deviceProduct, "make-modules.csv")
+	var implicits []Path
+	args := make(map[string]string)
+
+	if ctx.Config().KatiEnabled() {
+		// Metadata generated in Make
+		makeMetadataCsv := PathForOutput(ctx, "compliance-metadata", deviceProduct, "make-metadata.csv")
+		makeModulesCsv := PathForOutput(ctx, "compliance-metadata", deviceProduct, "make-modules.csv")
+		implicits = append(implicits, makeMetadataCsv, makeModulesCsv)
+		args["make_metadata"] = makeMetadataCsv.String()
+		args["make_modules"] = makeModulesCsv.String()
+	} else {
+		args["make_metadata"] = ""
+		args["make_modules"] = ""
+	}
 
 	// Import metadata from Make and Soong to sqlite3 database
 	complianceMetadataDb := PathForOutput(ctx, "compliance-metadata", deviceProduct, "compliance-metadata.db")
 	ctx.Build(pctx, BuildParams{
-		Rule:  importCsv,
-		Input: modulesCsv,
-		Implicits: []Path{
-			makeMetadataCsv,
-			makeModulesCsv,
-		},
-		Output: complianceMetadataDb,
-		Args: map[string]string{
-			"make_metadata": makeMetadataCsv.String(),
-			"make_modules":  makeModulesCsv.String(),
-		},
+		Rule:      importCsv,
+		Input:     modulesCsv,
+		Implicits: implicits,
+		Output:    complianceMetadataDb,
+		Args:      args,
 	})
 
 	// Phony rule "compliance-metadata.db". "m compliance-metadata.db" to create the compliance metadata database.