Don't run bindgen twice during the style system build.

RESOLVED FIXED in Firefox 68

Status

()

enhancement
P3
normal
RESOLVED FIXED
5 months ago
5 months ago

People

(Reporter: emilio, Assigned: emilio)

Tracking

unspecified
mozilla68
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(firefox68 fixed)

Details

Attachments

(1 attachment)

It's ridiculously inefficient, I want to simplify this.

Blocks: 1536582
Depends on: 1536586
Depends on: 1538661
Depends on: 1538694

I kept it building the most straight-forward way possible (pub use) because it
seems to me that bindings is not a bad name, and we should probably move
structs.rs to be bindings.rs rather than the other way around.

But that's a different bug in any case, need to think more about it.

Attachment #9053273 - Attachment description: Bug 1536584 - Remove bindings.rs. r=#style → Bug 1536584 - Remove bindings.rs. r=xidorn
Backed out 4 changesets (Bug 1536584, Bug 1538661, Bug 1538694) for causing build bustages CLOSED TREE

Pushes with failures: https://treeherder.mozilla.org/#/jobs?repo=autoland&fromchange=73a48619739e34609d11f5ed15f3fc1436ee154f&tochange=105411e3cf06b2fca98d4e0507efb80875103228

Backout link: https://hg.mozilla.org/integration/autoland/rev/105411e3cf06b2fca98d4e0507efb80875103228

Failure logs: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=236123244&repo=autoland&lineNumber=12901

13:52:02 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/xpcom/reflect/xptinfo'
13:52:02 INFO - z:/build/build/src/clang/bin/clang.exe --driver-mode=cl -Foxptdata.i_o -c -Iz:/build/build/src/obj-firefox/dist/stl_wrappers -DNDEBUG=1 -DTRIMMED=1 -DSTATIC_EXPORTABLE_JS_API -DMOZ_HAS_MOZGLUE -DMOZILLA_INTERNAL_API -DIMPL_LIBXUL -Iz:/build/build/src/xpcom/reflect/xptinfo -Iz:/build/build/src/obj-firefox/xpcom/reflect/xptinfo -Iz:/build/build/src/obj-firefox/dist/include -Iz:/build/build/src/obj-firefox/dist/include/nspr -Iz:/build/build/src/obj-firefox/dist/include/nss -MD -FI z:/build/build/src/obj-firefox/mozilla-config.h -DMOZILLA_CLIENT -Qunused-arguments -guard:cf -Qunused-arguments -fcrash-diagnostics-dir=z:/build/public/build -TP -nologo -Zc:sizedDealloc- -D_HAS_EXCEPTIONS=0 -guard:cf -W3 -Gy -Zc:inline -Gw -Wno-inline-new-delete -Wno-invalid-offsetof -Wno-microsoft-enum-value -Wno-microsoft-include -Wno-unknown-pragmas -Wno-ignored-pragmas -Wno-deprecated-declarations -Wno-invalid-noreturn -Wno-inconsistent-missing-override -Wno-implicit-exception-spec-mismatch -Wno-unused-local-typedef -Wno-ignored-attributes -Wno-used-but-marked-unused -D_SILENCE_TR1_NAMESPACE_DEPRECATION_WARNING -GR- -Z7 -fno-limit-debug-info -Xclang -load -Xclang z:/build/build/src/obj-firefox/build/clang-plugin/clang-plugin.dll -Xclang -add-plugin -Xclang moz-check -O2 -Oy- -WX -fprofile-instr-generate -Xclang -finstrument-functions-after-inlining -Xclang -MP -Xclang -dependency-file -Xclang .deps/xptdata.i_o.pp -Xclang -MT -Xclang xptdata.i_o z:/build/build/src/obj-firefox/xpcom/reflect/xptinfo/xptdata.cpp
13:52:02 INFO - In file included from z:/build/build/src/obj-firefox/xpcom/reflect/xptinfo/xptdata.cpp:6:
13:52:02 INFO - In file included from z:/build/build/src/obj-firefox/dist/include\mozilla/dom/CharacterData.h:23:
13:52:02 INFO - In file included from z:/build/build/src/obj-firefox/dist/include\mozilla/dom/ShadowRoot.h:15:
13:52:02 INFO - z:/build/build/src/obj-firefox/dist/include\mozilla/ServoBindings.h(184,49): error: 'Servo_SelectorList_Parse' has C-linkage specified, but returns incomplete type 'mozilla::StyleOwnedOrNull<RawServoSelectorList>' which could be incompatible with C [-Werror,-Wreturn-type-c-linkage]
13:52:02 INFO - mozilla::StyleOwnedOrNull<RawServoSelectorList> Servo_SelectorList_Parse(
13:52:02 INFO - ^
13:52:02 INFO - 1 error generated.
13:52:02 INFO - z:/build/build/src/config/rules.mk:805: recipe for target 'xptdata.i_o' failed
13:52:02 INFO - mozmake.EXE[5]: *** [xptdata.i_o] Error 1
13:52:02 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/xpcom/reflect/xptinfo'
13:52:02 INFO - z:/build/build/src/config/recurse.mk:74: recipe for target 'xpcom/reflect/xptinfo/target' failed
13:52:02 INFO - mozmake.EXE[4]: *** [xpcom/reflect/xptinfo/target] Error 2
13:52:02 INFO - mozmake.EXE[4]: *** Waiting for unfinished jobs....
13:52:02 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/xpcom/build'
13:52:02 INFO - xpcom/build/perfprobe.i_o
13:52:02 INFO - mozmake.EXE[5]: Leaving directory 'z:/build/build/src/obj-firefox/xpcom/build'
13:52:02 INFO - mozmake.EXE[5]: Entering directory 'z:/build/build/src/obj-firefox/config/external/icu/i18n'
13:52:02 INFO - config/external/icu/i18n/tznames_impl.i_o

The fix introduced linux bustages: https://hg.mozilla.org/integration/autoland/rev/563e8fb1be5db3fa6f984c34270a35c7cf1dd4e6

https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=236127756&repo=autoland&lineNumber=12289

[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - In file included from /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/ServoStyleSet.h:15:0,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/dist/include/nsIPresShell.h:16,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/Document.h:26,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/dist/include/nsContentUtils.h:47,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/ClientIPCUtils.h:14,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders/mozilla/dom/ClientIPCTypes.h:22,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders/mozilla/dom/PContent.h:38,
[task 2019-03-26T14:23:53.701Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/ipc/ipdl/_ipdlheaders/mozilla/dom/PContentChild.h:9,
[task 2019-03-26T14:23:53.702Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/dom/ContentChild.h:13,
[task 2019-03-26T14:23:53.702Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/security/sandbox/linux/broker/SandboxBrokerPolicyFactory.cpp:19,
[task 2019-03-26T14:23:53.702Z] 14:23:53 INFO - from /builds/worker/workspace/build/src/obj-firefox/security/sandbox/linux/broker/Unified_cpp_linux_broker0.cpp:20:
[task 2019-03-26T14:23:53.703Z] 14:23:53 ERROR - /builds/worker/workspace/build/src/obj-firefox/dist/include/mozilla/ServoBindingTypes.h:164:32: error: unknown option after '#pragma GCC diagnostic' kind [-Werror=pragmas]
[task 2019-03-26T14:23:53.703Z] 14:23:53 INFO - #pragma GCC diagnostic ignored "-Wreturn-type-c-linkage"
[task 2019-03-26T14:23:53.703Z] 14:23:53 INFO - ^~~~~~~~~~~~~~~~~~~~~~~~~
[task 2019-03-26T14:23:53.703Z] 14:23:53 INFO - cc1plus: all warnings being treated as errors
[task 2019-03-26T14:23:53.703Z] 14:23:53 INFO - /builds/worker/workspace/build/src/config/rules.mk:805: recipe for target 'Unified_cpp_linux_broker0.o' failed
[task 2019-03-26T14:23:53.703Z] 14:23:53 ERROR - make[4]: *** [Unified_cpp_linux_broker0.o] Error 1
[task 2019-03-26T14:23:53.703Z] 14:23:53 INFO - make[4]: Leaving directory '/builds/worker/workspace/build/src/obj-firefox/security/sandbox/linux/broker'
[task 2019-03-26T14:23:53.704Z] 14:23:53 INFO - /builds/worker/workspace/build/src/config/recurse.mk:74: recipe for target 'security/sandbox/linux/broker/target' failed
[task 2019-03-26T14:23:53.704Z] 14:23:53 ERROR - make[3]: *** [security/sandbox/linux/broker/target] Error 2
[task 2019-03-26T14:23:53.704Z] 14:23:53 INFO - make[3]: *** Waiting for unfinished jobs....
[task 2019-03-26T14:23:53.704Z] 14:23:53 INFO - make[4]: Entering directory '/builds/worker/workspace/build/src/obj-firefox/xpcom/threads'

Flags: needinfo?(emilio)
Flags: needinfo?(emilio)
Status: ASSIGNED → RESOLVED
Closed: 5 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla68
You need to log in before you can comment on or make changes to this bug.