OLD | NEW |
1 # Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 # Copyright (c) 2010 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 { | 5 { |
6 'variables': { | 6 'variables': { |
7 'chromium_code': 1, | 7 'chromium_code': 1, |
8 'out_dir': '<(SHARED_INTERMEDIATE_DIR)/protoc_out/remoting/proto', | |
9 }, | 8 }, |
10 'targets': [ | 9 'targets': [ |
11 { | 10 { |
12 # Protobuf compiler / generate rule for chromoting.proto. | 11 'target_name': 'chromotocol_proto_lib', |
13 'target_name': 'chromotocol_proto', | 12 'type': 'static_library', |
14 'type': 'none', | |
15 'sources': [ | 13 'sources': [ |
16 'auth.proto', | 14 'auth.proto', |
17 'control.proto', | 15 'control.proto', |
18 'event.proto', | 16 'event.proto', |
19 'internal.proto', | 17 'internal.proto', |
20 'video.proto', | 18 'video.proto', |
21 ], | 19 ], |
22 'rules': [ | 20 'variables': { |
23 { | 21 'proto_out_dir': 'remoting/proto', |
24 'rule_name': 'genproto', | |
25 'extension': 'proto', | |
26 'inputs': [ | |
27 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)', | |
28 ], | |
29 'outputs': [ | |
30 '<(out_dir)/<(RULE_INPUT_ROOT).pb.cc', | |
31 '<(out_dir)/<(RULE_INPUT_ROOT).pb.h', | |
32 ], | |
33 'action': [ | |
34 '<(PRODUCT_DIR)/<(EXECUTABLE_PREFIX)protoc<(EXECUTABLE_SUFFIX)', | |
35 '--proto_path=.', | |
36 './<(RULE_INPUT_ROOT)<(RULE_INPUT_EXT)', | |
37 '--cpp_out=<(out_dir)', | |
38 ], | |
39 'message': 'Generating C++ and Python code from <(RULE_INPUT_PATH)', | |
40 }, | |
41 ], | |
42 'dependencies': [ | |
43 '<(DEPTH)/third_party/protobuf/protobuf.gyp:protoc#host', | |
44 ], | |
45 'direct_dependent_settings': { | |
46 'include_dirs': [ | |
47 '<(SHARED_INTERMEDIATE_DIR)/protoc_out', | |
48 ], | |
49 }, | 22 }, |
50 # This target exports a hard dependency because it generates header | 23 'includes': ['../../build/protoc.gypi'], |
51 # files. | |
52 'hard_dependency': 1, | |
53 }, | |
54 | |
55 { | |
56 'target_name': 'chromotocol_proto_lib', | |
57 'type': 'static_library', | |
58 'export_dependent_settings': [ | |
59 '<(DEPTH)/third_party/protobuf/protobuf.gyp:protobuf_lite', | |
60 'chromotocol_proto', | |
61 ], | |
62 'dependencies': [ | |
63 '<(DEPTH)/third_party/protobuf/protobuf.gyp:protobuf_lite', | |
64 'chromotocol_proto', | |
65 ], | |
66 # This target exports a hard dependency because depedents require | |
67 # chromotocol_proto to compile. | |
68 'hard_dependency': 1, | |
69 'sources': [ | |
70 '<(out_dir)/auth.pb.cc', | |
71 '<(out_dir)/auth.pb.h', | |
72 '<(out_dir)/control.pb.cc', | |
73 '<(out_dir)/control.pb.h', | |
74 '<(out_dir)/event.pb.cc', | |
75 '<(out_dir)/event.pb.h', | |
76 '<(out_dir)/internal.pb.cc', | |
77 '<(out_dir)/internal.pb.h', | |
78 '<(out_dir)/video.pb.cc', | |
79 '<(out_dir)/video.pb.h', | |
80 ], | |
81 }, | 24 }, |
82 ], | 25 ], |
83 } | 26 } |
OLD | NEW |