| # Copyrigh 2018 The Fuchsia Authors. All rights reserved. | |
| # Use of this source code is governed by a BSD-style license that can be | |
| # found in the LICENSE file. | |
| import("//build/fuzzing/fuzzer.gni") | |
| static_library("expr") { | |
| sources = [ | |
| "async_dwarf_expr_eval.cc", | |
| "async_dwarf_expr_eval.h", | |
| "bitfield.cc", | |
| "bitfield.h", | |
| "builtin_types.cc", | |
| "builtin_types.h", | |
| "cast.cc", | |
| "cast.h", | |
| "eval_callback.h", | |
| "eval_context.h", | |
| "eval_context_impl.cc", | |
| "eval_context_impl.h", | |
| "eval_operators.cc", | |
| "eval_operators.h", | |
| "expr.cc", | |
| "expr.h", | |
| "expr_language.h", | |
| "expr_node.cc", | |
| "expr_node.h", | |
| "expr_parser.cc", | |
| "expr_parser.h", | |
| "expr_token.h", | |
| "expr_token_type.cc", | |
| "expr_token_type.h", | |
| "expr_tokenizer.cc", | |
| "expr_tokenizer.h", | |
| "expr_value.cc", | |
| "expr_value.h", | |
| "expr_value_source.cc", | |
| "expr_value_source.h", | |
| "find_name.cc", | |
| "find_name.h", | |
| "format.cc", | |
| "format.h", | |
| "format_node.cc", | |
| "format_node.h", | |
| "format_options.h", | |
| "found_member.cc", | |
| "found_member.h", | |
| "found_name.cc", | |
| "found_name.h", | |
| "identifier_glob.cc", | |
| "identifier_glob.h", | |
| "index_walker.cc", | |
| "index_walker.h", | |
| "number_parser.cc", | |
| "number_parser.h", | |
| "parse_special_identifier.cc", | |
| "parse_special_identifier.h", | |
| "parse_string.cc", | |
| "parse_string.h", | |
| "parsed_identifier.cc", | |
| "parsed_identifier.h", | |
| "permissive_input_location.cc", | |
| "permissive_input_location.h", | |
| "pretty_rust_tuple.cc", | |
| "pretty_rust_tuple.h", | |
| "pretty_std_string.cc", | |
| "pretty_std_string.h", | |
| "pretty_tree.cc", | |
| "pretty_tree.h", | |
| "pretty_type.cc", | |
| "pretty_type.h", | |
| "pretty_type_manager.cc", | |
| "pretty_type_manager.h", | |
| "resolve_array.cc", | |
| "resolve_array.h", | |
| "resolve_base.cc", | |
| "resolve_base.h", | |
| "resolve_collection.cc", | |
| "resolve_collection.h", | |
| "resolve_const_value.cc", | |
| "resolve_const_value.h", | |
| "resolve_ptr_ref.cc", | |
| "resolve_ptr_ref.h", | |
| "resolve_type.cc", | |
| "resolve_type.h", | |
| "resolve_variant.cc", | |
| "resolve_variant.h", | |
| "template_type_extractor.cc", | |
| "template_type_extractor.h", | |
| "vector_register_format.cc", | |
| "vector_register_format.h", | |
| ] | |
| public_deps = [ | |
| "//src/developer/debug/zxdb/common", | |
| "//src/developer/debug/zxdb/symbols", | |
| "//src/lib/fxl", | |
| "//third_party/double-conversion", | |
| "//zircon/public/lib/fit", | |
| ] | |
| configs += [ | |
| # TODO(fxbug.dev/58162): delete the below and fix compiler warnings | |
| "//build/config:Wno-conversion", | |
| ] | |
| } | |
| source_set("test_support") { | |
| testonly = true | |
| sources = [ | |
| "mock_eval_context.cc", | |
| "mock_eval_context.h", | |
| "test_eval_context_impl.h", | |
| ] | |
| public_deps = [ | |
| ":expr", | |
| "//src/developer/debug/zxdb/symbols:test_support", | |
| ] | |
| } | |
| source_set("tests") { | |
| testonly = true | |
| sources = [ | |
| "async_dwarf_expr_eval_unittest.cc", | |
| "bitfield_unittest.cc", | |
| "builtin_types_unittest.cc", | |
| "cast_unittest.cc", | |
| "eval_context_impl_unittest.cc", | |
| "eval_operators_unittest.cc", | |
| "eval_test_support.cc", | |
| "eval_test_support.h", | |
| "expr_node_unittest.cc", | |
| "expr_parser_unittest.cc", | |
| "expr_tokenizer_unittest.cc", | |
| "expr_unittest.cc", | |
| "expr_value_source_unittest.cc", | |
| "find_name_unittest.cc", | |
| "format_test_support.cc", | |
| "format_test_support.h", | |
| "format_unittest.cc", | |
| "identifier_glob_unittest.cc", | |
| "index_walker_unittest.cc", | |
| "mock_expr_node.cc", | |
| "mock_expr_node.h", | |
| "number_parser_unittest.cc", | |
| "parse_special_identifier_unittest.cc", | |
| "parse_string_unittest.cc", | |
| "parsed_identifier_unittest.cc", | |
| "permissive_input_location_unittest.cc", | |
| "pretty_rust_tuple_unittest.cc", | |
| "pretty_std_string_unittest.cc", | |
| "pretty_type_manager_unittest.cc", | |
| "pretty_type_unittest.cc", | |
| "resolve_array_unittest.cc", | |
| "resolve_base_unittest.cc", | |
| "resolve_collection_unittest.cc", | |
| "resolve_ptr_ref_unittest.cc", | |
| "resolve_type_unittest.cc", | |
| "resolve_variant_unittest.cc", | |
| "template_type_extractor_unittest.cc", | |
| "vector_register_format_unittest.cc", | |
| "virtual_base_test_setup.cc", | |
| "virtual_base_test_setup.h", | |
| "virtual_inheritance_test_setup.cc", | |
| "virtual_inheritance_test_setup.h", | |
| ] | |
| # Note: this should not depend on client/ or console/ libraries, including their test_support. | |
| deps = [ | |
| ":expr", | |
| ":test_support", | |
| "//src/developer/debug/zxdb/common:test_support", | |
| "//src/developer/debug/zxdb/symbols:test_support", | |
| "//src/lib/llvm:LLVMBinaryFormat", | |
| "//third_party/googletest:gtest", | |
| ] | |
| configs += [ | |
| # TODO(fxbug.dev/58162): delete the below and fix compiler warnings | |
| "//build/config:Wno-conversion", | |
| ] | |
| } | |
| fuzzer("expr_parser_fuzzer") { | |
| sources = [ "expr_parser_fuzzer.cc" ] | |
| deps = [ ":expr" ] | |
| } | |
| fuzzers_package("expr_fuzzers") { | |
| fuzzers = [ ":expr_parser_fuzzer" ] | |
| host_only = true | |
| } |