New issue
Advanced search Search tips

Issue 747040 link

Starred by 2 users

Issue metadata

Status: Verified
Owner:
Closed: Jul 2017
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug

Blocking:
issue 724628



Sign in to add a comment

Build Chrome on ChromeOS with libc++

Project Member Reported by manojgupta@chromium.org, Jul 20 2017

Issue description

Chrome needs to be built with libc++ as part of libc++ migration.
 
Labels: -libc libcxx
Can build chrome with libc++ with minor changes to a few files in media/gpu.
There are a few errors that can be fixed easily (https://luci-logdog.appspot.com/v/?s=chromeos%2Fbb%2Fchromiumos.tryserver%2Fchromiumos-sdk%2F2407%2F%2B%2Frecipes%2Fsteps%2FSDKTest%2F0%2Fstdout): 

chromeos-chrome-61.0.3162.0_rc-r1: In file included from ../../../../../../../home/chrome-bot/chrome_root/src/media/gpu/v4l2_video_decode_accelerator.cc:5:
chromeos-chrome-61.0.3162.0_rc-r1: In file included from ../../../../../../../home/chrome-bot/chrome_root/src/media/gpu/v4l2_video_decode_accelerator.h:17:
chromeos-chrome-61.0.3162.0_rc-r1: In file included from /usr/bin/../include/c++/v1/queue:170:
chromeos-chrome-61.0.3162.0_rc-r1: /usr/bin/../include/c++/v1/deque:266:34: error: invalid application of 'sizeof' to an incomplete type 'media::V4L2VideoDecodeAccelerator::PictureRecord'
Project Member

Comment 4 by bugdroid1@chromium.org, Jul 24 2017

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

commit dde650aabdf603099b7e0dc863752cdf06cd8720
Author: Manoj Gupta <manojgupta@google.com>
Date: Mon Jul 24 22:22:19 2017

Fix chrome build on chromeos to work with libc++.

PictureRecord type was declared but not defined in the header files.
However, an object deque<PictureRecord> is needed further in another
structure. libc++ complains about the incomplete type in the header file.
Fox this by moving Picturerecord definition to the header file.

BUG= chromium:747040 
TEST=chromeos-chrome builds with libc++ enabled.

Change-Id: I43a9a4ff32bc6526a18082dfec62954011875fe5
Reviewed-on: https://chromium-review.googlesource.com/583571
Reviewed-by: Nico Weber <thakis@chromium.org>
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Manoj Gupta <manojgupta@chromium.org>
Cr-Commit-Position: refs/heads/master@{#489100}
[modify] https://crrev.com/dde650aabdf603099b7e0dc863752cdf06cd8720/media/gpu/v4l2_slice_video_decode_accelerator.cc
[modify] https://crrev.com/dde650aabdf603099b7e0dc863752cdf06cd8720/media/gpu/v4l2_slice_video_decode_accelerator.h
[modify] https://crrev.com/dde650aabdf603099b7e0dc863752cdf06cd8720/media/gpu/v4l2_video_decode_accelerator.cc
[modify] https://crrev.com/dde650aabdf603099b7e0dc863752cdf06cd8720/media/gpu/v4l2_video_decode_accelerator.h

Status: Verified (was: Untriaged)
libc++ build works now for lumpy, arm-generic and amd64-generic (https://uberchromegw.corp.google.com/i/chromiumos.tryserver/builders/chromiumos-sdk/builds/2416)

Can start regular libc++ testing soon :).

Sign in to add a comment