xref: /aosp_15_r20/external/cronet/third_party/protobuf/pkg/BUILD.bazel (revision 6777b5387eb2ff775bb5750e3f5d96f37fb7352b)
1*6777b538SAndroid Build Coastguard Workerload("@rules_pkg//:pkg.bzl", "pkg_tar", "pkg_zip")
2*6777b538SAndroid Build Coastguard Workerload(
3*6777b538SAndroid Build Coastguard Worker    "@rules_pkg//:mappings.bzl",
4*6777b538SAndroid Build Coastguard Worker    "pkg_attributes",
5*6777b538SAndroid Build Coastguard Worker    "pkg_filegroup",
6*6777b538SAndroid Build Coastguard Worker    "pkg_files",
7*6777b538SAndroid Build Coastguard Worker    "strip_prefix",
8*6777b538SAndroid Build Coastguard Worker)
9*6777b538SAndroid Build Coastguard Workerload("//:protobuf_release.bzl", "package_naming")
10*6777b538SAndroid Build Coastguard Workerload(":build_systems.bzl", "gen_automake_file_lists", "gen_file_lists")
11*6777b538SAndroid Build Coastguard Workerload(":cc_dist_library.bzl", "cc_dist_library")
12*6777b538SAndroid Build Coastguard Worker
13*6777b538SAndroid Build Coastguard Workerpackage_naming(
14*6777b538SAndroid Build Coastguard Worker    name = "protobuf_pkg_naming",
15*6777b538SAndroid Build Coastguard Worker)
16*6777b538SAndroid Build Coastguard Worker
17*6777b538SAndroid Build Coastguard Workerpkg_files(
18*6777b538SAndroid Build Coastguard Worker    name = "wkt_protos_files",
19*6777b538SAndroid Build Coastguard Worker    srcs = [
20*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/any.proto",
21*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/api.proto",
22*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/descriptor.proto",
23*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/duration.proto",
24*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/empty.proto",
25*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/field_mask.proto",
26*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/source_context.proto",
27*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/struct.proto",
28*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/timestamp.proto",
29*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/type.proto",
30*6777b538SAndroid Build Coastguard Worker        "//:src/google/protobuf/wrappers.proto",
31*6777b538SAndroid Build Coastguard Worker    ],
32*6777b538SAndroid Build Coastguard Worker    prefix = "include/google/protobuf",
33*6777b538SAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
34*6777b538SAndroid Build Coastguard Worker)
35*6777b538SAndroid Build Coastguard Worker
36*6777b538SAndroid Build Coastguard Workerpkg_files(
37*6777b538SAndroid Build Coastguard Worker    name = "compiler_plugin_protos_files",
38*6777b538SAndroid Build Coastguard Worker    srcs = ["//:src/google/protobuf/compiler/plugin.proto"],
39*6777b538SAndroid Build Coastguard Worker    prefix = "include/google/protobuf/compiler",
40*6777b538SAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
41*6777b538SAndroid Build Coastguard Worker)
42*6777b538SAndroid Build Coastguard Worker
43*6777b538SAndroid Build Coastguard Worker################################################################################
44*6777b538SAndroid Build Coastguard Worker# Generates protoc release artifacts.
45*6777b538SAndroid Build Coastguard Worker################################################################################
46*6777b538SAndroid Build Coastguard Worker
47*6777b538SAndroid Build Coastguard Workergenrule(
48*6777b538SAndroid Build Coastguard Worker    name = "protoc_readme",
49*6777b538SAndroid Build Coastguard Worker    outs = ["readme.txt"],
50*6777b538SAndroid Build Coastguard Worker    cmd = """
51*6777b538SAndroid Build Coastguard Workerecho "Protocol Buffers - Google's data interchange format
52*6777b538SAndroid Build Coastguard WorkerCopyright 2008 Google Inc.
53*6777b538SAndroid Build Coastguard Workerhttps://developers.google.com/protocol-buffers/
54*6777b538SAndroid Build Coastguard WorkerThis package contains a precompiled binary version of the protocol buffer
55*6777b538SAndroid Build Coastguard Workercompiler (protoc). This binary is intended for users who want to use Protocol
56*6777b538SAndroid Build Coastguard WorkerBuffers in languages other than C++ but do not want to compile protoc
57*6777b538SAndroid Build Coastguard Workerthemselves. To install, simply place this binary somewhere in your PATH.
58*6777b538SAndroid Build Coastguard WorkerIf you intend to use the included well known types then don't forget to
59*6777b538SAndroid Build Coastguard Workercopy the contents of the 'include' directory somewhere as well, for example
60*6777b538SAndroid Build Coastguard Workerinto '/usr/local/include/'.
61*6777b538SAndroid Build Coastguard WorkerPlease refer to our official github site for more installation instructions:
62*6777b538SAndroid Build Coastguard Worker  https://github.com/protocolbuffers/protobuf" > $@
63*6777b538SAndroid Build Coastguard Worker    """,
64*6777b538SAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
65*6777b538SAndroid Build Coastguard Worker)
66*6777b538SAndroid Build Coastguard Worker
67*6777b538SAndroid Build Coastguard Workerpkg_files(
68*6777b538SAndroid Build Coastguard Worker    name = "protoc_files",
69*6777b538SAndroid Build Coastguard Worker    srcs = ["//:protoc"],
70*6777b538SAndroid Build Coastguard Worker    attributes = pkg_attributes(mode = "0555"),
71*6777b538SAndroid Build Coastguard Worker    prefix = "bin/",
72*6777b538SAndroid Build Coastguard Worker    visibility = ["//visibility:private"],
73*6777b538SAndroid Build Coastguard Worker)
74*6777b538SAndroid Build Coastguard Worker
75*6777b538SAndroid Build Coastguard Workerpkg_zip(
76*6777b538SAndroid Build Coastguard Worker    name = "protoc_release",
77*6777b538SAndroid Build Coastguard Worker    srcs = [
78*6777b538SAndroid Build Coastguard Worker        ":compiler_plugin_protos_files",
79*6777b538SAndroid Build Coastguard Worker        ":protoc_files",
80*6777b538SAndroid Build Coastguard Worker        ":protoc_readme",
81*6777b538SAndroid Build Coastguard Worker        ":wkt_protos_files",
82*6777b538SAndroid Build Coastguard Worker    ],
83*6777b538SAndroid Build Coastguard Worker    package_file_name = "protoc-{version}-{platform}.zip",
84*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
85*6777b538SAndroid Build Coastguard Worker)
86*6777b538SAndroid Build Coastguard Worker
87*6777b538SAndroid Build Coastguard Worker################################################################################
88*6777b538SAndroid Build Coastguard Worker# Source distribution packaging
89*6777b538SAndroid Build Coastguard Worker#
90*6777b538SAndroid Build Coastguard Worker# TODO: these will eventually replace autotools for release artifact packaging.
91*6777b538SAndroid Build Coastguard Worker################################################################################
92*6777b538SAndroid Build Coastguard Worker
93*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
94*6777b538SAndroid Build Coastguard Worker    name = "dist_common",
95*6777b538SAndroid Build Coastguard Worker    srcs = [
96*6777b538SAndroid Build Coastguard Worker        ":dist_files",
97*6777b538SAndroid Build Coastguard Worker        "//:common_dist_files",
98*6777b538SAndroid Build Coastguard Worker        "//:cpp_dist_files",  # to build protoc
99*6777b538SAndroid Build Coastguard Worker        "//benchmarks:all_dist_files",
100*6777b538SAndroid Build Coastguard Worker        "//build_defs:dist_files",
101*6777b538SAndroid Build Coastguard Worker        "//conformance:all_dist_files",
102*6777b538SAndroid Build Coastguard Worker        "@com_google_protobuf_examples//:dist_files",
103*6777b538SAndroid Build Coastguard Worker    ],
104*6777b538SAndroid Build Coastguard Worker)
105*6777b538SAndroid Build Coastguard Worker
106*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
107*6777b538SAndroid Build Coastguard Worker    name = "cpp_srcs",
108*6777b538SAndroid Build Coastguard Worker    srcs = [
109*6777b538SAndroid Build Coastguard Worker        ":dist_common",
110*6777b538SAndroid Build Coastguard Worker        "//:cpp_dist_files",
111*6777b538SAndroid Build Coastguard Worker    ],
112*6777b538SAndroid Build Coastguard Worker)
113*6777b538SAndroid Build Coastguard Worker
114*6777b538SAndroid Build Coastguard Workerpkg_tar(
115*6777b538SAndroid Build Coastguard Worker    name = "dist_cpp_tar",
116*6777b538SAndroid Build Coastguard Worker    srcs = [":cpp_srcs"],
117*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
118*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
119*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-cpp-{version}.tar.gz",
120*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
121*6777b538SAndroid Build Coastguard Worker)
122*6777b538SAndroid Build Coastguard Worker
123*6777b538SAndroid Build Coastguard Workerpkg_zip(
124*6777b538SAndroid Build Coastguard Worker    name = "dist_cpp_zip",
125*6777b538SAndroid Build Coastguard Worker    srcs = [":cpp_srcs"],
126*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-cpp-{version}.zip",
127*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
128*6777b538SAndroid Build Coastguard Worker)
129*6777b538SAndroid Build Coastguard Worker
130*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
131*6777b538SAndroid Build Coastguard Worker    name = "csharp_srcs",
132*6777b538SAndroid Build Coastguard Worker    srcs = [
133*6777b538SAndroid Build Coastguard Worker        ":dist_common",
134*6777b538SAndroid Build Coastguard Worker        "//:csharp_dist_files",
135*6777b538SAndroid Build Coastguard Worker        "//csharp:dist_files",
136*6777b538SAndroid Build Coastguard Worker    ],
137*6777b538SAndroid Build Coastguard Worker)
138*6777b538SAndroid Build Coastguard Worker
139*6777b538SAndroid Build Coastguard Workerpkg_tar(
140*6777b538SAndroid Build Coastguard Worker    name = "dist_csharp_tar",
141*6777b538SAndroid Build Coastguard Worker    srcs = [":csharp_srcs"],
142*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
143*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
144*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-csharp-{version}.tar.gz",
145*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
146*6777b538SAndroid Build Coastguard Worker)
147*6777b538SAndroid Build Coastguard Worker
148*6777b538SAndroid Build Coastguard Workerpkg_zip(
149*6777b538SAndroid Build Coastguard Worker    name = "dist_csharp_zip",
150*6777b538SAndroid Build Coastguard Worker    srcs = [":csharp_srcs"],
151*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-csharp-{version}.zip",
152*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
153*6777b538SAndroid Build Coastguard Worker)
154*6777b538SAndroid Build Coastguard Worker
155*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
156*6777b538SAndroid Build Coastguard Worker    name = "java_srcs",
157*6777b538SAndroid Build Coastguard Worker    srcs = [
158*6777b538SAndroid Build Coastguard Worker        ":dist_common",
159*6777b538SAndroid Build Coastguard Worker        "//java:all_dist_files",
160*6777b538SAndroid Build Coastguard Worker    ],
161*6777b538SAndroid Build Coastguard Worker)
162*6777b538SAndroid Build Coastguard Worker
163*6777b538SAndroid Build Coastguard Workerpkg_tar(
164*6777b538SAndroid Build Coastguard Worker    name = "dist_java_tar",
165*6777b538SAndroid Build Coastguard Worker    srcs = [":java_srcs"],
166*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
167*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
168*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-java-{version}.tar.gz",
169*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
170*6777b538SAndroid Build Coastguard Worker)
171*6777b538SAndroid Build Coastguard Worker
172*6777b538SAndroid Build Coastguard Workerpkg_zip(
173*6777b538SAndroid Build Coastguard Worker    name = "dist_java_zip",
174*6777b538SAndroid Build Coastguard Worker    srcs = [":java_srcs"],
175*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-java-{version}.zip",
176*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
177*6777b538SAndroid Build Coastguard Worker)
178*6777b538SAndroid Build Coastguard Worker
179*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
180*6777b538SAndroid Build Coastguard Worker    name = "objectivec_srcs",
181*6777b538SAndroid Build Coastguard Worker    srcs = [
182*6777b538SAndroid Build Coastguard Worker        ":dist_common",
183*6777b538SAndroid Build Coastguard Worker        "//:objectivec_dist_files",
184*6777b538SAndroid Build Coastguard Worker        "//objectivec:dist_files",
185*6777b538SAndroid Build Coastguard Worker    ],
186*6777b538SAndroid Build Coastguard Worker)
187*6777b538SAndroid Build Coastguard Worker
188*6777b538SAndroid Build Coastguard Workerpkg_tar(
189*6777b538SAndroid Build Coastguard Worker    name = "dist_objectivec_tar",
190*6777b538SAndroid Build Coastguard Worker    srcs = [":objectivec_srcs"],
191*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
192*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
193*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-objectivec-{version}.tar.gz",
194*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
195*6777b538SAndroid Build Coastguard Worker)
196*6777b538SAndroid Build Coastguard Worker
197*6777b538SAndroid Build Coastguard Workerpkg_zip(
198*6777b538SAndroid Build Coastguard Worker    name = "dist_objectivec_zip",
199*6777b538SAndroid Build Coastguard Worker    srcs = [":objectivec_srcs"],
200*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-objectivec-{version}.zip",
201*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
202*6777b538SAndroid Build Coastguard Worker)
203*6777b538SAndroid Build Coastguard Worker
204*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
205*6777b538SAndroid Build Coastguard Worker    name = "php_srcs",
206*6777b538SAndroid Build Coastguard Worker    srcs = [
207*6777b538SAndroid Build Coastguard Worker        ":dist_common",
208*6777b538SAndroid Build Coastguard Worker        "//php:dist_files",
209*6777b538SAndroid Build Coastguard Worker    ],
210*6777b538SAndroid Build Coastguard Worker)
211*6777b538SAndroid Build Coastguard Worker
212*6777b538SAndroid Build Coastguard Workerpkg_tar(
213*6777b538SAndroid Build Coastguard Worker    name = "dist_php_tar",
214*6777b538SAndroid Build Coastguard Worker    srcs = [":php_srcs"],
215*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
216*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
217*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-php-{version}.tar.gz",
218*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
219*6777b538SAndroid Build Coastguard Worker)
220*6777b538SAndroid Build Coastguard Worker
221*6777b538SAndroid Build Coastguard Workerpkg_zip(
222*6777b538SAndroid Build Coastguard Worker    name = "dist_php_zip",
223*6777b538SAndroid Build Coastguard Worker    srcs = [":php_srcs"],
224*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-php-{version}.zip",
225*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
226*6777b538SAndroid Build Coastguard Worker)
227*6777b538SAndroid Build Coastguard Worker
228*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
229*6777b538SAndroid Build Coastguard Worker    name = "python_srcs",
230*6777b538SAndroid Build Coastguard Worker    srcs = [
231*6777b538SAndroid Build Coastguard Worker        ":dist_common",
232*6777b538SAndroid Build Coastguard Worker        "//:python_dist_files",
233*6777b538SAndroid Build Coastguard Worker    ],
234*6777b538SAndroid Build Coastguard Worker)
235*6777b538SAndroid Build Coastguard Worker
236*6777b538SAndroid Build Coastguard Workerpkg_tar(
237*6777b538SAndroid Build Coastguard Worker    name = "dist_python_tar",
238*6777b538SAndroid Build Coastguard Worker    srcs = [":python_srcs"],
239*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
240*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
241*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-python-{version}.tar.gz",
242*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
243*6777b538SAndroid Build Coastguard Worker)
244*6777b538SAndroid Build Coastguard Worker
245*6777b538SAndroid Build Coastguard Workerpkg_zip(
246*6777b538SAndroid Build Coastguard Worker    name = "dist_python_zip",
247*6777b538SAndroid Build Coastguard Worker    srcs = [":python_srcs"],
248*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-python-{version}.zip",
249*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
250*6777b538SAndroid Build Coastguard Worker)
251*6777b538SAndroid Build Coastguard Worker
252*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
253*6777b538SAndroid Build Coastguard Worker    name = "ruby_srcs",
254*6777b538SAndroid Build Coastguard Worker    srcs = [
255*6777b538SAndroid Build Coastguard Worker        ":dist_common",
256*6777b538SAndroid Build Coastguard Worker        "//ruby:dist_files",
257*6777b538SAndroid Build Coastguard Worker    ],
258*6777b538SAndroid Build Coastguard Worker)
259*6777b538SAndroid Build Coastguard Worker
260*6777b538SAndroid Build Coastguard Workerpkg_tar(
261*6777b538SAndroid Build Coastguard Worker    name = "dist_ruby_tar",
262*6777b538SAndroid Build Coastguard Worker    srcs = [":ruby_srcs"],
263*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
264*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
265*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-ruby-{version}.tar.gz",
266*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
267*6777b538SAndroid Build Coastguard Worker)
268*6777b538SAndroid Build Coastguard Worker
269*6777b538SAndroid Build Coastguard Workerpkg_zip(
270*6777b538SAndroid Build Coastguard Worker    name = "dist_ruby_zip",
271*6777b538SAndroid Build Coastguard Worker    srcs = [":ruby_srcs"],
272*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-ruby-{version}.zip",
273*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
274*6777b538SAndroid Build Coastguard Worker)
275*6777b538SAndroid Build Coastguard Worker
276*6777b538SAndroid Build Coastguard Workerpkg_filegroup(
277*6777b538SAndroid Build Coastguard Worker    name = "dist_all",
278*6777b538SAndroid Build Coastguard Worker    srcs = [
279*6777b538SAndroid Build Coastguard Worker        ":cpp_srcs",
280*6777b538SAndroid Build Coastguard Worker        ":csharp_srcs",
281*6777b538SAndroid Build Coastguard Worker        ":java_srcs",
282*6777b538SAndroid Build Coastguard Worker        ":objectivec_srcs",
283*6777b538SAndroid Build Coastguard Worker        ":php_srcs",
284*6777b538SAndroid Build Coastguard Worker        ":python_srcs",
285*6777b538SAndroid Build Coastguard Worker        ":ruby_srcs",
286*6777b538SAndroid Build Coastguard Worker    ],
287*6777b538SAndroid Build Coastguard Worker)
288*6777b538SAndroid Build Coastguard Worker
289*6777b538SAndroid Build Coastguard Workerpkg_tar(
290*6777b538SAndroid Build Coastguard Worker    name = "dist_all_tar",
291*6777b538SAndroid Build Coastguard Worker    srcs = [":dist_all"],
292*6777b538SAndroid Build Coastguard Worker    extension = "tar.gz",
293*6777b538SAndroid Build Coastguard Worker    package_dir = "protobuf-{version}",
294*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-all-{version}.tar.gz",
295*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
296*6777b538SAndroid Build Coastguard Worker)
297*6777b538SAndroid Build Coastguard Worker
298*6777b538SAndroid Build Coastguard Workerpkg_zip(
299*6777b538SAndroid Build Coastguard Worker    name = "dist_all_zip",
300*6777b538SAndroid Build Coastguard Worker    srcs = [":dist_all"],
301*6777b538SAndroid Build Coastguard Worker    package_file_name = "protobuf-all-{version}.zip",
302*6777b538SAndroid Build Coastguard Worker    package_variables = ":protobuf_pkg_naming",
303*6777b538SAndroid Build Coastguard Worker)
304*6777b538SAndroid Build Coastguard Worker
305*6777b538SAndroid Build Coastguard Worker################################################################################
306*6777b538SAndroid Build Coastguard Worker# Generated file lists for build systems
307*6777b538SAndroid Build Coastguard Worker################################################################################
308*6777b538SAndroid Build Coastguard Worker
309*6777b538SAndroid Build Coastguard Workergen_file_lists(
310*6777b538SAndroid Build Coastguard Worker    name = "gen_src_file_lists",
311*6777b538SAndroid Build Coastguard Worker    testonly = 1,
312*6777b538SAndroid Build Coastguard Worker    out_stem = "src_file_lists",
313*6777b538SAndroid Build Coastguard Worker    src_libs = {
314*6777b538SAndroid Build Coastguard Worker        # source rule: name in generated file
315*6777b538SAndroid Build Coastguard Worker        "//:protobuf": "libprotobuf",
316*6777b538SAndroid Build Coastguard Worker        "//:protoc_lib": "libprotoc",
317*6777b538SAndroid Build Coastguard Worker        "//:protobuf_lite": "libprotobuf_lite",
318*6777b538SAndroid Build Coastguard Worker    },
319*6777b538SAndroid Build Coastguard Worker)
320*6777b538SAndroid Build Coastguard Worker
321*6777b538SAndroid Build Coastguard Workergen_automake_file_lists(
322*6777b538SAndroid Build Coastguard Worker    name = "gen_automake_extra_dist_lists",
323*6777b538SAndroid Build Coastguard Worker    testonly = 1,
324*6777b538SAndroid Build Coastguard Worker    out = "extra_dist_file_lists.am",
325*6777b538SAndroid Build Coastguard Worker    src_libs = {
326*6777b538SAndroid Build Coastguard Worker        # source rule: name in generated file
327*6777b538SAndroid Build Coastguard Worker        "//:common_dist_files": "dist_common",
328*6777b538SAndroid Build Coastguard Worker        "//conformance:dist_files": "dist_conformance",
329*6777b538SAndroid Build Coastguard Worker        "//benchmarks:all_dist_files": "dist_benchmark",
330*6777b538SAndroid Build Coastguard Worker        "@com_google_protobuf_examples//:dist_files": "dist_example",
331*6777b538SAndroid Build Coastguard Worker        "//:csharp_dist_files": "dist_csharp",
332*6777b538SAndroid Build Coastguard Worker        "//csharp:dist_files": "dist_csharp2",
333*6777b538SAndroid Build Coastguard Worker        "//:objectivec_dist_files": "dist_objectivec",
334*6777b538SAndroid Build Coastguard Worker        "//objectivec:dist_files": "dist_objectivec2",
335*6777b538SAndroid Build Coastguard Worker        "//php:dist_files": "dist_php",
336*6777b538SAndroid Build Coastguard Worker        "//:python_dist_files": "dist_python",
337*6777b538SAndroid Build Coastguard Worker        "//ruby:dist_files": "dist_ruby",
338*6777b538SAndroid Build Coastguard Worker    },
339*6777b538SAndroid Build Coastguard Worker)
340*6777b538SAndroid Build Coastguard Worker
341*6777b538SAndroid Build Coastguard Worker################################################################################
342*6777b538SAndroid Build Coastguard Worker# Protobuf runtime libraries.
343*6777b538SAndroid Build Coastguard Worker################################################################################
344*6777b538SAndroid Build Coastguard Worker
345*6777b538SAndroid Build Coastguard Workercc_dist_library(
346*6777b538SAndroid Build Coastguard Worker    name = "protobuf_lite",
347*6777b538SAndroid Build Coastguard Worker    linkopts = select({
348*6777b538SAndroid Build Coastguard Worker        "//build_defs:config_msvc": [],
349*6777b538SAndroid Build Coastguard Worker        "//conditions:default": ["-lpthread"],
350*6777b538SAndroid Build Coastguard Worker    }),
351*6777b538SAndroid Build Coastguard Worker    deps = [
352*6777b538SAndroid Build Coastguard Worker        "//:protobuf_lite",
353*6777b538SAndroid Build Coastguard Worker    ],
354*6777b538SAndroid Build Coastguard Worker)
355*6777b538SAndroid Build Coastguard Worker
356*6777b538SAndroid Build Coastguard Workercc_dist_library(
357*6777b538SAndroid Build Coastguard Worker    name = "protobuf",
358*6777b538SAndroid Build Coastguard Worker    linkopts = select({
359*6777b538SAndroid Build Coastguard Worker        "//build_defs:config_msvc": [],
360*6777b538SAndroid Build Coastguard Worker        "//conditions:default": [
361*6777b538SAndroid Build Coastguard Worker            "-lz",
362*6777b538SAndroid Build Coastguard Worker            "-lpthread",
363*6777b538SAndroid Build Coastguard Worker        ],
364*6777b538SAndroid Build Coastguard Worker    }),
365*6777b538SAndroid Build Coastguard Worker    deps = [
366*6777b538SAndroid Build Coastguard Worker        "//:protobuf",
367*6777b538SAndroid Build Coastguard Worker        "//:protobuf_lite",
368*6777b538SAndroid Build Coastguard Worker    ],
369*6777b538SAndroid Build Coastguard Worker)
370*6777b538SAndroid Build Coastguard Worker
371*6777b538SAndroid Build Coastguard Worker################################################################################
372*6777b538SAndroid Build Coastguard Worker# Distribution sources
373*6777b538SAndroid Build Coastguard Worker################################################################################
374*6777b538SAndroid Build Coastguard Worker
375*6777b538SAndroid Build Coastguard Workerpkg_files(
376*6777b538SAndroid Build Coastguard Worker    name = "dist_files",
377*6777b538SAndroid Build Coastguard Worker    srcs = glob(["*"]),
378*6777b538SAndroid Build Coastguard Worker    strip_prefix = strip_prefix.from_root(""),
379*6777b538SAndroid Build Coastguard Worker)
380