func genConfigBuild()

in pkg/rbeconfigsgen/rbeconfigsgen.go [663:683]


func genConfigBuild(o *Options) (generatedFile, error) {
	if o.PlatformParams.CppToolchainTarget != "" {
		return generatedFile{}, fmt.Errorf("<internal error> C++ toolchain target was already set")
	}
	// Populate the C++ toolchain target if C++ config generation is enabled.
	if o.GenCPPConfigs {
		o.PlatformParams.CppToolchainTarget = genCppToolchainTarget(o)
	} else {
		o.PlatformParams.CppToolchainTarget = ""
		log.Printf("Not generating a toolchain target to be used for the C++ Crosstool top because C++ config generation is disabled.")
	}
	buf := bytes.NewBuffer(nil)
	log.Printf("Fully resolved platform params=%v", o.PlatformParams)
	if err := platformsToolchainBuildTemplate.Execute(buf, o.PlatformParams); err != nil {
		return generatedFile{}, fmt.Errorf("failed to generate platform BUILD file: %w", err)
	}
	return generatedFile{
		name:     "config/BUILD",
		contents: buf.Bytes(),
	}, nil
}