xref: /aosp_15_r20/external/flatbuffers/BUILD.bazel (revision 890232f25432b36107d06881e0a25aaa6b473652)
1*890232f2SAndroid Build Coastguard Workerload("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library")
2*890232f2SAndroid Build Coastguard Worker
3*890232f2SAndroid Build Coastguard Workerlicenses(["notice"])
4*890232f2SAndroid Build Coastguard Worker
5*890232f2SAndroid Build Coastguard Workerpackage(
6*890232f2SAndroid Build Coastguard Worker    default_visibility = ["//visibility:public"],
7*890232f2SAndroid Build Coastguard Worker)
8*890232f2SAndroid Build Coastguard Worker
9*890232f2SAndroid Build Coastguard Workerexports_files([
10*890232f2SAndroid Build Coastguard Worker    "LICENSE",
11*890232f2SAndroid Build Coastguard Worker    "tsconfig.json",
12*890232f2SAndroid Build Coastguard Worker])
13*890232f2SAndroid Build Coastguard Worker
14*890232f2SAndroid Build Coastguard Workerconfig_setting(
15*890232f2SAndroid Build Coastguard Worker    name = "platform_freebsd",
16*890232f2SAndroid Build Coastguard Worker    constraint_values = [
17*890232f2SAndroid Build Coastguard Worker        "@platforms//os:freebsd",
18*890232f2SAndroid Build Coastguard Worker    ],
19*890232f2SAndroid Build Coastguard Worker)
20*890232f2SAndroid Build Coastguard Worker
21*890232f2SAndroid Build Coastguard Workerconfig_setting(
22*890232f2SAndroid Build Coastguard Worker    name = "platform_openbsd",
23*890232f2SAndroid Build Coastguard Worker    constraint_values = [
24*890232f2SAndroid Build Coastguard Worker        "@platforms//os:openbsd",
25*890232f2SAndroid Build Coastguard Worker    ],
26*890232f2SAndroid Build Coastguard Worker)
27*890232f2SAndroid Build Coastguard Worker
28*890232f2SAndroid Build Coastguard Worker# Public flatc library to compile flatbuffer files at runtime.
29*890232f2SAndroid Build Coastguard Workercc_library(
30*890232f2SAndroid Build Coastguard Worker    name = "flatbuffers",
31*890232f2SAndroid Build Coastguard Worker    hdrs = ["//:public_headers"],
32*890232f2SAndroid Build Coastguard Worker    linkstatic = 1,
33*890232f2SAndroid Build Coastguard Worker    strip_include_prefix = "/include",
34*890232f2SAndroid Build Coastguard Worker    deps = ["//src:flatbuffers"],
35*890232f2SAndroid Build Coastguard Worker)
36*890232f2SAndroid Build Coastguard Worker
37*890232f2SAndroid Build Coastguard Worker# Public C++ headers for the Flatbuffers library.
38*890232f2SAndroid Build Coastguard Workerfilegroup(
39*890232f2SAndroid Build Coastguard Worker    name = "public_headers",
40*890232f2SAndroid Build Coastguard Worker    srcs = [
41*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/allocator.h",
42*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/array.h",
43*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/base.h",
44*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/bfbs_generator.h",
45*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/buffer.h",
46*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/buffer_ref.h",
47*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/code_generators.h",
48*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/default_allocator.h",
49*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/detached_buffer.h",
50*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flatbuffer_builder.h",
51*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flatbuffers.h",
52*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flex_flat_util.h",
53*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flexbuffers.h",
54*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/grpc.h",
55*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/hash.h",
56*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/idl.h",
57*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/minireflect.h",
58*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/reflection.h",
59*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/reflection_generated.h",
60*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/registry.h",
61*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/stl_emulation.h",
62*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/string.h",
63*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/struct.h",
64*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/table.h",
65*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/util.h",
66*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/vector.h",
67*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/vector_downward.h",
68*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/verifier.h",
69*890232f2SAndroid Build Coastguard Worker    ],
70*890232f2SAndroid Build Coastguard Worker)
71*890232f2SAndroid Build Coastguard Worker
72*890232f2SAndroid Build Coastguard Worker# Public flatc compiler library.
73*890232f2SAndroid Build Coastguard Workercc_library(
74*890232f2SAndroid Build Coastguard Worker    name = "flatc_library",
75*890232f2SAndroid Build Coastguard Worker    linkstatic = 1,
76*890232f2SAndroid Build Coastguard Worker    deps = [
77*890232f2SAndroid Build Coastguard Worker        "//src:flatc_library",
78*890232f2SAndroid Build Coastguard Worker    ],
79*890232f2SAndroid Build Coastguard Worker)
80*890232f2SAndroid Build Coastguard Worker
81*890232f2SAndroid Build Coastguard Worker# Public flatc compiler.
82*890232f2SAndroid Build Coastguard Workercc_binary(
83*890232f2SAndroid Build Coastguard Worker    name = "flatc",
84*890232f2SAndroid Build Coastguard Worker    data = ["//reflection:reflection_fbs_schema"],
85*890232f2SAndroid Build Coastguard Worker    deps = [
86*890232f2SAndroid Build Coastguard Worker        "//src:flatc",
87*890232f2SAndroid Build Coastguard Worker    ],
88*890232f2SAndroid Build Coastguard Worker)
89*890232f2SAndroid Build Coastguard Worker
90*890232f2SAndroid Build Coastguard Workerfilegroup(
91*890232f2SAndroid Build Coastguard Worker    name = "flatc_headers",
92*890232f2SAndroid Build Coastguard Worker    srcs = [
93*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flatc.h",
94*890232f2SAndroid Build Coastguard Worker    ],
95*890232f2SAndroid Build Coastguard Worker    visibility = ["//:__subpackages__"],
96*890232f2SAndroid Build Coastguard Worker)
97*890232f2SAndroid Build Coastguard Worker
98*890232f2SAndroid Build Coastguard Worker# Library used by flatbuffer_cc_library rules.
99*890232f2SAndroid Build Coastguard Workercc_library(
100*890232f2SAndroid Build Coastguard Worker    name = "runtime_cc",
101*890232f2SAndroid Build Coastguard Worker    hdrs = [
102*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/base.h",
103*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flatbuffers.h",
104*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/flexbuffers.h",
105*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/stl_emulation.h",
106*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/util.h",
107*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/vector.h",
108*890232f2SAndroid Build Coastguard Worker        "include/flatbuffers/verifier.h",
109*890232f2SAndroid Build Coastguard Worker    ],
110*890232f2SAndroid Build Coastguard Worker    linkstatic = 1,
111*890232f2SAndroid Build Coastguard Worker    strip_include_prefix = "/include",
112*890232f2SAndroid Build Coastguard Worker)
113