1*b6fb3261SAndroid Build Coastguard Workerload("@build_bazel_rules_android//android:rules.bzl", "android_library") 2*b6fb3261SAndroid Build Coastguard Workerload(":build_defs.bzl", "flatbuffer_py_strip_prefix_srcs") 3*b6fb3261SAndroid Build Coastguard Worker 4*b6fb3261SAndroid Build Coastguard Workerpackage(default_visibility = ["//visibility:public"]) 5*b6fb3261SAndroid Build Coastguard Worker 6*b6fb3261SAndroid Build Coastguard Workerlicenses(["notice"]) # Apache 2.0 7*b6fb3261SAndroid Build Coastguard Worker 8*b6fb3261SAndroid Build Coastguard Workerexports_files(["LICENSE.txt"]) 9*b6fb3261SAndroid Build Coastguard Worker 10*b6fb3261SAndroid Build Coastguard Workerlicenses(["notice"]) 11*b6fb3261SAndroid Build Coastguard Worker 12*b6fb3261SAndroid Build Coastguard Workerconfig_setting( 13*b6fb3261SAndroid Build Coastguard Worker name = "platform_freebsd", 14*b6fb3261SAndroid Build Coastguard Worker values = {"cpu": "freebsd"}, 15*b6fb3261SAndroid Build Coastguard Worker) 16*b6fb3261SAndroid Build Coastguard Worker 17*b6fb3261SAndroid Build Coastguard Workerconfig_setting( 18*b6fb3261SAndroid Build Coastguard Worker name = "platform_openbsd", 19*b6fb3261SAndroid Build Coastguard Worker values = {"cpu": "openbsd"}, 20*b6fb3261SAndroid Build Coastguard Worker) 21*b6fb3261SAndroid Build Coastguard Worker 22*b6fb3261SAndroid Build Coastguard Workerconfig_setting( 23*b6fb3261SAndroid Build Coastguard Worker name = "windows", 24*b6fb3261SAndroid Build Coastguard Worker values = {"cpu": "x64_windows"}, 25*b6fb3261SAndroid Build Coastguard Worker) 26*b6fb3261SAndroid Build Coastguard Worker 27*b6fb3261SAndroid Build Coastguard Workerload("@rules_cc//cc:defs.bzl", "cc_binary", "cc_library") 28*b6fb3261SAndroid Build Coastguard Worker 29*b6fb3261SAndroid Build Coastguard Worker# Public flatc library to compile flatbuffer files at runtime. 30*b6fb3261SAndroid Build Coastguard Workercc_library( 31*b6fb3261SAndroid Build Coastguard Worker name = "flatbuffers", 32*b6fb3261SAndroid Build Coastguard Worker hdrs = ["//:public_headers"], 33*b6fb3261SAndroid Build Coastguard Worker linkstatic = 1, 34*b6fb3261SAndroid Build Coastguard Worker strip_include_prefix = "/include", 35*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 36*b6fb3261SAndroid Build Coastguard Worker deps = ["//src:flatbuffers"], 37*b6fb3261SAndroid Build Coastguard Worker) 38*b6fb3261SAndroid Build Coastguard Worker 39*b6fb3261SAndroid Build Coastguard Worker# Public C++ headers for the Flatbuffers library. 40*b6fb3261SAndroid Build Coastguard Workerfilegroup( 41*b6fb3261SAndroid Build Coastguard Worker name = "public_headers", 42*b6fb3261SAndroid Build Coastguard Worker srcs = [ 43*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/allocator.h", 44*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/array.h", 45*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/base.h", 46*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/bfbs_generator.h", 47*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/buffer.h", 48*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/buffer_ref.h", 49*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/code_generators.h", 50*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/default_allocator.h", 51*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/detached_buffer.h", 52*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flatbuffer_builder.h", 53*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flatbuffers.h", 54*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flexbuffers.h", 55*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/hash.h", 56*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/idl.h", 57*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/minireflect.h", 58*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/reflection.h", 59*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/reflection_generated.h", 60*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/registry.h", 61*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/stl_emulation.h", 62*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/string.h", 63*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/struct.h", 64*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/table.h", 65*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/util.h", 66*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/vector.h", 67*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/vector_downward.h", 68*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/verifier.h", 69*b6fb3261SAndroid Build Coastguard Worker ], 70*b6fb3261SAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 71*b6fb3261SAndroid Build Coastguard Worker) 72*b6fb3261SAndroid Build Coastguard Worker 73*b6fb3261SAndroid Build Coastguard Worker# Public flatc compiler library. 74*b6fb3261SAndroid Build Coastguard Workercc_library( 75*b6fb3261SAndroid Build Coastguard Worker name = "flatc_library", 76*b6fb3261SAndroid Build Coastguard Worker linkstatic = 1, 77*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 78*b6fb3261SAndroid Build Coastguard Worker deps = [ 79*b6fb3261SAndroid Build Coastguard Worker "@flatbuffers//src:flatc_library", 80*b6fb3261SAndroid Build Coastguard Worker ], 81*b6fb3261SAndroid Build Coastguard Worker) 82*b6fb3261SAndroid Build Coastguard Worker 83*b6fb3261SAndroid Build Coastguard Worker# Public flatc compiler. 84*b6fb3261SAndroid Build Coastguard Workercc_binary( 85*b6fb3261SAndroid Build Coastguard Worker name = "flatc", 86*b6fb3261SAndroid Build Coastguard Worker linkopts = select({ 87*b6fb3261SAndroid Build Coastguard Worker ":platform_freebsd": [ 88*b6fb3261SAndroid Build Coastguard Worker "-lm", 89*b6fb3261SAndroid Build Coastguard Worker ], 90*b6fb3261SAndroid Build Coastguard Worker ":windows": [], 91*b6fb3261SAndroid Build Coastguard Worker "//conditions:default": [ 92*b6fb3261SAndroid Build Coastguard Worker "-lm", 93*b6fb3261SAndroid Build Coastguard Worker "-ldl", 94*b6fb3261SAndroid Build Coastguard Worker ], 95*b6fb3261SAndroid Build Coastguard Worker }), 96*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 97*b6fb3261SAndroid Build Coastguard Worker deps = [ 98*b6fb3261SAndroid Build Coastguard Worker "@flatbuffers//src:flatc", 99*b6fb3261SAndroid Build Coastguard Worker ], 100*b6fb3261SAndroid Build Coastguard Worker) 101*b6fb3261SAndroid Build Coastguard Worker 102*b6fb3261SAndroid Build Coastguard Workerfilegroup( 103*b6fb3261SAndroid Build Coastguard Worker name = "flatc_headers", 104*b6fb3261SAndroid Build Coastguard Worker srcs = [ 105*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flatc.h", 106*b6fb3261SAndroid Build Coastguard Worker ], 107*b6fb3261SAndroid Build Coastguard Worker visibility = ["//:__subpackages__"], 108*b6fb3261SAndroid Build Coastguard Worker) 109*b6fb3261SAndroid Build Coastguard Worker 110*b6fb3261SAndroid Build Coastguard Worker# Library used by flatbuffer_cc_library rules. 111*b6fb3261SAndroid Build Coastguard Workercc_library( 112*b6fb3261SAndroid Build Coastguard Worker name = "runtime_cc", 113*b6fb3261SAndroid Build Coastguard Worker hdrs = [ 114*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/allocator.h", 115*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/array.h", 116*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/base.h", 117*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/buffer.h", 118*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/buffer_ref.h", 119*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/default_allocator.h", 120*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/detached_buffer.h", 121*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flatbuffer_builder.h", 122*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flatbuffers.h", 123*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/flexbuffers.h", 124*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/stl_emulation.h", 125*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/string.h", 126*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/struct.h", 127*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/table.h", 128*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/util.h", 129*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/vector.h", 130*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/vector_downward.h", 131*b6fb3261SAndroid Build Coastguard Worker "include/flatbuffers/verifier.h", 132*b6fb3261SAndroid Build Coastguard Worker ], 133*b6fb3261SAndroid Build Coastguard Worker linkstatic = 1, 134*b6fb3261SAndroid Build Coastguard Worker strip_include_prefix = "/include", 135*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 136*b6fb3261SAndroid Build Coastguard Worker) 137*b6fb3261SAndroid Build Coastguard Worker 138*b6fb3261SAndroid Build Coastguard Workerflatbuffer_py_strip_prefix_srcs( 139*b6fb3261SAndroid Build Coastguard Worker name = "flatbuffer_py_strip_prefix", 140*b6fb3261SAndroid Build Coastguard Worker srcs = [ 141*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/__init__.py", 142*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/_version.py", 143*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/builder.py", 144*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/compat.py", 145*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/encode.py", 146*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/flexbuffers.py", 147*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/number_types.py", 148*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/packer.py", 149*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/table.py", 150*b6fb3261SAndroid Build Coastguard Worker "python/flatbuffers/util.py", 151*b6fb3261SAndroid Build Coastguard Worker ], 152*b6fb3261SAndroid Build Coastguard Worker strip_prefix = "python/flatbuffers/", 153*b6fb3261SAndroid Build Coastguard Worker) 154*b6fb3261SAndroid Build Coastguard Worker 155*b6fb3261SAndroid Build Coastguard Workerfilegroup( 156*b6fb3261SAndroid Build Coastguard Worker name = "runtime_py_srcs", 157*b6fb3261SAndroid Build Coastguard Worker srcs = [ 158*b6fb3261SAndroid Build Coastguard Worker "__init__.py", 159*b6fb3261SAndroid Build Coastguard Worker "_version.py", 160*b6fb3261SAndroid Build Coastguard Worker "builder.py", 161*b6fb3261SAndroid Build Coastguard Worker "compat.py", 162*b6fb3261SAndroid Build Coastguard Worker "encode.py", 163*b6fb3261SAndroid Build Coastguard Worker "flexbuffers.py", 164*b6fb3261SAndroid Build Coastguard Worker "number_types.py", 165*b6fb3261SAndroid Build Coastguard Worker "packer.py", 166*b6fb3261SAndroid Build Coastguard Worker "table.py", 167*b6fb3261SAndroid Build Coastguard Worker "util.py", 168*b6fb3261SAndroid Build Coastguard Worker ], 169*b6fb3261SAndroid Build Coastguard Worker) 170*b6fb3261SAndroid Build Coastguard Worker 171*b6fb3261SAndroid Build Coastguard Workerpy_library( 172*b6fb3261SAndroid Build Coastguard Worker name = "runtime_py", 173*b6fb3261SAndroid Build Coastguard Worker srcs = [":runtime_py_srcs"], 174*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 175*b6fb3261SAndroid Build Coastguard Worker) 176*b6fb3261SAndroid Build Coastguard Worker 177*b6fb3261SAndroid Build Coastguard Workerfilegroup( 178*b6fb3261SAndroid Build Coastguard Worker name = "runtime_java_srcs", 179*b6fb3261SAndroid Build Coastguard Worker srcs = glob(["java/com/google/flatbuffers/**/*.java"]), 180*b6fb3261SAndroid Build Coastguard Worker) 181*b6fb3261SAndroid Build Coastguard Worker 182*b6fb3261SAndroid Build Coastguard Workerjava_library( 183*b6fb3261SAndroid Build Coastguard Worker name = "runtime_java", 184*b6fb3261SAndroid Build Coastguard Worker srcs = [":runtime_java_srcs"], 185*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 186*b6fb3261SAndroid Build Coastguard Worker) 187*b6fb3261SAndroid Build Coastguard Worker 188*b6fb3261SAndroid Build Coastguard Workerandroid_library( 189*b6fb3261SAndroid Build Coastguard Worker name = "runtime_android", 190*b6fb3261SAndroid Build Coastguard Worker srcs = [":runtime_java_srcs"], 191*b6fb3261SAndroid Build Coastguard Worker visibility = ["//visibility:public"], 192*b6fb3261SAndroid Build Coastguard Worker) 193