xref: /aosp_15_r20/external/protobuf/objectivec/BUILD.bazel (revision 1b3f573f81763fcece89efc2b6a5209149e44ab8)
1*1b3f573fSAndroid Build Coastguard Workerload("@rules_cc//cc:defs.bzl", "objc_library")
2*1b3f573fSAndroid Build Coastguard Workerload("@rules_pkg//:mappings.bzl", "pkg_files", "strip_prefix")
3*1b3f573fSAndroid Build Coastguard Worker
4*1b3f573fSAndroid Build Coastguard Workerobjc_library(
5*1b3f573fSAndroid Build Coastguard Worker    name = "objectivec",
6*1b3f573fSAndroid Build Coastguard Worker    hdrs = [
7*1b3f573fSAndroid Build Coastguard Worker        "GPBAny.pbobjc.h",
8*1b3f573fSAndroid Build Coastguard Worker        "GPBApi.pbobjc.h",
9*1b3f573fSAndroid Build Coastguard Worker        "GPBDuration.pbobjc.h",
10*1b3f573fSAndroid Build Coastguard Worker        "GPBEmpty.pbobjc.h",
11*1b3f573fSAndroid Build Coastguard Worker        "GPBFieldMask.pbobjc.h",
12*1b3f573fSAndroid Build Coastguard Worker        "GPBSourceContext.pbobjc.h",
13*1b3f573fSAndroid Build Coastguard Worker        "GPBStruct.pbobjc.h",
14*1b3f573fSAndroid Build Coastguard Worker        "GPBTimestamp.pbobjc.h",
15*1b3f573fSAndroid Build Coastguard Worker        "GPBType.pbobjc.h",
16*1b3f573fSAndroid Build Coastguard Worker        "GPBWrappers.pbobjc.h",
17*1b3f573fSAndroid Build Coastguard Worker        "GPBArray.h",
18*1b3f573fSAndroid Build Coastguard Worker        "GPBBootstrap.h",
19*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedInputStream.h",
20*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedOutputStream.h",
21*1b3f573fSAndroid Build Coastguard Worker        "GPBDescriptor.h",
22*1b3f573fSAndroid Build Coastguard Worker        "GPBDictionary.h",
23*1b3f573fSAndroid Build Coastguard Worker        "GPBExtensionInternals.h",
24*1b3f573fSAndroid Build Coastguard Worker        "GPBExtensionRegistry.h",
25*1b3f573fSAndroid Build Coastguard Worker        "GPBMessage.h",
26*1b3f573fSAndroid Build Coastguard Worker        "GPBProtocolBuffers.h",
27*1b3f573fSAndroid Build Coastguard Worker        "GPBProtocolBuffers_RuntimeSupport.h",
28*1b3f573fSAndroid Build Coastguard Worker        "GPBRootObject.h",
29*1b3f573fSAndroid Build Coastguard Worker        "GPBRuntimeTypes.h",
30*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownField.h",
31*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownFieldSet.h",
32*1b3f573fSAndroid Build Coastguard Worker        "GPBUtilities.h",
33*1b3f573fSAndroid Build Coastguard Worker        "GPBWellKnownTypes.h",
34*1b3f573fSAndroid Build Coastguard Worker        "GPBWireFormat.h",
35*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Any.pbobjc.h",
36*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Api.pbobjc.h",
37*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Duration.pbobjc.h",
38*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Empty.pbobjc.h",
39*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/FieldMask.pbobjc.h",
40*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/SourceContext.pbobjc.h",
41*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Struct.pbobjc.h",
42*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Timestamp.pbobjc.h",
43*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Type.pbobjc.h",
44*1b3f573fSAndroid Build Coastguard Worker        "google/protobuf/Wrappers.pbobjc.h",
45*1b3f573fSAndroid Build Coastguard Worker        # Package private headers, but exposed because the generated sources
46*1b3f573fSAndroid Build Coastguard Worker        # need to use them.
47*1b3f573fSAndroid Build Coastguard Worker        "GPBArray_PackagePrivate.h",
48*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedInputStream_PackagePrivate.h",
49*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedOutputStream_PackagePrivate.h",
50*1b3f573fSAndroid Build Coastguard Worker        "GPBDescriptor_PackagePrivate.h",
51*1b3f573fSAndroid Build Coastguard Worker        "GPBDictionary_PackagePrivate.h",
52*1b3f573fSAndroid Build Coastguard Worker        "GPBMessage_PackagePrivate.h",
53*1b3f573fSAndroid Build Coastguard Worker        "GPBRootObject_PackagePrivate.h",
54*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownFieldSet_PackagePrivate.h",
55*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownField_PackagePrivate.h",
56*1b3f573fSAndroid Build Coastguard Worker        "GPBUtilities_PackagePrivate.h",
57*1b3f573fSAndroid Build Coastguard Worker    ],
58*1b3f573fSAndroid Build Coastguard Worker    copts = [
59*1b3f573fSAndroid Build Coastguard Worker        "-Wno-vla",
60*1b3f573fSAndroid Build Coastguard Worker    ],
61*1b3f573fSAndroid Build Coastguard Worker    includes = [
62*1b3f573fSAndroid Build Coastguard Worker        ".",
63*1b3f573fSAndroid Build Coastguard Worker    ],
64*1b3f573fSAndroid Build Coastguard Worker    non_arc_srcs = [
65*1b3f573fSAndroid Build Coastguard Worker        "GPBAny.pbobjc.m",
66*1b3f573fSAndroid Build Coastguard Worker        "GPBApi.pbobjc.m",
67*1b3f573fSAndroid Build Coastguard Worker        "GPBArray.m",
68*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedInputStream.m",
69*1b3f573fSAndroid Build Coastguard Worker        "GPBCodedOutputStream.m",
70*1b3f573fSAndroid Build Coastguard Worker        "GPBDescriptor.m",
71*1b3f573fSAndroid Build Coastguard Worker        "GPBDictionary.m",
72*1b3f573fSAndroid Build Coastguard Worker        "GPBDuration.pbobjc.m",
73*1b3f573fSAndroid Build Coastguard Worker        "GPBEmpty.pbobjc.m",
74*1b3f573fSAndroid Build Coastguard Worker        "GPBExtensionInternals.m",
75*1b3f573fSAndroid Build Coastguard Worker        "GPBExtensionRegistry.m",
76*1b3f573fSAndroid Build Coastguard Worker        "GPBFieldMask.pbobjc.m",
77*1b3f573fSAndroid Build Coastguard Worker        "GPBMessage.m",
78*1b3f573fSAndroid Build Coastguard Worker        "GPBRootObject.m",
79*1b3f573fSAndroid Build Coastguard Worker        "GPBSourceContext.pbobjc.m",
80*1b3f573fSAndroid Build Coastguard Worker        "GPBStruct.pbobjc.m",
81*1b3f573fSAndroid Build Coastguard Worker        "GPBTimestamp.pbobjc.m",
82*1b3f573fSAndroid Build Coastguard Worker        "GPBType.pbobjc.m",
83*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownField.m",
84*1b3f573fSAndroid Build Coastguard Worker        "GPBUnknownFieldSet.m",
85*1b3f573fSAndroid Build Coastguard Worker        "GPBUtilities.m",
86*1b3f573fSAndroid Build Coastguard Worker        "GPBWellKnownTypes.m",
87*1b3f573fSAndroid Build Coastguard Worker        "GPBWireFormat.m",
88*1b3f573fSAndroid Build Coastguard Worker        "GPBWrappers.pbobjc.m",
89*1b3f573fSAndroid Build Coastguard Worker    ],
90*1b3f573fSAndroid Build Coastguard Worker    visibility = ["//visibility:public"],
91*1b3f573fSAndroid Build Coastguard Worker)
92*1b3f573fSAndroid Build Coastguard Worker
93*1b3f573fSAndroid Build Coastguard Workerpkg_files(
94*1b3f573fSAndroid Build Coastguard Worker    name = "dist_files",
95*1b3f573fSAndroid Build Coastguard Worker    srcs = glob([
96*1b3f573fSAndroid Build Coastguard Worker        "*.h",
97*1b3f573fSAndroid Build Coastguard Worker        "*.m",
98*1b3f573fSAndroid Build Coastguard Worker        "**/*.h",
99*1b3f573fSAndroid Build Coastguard Worker        "**/*.m",
100*1b3f573fSAndroid Build Coastguard Worker        "**/*.mm",
101*1b3f573fSAndroid Build Coastguard Worker        "**/*.swift",
102*1b3f573fSAndroid Build Coastguard Worker        "DevTools/*.sh",
103*1b3f573fSAndroid Build Coastguard Worker        "DevTools/*.py",
104*1b3f573fSAndroid Build Coastguard Worker        "ProtocolBuffers_iOS.xcodeproj/**/*",
105*1b3f573fSAndroid Build Coastguard Worker        "ProtocolBuffers_OSX.xcodeproj/**/*",
106*1b3f573fSAndroid Build Coastguard Worker        "ProtocolBuffers_tvOS.xcodeproj/**/*",
107*1b3f573fSAndroid Build Coastguard Worker        "Tests/CocoaPods/**/*",
108*1b3f573fSAndroid Build Coastguard Worker        "Tests/*.pddm",
109*1b3f573fSAndroid Build Coastguard Worker        "Tests/*.txt",
110*1b3f573fSAndroid Build Coastguard Worker        "Tests/*.plist",
111*1b3f573fSAndroid Build Coastguard Worker        "Tests/*.proto",
112*1b3f573fSAndroid Build Coastguard Worker    ]) + [
113*1b3f573fSAndroid Build Coastguard Worker        ".clang-format",
114*1b3f573fSAndroid Build Coastguard Worker        "BUILD.bazel",
115*1b3f573fSAndroid Build Coastguard Worker        "README.md",
116*1b3f573fSAndroid Build Coastguard Worker        "Tests/golden_message",
117*1b3f573fSAndroid Build Coastguard Worker        "Tests/golden_packed_fields_message",
118*1b3f573fSAndroid Build Coastguard Worker        "generate_well_known_types.sh",
119*1b3f573fSAndroid Build Coastguard Worker    ],
120*1b3f573fSAndroid Build Coastguard Worker    strip_prefix = strip_prefix.from_root(""),
121*1b3f573fSAndroid Build Coastguard Worker    visibility = ["//pkg:__pkg__"],
122*1b3f573fSAndroid Build Coastguard Worker)
123