Loading system/gd/Android.bp +18 −14 Original line number Diff line number Diff line Loading @@ -149,10 +149,10 @@ cc_defaults { ":BluetoothStorageSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", "BluetoothGeneratedFlatbuffers_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", "BluetoothGeneratedDumpsysData_h", ], shared_libs: [ "libchrome", Loading Loading @@ -204,7 +204,9 @@ cc_binary { ], generated_headers: [ "BluetoothFacadeGeneratedStub_h", "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", // Needed here to guarantee that generated zip file is created before // bluetooth_cert_tests.zip is packaged Loading Loading @@ -293,7 +295,9 @@ cc_test { ":BluetoothStorageTestSources", ], generated_headers: [ "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", ], static_libs: [ Loading Loading @@ -349,7 +353,9 @@ cc_defaults { ], host_supported: true, generated_headers: [ "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", ], shared_libs: [ Loading Loading @@ -441,7 +447,7 @@ genrule { // Generates binary schema data to be bundled and source file generated genrule { name: "BluetoothGeneratedModuleSchemaData_h", name: "BluetoothGeneratedDumpsysBinarySchema_bfbs", tools: [ "flatc", ], Loading @@ -457,7 +463,7 @@ genrule { } genrule { name: "BluetoothGeneratedDumpsysData_h", name: "BluetoothGeneratedDumpsysDataSchema_h", tools: [ "flatc", ], Loading @@ -472,19 +478,17 @@ genrule { ], } // Generates binary bundled source file for inclusion into library genrule { name: "BluetoothGeneratedFlatbuffers_h", name: "BluetoothGeneratedDumpsysModuleSchema_h", tools: [ "bluetooth_flatbuffer_bundler", ], cmd: "$(location bluetooth_flatbuffer_bundler) -w -m bluetooth.DumpsysData -f module_schema_data -n bluetooth::dumpsys -g $(genDir) $(locations :BluetoothGeneratedModuleSchemaData_h)", cmd: "$(location bluetooth_flatbuffer_bundler) -w -m bluetooth.DumpsysData -f dumpsys_module_schema_data -n bluetooth::dumpsys -g $(genDir) $(locations :BluetoothGeneratedDumpsysBinarySchema_bfbs)", srcs: [ "*.bfbs", ":BluetoothGeneratedModuleSchemaData_h", ":BluetoothGeneratedDumpsysBinarySchema_bfbs", ], out: [ "module_schema_data.h", "dumpsys_module_schema_data.h", ], } Loading system/gd/dumpsys/bundler/Android.bp +20 −19 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ filegroup { } genrule { name: "BluetoothGeneratedBundler_h", name: "BluetoothGeneratedBundlerSchema_h_bfbs", tools: [ "flatc", ], Loading @@ -28,43 +28,44 @@ genrule { ], } cc_binary_host { name: "bluetooth_flatbuffer_bundler", cc_defaults { name: "bluetooth_flatbuffer_bundler_defaults", cpp_std: "c++17", cflags: [ "-Wall", "-Werror", "-Wno-unused-parameter", "-Wno-unused-variable", ], srcs: [ ":BluetoothFlatbufferBundlerSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", "BluetoothGeneratedBundlerSchema_h_bfbs", ], sanitize: { misc_undefined: ["bounds"], }, static_libs: [ "libflatbuffers-cpp", ], } cc_binary_host { name: "bluetooth_flatbuffer_bundler", srcs: [ ":BluetoothFlatbufferBundlerSources", ], defaults: [ "bluetooth_flatbuffer_bundler_defaults", ], } cc_test { name: "bluetooth_flatbuffer_bundler_test", host_supported: true, cflags: [ "-Wall", "-Werror", "-Wno-unused-parameter", "-Wno-unused-variable", "-DUSE_TEST_GENERATED", ], srcs: [ ":BluetoothFlatbufferBundlerTestSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", ], static_libs: [ "libflatbuffers-cpp", defaults: [ "bluetooth_flatbuffer_bundler_defaults", ], data: [ "test.bfbs", Loading system/gd/dumpsys/bundler/bundler.cc +6 −6 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ bool VerifyBinarySchema(const std::vector<const uint8_t>& raw_schema) { bool CreateBinarySchemaBundle( flatbuffers::FlatBufferBuilder* builder, const std::vector<std::string>& filenames, std::vector<flatbuffers::Offset<BundleSchemaMap>>* vector_map) { std::vector<flatbuffers::Offset<BundledSchemaMap>>* vector_map) { assert(builder != nullptr); assert(vector_map != nullptr); Loading @@ -100,7 +100,7 @@ bool CreateBinarySchemaBundle( auto name = builder->CreateString(schema->root_table()->name()->str()); auto data = builder->CreateVector<uint8_t>(raw_schema.data(), raw_schema.size()); vector_map->push_back(CreateBundleSchemaMap(*builder, name, data)); vector_map->push_back(CreateBundledSchemaMap(*builder, name, data)); if (opts.verbose) { fprintf(stdout, "Bundled binary schema file:%s\n", schema->root_table()->name()->c_str()); Loading Loading @@ -183,8 +183,8 @@ int ReadBundledSchema() { return -5; } auto bundle_schema = flatbuffers::GetRoot<BundleSchema>(flatfile_data.c_str()); const flatbuffers::Vector<flatbuffers::Offset<BundleSchemaMap>>* map = bundle_schema->map(); auto bundle_schema = flatbuffers::GetRoot<BundledSchema>(flatfile_data.c_str()); const flatbuffers::Vector<flatbuffers::Offset<BundledSchemaMap>>* map = bundle_schema->map(); fprintf(stdout, "Bundle schema title:%s\n", bundle_schema->title()->c_str()); fprintf(stdout, "Bundle schema root_name:%s\n", bundle_schema->root_name()->c_str()); Loading Loading @@ -216,14 +216,14 @@ int WriteBundledSchema() { flatbuffers::FlatBufferBuilder builder(1024); std::vector<flatbuffers::Offset<BundleSchemaMap>> vector_map; std::vector<flatbuffers::Offset<BundledSchemaMap>> vector_map; if (!CreateBinarySchemaBundle(&builder, bfbs_filenames, &vector_map)) { fprintf(stderr, "Unable to bundle schema bfbs files\n"); return EXIT_FAILURE; } auto title = "Bundled schema tables"; auto schema_offset = CreateBundleSchemaDirect(builder, title, main_root_name, &vector_map); auto schema_offset = CreateBundledSchemaDirect(builder, title, main_root_name, &vector_map); builder.Finish(schema_offset); std::string final_filename(opts.gen); Loading system/gd/dumpsys/bundler/bundler.fbs +5 −5 Original line number Diff line number Diff line // Bundle Schema // Bundled Schema // // Describes a collection of binary flatbuffer schema. // namespace bluetooth.dumpsys; table BundleSchemaMap { table BundledSchemaMap { name:string; data:[ubyte]; } table BundleSchema { table BundledSchema { title:string; root_name:string; map:[BundleSchemaMap]; map:[BundledSchemaMap]; } root_type BundleSchema; root_type BundledSchema; system/gd/dumpsys/bundler/test.cc +2 −2 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ bool VerifyBinarySchema(const std::vector<const uint8_t>& raw_schema); bool CreateBinarySchemaBundle( flatbuffers::FlatBufferBuilder* builder, const std::vector<std::string>& filenames, std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundleSchemaMap>>* vector_map); std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundledSchemaMap>>* vector_map); int WriteHeaderFile(FILE* fp, const uint8_t* data, size_t data_len); class BundlerTest : public ::testing::Test { Loading Loading @@ -56,7 +56,7 @@ TEST_F(BundlerTest, VerifyBinarySchema) { TEST_F(BundlerTest, CreateBinarySchemaBundle) { flatbuffers::FlatBufferBuilder builder; std::vector<std::string> filenames; std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundleSchemaMap>> vector_map; std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundledSchemaMap>> vector_map; ASSERT_TRUE(CreateBinarySchemaBundle(&builder, filenames, &vector_map)); ASSERT_EQ(0, vector_map.size()); } Loading Loading
system/gd/Android.bp +18 −14 Original line number Diff line number Diff line Loading @@ -149,10 +149,10 @@ cc_defaults { ":BluetoothStorageSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", "BluetoothGeneratedFlatbuffers_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", "BluetoothGeneratedDumpsysData_h", ], shared_libs: [ "libchrome", Loading Loading @@ -204,7 +204,9 @@ cc_binary { ], generated_headers: [ "BluetoothFacadeGeneratedStub_h", "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", // Needed here to guarantee that generated zip file is created before // bluetooth_cert_tests.zip is packaged Loading Loading @@ -293,7 +295,9 @@ cc_test { ":BluetoothStorageTestSources", ], generated_headers: [ "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", ], static_libs: [ Loading Loading @@ -349,7 +353,9 @@ cc_defaults { ], host_supported: true, generated_headers: [ "BluetoothGeneratedDumpsysData_h", "BluetoothGeneratedBundlerSchema_h_bfbs", "BluetoothGeneratedDumpsysDataSchema_h", "BluetoothGeneratedDumpsysModuleSchema_h", "BluetoothGeneratedPackets_h", ], shared_libs: [ Loading Loading @@ -441,7 +447,7 @@ genrule { // Generates binary schema data to be bundled and source file generated genrule { name: "BluetoothGeneratedModuleSchemaData_h", name: "BluetoothGeneratedDumpsysBinarySchema_bfbs", tools: [ "flatc", ], Loading @@ -457,7 +463,7 @@ genrule { } genrule { name: "BluetoothGeneratedDumpsysData_h", name: "BluetoothGeneratedDumpsysDataSchema_h", tools: [ "flatc", ], Loading @@ -472,19 +478,17 @@ genrule { ], } // Generates binary bundled source file for inclusion into library genrule { name: "BluetoothGeneratedFlatbuffers_h", name: "BluetoothGeneratedDumpsysModuleSchema_h", tools: [ "bluetooth_flatbuffer_bundler", ], cmd: "$(location bluetooth_flatbuffer_bundler) -w -m bluetooth.DumpsysData -f module_schema_data -n bluetooth::dumpsys -g $(genDir) $(locations :BluetoothGeneratedModuleSchemaData_h)", cmd: "$(location bluetooth_flatbuffer_bundler) -w -m bluetooth.DumpsysData -f dumpsys_module_schema_data -n bluetooth::dumpsys -g $(genDir) $(locations :BluetoothGeneratedDumpsysBinarySchema_bfbs)", srcs: [ "*.bfbs", ":BluetoothGeneratedModuleSchemaData_h", ":BluetoothGeneratedDumpsysBinarySchema_bfbs", ], out: [ "module_schema_data.h", "dumpsys_module_schema_data.h", ], } Loading
system/gd/dumpsys/bundler/Android.bp +20 −19 Original line number Diff line number Diff line Loading @@ -15,7 +15,7 @@ filegroup { } genrule { name: "BluetoothGeneratedBundler_h", name: "BluetoothGeneratedBundlerSchema_h_bfbs", tools: [ "flatc", ], Loading @@ -28,43 +28,44 @@ genrule { ], } cc_binary_host { name: "bluetooth_flatbuffer_bundler", cc_defaults { name: "bluetooth_flatbuffer_bundler_defaults", cpp_std: "c++17", cflags: [ "-Wall", "-Werror", "-Wno-unused-parameter", "-Wno-unused-variable", ], srcs: [ ":BluetoothFlatbufferBundlerSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", "BluetoothGeneratedBundlerSchema_h_bfbs", ], sanitize: { misc_undefined: ["bounds"], }, static_libs: [ "libflatbuffers-cpp", ], } cc_binary_host { name: "bluetooth_flatbuffer_bundler", srcs: [ ":BluetoothFlatbufferBundlerSources", ], defaults: [ "bluetooth_flatbuffer_bundler_defaults", ], } cc_test { name: "bluetooth_flatbuffer_bundler_test", host_supported: true, cflags: [ "-Wall", "-Werror", "-Wno-unused-parameter", "-Wno-unused-variable", "-DUSE_TEST_GENERATED", ], srcs: [ ":BluetoothFlatbufferBundlerTestSources", ], generated_headers: [ "BluetoothGeneratedBundler_h", ], static_libs: [ "libflatbuffers-cpp", defaults: [ "bluetooth_flatbuffer_bundler_defaults", ], data: [ "test.bfbs", Loading
system/gd/dumpsys/bundler/bundler.cc +6 −6 Original line number Diff line number Diff line Loading @@ -76,7 +76,7 @@ bool VerifyBinarySchema(const std::vector<const uint8_t>& raw_schema) { bool CreateBinarySchemaBundle( flatbuffers::FlatBufferBuilder* builder, const std::vector<std::string>& filenames, std::vector<flatbuffers::Offset<BundleSchemaMap>>* vector_map) { std::vector<flatbuffers::Offset<BundledSchemaMap>>* vector_map) { assert(builder != nullptr); assert(vector_map != nullptr); Loading @@ -100,7 +100,7 @@ bool CreateBinarySchemaBundle( auto name = builder->CreateString(schema->root_table()->name()->str()); auto data = builder->CreateVector<uint8_t>(raw_schema.data(), raw_schema.size()); vector_map->push_back(CreateBundleSchemaMap(*builder, name, data)); vector_map->push_back(CreateBundledSchemaMap(*builder, name, data)); if (opts.verbose) { fprintf(stdout, "Bundled binary schema file:%s\n", schema->root_table()->name()->c_str()); Loading Loading @@ -183,8 +183,8 @@ int ReadBundledSchema() { return -5; } auto bundle_schema = flatbuffers::GetRoot<BundleSchema>(flatfile_data.c_str()); const flatbuffers::Vector<flatbuffers::Offset<BundleSchemaMap>>* map = bundle_schema->map(); auto bundle_schema = flatbuffers::GetRoot<BundledSchema>(flatfile_data.c_str()); const flatbuffers::Vector<flatbuffers::Offset<BundledSchemaMap>>* map = bundle_schema->map(); fprintf(stdout, "Bundle schema title:%s\n", bundle_schema->title()->c_str()); fprintf(stdout, "Bundle schema root_name:%s\n", bundle_schema->root_name()->c_str()); Loading Loading @@ -216,14 +216,14 @@ int WriteBundledSchema() { flatbuffers::FlatBufferBuilder builder(1024); std::vector<flatbuffers::Offset<BundleSchemaMap>> vector_map; std::vector<flatbuffers::Offset<BundledSchemaMap>> vector_map; if (!CreateBinarySchemaBundle(&builder, bfbs_filenames, &vector_map)) { fprintf(stderr, "Unable to bundle schema bfbs files\n"); return EXIT_FAILURE; } auto title = "Bundled schema tables"; auto schema_offset = CreateBundleSchemaDirect(builder, title, main_root_name, &vector_map); auto schema_offset = CreateBundledSchemaDirect(builder, title, main_root_name, &vector_map); builder.Finish(schema_offset); std::string final_filename(opts.gen); Loading
system/gd/dumpsys/bundler/bundler.fbs +5 −5 Original line number Diff line number Diff line // Bundle Schema // Bundled Schema // // Describes a collection of binary flatbuffer schema. // namespace bluetooth.dumpsys; table BundleSchemaMap { table BundledSchemaMap { name:string; data:[ubyte]; } table BundleSchema { table BundledSchema { title:string; root_name:string; map:[BundleSchemaMap]; map:[BundledSchemaMap]; } root_type BundleSchema; root_type BundledSchema;
system/gd/dumpsys/bundler/test.cc +2 −2 Original line number Diff line number Diff line Loading @@ -25,7 +25,7 @@ bool VerifyBinarySchema(const std::vector<const uint8_t>& raw_schema); bool CreateBinarySchemaBundle( flatbuffers::FlatBufferBuilder* builder, const std::vector<std::string>& filenames, std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundleSchemaMap>>* vector_map); std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundledSchemaMap>>* vector_map); int WriteHeaderFile(FILE* fp, const uint8_t* data, size_t data_len); class BundlerTest : public ::testing::Test { Loading Loading @@ -56,7 +56,7 @@ TEST_F(BundlerTest, VerifyBinarySchema) { TEST_F(BundlerTest, CreateBinarySchemaBundle) { flatbuffers::FlatBufferBuilder builder; std::vector<std::string> filenames; std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundleSchemaMap>> vector_map; std::vector<flatbuffers::Offset<bluetooth::dumpsys::BundledSchemaMap>> vector_map; ASSERT_TRUE(CreateBinarySchemaBundle(&builder, filenames, &vector_map)); ASSERT_EQ(0, vector_map.size()); } Loading