OLD | NEW |
1 # Copyright 2015 The Chromium Authors. All rights reserved. | 1 # Copyright 2015 The Chromium Authors. All rights reserved. |
2 # Use of this source code is governed by a BSD-style license that can be | 2 # Use of this source code is governed by a BSD-style license that can be |
3 # found in the LICENSE file. | 3 # found in the LICENSE file. |
4 | 4 |
5 import("//third_party/protobuf/proto_library.gni") | 5 import("//third_party/protobuf/proto_library.gni") |
6 | 6 |
7 # Use a group here to allow external targets to depend on "cc/proto" instead of | 7 # Use a group here to allow external targets to depend on "cc/proto" instead of |
8 # cc/proto:cc_proto. We need a group because other component targets are named | 8 # cc/proto:cc_proto. We need a group because other component targets are named |
9 # "proto" which breaks component builds. A group doesn't have the same issue. | 9 # "proto" which breaks component builds. A group doesn't have the same issue. |
10 group("proto") { | 10 group("proto") { |
11 public_deps = [ | 11 public_deps = [ |
12 ":cc_proto", | 12 ":cc_proto", |
13 ] | 13 ] |
14 } | 14 } |
15 | 15 |
16 component("cc_proto") { | 16 component("cc_proto") { |
17 # Only expose the target to the "proto" group. | 17 # Only expose the target to the "proto" group. |
18 visibility = [ ":proto" ] | 18 visibility = [ ":proto" ] |
19 | 19 |
20 public_deps = [ | 20 public_deps = [ |
21 ":proto_internal", | 21 ":proto_internal", |
22 ] | 22 ] |
23 } | 23 } |
24 | 24 |
25 proto_library("proto_internal") { | 25 proto_library("proto_internal") { |
26 # Only expose the target to the "cc_proto" target. | 26 # Only expose the target to the "cc_proto" target. |
27 visibility = [ ":cc_proto" ] | 27 visibility = [ ":cc_proto" ] |
28 | 28 |
29 sources = [ | 29 sources = [ |
30 # TODO(dtrainor): Move the ui/gfx related protos to ui/gfx/proto once it is | 30 # TODO(dtrainor): Move protos to their correct packages once it's possible |
31 # possible to include protos from other directories/targets (see | 31 # to include protos from other directories/targets (crbug.com/542423). |
32 # crbug.com/542423). | |
33 "point.proto", | 32 "point.proto", |
34 "pointf.proto", | 33 "pointf.proto", |
35 "rect.proto", | 34 "rect.proto", |
36 "rectf.proto", | 35 "rectf.proto", |
37 "size.proto", | 36 "size.proto", |
38 "sizef.proto", | 37 "sizef.proto", |
| 38 "skregion.proto", |
| 39 "skrrect.proto", |
| 40 "skxfermode.proto", |
39 "transform.proto", | 41 "transform.proto", |
40 ] | 42 ] |
41 | 43 |
42 deps = [ | 44 deps = [ |
43 "//third_party/protobuf:protobuf_lite", | 45 "//third_party/protobuf:protobuf_lite", |
44 ] | 46 ] |
45 | 47 |
46 cc_generator_options = "dllexport_decl=CC_PROTO_EXPORT:" | 48 cc_generator_options = "dllexport_decl=CC_PROTO_EXPORT:" |
47 cc_include = "cc/proto/cc_proto_export.h" | 49 cc_include = "cc/proto/cc_proto_export.h" |
48 | 50 |
49 defines = [ "CC_PROTO_IMPLEMENTATION" ] | 51 defines = [ "CC_PROTO_IMPLEMENTATION" ] |
50 | 52 |
51 # Warn if clang creates exit destructors. | 53 # Warn if clang creates exit destructors. |
52 extra_configs = [ "//build/config/compiler:wexit_time_destructors" ] | 54 extra_configs = [ "//build/config/compiler:wexit_time_destructors" ] |
53 } | 55 } |
OLD | NEW |