Issue metadata
Sign in to add a comment
|
extensions targets fail to build
Reported by
milko.le...@imgtec.com,
Mar 30 2017
|
||||||||||||||||||||||
Issue description
UserAgent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:52.0) Gecko/20100101 Firefox/52.0
Steps to reproduce the problem:
1. build app_shell_unittests target
gn gen out/x86_64 --args="is_debug=false target_os=\"linux\" target_cpu=\"x64\" is_clang=true"
ninja -j4 -C out/x86_64/ app_shell_unittests
What is the expected behavior?
app_shell_unittests target to be built
What went wrong?
build failed with error message:
FAILED: gen/extensions/extensions_renderer_resources_stamp.d.stamp gen/extensions/grit/extensions_renderer_resources.h gen/extensions/extensions_renderer_resources.pak
python ../../tools/grit/grit.py -i ../../extensions/renderer/resources/extensions_renderer_resources.grd build -o gen/extensions --depdir . --depfile gen/extensions/extensions_renderer_resources_stamp.d --write-only-new=1 --depend-on-stamp -D _chromium -E CHROMIUM_BUILD=chromium -D desktop_linux -D toolkit_views -D use_aura -D use_nss_certs -t linux2 -D enable_media_router -E mojom_root=/scratch1/work/Chrome_13032015/src/out/mips32r2_clang_298539/gen -f ../../tools/gritsettings/resource_ids --assert-file-list=obj/extensions/extensions_renderer_resources_expected_outputs.txt
Error processing node <?xml version="1.0" encoding="UTF-8"?>
<include file="${mojom_root}\chrome\browser\media\router\mojo\media_controller.mojom.js" name="IDR_MEDIA_CONTROLLER_MOJOM_JS" type="BINDATA" use_base_dir="false" />
Traceback (most recent call last):
File "../../tools/grit/grit.py", line 15, in <module>
grit.grit_runner.Main(sys.argv[1:])
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/grit_runner.py", line 268, in Main
toolobject.Run(options, args[1:])
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/tool/build.py", line 273, in Run
self.Process()
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/tool/build.py", line 400, in Process
self.ProcessNode(self.res, output, outfile)
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/tool/build.py", line 337, in ProcessNode
formatted = formatter(node, output_node.GetLanguage(), output_dir=base_dir)
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/format/data_pack.py", line 45, in Format
id, value = node.GetDataPackPair(lang, UTF8)
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/node/include.py", line 96, in GetDataPackPair
data = util.ReadFile(filename, util.BINARY)
File "/scratch1/work/Chrome_13032015/src/tools/grit/grit/util.py", line 207, in ReadFile
with open(filename, mode) as f:
IOError: [Errno 2] No such file or directory: u'/scratch1/work/Chrome_13032015/src/out/mips32r2_clang_298539/gen/chrome/browser/media/router/mojo/media_controller.mojom.js'
[17/15266] CXX obj/components/signin/core/common/common/profile_management_switches.o
ninja: build stopped: subcommand failed.
Did this work before? Yes Chromium r458921
Chrome version: 59.0.3057.0 (Developer Build) (64-bit) Channel: n/a
OS Version: Ubuntu 16.04
Flash Version:
This issue started after change https://codereview.chromium.org/2727123002
Issue is still present in Chromium r460686
After build of app_shell_unittests fails,
building chrome target will succeed and after that app_shell_unittests build will also succeed.
,
Apr 11 2017
extensions_unittests also fails. Build failure happens on Linux in all configurations I've tried (debug/release, component/non-component). The failure is in extensions:extensions_renderer_resources_grit, so everything depending on that fails (e.g., extensions/common) until chrome is build.
,
Apr 11 2017
isolated error:
~/dev/c/w2/src % gn clean out_linux/test
~/dev/c/w2/src % ninja -C out_linux/test -j 9999 -l 40 extensions:extensions_renderer_resources_grit
ninja: Entering directory `out_linux/test'
[1/1] Regenerating ninja files
[71/72] ACTION //extensions:extensions_renderer_resources_grit(//build/toolchain/linux:clang_x64)
FAILED: gen/extensions/extensions_renderer_resources_stamp.d.stamp gen/extensions/grit/extensions_renderer_resources.h gen/extensions/extensions_renderer_resources.pak
python ../../tools/grit/grit.py -i ../../extensions/renderer/resources/extensions_renderer_resources.grd build -o gen/extensions --depdir . --depfile gen/extensions/extensions_renderer_resources_stamp.d --write-only-new=1 --depend-on-stamp -D _chromium -E CHROMIUM_BUILD=chromium -D desktop_linux -D toolkit_views -D use_aura -D use_nss_certs -D enable_media_router -E mojom_root=/usr/local/google/home/michaelpg/dev/c/w2/src/out_linux/test/gen -f ../../tools/gritsettings/resource_ids --assert-file-list=obj/extensions/extensions_renderer_resources_expected_outputs.txt
Error processing node <?xml version="1.0" encoding="UTF-8"?>
<include file="${mojom_root}\chrome\browser\media\router\mojo\media_controller.mojom.js" name="IDR_MEDIA_CONTROLLER_MOJOM_JS" type="BINDATA" use_base_dir="false" />
Traceback (most recent call last):
File "../../tools/grit/grit.py", line 15, in <module>
grit.grit_runner.Main(sys.argv[1:])
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/grit_runner.py", line 268, in Main
toolobject.Run(options, args[1:])
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/tool/build.py", line 273, in Run
self.Process()
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/tool/build.py", line 400, in Process
self.ProcessNode(self.res, output, outfile)
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/tool/build.py", line 337, in ProcessNode
formatted = formatter(node, output_node.GetLanguage(), output_dir=base_dir)
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/format/data_pack.py", line 45, in Format
id, value = node.GetDataPackPair(lang, UTF8)
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/node/include.py", line 96, in GetDataPackPair
data = util.ReadFile(filename, util.BINARY)
File "/usr/local/google/home/michaelpg/dev/c/w2/src/tools/grit/grit/util.py", line 207, in ReadFile
with open(filename, mode) as f:
IOError: [Errno 2] No such file or directory: u'/usr/local/google/home/michaelpg/dev/c/w2/src/out_linux/test/gen/chrome/browser/media/router/mojo/media_controller.mojom.js'
ninja: build stopped: subcommand failed.
~
,
Apr 11 2017
One-line patch at https://codereview.chromium.org/2809303002/ fixes the problem without bringing in much more from chrome, thanks Devlin for the suggestion.
,
Apr 11 2017
It seems adding "//chrome/browser/media/router:mojo_bindings_common__generator" will resolve the immediate problem (although it's a bad hack, similar to the mojo_bindings dep). It seems the mojom __generator rules aren't transitive, which is why we get the build failure. takumif@ is working on a patch to move the resource Media Router mojom declarations out of extensions/renderer/resources/extensions_renderer_resources.grd, which should fix this bad dependency.
,
Apr 12 2017
Re #5: ...__generator is the actually IDL->source rule, which the template defines a source_set() target for as well; I'd expect the latter to have the correct transitive public_deps. What's the rationale for depending on the __generator rule directly?
,
Apr 12 2017
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/01d3aa8fc776bb4c2ca45d8e77e1f120e7d61f1b commit 01d3aa8fc776bb4c2ca45d8e77e1f120e7d61f1b Author: michaelpg <michaelpg@chromium.org> Date: Wed Apr 12 01:13:58 2017 Fix extensions targets building without chrome The extensions:extensions_renderer_resources_grit target fails to build without building parts of chrome first, meaning that targets in //extensions fail to build. This includes binaries like extensions_unittests, but also anything that depends on extensions/common and not chrome. The dependency was introduced in https://codereview.chromium.org/2727123002 without knowing it would cause build problems. This change seems to ensure the additional necessary mojo files are generated before being used, without introducing additional major chrome dependencies on top of those already here. Specifically, it ensures that obj/extensions/extensions_renderer_resources.ninja includes the mojo_bindings_common__* results. BUG= 706786 R=rdevlin.cronin@chromium.org Review-Url: https://codereview.chromium.org/2809303002 Cr-Commit-Position: refs/heads/master@{#463870} [modify] https://crrev.com/01d3aa8fc776bb4c2ca45d8e77e1f120e7d61f1b/extensions/BUILD.gn
,
Apr 12 2017
|
|||||||||||||||||||||||
►
Sign in to add a comment |
|||||||||||||||||||||||
Comment 1 by ranjitkan@chromium.org
, Apr 4 2017