From ea804a7120e0b87dabd3f24227f9550332c42c79 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Thu, 21 Jun 2018 17:45:53 +0200 Subject: pkg/build: pave way for multi-OS support Unify kernel and image build, that distinction is really uninteresting. Define interface that each OS needs to implement. Add gvisor stub. --- pkg/bisect/bisect.go | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'pkg/bisect') diff --git a/pkg/bisect/bisect.go b/pkg/bisect/bisect.go index 4e2ee143f..78ac998a4 100644 --- a/pkg/bisect/bisect.go +++ b/pkg/bisect/bisect.go @@ -101,7 +101,8 @@ func (env *env) bisect() (*git.Commit, error) { if env.head, err = git.Poll(cfg.Manager.KernelSrc, cfg.Kernel.Repo, cfg.Kernel.Branch); err != nil { return nil, err } - if err := build.Clean(cfg.Manager.KernelSrc); err != nil { + if err := build.Clean(cfg.Manager.TargetOS, cfg.Manager.TargetArch, + cfg.Manager.Type, cfg.Manager.KernelSrc); err != nil { return nil, fmt.Errorf("kernel clean failed: %v", err) } env.log("building syzkaller on %v", cfg.Syzkaller.Commit) @@ -220,7 +221,8 @@ func (env *env) test() (git.BisectResult, error) { } env.log("testing commit %v with %v", current.Hash, compilerID) buildStart := time.Now() - if err := build.Clean(cfg.Manager.KernelSrc); err != nil { + if err := build.Clean(cfg.Manager.TargetOS, cfg.Manager.TargetArch, + cfg.Manager.Type, cfg.Manager.KernelSrc); err != nil { return 0, fmt.Errorf("kernel clean failed: %v", err) } err = env.inst.BuildKernel(be.compiler, cfg.Kernel.Userspace, -- cgit mrf-deployment