aboutsummaryrefslogtreecommitdiff
path: root/files/third_party/gflags/BUILD.gn
diff options
context:
space:
mode:
Diffstat (limited to 'files/third_party/gflags/BUILD.gn')
-rw-r--r--files/third_party/gflags/BUILD.gn76
1 files changed, 76 insertions, 0 deletions
diff --git a/files/third_party/gflags/BUILD.gn b/files/third_party/gflags/BUILD.gn
new file mode 100644
index 00000000..69a07232
--- /dev/null
+++ b/files/third_party/gflags/BUILD.gn
@@ -0,0 +1,76 @@
+#
+# Copyright 2014 The LibYuv Project Authors. All rights reserved.
+#
+# Use of this source code is governed by a BSD-style license
+# that can be found in the LICENSE file in the root of the source
+# tree. An additional intellectual property rights grant can be found
+# in the file PATENTS. All contributing project authors may
+# be found in the AUTHORS file in the root of the source tree.
+
+# This is a copy of WebRTC's BUILD.gn.
+
+if (is_win) {
+ gflags_gen_arch_root = "gen/win"
+} else {
+ gflags_gen_arch_root = "gen/posix"
+}
+
+config("gflags_config") {
+ include_dirs = [
+ "$gflags_gen_arch_root/include", # For configured files.
+ "src/src", # For everything else.
+ ]
+
+ defines = [
+ # These macros exist so flags and symbols are properly exported when
+ # building DLLs. Since we don't build DLLs, we need to disable them.
+ "GFLAGS_DLL_DECL=",
+ "GFLAGS_DLL_DECLARE_FLAG=",
+ "GFLAGS_DLL_DEFINE_FLAG=",
+ ]
+
+ # GN orders flags on a target before flags from configs. The default config
+ # adds -Wall, and this flag have to be after -Wall -- so they need to
+ # come from a config and can't be on the target directly.
+ if (is_clang) {
+ cflags = [ "-Wno-unused-local-typedef" ]
+ }
+}
+
+source_set("gflags") {
+ cflags = []
+ sources = [
+ "src/src/gflags.cc",
+ "src/src/gflags_completions.cc",
+ "src/src/gflags_reporting.cc",
+ ]
+ if (is_win) {
+ sources += [ "src/src/windows_port.cc" ]
+
+ cflags += [
+ "/wd4005", # WIN32_LEAN_AND_MEAN.
+ "/wd4267", # Conversion from size_t to "type".
+ ]
+ }
+
+ include_dirs = [
+ "$gflags_gen_arch_root/include/gflags", # For configured files.
+ "$gflags_gen_arch_root/include/private", # For config.h
+ ]
+
+ public_configs = [ ":gflags_config" ]
+
+ configs -= [ "//build/config/compiler:chromium_code" ]
+ configs += [ "//build/config/compiler:no_chromium_code" ]
+
+ if (is_win) {
+ configs -= [ "//build/config/win:unicode" ]
+ }
+
+ if (is_clang) {
+ # TODO(andrew): Look into fixing this warning upstream:
+ # http://code.google.com/p/webrtc/issues/detail?id=760
+ configs -= [ "//build/config/clang:extra_warnings" ]
+ cflags += [ "-Wno-microsoft-include" ]
+ }
+}