Closed Bug 1594851 Opened 2 years ago Closed 1 year ago

Add clang plugin to shell only builds


(Core :: JavaScript Engine, task, P2)




Tracking Status
firefox74 --- fixed


(Reporter: mgaudet, Assigned: mgaudet)




(1 file)

After Bug 1586100 lands, we should be able to add --enable-clang-plugin to the treeherder builds we do with clang.

This will help minimize backouts for things like missed explicit keywords that are right now only caught via a full browser build.

Priority: -- → P2

This prototype patch shows one way forward. However, it turns out that
it won't really do much today, as if you launch the fuzzy query
spidermonkey-linux, it turns out that all those builds use GCC.

The only shell builds we have using clang are the sanitizer builds
and fuzzing builds.

Bug 1580260 is also going to mean if you do this right now, you are going to break my normal build setup, which uses a home-built clang that is new enough to fall over on that. Sure, I can probably adapt, but ideally they will fix that P1 bug before we force a move here...

(I had to adapt to that bug by removing --enable-clang-plugin from my normal shell build command line. I dearly anticipate being able to add it back, or not having to add it at all...)

Assignee: nobody → mgaudet
Attachment #9122759 - Attachment description: Bug 1594851 - Run clang-plugin on SM(p) builds on linux DONTLANDYET → Bug 1594851 - Run clang-plugin on SM(p) builds on linux r?sfink

(For posterity: This won't break Jeff because he's manually configuring and this should only impact builds)

Pushed by
Run clang-plugin on SM(p) builds on linux r=sfink

Backed out for spidermonkey bustage



failure log:

[task 2020-01-29T05:41:29.641Z] Creating config.status
[task 2020-01-29T05:41:29.846Z] Reticulating splines...
[task 2020-01-29T05:41:29.869Z] Traceback (most recent call last):
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/js/src/../../", line 170, in <module>
[task 2020-01-29T05:41:29.869Z] sys.exit(main(sys.argv))
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/js/src/../../", line 51, in main
[task 2020-01-29T05:41:29.869Z] return config_status(config)
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/js/src/../../", line 165, in config_status
[task 2020-01-29T05:41:29.869Z] return config_status(args=[], **normalize(sanitized_config))
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/python/mozbuild/mozbuild/", line 142, in config_status
[task 2020-01-29T05:41:29.869Z] definitions = list(definitions)
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/python/mozbuild/mozbuild/frontend/", line 187, in emit
[task 2020-01-29T05:41:29.869Z] objs = list(emitfn(out))
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/python/mozbuild/mozbuild/frontend/", line 1180, in emit_from_context
[task 2020-01-29T05:41:29.869Z] for obj in self._process_generated_files(context):
[task 2020-01-29T05:41:29.869Z] File "/builds/worker/workspace/sm-package/mozjs-74.0a1.0/python/mozbuild/mozbuild/frontend/", line 1523, in _process_generated_files
[task 2020-01-29T05:41:29.870Z] % (f, p.full_path), context)
[task 2020-01-29T05:41:29.870Z] mozbuild.frontend.reader.SandboxValidationError:
[task 2020-01-29T05:41:29.870Z] ==============================
[task 2020-01-29T05:41:29.870Z] FATAL ERROR PROCESSING MOZBUILD FILE
[task 2020-01-29T05:41:29.870Z] ==============================
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.870Z] The error occurred while processing the following file or one of the files it includes:
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.870Z] /builds/worker/workspace/sm-package/mozjs-74.0a1.0/build/clang-plugin/
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.870Z] The error occurred when validating the result of the execution. The reported error is:
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.870Z] Input for generating ThirdPartyPaths.cpp does not exist: /builds/worker/workspace/sm-package/mozjs-74.0a1.0/tools/rewriting/ThirdPartyPaths.txt
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.870Z]
[task 2020-01-29T05:41:29.914Z] Traceback (most recent call last):
[task 2020-01-29T05:41:29.914Z] File "./devtools/automation/", line 425, in <module>
[task 2020-01-29T05:41:29.914Z] check=True)
[task 2020-01-29T05:41:29.914Z] File "./devtools/automation/", line 352, in run_command
[task 2020-01-29T05:41:29.914Z] raise subprocess.CalledProcessError(status, command, output=stderr)
[task 2020-01-29T05:41:29.914Z] subprocess.CalledProcessError: Command '['sh', '-c', '/builds/worker/workspace/sm-package/mozjs-74.0a1.0/js/src/configure --enable-clang-plugin --enable-stdcxx-compat --disable-gold --enable-rust-simd --enable-optimize --enable-nspr-build --prefix=/builds/worker/workspace/sm-package/mozjs-74.0a1.0/obj-spider/dist']' returned non-zero exit status 1
[fetches 2020-01-29T05:41:29.922Z] removing /builds/worker/fetches
[fetches 2020-01-29T05:41:30.534Z] finished
[taskcluster 2020-01-29 05:41:32.806Z] === Task Finished ===
[taskcluster 2020-01-29 05:41:34.814Z] Unsuccessful task run with exit code: 1 completed in 400.979 seconds

Flags: needinfo?(mgaudet)
Pushed by
Run clang-plugin on SM(p) builds on linux r=sfink
Flags: needinfo?(mgaudet)
Closed: 1 year ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla74
You need to log in before you can comment on or make changes to this bug.