Add gensrcs module type

gensrcs allows sources to be generated by a specified command.

Change-Id: I725086fcdcd72bfe6c07fb8903e7b520678a247f
diff --git a/common/arch.go b/common/arch.go
index bc2a9d9..cb4e998 100644
--- a/common/arch.go
+++ b/common/arch.go
@@ -280,6 +280,10 @@
 		}
 	}
 
+	if len(arches) == 0 {
+		return
+	}
+
 	archNames := []string{}
 	for _, arch := range arches {
 		archNames = append(archNames, arch.String())
@@ -301,8 +305,6 @@
 	base.commonProperties.Compile_multilib = string(defaultMultilib)
 
 	base.generalProperties = append(base.generalProperties,
-		&base.commonProperties)
-	base.generalProperties = append(base.generalProperties,
 		propertyStructs...)
 
 	for _, properties := range base.generalProperties {