Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(269)

Issue 1801813002: Decouple use_system_harfbuzz=1 from is_chromeos=1 & is_linux build flags (Closed)

Created:
4 years, 9 months ago by drott
Modified:
4 years, 8 months ago
Reviewers:
dpranke, Nico
CC:
chromium-reviews
Base URL:
https://chromium.googlesource.com/chromium/src.git@master
Target Ref:
refs/pending/heads/master
Project:
chromium
Visibility:
Public.

Description

Decouple use_system_harfbuzz=1 from is_chromeos=1 & is_linux build flags Instead, we should move to configuring the use_system_harfbuzz flag on the Chromium OS build separately, see: https://chromium.googlesource.com/chromiumos/overlays/chromiumos-overlay/+/master/chromeos-base/chromeos-chrome/chromeos-chrome-9999.ebuild#261 BUG=589342 R=dpranke,thakis

Patch Set 1 #

Unified diffs Side-by-side diffs Delta from patch set Stats (+20 lines, -30 lines) Patch
M third_party/harfbuzz-ng/BUILD.gn View 1 chunk +10 lines, -19 lines 0 comments Download
M third_party/harfbuzz-ng/harfbuzz.gyp View 1 chunk +10 lines, -11 lines 0 comments Download

Messages

Total messages: 10 (3 generated)
commit-bot: I haz the power
Dry run: CQ is trying da patch. Follow status at https://chromium-cq-status.appspot.com/patch-status/1801813002/1 View timeline at https://chromium-cq-status.appspot.com/patch-timeline/1801813002/1
4 years, 9 months ago (2016-03-14 16:32:31 UTC) #2
drott
I tried this on GN and on a quick pager render test it works fine ...
4 years, 9 months ago (2016-03-14 16:35:58 UTC) #4
commit-bot: I haz the power
Dry run: This issue passed the CQ dry run.
4 years, 9 months ago (2016-03-14 17:48:23 UTC) #6
Dirk Pranke
On 2016/03/14 16:35:58, drott wrote: > I tried this on GN and on a quick ...
4 years, 9 months ago (2016-03-16 02:29:28 UTC) #7
Nico
On 2016/03/14 16:35:58, drott wrote: > I tried this on GN and on a quick ...
4 years, 9 months ago (2016-03-18 22:03:51 UTC) #8
drott
On 2016/03/18 at 22:03:51, thakis wrote: > What I'm worried about is that nothing warns ...
4 years, 9 months ago (2016-03-22 08:49:13 UTC) #9
Dirk Pranke
4 years, 8 months ago (2016-04-02 03:11:18 UTC) #10
On 2016/03/22 08:49:13, drott wrote:
> On 2016/03/18 at 22:03:51, thakis wrote:
> 
> > What I'm worried about is that nothing warns about this in a gn build. Do
you
> understand why? Does the warning appear in a gn build but it's not an error,
or
> does the warning not even show up? Do you know why?
> 
> It does not show up in GN. I don't know why that is.

Okay, I think I've worked this all out now.

In GYP, when use_cairo=1 (which is the default on both desktop linux and
chromeos), //ui/gfx/gfx.gyp 
depends on //build/system/linux/system.gyp:pangocairo , which pulls in
pkg-config info for
pangocairo *and* pangoft2 . 

On desktop linux, pangoft2 is also pulled in via gtk2, which also pulls in the
system harfbuzz, so
everything is fine.

On chromeos=1, there's no gtk2, so we don't also pull in the system harfbuzz, so
pangoft2 
gets bent out of shape, generating the warnings.

In GN, for both desktop linux and chromeos=1, the logic is different and 
//build/system/linux:pangocairo does not pull in the pkg-config flags for
pangoft2, so we 
don't get the warnings (on desktop we still depend on gtk2 which will still pull
in pangoft2
that way, but it will also pull in the system harfbuzz in that case, so, no
warnings).

If you fix //build/linux/system.gyp to not pull in pangoft2's flags, things
appear fine.

So, barring running tests and seeing if anything weird happens, I think
statically
linking in harfbuzz-ng should be fine.

So, we should be able to decouple the flags.

I need to double-check all my logic on this on Monday, but I think this is the
path forward.

Powered by Google App Engine
This is Rietveld 408576698