Closed Bug 1301001 Opened 4 years ago Closed 4 years ago

stylo: Fix OS X build (cargo network access and build errors)

Categories

(Firefox Build System :: General, defect, P2)

defect

Tracking

(Not tracked)

RESOLVED WORKSFORME

People

(Reporter: cpeterson, Unassigned)

References

Details

Looks like we have at least two build issues on OS X:

1. Bobby says OS X seems to still try to update the cargo registry from the network. Simon hit this locally on Linux.

2. -Wunreachable-code warnings-as-errors in Skia:

https://treeherder.mozilla.org/logviewer.html#?job_id=26881763&repo=try

gfx/skia/skia/src/core/SkBlitter_A8.cpp:382:10: warning: code will never be executed [-Wunreachable-code]
 18:05:38     INFO -      if(!(fDevice.width() == totalCount)) { do { SkNO_RETURN_HINT(); SkDebugf("%s:%d: fatal error: \"%s\"\n", "/builds/slave/try-m64-d-00000000000000000000/build/src/gfx/skia/skia/src/core/SkBlitter_A8.cpp", 382, "\"fDevice.width() == totalCount\""); ; sk_abort_no_print(); } while (false); };

This is surprising, however, because we build Skia with ALLOW_COMPILER_WARNINGS = True:

https://hg.mozilla.org/mozilla-central/file/tip/gfx/skia/moz.build#l553
Also:

3. Linker assertion failures:

https://treeherder.mozilla.org/logviewer.html#?job_id=26881764&repo=try#L22698

Assertion failed: (_mode == modeFinalAddress), function finalAddress, file /SourceCache/ld64/ld64-123.2.1/src/ld/ld.hpp, line 573.

Nathan says:

We use a custom-built linker:

http://dxr.mozilla.org/mozilla-central/source/build/macosx/local-mozconfig.common#19

along with the custom LDFLAGS a bit further down in the same file; we did this to avoid link failures in libxul with newer Rust toolchains, but I guess we now have to pass those same flags to the Rust staticlib linking process as well?  Is there reasonable support for that?  (The linker hacks ought to be able to go away when we upgrade to Rust 1.12, as the unwind info problems have gone away, but until that point...)
Summary: stylo: Fix OS X build (cargo network access and -Wunreachable-code warnings-as-errors) → stylo: Fix OS X build (cargo network access and build errors)
(In reply to Chris Peterson [:cpeterson] from comment #0)
> 2. -Wunreachable-code warnings-as-errors in Skia:
> 
> https://treeherder.mozilla.org/logviewer.html#?job_id=26881763&repo=try
> 
> gfx/skia/skia/src/core/SkBlitter_A8.cpp:382:10: warning: code will never be
> executed [-Wunreachable-code]
>  18:05:38     INFO -      if(!(fDevice.width() == totalCount)) { do {
> SkNO_RETURN_HINT(); SkDebugf("%s:%d: fatal error: \"%s\"\n",
> "/builds/slave/try-m64-d-00000000000000000000/build/src/gfx/skia/skia/src/
> core/SkBlitter_A8.cpp", 382, "\"fDevice.width() == totalCount\""); ;
> sk_abort_no_print(); } while (false); };
> 
> This is surprising, however, because we build Skia with
> ALLOW_COMPILER_WARNINGS = True:
> 
> https://hg.mozilla.org/mozilla-central/file/tip/gfx/skia/moz.build#l553

These are just ordinary warnings, not failures; for whatever reason, Treeherder is not smart enough to ignore them when figuring out where break-the-build errors are.
Depends on: 1188030, 1290972
Priority: -- → P1
Blocks: stylo-nightly
No longer blocks: stylo
Priority: P1 → P2
(In reply to Chris Peterson [:cpeterson] from comment #0)
> 1. Bobby says OS X seems to still try to update the cargo registry from the
> network. Simon hit this locally on Linux.

Is this still a problem? Assuming stylo is using the stock Rust integration we have now, this shouldn't happen.
This isn't a problem anymore.
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → WORKSFORME
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.