| # Copyright 2014 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. |
| |
| import("config.gni") |
| if (is_clang) { |
| import("//build/config/clang/clang.gni") |
| } |
| if (is_posix) { |
| import("//build/config/gcc/gcc_version.gni") |
| } |
| |
| visibility = [ "//sky/*" ] |
| |
| # features --------------------------------------------------------------------- |
| |
| config("features") { |
| defines = feature_defines_list |
| } |
| |
| # inside_blink ----------------------------------------------------------------- |
| |
| config("inside_blink") { |
| defines = [ |
| "BLINK_IMPLEMENTATION=1", |
| "INSIDE_BLINK", |
| ] |
| } |
| |
| # config ----------------------------------------------------------------------- |
| |
| config("config") { |
| include_dirs = [ |
| ".", |
| "$root_out_dir", |
| ] |
| |
| cflags = [] |
| defines = [] |
| |
| # TODO(GYP) this should be based on gcc_version >= 46 but GN doesn't have a |
| # concept of GCC version yet. |
| |
| # Disable warnings about c++0x compatibility, as some names (such as |
| # nullptr) conflict with upcoming c++0x types. |
| cflags_cc = [ "-Wno-c++0x-compat" ] |
| |
| if (is_linux && target_cpu == "arm") { |
| # Due to a bug in gcc arm, we get warnings about uninitialized |
| # timesNewRoman.unstatic.3258 and colorTransparent.unstatic.4879. |
| cflags += [ "-Wno-uninitialized" ] |
| } |
| |
| if (is_posix && gcc_version >= 49) { |
| cflags += [ "-Wno-unused-but-set-variable" ] |
| } |
| } |
| |
| # The follow configs apply to all targets except for unit tests, which rely on |
| # static initializers. |
| config("non_test_config") { |
| cflags = [] |
| |
| if (is_clang) { |
| cflags += [ "-Wglobal-constructors" ] |
| } |
| } |
| |
| group("engine") { |
| deps = [ |
| "//sky/engine/platform", |
| "//sky/engine/public/sky", |
| "//sky/engine/web", |
| ] |
| } |