From 484e362fcff09b8b74162eefd0c3bfd67e829d94 Mon Sep 17 00:00:00 2001 From: Florent Revest Date: Wed, 2 Oct 2024 16:02:12 +0200 Subject: pkg/build: use the build environment in clean() calls This unifies the build() and clean() interfaces such that if a custom compiler or make binary is provided in the manager or bisection config, they can be taken into account by the clean() interface. --- syz-ci/jobs.go | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) (limited to 'syz-ci') diff --git a/syz-ci/jobs.go b/syz-ci/jobs.go index 91ef57f6b..0c2df74d4 100644 --- a/syz-ci/jobs.go +++ b/syz-ci/jobs.go @@ -622,7 +622,17 @@ func (jp *JobProcessor) testPatch(job *Job, mgrcfg *mgrconfig.Config) error { resp.Build.KernelCommitTitle = kernelCommit.Title resp.Build.KernelCommitDate = kernelCommit.CommitDate - if err := build.Clean(mgrcfg.TargetOS, mgrcfg.TargetVMArch, mgrcfg.Type, mgrcfg.KernelSrc); err != nil { + buildCfg := &instance.BuildKernelConfig{ + CompilerBin: mgr.mgrcfg.Compiler, + MakeBin: mgr.mgrcfg.Make, + LinkerBin: mgr.mgrcfg.Linker, + CcacheBin: mgr.mgrcfg.Ccache, + UserspaceDir: mgr.mgrcfg.Userspace, + CmdlineFile: mgr.mgrcfg.KernelCmdline, + SysctlFile: mgr.mgrcfg.KernelSysctl, + KernelConfig: req.KernelConfig, + } + if err := env.CleanKernel(buildCfg); err != nil { return fmt.Errorf("kernel clean failed: %w", err) } if len(req.Patch) != 0 { @@ -643,16 +653,7 @@ func (jp *JobProcessor) testPatch(job *Job, mgrcfg *mgrconfig.Config) error { []byte("# CONFIG_DEBUG_INFO_BTF is not set"), -1) log.Logf(0, "job: building kernel...") - kernelConfig, details, err := env.BuildKernel(&instance.BuildKernelConfig{ - CompilerBin: mgr.mgrcfg.Compiler, - MakeBin: mgr.mgrcfg.Make, - LinkerBin: mgr.mgrcfg.Linker, - CcacheBin: mgr.mgrcfg.Ccache, - UserspaceDir: mgr.mgrcfg.Userspace, - CmdlineFile: mgr.mgrcfg.KernelCmdline, - SysctlFile: mgr.mgrcfg.KernelSysctl, - KernelConfig: req.KernelConfig, - }) + kernelConfig, details, err := env.BuildKernel(buildCfg) resp.Build.CompilerID = details.CompilerID if err != nil { return err -- cgit mrf-deployment