# 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") } visibility = [ "//third_party/WebKit/*" ] # features --------------------------------------------------------------------- config("features") { defines = feature_defines_list } # inside_blink ----------------------------------------------------------------- config("inside_blink") { defines = [ "BLINK_IMPLEMENTATION=1", "INSIDE_BLINK", ] } # config ----------------------------------------------------------------------- config("config") { include_dirs = [ ".", ".." ] cflags = [] defines = [] if (is_win) { cflags += [ "/wd4305", # Truncation from 'type1' to 'type2'. "/wd4324", # Struct padded due to declspec(align). "/wd4714", # Function marked forceinline not inlined. "/wd4800", # Value forced to bool. "/wd4996", # Deprecated function call. ] } if (is_win) { if (component_mode == "shared_library") { defines += [ "USING_V8_SHARED" ] } } else { # ! Windows # 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 && cpu_arch == "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_clang) { if (blink_gc_plugin && clang_use_chrome_plugins) { # TODO(GYP) #'cflags': ['<!@(../../../tools/clang/scripts/blink_gc_plugin_flags.sh enable-oilpan=<(enable_oilpan) dump-graph=<(blink_gc_plugin_dump_graph))'], } } } # 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" ] } }