# Copyright 2016 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.

template("third_party") {
  config(target_name + "_public") {
    if (defined(invoker.public_defines)) {
      defines = invoker.public_defines
    }
    include_dirs = invoker.public_include_dirs
  }
  source_set(target_name) {
    forward_variables_from(invoker, "*", [ "public_include_dirs" ])
    public_configs = [ ":" + target_name + "_public" ]

    # Warnings are just noise if we're not maintaining the code.
    if (is_win) {
      cflags = [ "/w" ]
    } else {
      cflags = [ "-w" ]
    }
  }
}

set_defaults("third_party") {
  configs = default_configs - [ "//gn:warnings" ]
}

template("system") {
  config(target_name + "_public") {
    forward_variables_from(invoker, "*", [])
  }
  group(target_name) {
    public_configs = [ ":" + target_name + "_public" ]
  }
}