Open Bug 1499145 Opened 6 years ago Updated 2 years ago

Make |mach bootstrap| offer to install sccache and help configure local office scccache if appropriate

Categories

(Firefox Build System :: Bootstrap Configuration, enhancement, P2)

enhancement

Tracking

(Not tracked)

People

(Reporter: nalexander, Unassigned)

References

(Blocks 1 open bug)

Details

This is part of the larger programme to make |mach bootstrap| get developers (and especially Mozilla paid staff) into an optimal configuration. For most native code developers, that means running sccache; for native code developers in offices, we'd like to make it as easy as possible to use icecream (and its sccache-based replacement, when that is available).

Per conversation with :kmoir, I'm going through untriaged bugs in her components and marking the ones which look to be enhancements/tasks with the enhancement severity to get them out of the triage queue.

If this incorrect, please remove the tag.

Severity: normal → enhancement

I think this bug would be better served by splitting it into two parts:

  1. Install sccache in mach bootstrap, which should be straightforward. We produce toolchain binaries for Linux/Windows and I've filed bug 1532329 for producing mac toolchain binaries. I would advise against using cargo install sccache because sccache takes a while to build and some of the build requirements can be annoying.
  2. Configure icecream--first, I think long-term we'd be better served by focusing on sccache-dist, as we have a project to install IT-managed sccache-dist schedulers in offices (bug 1524533) currently in progress. We're hoping to get everyone switched over from icecream to sccache-dist in the near future. Second, it would be great if building in an office with a distributed sccache system available could automatically use it, which I think means that the build system would need to do this work at build time instead of at bootstrap time. There are probably some incremental steps we could make along the way here. I did open an sccache issue to give it a way to expose distributed compilation status towards this end.
Priority: -- → P2
Summary: Make |mach bootstrap| offer to install sccache and help configure icecream if appropriate → Make |mach bootstrap| offer to install sccache and help configure local office scccache if appropriate
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.