Add cc_benchmark module type
Change-Id: I83bed375fa77518baaab4260e714a9368761f0bc
This commit is contained in:
@@ -71,6 +71,8 @@ var moduleTypes = map[string]string{
|
|||||||
"cc_binary_host": "BUILD_HOST_EXECUTABLE",
|
"cc_binary_host": "BUILD_HOST_EXECUTABLE",
|
||||||
"cc_test": "BUILD_NATIVE_TEST",
|
"cc_test": "BUILD_NATIVE_TEST",
|
||||||
"cc_test_host": "BUILD_HOST_NATIVE_TEST",
|
"cc_test_host": "BUILD_HOST_NATIVE_TEST",
|
||||||
|
"cc_benchmark": "BUILD_NATIVE_BENCHMARK",
|
||||||
|
"cc_benchmark_host": "BUILD_HOST_NATIVE_BENCHMARK",
|
||||||
"java_library": "BUILD_JAVA_LIBRARY",
|
"java_library": "BUILD_JAVA_LIBRARY",
|
||||||
"java_library_static": "BUILD_STATIC_JAVA_LIBRARY",
|
"java_library_static": "BUILD_STATIC_JAVA_LIBRARY",
|
||||||
"java_library_host": "BUILD_HOST_JAVA_LIBRARY",
|
"java_library_host": "BUILD_HOST_JAVA_LIBRARY",
|
||||||
|
@@ -138,6 +138,8 @@ var moduleTypes = map[string]string{
|
|||||||
"BUILD_HOST_EXECUTABLE": "cc_binary_host",
|
"BUILD_HOST_EXECUTABLE": "cc_binary_host",
|
||||||
"BUILD_NATIVE_TEST": "cc_test",
|
"BUILD_NATIVE_TEST": "cc_test",
|
||||||
"BUILD_HOST_NATIVE_TEST": "cc_test_host",
|
"BUILD_HOST_NATIVE_TEST": "cc_test_host",
|
||||||
|
"BUILD_NATIVE_BENCHMARK": "cc_benchmark",
|
||||||
|
"BUILD_HOST_NATIVE_BENCHMARK": "cc_benchmark_host",
|
||||||
|
|
||||||
"BUILD_JAVA_LIBRARY": "java_library",
|
"BUILD_JAVA_LIBRARY": "java_library",
|
||||||
"BUILD_STATIC_JAVA_LIBRARY": "java_library_static",
|
"BUILD_STATIC_JAVA_LIBRARY": "java_library_static",
|
||||||
|
39
cc/cc.go
39
cc/cc.go
@@ -1481,6 +1481,36 @@ func TestPerSrcMutator(mctx blueprint.EarlyMutatorContext) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type CCBenchmark struct {
|
||||||
|
CCBinary
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CCBenchmark) depNames(ctx common.AndroidBaseContext, depNames CCDeps) CCDeps {
|
||||||
|
depNames = c.CCBinary.depNames(ctx, depNames)
|
||||||
|
depNames.StaticLibs = append(depNames.StaticLibs, "libbenchmark")
|
||||||
|
return depNames
|
||||||
|
}
|
||||||
|
|
||||||
|
func (c *CCBenchmark) installModule(ctx common.AndroidModuleContext, flags CCFlags) {
|
||||||
|
if ctx.Device() {
|
||||||
|
ctx.InstallFile("../data/nativetest"+ctx.Arch().ArchType.Multilib[3:]+"/"+ctx.ModuleName(), c.out)
|
||||||
|
} else {
|
||||||
|
c.CCBinary.installModule(ctx, flags)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewCCBenchmark(test *CCBenchmark, module CCModuleType,
|
||||||
|
hod common.HostOrDeviceSupported, props ...interface{}) (blueprint.Module, []interface{}) {
|
||||||
|
|
||||||
|
return NewCCBinary(&test.CCBinary, module, hod, props...)
|
||||||
|
}
|
||||||
|
|
||||||
|
func CCBenchmarkFactory() (blueprint.Module, []interface{}) {
|
||||||
|
module := &CCBenchmark{}
|
||||||
|
|
||||||
|
return NewCCBenchmark(module, module, common.HostAndDeviceSupported)
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Static library
|
// Static library
|
||||||
//
|
//
|
||||||
@@ -1545,6 +1575,15 @@ func CCTestHostFactory() (blueprint.Module, []interface{}) {
|
|||||||
&module.TestProperties)
|
&module.TestProperties)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//
|
||||||
|
// Host Benchmarks
|
||||||
|
//
|
||||||
|
|
||||||
|
func CCBenchmarkHostFactory() (blueprint.Module, []interface{}) {
|
||||||
|
module := &CCBenchmark{}
|
||||||
|
return NewCCBinary(&module.CCBinary, module, common.HostSupported)
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// Device libraries shipped with gcc
|
// Device libraries shipped with gcc
|
||||||
//
|
//
|
||||||
|
@@ -45,6 +45,7 @@ func main() {
|
|||||||
ctx.RegisterModuleType("cc_object", cc.CCObjectFactory)
|
ctx.RegisterModuleType("cc_object", cc.CCObjectFactory)
|
||||||
ctx.RegisterModuleType("cc_binary", cc.CCBinaryFactory)
|
ctx.RegisterModuleType("cc_binary", cc.CCBinaryFactory)
|
||||||
ctx.RegisterModuleType("cc_test", cc.CCTestFactory)
|
ctx.RegisterModuleType("cc_test", cc.CCTestFactory)
|
||||||
|
ctx.RegisterModuleType("cc_benchmark", cc.CCBenchmarkFactory)
|
||||||
|
|
||||||
ctx.RegisterModuleType("toolchain_library", cc.ToolchainLibraryFactory)
|
ctx.RegisterModuleType("toolchain_library", cc.ToolchainLibraryFactory)
|
||||||
ctx.RegisterModuleType("ndk_prebuilt_library", cc.NdkPrebuiltLibraryFactory)
|
ctx.RegisterModuleType("ndk_prebuilt_library", cc.NdkPrebuiltLibraryFactory)
|
||||||
@@ -56,6 +57,7 @@ func main() {
|
|||||||
ctx.RegisterModuleType("cc_library_host_shared", cc.CCLibraryHostSharedFactory)
|
ctx.RegisterModuleType("cc_library_host_shared", cc.CCLibraryHostSharedFactory)
|
||||||
ctx.RegisterModuleType("cc_binary_host", cc.CCBinaryHostFactory)
|
ctx.RegisterModuleType("cc_binary_host", cc.CCBinaryHostFactory)
|
||||||
ctx.RegisterModuleType("cc_test_host", cc.CCTestHostFactory)
|
ctx.RegisterModuleType("cc_test_host", cc.CCTestHostFactory)
|
||||||
|
ctx.RegisterModuleType("cc_benchmark_host", cc.CCBenchmarkHostFactory)
|
||||||
|
|
||||||
ctx.RegisterModuleType("gensrcs", genrule.GenSrcsFactory)
|
ctx.RegisterModuleType("gensrcs", genrule.GenSrcsFactory)
|
||||||
ctx.RegisterModuleType("genrule", genrule.GenRuleFactory)
|
ctx.RegisterModuleType("genrule", genrule.GenRuleFactory)
|
||||||
|
Reference in New Issue
Block a user