# Copyright (c) 2022 Huawei Device Co., Ltd. # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # # http://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. # See the License for the specific language governing permissions and # limitations under the License. import("//build/ohos.gni") config("idl_config") { include_dirs = [ "./idl_tool_2" ] } common_sources = [ "idl_tool_2/ast/base/ast_boolean_type.cpp", "idl_tool_2/ast/base/ast_boolean_type.h", "idl_tool_2/ast/base/ast_byte_type.cpp", "idl_tool_2/ast/base/ast_byte_type.h", "idl_tool_2/ast/base/ast_char_type.cpp", "idl_tool_2/ast/base/ast_char_type.h", "idl_tool_2/ast/base/ast_double_type.cpp", "idl_tool_2/ast/base/ast_double_type.h", "idl_tool_2/ast/base/ast_float_type.cpp", "idl_tool_2/ast/base/ast_float_type.h", "idl_tool_2/ast/base/ast_integer_type.cpp", "idl_tool_2/ast/base/ast_integer_type.h", "idl_tool_2/ast/base/ast_long_type.cpp", "idl_tool_2/ast/base/ast_long_type.h", "idl_tool_2/ast/base/ast_short_type.cpp", "idl_tool_2/ast/base/ast_short_type.h", "idl_tool_2/ast/base/ast_string16_type.cpp", "idl_tool_2/ast/base/ast_string16_type.h", "idl_tool_2/ast/base/ast_string_type.cpp", "idl_tool_2/ast/base/ast_string_type.h", "idl_tool_2/ast/base/ast_uchar_type.cpp", "idl_tool_2/ast/base/ast_uchar_type.h", "idl_tool_2/ast/base/ast_uint_type.cpp", "idl_tool_2/ast/base/ast_uint_type.h", "idl_tool_2/ast/base/ast_ulong_type.cpp", "idl_tool_2/ast/base/ast_ulong_type.h", "idl_tool_2/ast/base/ast_ushort_type.cpp", "idl_tool_2/ast/base/ast_ushort_type.h", ] common_sources += [ "idl_tool_2/ast/ast.cpp", "idl_tool_2/ast/ast.h", "idl_tool_2/ast/ast_array_type.cpp", "idl_tool_2/ast/ast_array_type.h", "idl_tool_2/ast/ast_attribute.cpp", "idl_tool_2/ast/ast_attribute.h", "idl_tool_2/ast/ast_enum_type.cpp", "idl_tool_2/ast/ast_enum_type.h", "idl_tool_2/ast/ast_expr.cpp", "idl_tool_2/ast/ast_expr.h", "idl_tool_2/ast/ast_fd_type.cpp", "idl_tool_2/ast/ast_fd_type.h", "idl_tool_2/ast/ast_interface_type.cpp", "idl_tool_2/ast/ast_interface_type.h", "idl_tool_2/ast/ast_map_type.cpp", "idl_tool_2/ast/ast_map_type.h", "idl_tool_2/ast/ast_method.cpp", "idl_tool_2/ast/ast_method.h", "idl_tool_2/ast/ast_namespace.cpp", "idl_tool_2/ast/ast_namespace.h", "idl_tool_2/ast/ast_native_buffer_type.cpp", "idl_tool_2/ast/ast_native_buffer_type.h", "idl_tool_2/ast/ast_node.cpp", "idl_tool_2/ast/ast_node.h", "idl_tool_2/ast/ast_orderedmap_type.cpp", "idl_tool_2/ast/ast_orderedmap_type.h", "idl_tool_2/ast/ast_parameter.cpp", "idl_tool_2/ast/ast_parameter.h", "idl_tool_2/ast/ast_pointer_type.cpp", "idl_tool_2/ast/ast_pointer_type.h", "idl_tool_2/ast/ast_rawdata_type.cpp", "idl_tool_2/ast/ast_rawdata_type.h", "idl_tool_2/ast/ast_sequenceable_type.cpp", "idl_tool_2/ast/ast_sequenceable_type.h", "idl_tool_2/ast/ast_smq_type.cpp", "idl_tool_2/ast/ast_smq_type.h", "idl_tool_2/ast/ast_struct_type.cpp", "idl_tool_2/ast/ast_struct_type.h", "idl_tool_2/ast/ast_type.cpp", "idl_tool_2/ast/ast_type.h", "idl_tool_2/ast/ast_union_type.cpp", "idl_tool_2/ast/ast_union_type.h", "idl_tool_2/ast/ast_void_type.cpp", "idl_tool_2/ast/ast_void_type.h", ] common_sources += [ "idl_tool_2/codegen/HDI/c/c_client_proxy_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_client_proxy_code_emitter.h", "idl_tool_2/codegen/HDI/c/c_custom_types_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_custom_types_code_emitter.h", "idl_tool_2/codegen/HDI/c/c_interface_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_interface_code_emitter.h", "idl_tool_2/codegen/HDI/c/c_service_driver_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_service_driver_code_emitter.h", "idl_tool_2/codegen/HDI/c/c_service_impl_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_service_impl_code_emitter.h", "idl_tool_2/codegen/HDI/c/c_service_stub_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/c_service_stub_code_emitter.h", "idl_tool_2/codegen/HDI/c/hdi_c_code_emitter.cpp", "idl_tool_2/codegen/HDI/c/hdi_c_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/HDI/cpp/cpp_client_proxy_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_client_proxy_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/cpp_custom_types_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_custom_types_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/cpp_interface_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_interface_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/cpp_service_driver_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_service_driver_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/cpp_service_impl_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_service_impl_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/cpp_service_stub_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/cpp_service_stub_code_emitter.h", "idl_tool_2/codegen/HDI/cpp/hdi_cpp_code_emitter.cpp", "idl_tool_2/codegen/HDI/cpp/hdi_cpp_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/HDI/java/hdi_java_code_emitter.cpp", "idl_tool_2/codegen/HDI/java/hdi_java_code_emitter.h", "idl_tool_2/codegen/HDI/java/java_client_interface_code_emitter.cpp", "idl_tool_2/codegen/HDI/java/java_client_interface_code_emitter.h", "idl_tool_2/codegen/HDI/java/java_client_proxy_code_emitter.cpp", "idl_tool_2/codegen/HDI/java/java_client_proxy_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/HDI/type/hdi_array_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_array_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_boolean_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_boolean_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_byte_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_byte_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_double_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_double_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_enum_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_enum_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_fd_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_fd_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_float_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_float_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_int_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_int_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_interface_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_interface_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_long_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_long_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_map_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_map_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_native_buffer_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_native_buffer_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_pointer_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_pointer_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_seq_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_seq_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_short_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_short_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_smq_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_smq_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_string_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_string_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_struct_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_struct_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_uchar_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_uchar_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_uint_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_uint_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_ulong_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_ulong_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_union_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_union_type_emitter.h", "idl_tool_2/codegen/HDI/type/hdi_ushort_type_emitter.cpp", "idl_tool_2/codegen/HDI/type/hdi_ushort_type_emitter.h", ] common_sources += [ "idl_tool_2/codegen/HDI/hdi_code_emitter.cpp", "idl_tool_2/codegen/HDI/hdi_code_emitter.h", "idl_tool_2/codegen/HDI/hdi_code_generator.cpp", "idl_tool_2/codegen/HDI/hdi_code_generator.h", "idl_tool_2/codegen/HDI/hdi_type_emitter.cpp", "idl_tool_2/codegen/HDI/hdi_type_emitter.h", ] common_sources += [ "idl_tool_2/codegen/SA/cpp/sa_cpp_client_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_client_code_emitter.h", "idl_tool_2/codegen/SA/cpp/sa_cpp_client_proxy_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_client_proxy_code_emitter.h", "idl_tool_2/codegen/SA/cpp/sa_cpp_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_code_emitter.h", "idl_tool_2/codegen/SA/cpp/sa_cpp_custom_types_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_custom_types_code_emitter.h", "idl_tool_2/codegen/SA/cpp/sa_cpp_interface_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_interface_code_emitter.h", "idl_tool_2/codegen/SA/cpp/sa_cpp_service_stub_code_emitter.cpp", "idl_tool_2/codegen/SA/cpp/sa_cpp_service_stub_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/SA/rust/sa_rust_code_emitter.cpp", "idl_tool_2/codegen/SA/rust/sa_rust_code_emitter.h", "idl_tool_2/codegen/SA/rust/sa_rust_interface_code_emitter.cpp", "idl_tool_2/codegen/SA/rust/sa_rust_interface_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/SA/ts/sa_ts_client_proxy_code_emitter.cpp", "idl_tool_2/codegen/SA/ts/sa_ts_client_proxy_code_emitter.h", "idl_tool_2/codegen/SA/ts/sa_ts_code_emitter.cpp", "idl_tool_2/codegen/SA/ts/sa_ts_code_emitter.h", "idl_tool_2/codegen/SA/ts/sa_ts_interface_code_emitter.cpp", "idl_tool_2/codegen/SA/ts/sa_ts_interface_code_emitter.h", "idl_tool_2/codegen/SA/ts/sa_ts_service_stub_code_emitter.cpp", "idl_tool_2/codegen/SA/ts/sa_ts_service_stub_code_emitter.h", ] common_sources += [ "idl_tool_2/codegen/SA/type/sa_array_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_array_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_boolean_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_boolean_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_byte_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_byte_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_char_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_char_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_double_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_double_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_enum_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_enum_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_fd_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_fd_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_float_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_float_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_int_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_int_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_interface_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_interface_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_long_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_long_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_map_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_map_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_orderedmap_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_orderedmap_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_rawdata_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_rawdata_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_seq_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_seq_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_short_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_short_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_string_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_string_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_struct_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_struct_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_uchar_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_uchar_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_uint_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_uint_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_ulong_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_ulong_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_union_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_union_type_emitter.h", "idl_tool_2/codegen/SA/type/sa_ushort_type_emitter.cpp", "idl_tool_2/codegen/SA/type/sa_ushort_type_emitter.h", ] common_sources += [ "idl_tool_2/codegen/SA/sa_code_emitter.cpp", "idl_tool_2/codegen/SA/sa_code_emitter.h", "idl_tool_2/codegen/SA/sa_code_generator.cpp", "idl_tool_2/codegen/SA/sa_code_generator.h", "idl_tool_2/codegen/SA/sa_type_emitter.cpp", "idl_tool_2/codegen/SA/sa_type_emitter.h", ] common_sources += [ "idl_tool_2/codegen/code_emitter.cpp", "idl_tool_2/codegen/code_emitter.h", "idl_tool_2/codegen/code_generator.cpp", "idl_tool_2/codegen/code_generator.h", ] common_sources += [ "idl_tool_2/hash/hash.cpp", "idl_tool_2/hash/hash.h", ] common_sources += [ "idl_tool_2/lexer/lexer.cpp", "idl_tool_2/lexer/lexer.h", "idl_tool_2/lexer/token.cpp", "idl_tool_2/lexer/token.h", ] common_sources += [ "idl_tool_2/metadata/meta_component.h", "idl_tool_2/metadata/meta_interface.h", "idl_tool_2/metadata/meta_method.h", "idl_tool_2/metadata/meta_namespace.h", "idl_tool_2/metadata/meta_patameter.h", "idl_tool_2/metadata/meta_rawdata.h", "idl_tool_2/metadata/meta_sequenceable.h", "idl_tool_2/metadata/meta_type.h", "idl_tool_2/metadata/metadata_builder.cpp", "idl_tool_2/metadata/metadata_builder.h", "idl_tool_2/metadata/metadata_dumper.cpp", "idl_tool_2/metadata/metadata_dumper.h", "idl_tool_2/metadata/metadata_reader.cpp", "idl_tool_2/metadata/metadata_reader.h", "idl_tool_2/metadata/metadata_serializer.cpp", "idl_tool_2/metadata/metadata_serializer.h", ] common_sources += [ "idl_tool_2/parser/intf_type_check.cpp", "idl_tool_2/parser/intf_type_check.h", "idl_tool_2/parser/parser.cpp", "idl_tool_2/parser/parser.h", ] common_sources += [ "idl_tool_2/preprocessor/preprocessor.cpp", "idl_tool_2/preprocessor/preprocessor.h", ] common_sources += [ "idl_tool_2/util/autoptr.h", "idl_tool_2/util/common.h", "idl_tool_2/util/file.cpp", "idl_tool_2/util/file.h", "idl_tool_2/util/light_refcount_base.cpp", "idl_tool_2/util/light_refcount_base.h", "idl_tool_2/util/logger.cpp", "idl_tool_2/util/logger.h", "idl_tool_2/util/options.cpp", "idl_tool_2/util/options.h", "idl_tool_2/util/string_builder.cpp", "idl_tool_2/util/string_builder.h", "idl_tool_2/util/string_helper.cpp", "idl_tool_2/util/string_helper.h", "idl_tool_2/util/string_pool.cpp", "idl_tool_2/util/string_pool.h", ] ohos_executable("idl") { sources = [ "idl_tool_2/main.cpp" ] sources += common_sources configs = [ ":idl_config" ] use_exceptions = true use_rtti = true external_deps = [ "bounds_checking_function:libsec_static" ] if (is_arkui_x) { deps = [ "//third_party/bounds_checking_function:libsec_static" ] } install_enable = false part_name = "idl_tool" subsystem_name = "ability" }