Make factory functions in cc/prebuilt.go public.
Test: refactoring CL.

Change-Id: Icf4628df082d2b5a41a9108f85cb73dab42839ab
diff --git a/cc/prebuilt.go b/cc/prebuilt.go
index 08ba145..d064a46 100644
--- a/cc/prebuilt.go
+++ b/cc/prebuilt.go
@@ -66,7 +66,12 @@
 }
 
 func prebuiltSharedLibraryFactory() (blueprint.Module, []interface{}) {
-	module, library := NewLibrary(android.HostAndDeviceSupported)
+	module, _ := NewPrebuiltSharedLibrary(android.HostAndDeviceSupported)
+	return module.Init()
+}
+
+func NewPrebuiltSharedLibrary(hod android.HostOrDeviceSupported) (*Module, *libraryDecorator) {
+	module, library := NewLibrary(hod)
 	library.BuildOnlyShared()
 	module.compiler = nil
 
@@ -75,11 +80,16 @@
 	}
 	module.linker = prebuilt
 
-	return module.Init()
+	return module, library
 }
 
 func prebuiltStaticLibraryFactory() (blueprint.Module, []interface{}) {
-	module, library := NewLibrary(android.HostAndDeviceSupported)
+	module, _ := NewPrebuiltStaticLibrary(android.HostAndDeviceSupported)
+	return module.Init()
+}
+
+func NewPrebuiltStaticLibrary(hod android.HostOrDeviceSupported) (*Module, *libraryDecorator) {
+	module, library := NewLibrary(hod)
 	library.BuildOnlyStatic()
 	module.compiler = nil
 
@@ -88,7 +98,7 @@
 	}
 	module.linker = prebuilt
 
-	return module.Init()
+	return module, library
 }
 
 type prebuiltBinaryLinker struct {
@@ -115,7 +125,12 @@
 }
 
 func prebuiltBinaryFactory() (blueprint.Module, []interface{}) {
-	module, binary := NewBinary(android.HostAndDeviceSupported)
+	module, _ := NewPrebuiltBinary(android.HostAndDeviceSupported)
+	return module.Init()
+}
+
+func NewPrebuiltBinary(hod android.HostOrDeviceSupported) (*Module, *binaryDecorator) {
+	module, binary := NewBinary(hod)
 	module.compiler = nil
 
 	prebuilt := &prebuiltBinaryLinker{
@@ -123,5 +138,5 @@
 	}
 	module.linker = prebuilt
 
-	return module.Init()
+	return module, binary
 }