blob: 613e1ad9c08136f9475108b13bb41cea3c014933 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
# 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
}
if (is_win) {
include_dirs = invoker.public_include_dirs
} else {
cflags = []
foreach(dir, invoker.public_include_dirs) {
cflags += ["-isystem", rebase_path(dir, root_build_dir)]
}
}
}
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" ]
}
}
|