New issue
Advanced search Search tips

Issue 616220 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2016
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Mac
Pri: 3
Type: Bug

Blocking:
issue 431177



Sign in to add a comment

Regression: video_encode_accelerator_unittest doesn't build in mac/gn builds

Project Member Reported by thakis@chromium.org, May 31 2016

Issue description

thakis-macpro:src thakis$ time ninja -C out/gn/ video_encode_accelerator_unittest
ninja: Entering directory `out/gn/'
[1/2] CXX obj/media/gpu/video_encode_accelerator_unittest/video_encode_accelerator_unittest.o
FAILED: obj/media/gpu/video_encode_accelerator_unittest/video_encode_accelerator_unittest.o 
../../third_party/llvm-build/Release+Asserts/bin/clang++ -MMD -MF obj/media/gpu/video_encode_accelerator_unittest/video_encode_accelerator_unittest.o.d -DV8_DEPRECATION_WARNINGS -DENABLE_NOTIFICATIONS -DENABLE_PEPPER_CDMS -DENABLE_PLUGINS=1 -DENABLE_PDF=1 -DENABLE_PRINTING=1 -DENABLE_BASIC_PRINTING=1 -DENABLE_PRINT_PREVIEW=1 -DENABLE_SPELLCHECK=1 -DUSE_BROWSER_SPELLCHECKER=1 -DNO_TCMALLOC -DENABLE_WEBRTC=1 -DENABLE_EXTENSIONS=1 -DENABLE_TASK_MANAGER=1 -DENABLE_THEMES=1 -DENABLE_CAPTIVE_PORTAL_DETECTION=1 -DENABLE_SESSION_SERVICE=1 -DENABLE_PLUGIN_INSTALLATION=1 -DENABLE_SUPERVISED_USERS=1 -DENABLE_SERVICE_DISCOVERY=1 -DFULL_SAFE_BROWSING -DSAFE_BROWSING_CSD -DSAFE_BROWSING_DB_LOCAL -DCHROMIUM_BUILD -DENABLE_MEDIA_ROUTER=1 -DFIELDTRIAL_TESTING_ENABLED -DCR_CLANG_REVISION=270823-1 -D__STDC_CONSTANT_MACROS -D__STDC_FORMAT_MACROS -D_FORTIFY_SOURCE=2 -DCOMPONENT_BUILD -DNDEBUG -DNVALGRIND -DDYNAMIC_ANNOTATIONS_ENABLED=0 -DGTEST_HAS_POSIX_RE=0 -DGTEST_LANG_CXX11=0 -DGTEST_HAS_RTTI=0 -DSK_SUPPORT_LEGACY_TYPEFACE_MAKE_FROM_NAME -DSK_IGNORE_LINEONLY_AA_CONVEX_PATH_OPTS -DSKIA_DLL -DGR_GL_IGNORE_ES3_MSAA=0 -DSK_SUPPORT_GPU=1 -DSK_BUILD_FOR_MAC -DU_USING_ICU_NAMESPACE=0 -DU_ENABLE_DYLOAD=0 -DU_NOEXCEPT= -DICU_UTIL_DATA_IMPL=ICU_UTIL_DATA_FILE -DMESA_EGL_NO_X11_HEADERS -DUNIT_TEST -I../.. -Igen -I../../third_party/libva -I../../third_party/libyuv -I../../third_party/libyuv/include -I../../third_party/khronos -I../../gpu -I../../third_party/libwebm/source -I../../third_party/opus/src/include -I../../testing/gtest/include -I../../skia/config -I../../skia/ext -I../../third_party/skia/include/c -I../../third_party/skia/include/config -I../../third_party/skia/include/core -I../../third_party/skia/include/effects -I../../third_party/skia/include/images -I../../third_party/skia/include/lazy -I../../third_party/skia/include/pathops -I../../third_party/skia/include/pdf -I../../third_party/skia/include/pipe -I../../third_party/skia/include/ports -I../../third_party/skia/include/utils -I../../third_party/skia/include/gpu -I../../third_party/skia/src/gpu -I../../third_party/icu/source/common -I../../third_party/icu/source/i18n -I../../third_party/mesa/src/include -fno-strict-aliasing -fstack-protector-all -fcolor-diagnostics -arch x86_64 -Wall -Werror -Wextra -Wpartial-availability -Wno-missing-field-initializers -Wno-unused-parameter -Wno-c++11-narrowing -Wno-covered-switch-default -Wno-deprecated-register -Wno-unneeded-internal-declaration -Wno-inconsistent-missing-override -Wno-shift-negative-value -Wno-undefined-var-template -O2 -fno-ident -fdata-sections -ffunction-sections -g1 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk -mmacosx-version-min=10.7 -fvisibility=hidden -Xclang -load -Xclang ../../third_party/llvm-build/Release+Asserts/lib/libFindBadConstructs.dylib -Xclang -add-plugin -Xclang find-bad-constructs -Xclang -plugin-arg-find-bad-constructs -Xclang check-templates -Xclang -plugin-arg-find-bad-constructs -Xclang follow-macro-expansion -Xclang -plugin-arg-find-bad-constructs -Xclang check-implicit-copy-ctors -Wheader-hygiene -Wstring-conversion -fno-threadsafe-statics -fvisibility-inlines-hidden -std=c++11 -stdlib=libc++ -fno-rtti -fno-exceptions -c ../../media/gpu/video_encode_accelerator_unittest.cc -o obj/media/gpu/video_encode_accelerator_unittest/video_encode_accelerator_unittest.o
In file included from ../../media/gpu/video_encode_accelerator_unittest.cc:61:
In file included from ../../media/gpu/vt_video_encode_accelerator_mac.h:15:
../../third_party/webrtc/common_video/include/bitrate_adjuster.h:16:10: fatal error: 'webrtc/base/criticalsection.h' file not found
#include "webrtc/base/criticalsection.h"
         ^
1 error generated.
ninja: build stopped: subcommand failed.


This used to work.

thakis-macpro:src thakis$ cat out/gn/args.gn 
# Build arguments go here. Examples:
#   is_component_build = true
#   is_debug = false
# See "gn args <out_dir> --list" for available build arguments.
is_debug = false
is_component_build = true
symbol_level 
 

Comment 1 by thakis@chromium.org, May 31 2016

Cc: emir...@chromium.org
probably due to https://codereview.chromium.org/1818903004

Since a webrtc video_common header is now included in a header of media/gpu, this is probably the right fix?

thakis-macpro:src thakis$ git diff
diff --git a/media/gpu/BUILD.gn b/media/gpu/BUILD.gn
index ada653b2..c4d0830 100644
--- a/media/gpu/BUILD.gn
+++ b/media/gpu/BUILD.gn
@@ -186,9 +186,11 @@ component("gpu") {
                ] + get_target_outputs(":libvt_generate_stubs")
     deps += [
       ":libvt_generate_stubs",
-      "//third_party/webrtc/common_video",
       "//third_party/webrtc/system_wrappers",
     ]
+    public_deps += [
+      "//third_party/webrtc/common_video",
+    ]
     libs += [
       "CoreFoundation.framework",
       "Foundation.framework",


It fixes the problem for me locally.
Sgtm. Do you have a patch for it, or should I?
Owner: thakis@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 5 by bugdroid1@chromium.org, Jun 1 2016

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ecd1a0d8c84582fc1f8c3f1cd78f73494c7d1a01

commit ecd1a0d8c84582fc1f8c3f1cd78f73494c7d1a01
Author: thakis <thakis@chromium.org>
Date: Wed Jun 01 12:38:20 2016

mac/gn: Unbreak video_encode_accelerator_unittest after https://codereview.chromium.org/1818903004

A media/gpu header now includes a webrtc video_common header, so video_common
now must be a public_dep, so that webrtc's include directories are passed to
dependencies.

BUG= 616220 
NOTRY=true

Review-Url: https://codereview.chromium.org/2028543003
Cr-Commit-Position: refs/heads/master@{#397114}

[modify] https://crrev.com/ecd1a0d8c84582fc1f8c3f1cd78f73494c7d1a01/media/gpu/BUILD.gn

Status: Fixed (was: Assigned)

Sign in to add a comment