1# Copyright (c) 2014 The WebRTC project authors. All Rights Reserved. 2# 3# Use of this source code is governed by a BSD-style license 4# that can be found in the LICENSE file in the root of the source 5# tree. An additional intellectual property rights grant can be found 6# in the file PATENTS. All contributing project authors may 7# be found in the AUTHORS file in the root of the source tree. 8 9if (is_win) { 10 gflags_gen_arch_root = "gen/win" 11} else { 12 gflags_gen_arch_root = "gen/posix" 13} 14 15config("gflags_config") { 16 include_dirs = [ 17 "$gflags_gen_arch_root/include", # For configured files. 18 "src/src", # For everything else. 19 ] 20 21 defines = [ 22 # These macros exist so flags and symbols are properly exported when 23 # building DLLs. Since we don't build DLLs, we need to disable them. 24 "GFLAGS_DLL_DECL=", 25 "GFLAGS_DLL_DECLARE_FLAG=", 26 "GFLAGS_DLL_DEFINE_FLAG=", 27 ] 28 29 # GN orders flags on a target before flags from configs. The default config 30 # adds -Wall, and this flag have to be after -Wall -- so they need to 31 # come from a config and can't be on the target directly. 32 if (is_clang) { 33 cflags = [ "-Wno-unused-local-typedef" ] 34 } 35} 36 37source_set("gflags") { 38 cflags = [] 39 sources = [ 40 "src/src/gflags.cc", 41 "src/src/gflags_completions.cc", 42 "src/src/gflags_reporting.cc", 43 ] 44 if (is_win) { 45 sources += [ "src/src/windows_port.cc" ] 46 47 cflags += [ 48 "/wd4005", # WIN32_LEAN_AND_MEAN. 49 "/wd4267", # Conversion from size_t to "type". 50 ] 51 } 52 53 include_dirs = [ 54 "$gflags_gen_arch_root/include/gflags", # For configured files. 55 "$gflags_gen_arch_root/include/private", # For config.h 56 ] 57 58 public_configs = [ ":gflags_config" ] 59 60 configs -= [ "//build/config/compiler:chromium_code" ] 61 configs += [ "//build/config/compiler:no_chromium_code" ] 62 63 if (is_win) { 64 configs -= [ "//build/config/win:unicode" ] 65 } 66 67 if (is_clang) { 68 # TODO(andrew): Look into fixing this warning upstream: 69 # http://code.google.com/p/webrtc/issues/detail?id=760 70 configs -= [ "//build/config/clang:extra_warnings" ] 71 cflags += [ "-Wno-microsoft-include" ] 72 } 73} 74