Missing permission_status.mojom.h on Chrome OS (flakey?) |
||||||||||
Issue descriptionWe started seeing errors like the one below on some PFQ builders, e.g.: https://uberchromegw.corp.google.com/i/chromeos.chrome/builders/x86-alex-tot-chrome-pfq-informational/builds/20409 https://uberchromegw.corp.google.com/i/chromeos.chrome/builders/tricky-tot-chrome-pfq-informational/builds/1214 https://uberchromegw.corp.google.com/i/chromeos.chrome/builders/veyron_minnie-cheets-tot-chrome-pfq-cheets-informational/builds/248 On most builders the error went away, but on some (e.g. tricky-tot-chrome-pfq-informational) the problem persists. chromeos-chrome-53.0.2776.0_alpha-r1: [10107/25461] CXX obj/components/visitedlink/common/visitedlink_common.visitedlink_message_generator.o chromeos-chrome-53.0.2776.0_alpha-r1: FAILED: obj/components/visitedlink/common/visitedlink_common.visitedlink_message_generator.o chromeos-chrome-53.0.2776.0_alpha-r1: x86_64-cros-linux-gnu-g++ -B/usr/x86_64-pc-linux-gnu/x86_64-cros-linux-gnu/binutils-bin/2.25.51-gold -MMD -MF obj/components/visitedlink/common/visitedlink_common.visitedlink_message_generator.o.d -DV8_DEPRECATION_WARNINGS -D_FILE_OFFSET_BITS=64 -DGOOGLE_CHROME_BUILD -DENABLE_RLZ -DUI_COMPOSITOR_IMAGE_TRANSPORT -DUSE_AURA=1 -DUSE_ASH=1 -DUSE_PANGO=1 -DUSE_CAIRO=1 -DUSE_CRAS=1 -DUSE_OZONE=1 -DUSE_DEFAULT_RENDER_THEME=1 -DUSE_LIBJPEG_TURBO=1 -DIMAGE_LOADER_EXTENSION=1 -DENABLE_WEBRTC=1 -DENABLE_MEDIA_ROUTER=1 -DUSE_PROPRIETARY_CODECS -DENABLE_PEPPER_CDMS -DENABLE_NOTIFICATIONS -DENABLE_WAYLAND_SERVER=1 -DUSE_UDEV -DENABLE_TASK_MANAGER=1 -DENABLE_EXTENSIONS=1 -DENABLE_PDF=1 -DENABLE_PLUGINS=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_THEMES=1 -DENABLE_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_APP_LIST=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_MDNS=1 -DENABLE_SERVICE_DISCOVERY=1 -DENABLE_HANGOUT_SERVICES_EXTENSION=1 -DV8_USE_EXTERNAL_STARTUP_DATA -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DUSE_LIBPCI=1 -DUSE_NSS_CERTS=1 -DOS_CHROMEOS=1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -DNDEBUG -DNO_UNWIND_TABLES -DOFFICIAL_BUILD -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -D_FORTIFY_SOURCE=2 -Igen -I../../../../../../../home/chrome-bot/chrome_root/src/third_party/khronos -I../../../../../../../home/chrome-bot/chrome_root/src/gpu -I../../../../../../../home/chrome-bot/chrome_root/src -I../../../../../../../home/chrome-bot/chrome_root/src/skia/config -Igen/angle -I../../../../../../../home/chrome-bot/chrome_root/src/third_party/WebKit/Source -I../../../../../../../home/chrome-bot/chrome_root/src/third_party/WebKit -Igen/third_party/WebKit -Werror -pthread -fno-strict-aliasing -Wall -Wno-extra -Wno-unused-parameter -Wno-missing-field-initializers -fvisibility=hidden -pipe -fPIC -g -Wno-unused-local-typedefs -m64 -march=x86-64 --sysroot=/build/tricky -O2 -fno-ident -fdata-sections -ffunction-sections -fno-unwind-tables -fno-asynchronous-unwind-tables -g -pipe -pipe -pipe -march=corei7 -D__google_stl_debug_vector=1 -fno-exceptions -fno-rtti -fno-threadsafe-statics -fvisibility-inlines-hidden -std=gnu++11 -Wno-narrowing -Wno-literal-suffix -c ../../../../../../../home/chrome-bot/chrome_root/src/components/visitedlink/common/visitedlink_message_generator.cc -o obj/components/visitedlink/common/visitedlink_common.visitedlink_message_generator.o chromeos-chrome-53.0.2776.0_alpha-r1: In file included from ../../../../../../../home/chrome-bot/chrome_root/src/components/visitedlink/common/visitedlink_messages.h:12:0, chromeos-chrome-53.0.2776.0_alpha-r1: from ../../../../../../../home/chrome-bot/chrome_root/src/components/visitedlink/common/visitedlink_message_generator.h:7, chromeos-chrome-53.0.2776.0_alpha-r1: from ../../../../../../../home/chrome-bot/chrome_root/src/components/visitedlink/common/visitedlink_message_generator.cc:7: chromeos-chrome-53.0.2776.0_alpha-r1: ../../../../../../../home/chrome-bot/chrome_root/src/content/public/common/common_param_traits_macros.h:25:92: fatal error: third_party/WebKit/public/platform/modules/permissions/permission_status.mojom.h: No such file or directory chromeos-chrome-53.0.2776.0_alpha-r1: #include "third_party/WebKit/public/platform/modules/permissions/permission_status.mojom.h" Importantly, we are still seeing this on this master PFQ builder: https://uberchromegw.corp.google.com/i/chromeos/builders/arm-generic-chromium-pfq It seems like maybe we lost a dependency somewhere?
,
Jun 22 2016
+sky@ for visitedlink +xhwang@ for "Move permission.mojom from WebKit/public/platform/ to components/" The dependency chain for this is a bit tangled, but I suspect that visitedlink_common needs to depend on blink.gyp:blink (or at least blink.gyp:mojo_bindings).
,
Jun 22 2016
It looks like for the permission_status.mojom.h, at a minimum, we need to declare dependency on WebKit/public:mojo_bindings.
,
Jun 22 2016
re:#2 I believe we're already using the GN workflow now sky@ please comment if we should add "//third_party/WebKit/public:mojo_bindings" to the deps[] in components/visitedlink/common/BUILD.gn
,
Jun 22 2016
We are not using GN inside the chroot yet. We're working on it... but for now we need to make sure both still work.
,
Jun 22 2016
Re:#5 then I'm confused how it works for components/visitedlink because there is not a single .GYP file there.
,
Jun 22 2016
CC thakis@, jamesr@ who may have some context on the dependency of blink mojo bindings. Apparently visitedlink.gypi does have dependency on public/blink.gyp:blink, however this is not sufficient.
,
Jun 22 2016
You probably need a hard_dependency somewhere.
,
Jun 22 2016
I have so far still not yet reproduced this problem with my local tricky official build. I'm using the gyp workflow: (1) first build chromeos-chrome from a clean build (2) remove gen/third_party/WebKit/public/platform/modules/permissions/permission_status.mojom.h and obj/components/visitedlink/common/visitedlink_common.visitedlink_message_generator.o from the output directory (3) run an incremental build If there's a dependency problem I'd expect to see this to fail with "permission_status.mojom.h not found" error, but it always succeeds.
,
Jun 22 2016
If there is a dependency issue that might not fail if the failing target isn't also removed. I suspect there is a subtle build order / timing issue. The incremental builders have all cycled green and the PFQ builders appear to have all successfully completed the BuildPackages stage, so maybe we are OK now? That said we should double check the dependencies and add one if it is missing. Lowering to P1.
,
Jun 23 2016
Happened again here, definitely seems like a missing dependency: https://build.chromium.org/p/chromiumos.chromium/builders/x86-generic-telemetry/builds/9767/steps/BuildPackages/logs/stdio
,
Jun 27 2016
Since this is probably a GYP specific failure and since we are planning to switch to GN on Chrome OS in the chroot after we branch on Friday, we can probably live with this for a week, assuming we don't have a similar issue in GN.
,
Jun 28 2016
Update: The error is seemed again today at build_package stage: https://uberchromegw.corp.google.com/i/chromeos/builders/veyron_minnie-cheets-chrome-pfq/builds/356/steps/BuildPackages/logs/stdio
,
Jun 28 2016
I'm going to assume this is a static library build, if I'm wrong, please let me know. The missing file is third_party/WebKit/public/platform/modules/permissions/permission_status.mojom.h Which is generated by third_party/WebKit/public/blink.gyp:mojo_bindings_blink_mojom The file being compiled is components/visitedlink/common/visitedlink_message_generator.cc . This file comes from components/visitedlink.gypi:visitedlink_common which depends on content/content.gyp:content_common content_common has a dependency on ../third_party/WebKit/public/blink.gyp:mojo_bindings The issue is that content.gyp doesn't export blink.gyp:mojo_bindings, so that visitedlink can start compiling before the generated files have been generated.
,
Jun 28 2016
,
Jun 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5f535f591cfafe8887d6a718eef1ef6124376637 commit 5f535f591cfafe8887d6a718eef1ef6124376637 Author: sky <sky@chromium.org> Date: Tue Jun 28 20:39:54 2016 Fix dependency issue in content_common (gyp) content/public/common/common_param_traits_macros.h includes a generated header from blink.gyp:mojo_bindings. This means anyone that depends upon content_common must also depend upon blink.gyp:mojo_bindings, otherwise the header may not have been generated and you get a compile error. The gn build deals with this already by using public_deps. BUG= 622365 TEST=build only change R=jam@chromium.org, japhet@chromium.org Review-Url: https://codereview.chromium.org/2102183002 Cr-Commit-Position: refs/heads/master@{#402538} [modify] https://crrev.com/5f535f591cfafe8887d6a718eef1ef6124376637/content/content_common.gypi [modify] https://crrev.com/5f535f591cfafe8887d6a718eef1ef6124376637/third_party/WebKit/public/blink.gyp
,
Jun 28 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/b56c3456420169cb81c1b08c44372fa4e1c29325 commit b56c3456420169cb81c1b08c44372fa4e1c29325 Author: Steven Bennetts <stevenjb@chromium.org> Date: Tue Jun 28 20:53:05 2016 Fix dependency issue in content_common (gyp) content/public/common/common_param_traits_macros.h includes a generated header from blink.gyp:mojo_bindings. This means anyone that depends upon content_common must also depend upon blink.gyp:mojo_bindings, otherwise the header may not have been generated and you get a compile error. The gn build deals with this already by using public_deps. BUG= 622365 TEST=build only change R=jam@chromium.org, japhet@chromium.org Review-Url: https://codereview.chromium.org/2102183002 Cr-Commit-Position: refs/heads/master@{#402538} (cherry picked from commit 5f535f591cfafe8887d6a718eef1ef6124376637) Review URL: https://codereview.chromium.org/2107933002 . Cr-Commit-Position: refs/branch-heads/2782@{#5} Cr-Branched-From: 4f1d832918c5966df3cc8ac1d23c8c1544262cee-refs/heads/master@{#402386} [modify] https://crrev.com/b56c3456420169cb81c1b08c44372fa4e1c29325/content/content_common.gypi [modify] https://crrev.com/b56c3456420169cb81c1b08c44372fa4e1c29325/third_party/WebKit/public/blink.gyp
,
Jun 28 2016
,
Jul 1 2016
Bulk verified |
||||||||||
►
Sign in to add a comment |
||||||||||
Comment 1 by steve...@chromium.org
, Jun 22 2016