Closed Bug 961757 Opened 6 years ago Closed 6 years ago

Window sandbox no longer building when MOZ_CONTENT_SANDBOX is defined due to include order

Categories

(Firefox Build System :: General, defect)

defect
Not set

Tracking

(Not tracked)

RESOLVED FIXED
mozilla29

People

(Reporter: bbondy, Assigned: bbondy)

References

Details

Attachments

(1 file, 2 obsolete files)

The Windows sandbox works with our code by including the chromium sandbox, and overriding some includes to first add/modify some functionality.  For this to work it includes a shim directory before the local include directory.

This used to work before we included the LOCAL_INCLUDES before the current directory, but no longer does.

This bug is to fix that build problem now that the current directory is included first.
Attached patch bug961757_shim_includes.diff (obsolete) — Splinter Review
Attachment #8362564 - Flags: review?(mh+mozilla)
Blocks: 925570
Comment on attachment 8362564 [details] [diff] [review]
bug961757_shim_includes.diff

Review of attachment 8362564 [details] [diff] [review]:
-----------------------------------------------------------------

I'm reluctant do add global build system hacks for one specific use case.

Let's step back a little. Looking at security/sandbox/base/shim, there's only one file that overlaps with security/sandbox: base/strings/string_piece.h. None of the other files overlap. All of them, though, are included from some code in security/sandbox.. but the paths for histogram.h and sparse_histogram.h are wrong: they are in security/sandbox/base/shim/metrics, and they are #included as base/metrics/*, so there's no way those includes work. And, as a matter of fact, the two files that include those are not built.

Now, after writing all this, and considering writing more, i realize that there's a simple fix for this: move security/sandbox/base to security/sandbox/chromium/base. Then add shim and chromium in the right order in LOCAL_INCLUDES (and change the path to source files in moz.build). While doing that, you might as well move security/sandbox/base/shim to security/sandbox/shim.
Attachment #8362564 - Flags: review?(mh+mozilla)
Attached patch Patch rev2 (obsolete) — Splinter Review
Implemented review comments, will request review after it passes try tests.
One note is I had to put it in a directory called chromium/sandbox instead of just chromium because some includes specify sandbox/base
Attachment #8362564 - Attachment is obsolete: true
Attached patch Patch rev3Splinter Review
Thanks for the previous review, implemented review comments.
Attachment #8364631 - Attachment is obsolete: true
Attachment #8365452 - Flags: review?(mh+mozilla)
Attachment #8365452 - Flags: review?(mh+mozilla) → review+
https://hg.mozilla.org/mozilla-central/rev/9e63d3c61e5b
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.