# Copyright (c) 2012 The Chromium Authors. All rights reserved. # Use of this source code is governed by a BSD-style license that can be # found in the LICENSE file. { 'includes': [ '../../build/win_precompile.gypi', ], 'variables': { 'conditions': [ ['OS=="linux" and chromeos==1', { # Since version 1.31.0, pangoft2 which we depend on pulls in harfbuzz # anyways. However, we want to have control of the version of harfbuzz # we use, so don't use system harfbuzz unless we are building for # chrome os, where we have the system harfbuzz under control. 'use_system_harfbuzz%': ' int, size_t -> unsigned int 'msvs_disabled_warnings': [4267, 4334], }], ['OS=="mac"', { 'defines': [ 'HAVE_CORETEXT', ], 'sources': [ 'src/hb-coretext.cc', 'src/hb-coretext.h', ], }], # When without -fvisibility=hidden for pango to use the harfbuzz # in the tree, all symbols pango needs must be included, or # pango uses mixed versions of harfbuzz and leads to crash. # See crbug.com/462689. ['use_pango==1 and OS=="linux" and chromeos==0 and buildtype!="Official" and target_arch!="arm" and target_arch!="mipsel"', { 'cflags!': ['-fvisibility=hidden'], 'sources': [ 'src/hb-ft.cc', 'src/hb-ft.h', 'src/hb-glib.cc', 'src/hb-glib.h', ], 'link_settings': { 'ldflags': [ # These symbols are referenced from libpangoft2, which will be # dynamically linked later. '-Wl,-uhb_ft_face_create_cached,-uhb_glib_get_unicode_funcs', ], }, 'dependencies': [ '../../build/linux/system.gyp:freetype2', '../../build/linux/system.gyp:glib', ], }], ], }, ], }, { # use_system_harfbuzz==1 'targets': [ { 'target_name': 'harfbuzz-ng', 'type': 'none', 'cflags': [ '