diff --git a/cc/androidmk.go b/cc/androidmk.go
index e95d5a7..cd52363 100644
--- a/cc/androidmk.go
+++ b/cc/androidmk.go
@@ -294,6 +294,9 @@
 			if library.buildStubs() {
 				entries.SetBool("LOCAL_NO_NOTICE_FILE", true)
 			}
+			if library.apiListCoverageXmlPath.String() != "" {
+				entries.SetString("SOONG_CC_API_XML", "$(SOONG_CC_API_XML) "+library.apiListCoverageXmlPath.String())
+			}
 		})
 	}
 	// If a library providing a stub is included in an APEX, the private APIs of the library
diff --git a/cc/library.go b/cc/library.go
index bbb0c75..de9d01e 100644
--- a/cc/library.go
+++ b/cc/library.go
@@ -1035,8 +1035,6 @@
 	androidMkWriteAdditionalDependenciesForSourceAbiDiff(w io.Writer)
 
 	availableFor(string) bool
-
-	getAPIListCoverageXMLPath() android.ModuleOutPath
 }
 
 type versionedInterface interface {
@@ -1973,10 +1971,6 @@
 	mod.ModuleBase.MakeUninstallable()
 }
 
-func (library *libraryDecorator) getAPIListCoverageXMLPath() android.ModuleOutPath {
-	return library.apiListCoverageXmlPath
-}
-
 var versioningMacroNamesListKey = android.NewOnceKey("versioningMacroNamesList")
 
 // versioningMacroNamesList returns a singleton map, where keys are "version macro names",
diff --git a/cc/stub_library.go b/cc/stub_library.go
index 76da782..1722c80 100644
--- a/cc/stub_library.go
+++ b/cc/stub_library.go
@@ -15,7 +15,6 @@
 package cc
 
 import (
-	"sort"
 	"strings"
 
 	"android/soong/android"
@@ -28,8 +27,6 @@
 
 type stubLibraries struct {
 	stubLibraryMap map[string]bool
-
-	apiListCoverageXmlPaths []string
 }
 
 // Check if the module defines stub, or itself is stub
@@ -56,11 +53,6 @@
 					s.stubLibraryMap[name] = true
 				}
 			}
-			if m.library != nil {
-				if p := m.library.getAPIListCoverageXMLPath().String(); p != "" {
-					s.apiListCoverageXmlPaths = append(s.apiListCoverageXmlPaths, p)
-				}
-			}
 		}
 	})
 }
@@ -74,8 +66,4 @@
 func (s *stubLibraries) MakeVars(ctx android.MakeVarsContext) {
 	// Convert stub library file names into Makefile variable.
 	ctx.Strict("STUB_LIBRARIES", strings.Join(android.SortedStringKeys(s.stubLibraryMap), " "))
-
-	// Export the list of API XML files to Make.
-	sort.Strings(s.apiListCoverageXmlPaths)
-	ctx.Strict("SOONG_CC_API_XML", strings.Join(s.apiListCoverageXmlPaths, " "))
 }
