Open Bug 1497286 Opened 6 years ago Updated 2 years ago

AS=as in the environment causes build failure of the JS Shell.

Categories

(Firefox Build System :: General, defect)

64 Branch
defect

Tracking

(Not tracked)

People

(Reporter: nbp, Unassigned)

References

Details

Using an environment generated by nix-shell with [1] exports by default all the variables needed for building most projects, including the environment variable for AS set to "as". Since Bug 1397263, this causes build failures such as:

  gcc-wrapper-7.3.0/bin/as: invalid option -- 'E'
  gcc-wrapper-7.3.0/bin/as: invalid option -- 'P'

With both clang and gcc.

This problem is fixed in nixpkgs-mozilla [2] by unsetting the environemnt variable, but might reappear when newer versions of firefox would be packaged in NixOS.

[1] https://github.com/mozilla/nixpkgs-mozilla/tree/a7159e93ca1374dfae8389dfc6d966fb37b50903
[2] https://github.com/mozilla/nixpkgs-mozilla/commit/c72ff151a3e25f14182569679ed4cd22ef352328
Version: Trunk → 64 Branch
Yeah using env vars for tools other than the intended problems _will_ cause problems downstream. The usual culprit is linking with C compiler. For a non-NixOS example, here's [Exherbo] dealing with the problem for OpenSSH.

The solution is to make up a new environment variable. There's shockingly little documentation for this, but GNU Automake uses "CCLD" (since at least [1998]). I suggest "CCAS" by analogy.

[Exherbo]: http://cgit.exherbo.org/arbor.git/commit/?id=1b312e8fba9dcb454640d267055fa5ab4924b1ed
[1998]: http://git.savannah.gnu.org/cgit/automake.git/commit/?id=e9b6717173e99b22fc08d5b1bcf92b0269aca078
Severity: normal → S3
You need to log in before you can comment on or make changes to this bug.