xref: /aosp_15_r20/external/googleapis/google/api/BUILD.bazel (revision d5c09012810ac0c9f33fe448fb6da8260d444cc9)
1load("@rules_proto//proto:defs.bzl", "proto_library")
2
3# This is an API workspace, having public visibility by default makes perfect sense.
4package(default_visibility = ["//visibility:public"])
5
6##############################################################################
7# Common
8##############################################################################
9proto_library(
10    name = "annotations_proto",
11    srcs = ["annotations.proto"],
12    deps = [
13        ":http_proto",
14        "@com_google_protobuf//:descriptor_proto",
15    ],
16)
17
18proto_library(
19    name = "auth_proto",
20    srcs = ["auth.proto"],
21    deps = [":annotations_proto"],
22)
23
24proto_library(
25    name = "backend_proto",
26    srcs = ["backend.proto"],
27    visibility = ["//visibility:public"],
28)
29
30proto_library(
31    name = "billing_proto",
32    srcs = ["billing.proto"],
33    deps = [
34        ":annotations_proto",
35        ":metric_proto",
36    ],
37)
38
39proto_library(
40    name = "client_proto",
41    srcs = ["client.proto"],
42    deps = [
43        ":launch_stage_proto",
44        "@com_google_protobuf//:descriptor_proto",
45        "@com_google_protobuf//:duration_proto",
46    ],
47)
48
49proto_library(
50    name = "config_change_proto",
51    srcs = ["config_change.proto"],
52    visibility = ["//visibility:public"],
53)
54
55proto_library(
56    name = "consumer_proto",
57    srcs = ["consumer.proto"],
58    visibility = ["//visibility:public"],
59)
60
61proto_library(
62    name = "context_proto",
63    srcs = ["context.proto"],
64    visibility = ["//visibility:public"],
65)
66
67proto_library(
68    name = "control_proto",
69    srcs = ["control.proto"],
70    visibility = ["//visibility:public"],
71    deps = [
72        ":policy_proto",
73    ],
74)
75
76proto_library(
77    name = "distribution_proto",
78    srcs = ["distribution.proto"],
79    deps = [
80        ":annotations_proto",
81        "@com_google_protobuf//:any_proto",
82        "@com_google_protobuf//:timestamp_proto",
83    ],
84)
85
86proto_library(
87    name = "documentation_proto",
88    srcs = ["documentation.proto"],
89    visibility = ["//visibility:public"],
90)
91
92proto_library(
93    name = "endpoint_proto",
94    srcs = ["endpoint.proto"],
95    deps = [":annotations_proto"],
96)
97
98proto_library(
99    name = "error_reason_proto",
100    srcs = ["error_reason.proto"],
101)
102
103proto_library(
104    name = "field_info_proto",
105    srcs = ["field_info.proto"],
106    deps = [
107        "@com_google_protobuf//:descriptor_proto",
108    ],
109)
110
111proto_library(
112    name = "field_behavior_proto",
113    srcs = ["field_behavior.proto"],
114    deps = [
115        "@com_google_protobuf//:descriptor_proto",
116    ],
117)
118
119proto_library(
120    name = "http_proto",
121    srcs = ["http.proto"],
122    visibility = ["//visibility:public"],
123)
124
125proto_library(
126    name = "httpbody_proto",
127    srcs = ["httpbody.proto"],
128    deps = ["@com_google_protobuf//:any_proto"],
129)
130
131proto_library(
132    name = "label_proto",
133    srcs = ["label.proto"],
134    visibility = ["//visibility:public"],
135)
136
137proto_library(
138    name = "launch_stage_proto",
139    srcs = ["launch_stage.proto"],
140)
141
142proto_library(
143    name = "log_proto",
144    srcs = ["log.proto"],
145    deps = [":label_proto"],
146)
147
148proto_library(
149    name = "logging_proto",
150    srcs = ["logging.proto"],
151    deps = [
152        ":annotations_proto",
153        ":label_proto",
154    ],
155)
156
157proto_library(
158    name = "metric_proto",
159    srcs = ["metric.proto"],
160    deps = [
161        ":label_proto",
162        ":launch_stage_proto",
163        "@com_google_protobuf//:duration_proto",
164    ],
165)
166
167proto_library(
168    name = "monitored_resource_proto",
169    srcs = ["monitored_resource.proto"],
170    deps = [
171        ":label_proto",
172        ":launch_stage_proto",
173        "@com_google_protobuf//:struct_proto",
174    ],
175)
176
177proto_library(
178    name = "monitoring_proto",
179    srcs = ["monitoring.proto"],
180    deps = [":annotations_proto"],
181)
182
183proto_library(
184    name = "policy_proto",
185    srcs = ["policy.proto"],
186    deps = [
187        ":visibility_proto",
188        "@com_google_protobuf//:descriptor_proto",
189    ],
190)
191
192proto_library(
193    name = "quota_proto",
194    srcs = ["quota.proto"],
195    deps = [":annotations_proto"],
196)
197
198proto_library(
199    name = "resource_proto",
200    srcs = ["resource.proto"],
201    deps = [
202        "@com_google_protobuf//:descriptor_proto",
203    ],
204)
205
206proto_library(
207    name = "routing_proto",
208    srcs = ["routing.proto"],
209    deps = [
210        "@com_google_protobuf//:descriptor_proto",
211    ],
212)
213
214proto_library(
215    name = "service_proto",
216    srcs = ["service.proto"],
217    deps = [
218        ":annotations_proto",
219        ":auth_proto",
220        ":backend_proto",
221        ":billing_proto",
222        ":client_proto",
223        ":context_proto",
224        ":control_proto",
225        ":documentation_proto",
226        ":endpoint_proto",
227        ":http_proto",
228        ":label_proto",
229        ":log_proto",
230        ":logging_proto",
231        ":metric_proto",
232        ":monitored_resource_proto",
233        ":monitoring_proto",
234        ":policy_proto",
235        ":quota_proto",
236        ":resource_proto",
237        ":source_info_proto",
238        ":system_parameter_proto",
239        ":usage_proto",
240        "@com_google_protobuf//:any_proto",
241        "@com_google_protobuf//:api_proto",
242        "@com_google_protobuf//:type_proto",
243        "@com_google_protobuf//:wrappers_proto",
244    ],
245)
246
247proto_library(
248    name = "source_info_proto",
249    srcs = ["source_info.proto"],
250    deps = ["@com_google_protobuf//:any_proto"],
251)
252
253proto_library(
254    name = "system_parameter_proto",
255    srcs = ["system_parameter.proto"],
256    visibility = ["//visibility:public"],
257)
258
259proto_library(
260    name = "usage_proto",
261    srcs = ["usage.proto"],
262    deps = [
263        ":annotations_proto",
264        ":visibility_proto",
265    ],
266)
267
268proto_library(
269    name = "visibility_proto",
270    srcs = ["visibility.proto"],
271    visibility = ["//visibility:public"],
272    deps = ["@com_google_protobuf//:descriptor_proto"],
273)
274
275##############################################################################
276# Java
277##############################################################################
278load(
279    "@com_google_googleapis_imports//:imports.bzl",
280    "java_gapic_assembly_gradle_pkg",
281    "java_proto_library",
282)
283
284java_proto_library(
285    name = "api_java_proto",
286    deps = [
287        "annotations_proto",
288        "auth_proto",
289        "backend_proto",
290        "billing_proto",
291        "client_proto",
292        "config_change_proto",
293        "consumer_proto",
294        "context_proto",
295        "control_proto",
296        "distribution_proto",
297        "documentation_proto",
298        "endpoint_proto",
299        "error_reason_proto",
300        "field_behavior_proto",
301        "field_info_proto",
302        "http_proto",
303        "httpbody_proto",
304        "label_proto",
305        "launch_stage_proto",
306        "log_proto",
307        "logging_proto",
308        "metric_proto",
309        "monitored_resource_proto",
310        "monitoring_proto",
311        "policy_proto",
312        "quota_proto",
313        "resource_proto",
314        "routing_proto",
315        "service_proto",
316        "source_info_proto",
317        "system_parameter_proto",
318        "usage_proto",
319        "visibility_proto",
320    ],
321)
322
323# Please DO-NOT-REMOVE this section.
324# This is required to generate java files for these protos.
325# Open Source Packages
326java_gapic_assembly_gradle_pkg(
327    name = "google-api-java",
328    transport = "grpc+rest",
329    deps = [
330        "annotations_proto",
331        "auth_proto",
332        "backend_proto",
333        "billing_proto",
334        "client_proto",
335        "config_change_proto",
336        "consumer_proto",
337        "context_proto",
338        "control_proto",
339        "distribution_proto",
340        "documentation_proto",
341        "endpoint_proto",
342        "error_reason_proto",
343        "field_behavior_proto",
344        "field_info_proto",
345        "http_proto",
346        "httpbody_proto",
347        "label_proto",
348        "launch_stage_proto",
349        "log_proto",
350        "logging_proto",
351        "metric_proto",
352        "monitored_resource_proto",
353        "monitoring_proto",
354        "policy_proto",
355        "quota_proto",
356        "resource_proto",
357        "routing_proto",
358        "service_proto",
359        "source_info_proto",
360        "system_parameter_proto",
361        "usage_proto",
362        "visibility_proto",
363        ":api_java_proto",
364    ],
365)
366
367##############################################################################
368# Go
369##############################################################################
370load("@com_google_googleapis_imports//:imports.bzl", "go_proto_library")
371
372go_proto_library(
373    name = "annotations_go_proto",
374    importpath = "google.golang.org/genproto/googleapis/api/annotations",
375    protos = [
376        ":annotations_proto",
377        ":client_proto",
378        ":field_behavior_proto",
379        ":field_info_proto",
380        ":http_proto",
381        ":resource_proto",
382        ":routing_proto",
383    ],
384    deps = [":api_go_proto"],
385)
386
387go_proto_library(
388    name = "client_go_proto",
389    importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
390    protos = [":client_proto"],
391    deps = [":api_go_proto"],
392)
393
394go_proto_library(
395    name = "configchange_go_proto",
396    importpath = "google.golang.org/genproto/googleapis/api/configchange",
397    protos = [":config_change_proto"],
398)
399
400go_proto_library(
401    name = "distribution_go_proto",
402    importpath = "google.golang.org/genproto/googleapis/api/distribution",
403    protos = [":distribution_proto"],
404)
405
406
407go_proto_library(
408    name = "field_behavior_go_proto",
409    importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
410    protos = [":field_behavior_proto"],
411)
412
413go_proto_library(
414    name = "httpbody_go_proto",
415    importpath = "google.golang.org/genproto/googleapis/api/httpbody",
416    protos = [":httpbody_proto"],
417)
418
419go_proto_library(
420    name = "label_go_proto",
421    importpath = "google.golang.org/genproto/googleapis/api/label",
422    protos = [":label_proto"],
423)
424
425go_proto_library(
426    name = "api_go_proto",
427    importpath = "google.golang.org/genproto/googleapis/api",
428    protos = [
429        ":launch_stage_proto",
430    ],
431)
432
433go_proto_library(
434    name = "metric_go_proto",
435    importpath = "google.golang.org/genproto/googleapis/api/metric",
436    protos = [":metric_proto"],
437    deps = [
438        ":api_go_proto",
439        ":label_go_proto",
440    ],
441)
442
443go_proto_library(
444    name = "monitoredres_go_proto",
445    importpath = "google.golang.org/genproto/googleapis/api/monitoredres",
446    protos = [":monitored_resource_proto"],
447    deps = [
448        ":api_go_proto",
449        ":label_go_proto",
450    ],
451)
452
453go_proto_library(
454    name = "resource_go_proto",
455    importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
456    protos = [":resource_proto"],
457)
458
459go_proto_library(
460    name = "routing_go_proto",
461    importpath = "google.golang.org/genproto/googleapis/api/annotations;annotations",
462    protos = [":routing_proto"],
463)
464
465go_proto_library(
466    name = "serviceconfig_go_proto",
467    importpath = "google.golang.org/genproto/googleapis/api/serviceconfig",
468    protos = [
469        ":auth_proto",
470        ":backend_proto",
471        ":billing_proto",
472        ":context_proto",
473        ":control_proto",
474        ":documentation_proto",
475        ":endpoint_proto",
476        ":log_proto",
477        ":logging_proto",
478        ":monitoring_proto",
479        ":policy_proto",
480        ":quota_proto",
481        ":service_proto",
482        ":source_info_proto",
483        ":system_parameter_proto",
484        ":usage_proto",
485    ],
486    deps = [
487        ":annotations_go_proto",
488        ":api_go_proto",
489        ":label_go_proto",
490        ":metric_go_proto",
491        ":monitoredres_go_proto",
492    ],
493)
494
495go_proto_library(
496    name = "visibility_go_proto",
497    importpath = "google.golang.org/genproto/googleapis/api/visibility;visibility",
498    protos = [":visibility_proto"],
499)
500
501##############################################################################
502#  C++
503##############################################################################
504load("@com_google_googleapis_imports//:imports.bzl", "cc_proto_library")
505
506cc_proto_library(
507    name = "annotations_cc_proto",
508    deps = [":annotations_proto"],
509)
510
511cc_proto_library(
512    name = "auth_cc_proto",
513    deps = [":auth_proto"],
514)
515
516cc_proto_library(
517    name = "backend_cc_proto",
518    deps = [":backend_proto"],
519)
520
521cc_proto_library(
522    name = "billing_cc_proto",
523    deps = [":billing_proto"],
524)
525
526cc_proto_library(
527    name = "client_cc_proto",
528    deps = [":client_proto"],
529)
530
531cc_proto_library(
532    name = "config_change_cc_proto",
533    deps = [":config_change_proto"],
534)
535
536cc_proto_library(
537    name = "consumer_cc_proto",
538    deps = [":consumer_proto"],
539)
540
541cc_proto_library(
542    name = "context_cc_proto",
543    deps = [":context_proto"],
544)
545
546cc_proto_library(
547    name = "control_cc_proto",
548    deps = [":control_proto"],
549)
550
551cc_proto_library(
552    name = "distribution_cc_proto",
553    deps = [":distribution_proto"],
554)
555
556cc_proto_library(
557    name = "documentation_cc_proto",
558    deps = [":documentation_proto"],
559)
560
561cc_proto_library(
562    name = "endpoint_cc_proto",
563    deps = [":endpoint_proto"],
564)
565
566cc_proto_library(
567    name = "field_info_cc_proto",
568    deps = [":field_info_proto"],
569)
570
571cc_proto_library(
572    name = "field_behavior_cc_proto",
573    deps = [":field_behavior_proto"],
574)
575
576cc_proto_library(
577    name = "http_cc_proto",
578    deps = [":http_proto"],
579)
580
581cc_proto_library(
582    name = "httpbody_cc_proto",
583    deps = [":httpbody_proto"],
584)
585
586cc_proto_library(
587    name = "label_cc_proto",
588    deps = [":label_proto"],
589)
590
591cc_proto_library(
592    name = "launch_stage_cc_proto",
593    deps = [":launch_stage_proto"],
594)
595
596cc_proto_library(
597    name = "log_cc_proto",
598    deps = [":log_proto"],
599)
600
601cc_proto_library(
602    name = "logging_cc_proto",
603    deps = [":logging_proto"],
604)
605
606cc_proto_library(
607    name = "metric_cc_proto",
608    deps = [":metric_proto"],
609)
610
611cc_proto_library(
612    name = "monitored_resource_cc_proto",
613    deps = [":monitored_resource_proto"],
614)
615
616cc_proto_library(
617    name = "monitoring_cc_proto",
618    deps = [":monitoring_proto"],
619)
620
621cc_proto_library(
622    name = "policy_cc_proto",
623    deps = [":policy_proto"],
624)
625
626cc_proto_library(
627    name = "quota_cc_proto",
628    deps = [":quota_proto"],
629)
630
631cc_proto_library(
632    name = "resource_cc_proto",
633    deps = [":resource_proto"],
634)
635
636cc_proto_library(
637    name = "routing_cc_proto",
638    deps = [":routing_proto"],
639)
640
641cc_proto_library(
642    name = "service_cc_proto",
643    deps = [":service_proto"],
644)
645
646cc_proto_library(
647    name = "source_info_cc_proto",
648    deps = [":source_info_proto"],
649)
650
651cc_proto_library(
652    name = "system_parameter_cc_proto",
653    deps = [":system_parameter_proto"],
654)
655
656cc_proto_library(
657    name = "usage_cc_proto",
658    deps = [":usage_proto"],
659)
660
661cc_proto_library(
662    name = "visibility_cc_proto",
663    deps = [":visibility_proto"],
664)
665
666##############################################################################
667# Python
668##############################################################################
669load("@com_google_googleapis_imports//:imports.bzl", "py_proto_library")
670
671py_proto_library(
672    name = "annotations_py_proto",
673    deps = [":annotations_proto"],
674)
675
676py_proto_library(
677    name = "auth_py_proto",
678    deps = [":auth_proto"],
679)
680
681py_proto_library(
682    name = "backend_py_proto",
683    deps = [":backend_proto"],
684)
685
686py_proto_library(
687    name = "billing_py_proto",
688    deps = [":billing_proto"],
689)
690
691py_proto_library(
692    name = "client_py_proto",
693    deps = [":client_proto"],
694)
695
696py_proto_library(
697    name = "config_change_py_proto",
698    deps = [":config_change_proto"],
699)
700
701py_proto_library(
702    name = "consumer_py_proto",
703    deps = [":consumer_proto"],
704)
705
706py_proto_library(
707    name = "context_py_proto",
708    deps = [":context_proto"],
709)
710
711py_proto_library(
712    name = "control_py_proto",
713    deps = [":control_proto"],
714)
715
716py_proto_library(
717    name = "distribution_py_proto",
718    deps = [":distribution_proto"],
719)
720
721py_proto_library(
722    name = "documentation_py_proto",
723    deps = [":documentation_proto"],
724)
725
726py_proto_library(
727    name = "endpoint_py_proto",
728    deps = [":endpoint_proto"],
729)
730
731py_proto_library(
732    name = "field_info_py_proto",
733    deps = [":field_info_proto"],
734)
735
736py_proto_library(
737    name = "field_behavior_py_proto",
738    deps = [":field_behavior_proto"],
739)
740
741py_proto_library(
742    name = "http_py_proto",
743    deps = [":http_proto"],
744)
745
746py_proto_library(
747    name = "httpbody_py_proto",
748    deps = [":httpbody_proto"],
749)
750
751py_proto_library(
752    name = "label_py_proto",
753    deps = [":label_proto"],
754)
755
756py_proto_library(
757    name = "launch_stage_py_proto",
758    deps = [":launch_stage_proto"],
759)
760
761py_proto_library(
762    name = "log_py_proto",
763    deps = [":log_proto"],
764)
765
766py_proto_library(
767    name = "logging_py_proto",
768    deps = [":logging_proto"],
769)
770
771py_proto_library(
772    name = "metric_py_proto",
773    deps = [":metric_proto"],
774)
775
776py_proto_library(
777    name = "monitored_resource_py_proto",
778    deps = [":monitored_resource_proto"],
779)
780
781py_proto_library(
782    name = "monitoring_py_proto",
783    deps = ["monitoring_proto"],
784)
785
786py_proto_library(
787    name = "policy_py_proto",
788    deps = [":policy_proto"],
789)
790
791py_proto_library(
792    name = "quota_py_proto",
793    deps = ["quota_proto"],
794)
795
796py_proto_library(
797    name = "resource_py_proto",
798    deps = [":resource_proto"],
799)
800
801py_proto_library(
802    name = "routing_py_proto",
803    deps = [":routing_proto"],
804)
805
806py_proto_library(
807    name = "service_py_proto",
808    deps = [":service_proto"],
809)
810
811py_proto_library(
812    name = "source_info_py_proto",
813    deps = [":source_info_proto"],
814)
815
816py_proto_library(
817    name = "system_parameter_py_proto",
818    deps = [":system_parameter_proto"],
819)
820
821py_proto_library(
822    name = "usage_py_proto",
823    deps = [":usage_proto"],
824)
825
826py_proto_library(
827    name = "visibility_py_proto",
828    deps = ["visibility_proto"],
829)
830
831##############################################################################
832# PHP
833##############################################################################
834load(
835    "@com_google_googleapis_imports//:imports.bzl",
836    "php_gapic_assembly_pkg",
837    "php_proto_library",
838)
839
840php_proto_library(
841    name = "api_php_proto",
842    deps = [
843        "annotations_proto",
844        "auth_proto",
845        "backend_proto",
846        "billing_proto",
847        "client_proto",
848        "config_change_proto",
849        "consumer_proto",
850        "context_proto",
851        "control_proto",
852        "distribution_proto",
853        "documentation_proto",
854        "endpoint_proto",
855        "error_reason_proto",
856        "field_info_proto",
857        "field_behavior_proto",
858        "http_proto",
859        "httpbody_proto",
860        "label_proto",
861        "launch_stage_proto",
862        "log_proto",
863        "logging_proto",
864        "metric_proto",
865        "monitored_resource_proto",
866        "monitoring_proto",
867        "policy_proto",
868        "quota_proto",
869        "resource_proto",
870        "routing_proto",
871        "service_proto",
872        "source_info_proto",
873        "system_parameter_proto",
874        "usage_proto",
875        "visibility_proto",
876    ],
877)
878
879# Please DO-NOT-REMOVE this section.
880# This is required to generate php files for these protos.
881# Open Source Packages
882php_gapic_assembly_pkg(
883    name = "google-api-php",
884    deps = [":api_php_proto"],
885)
886