1c8a96e64Sopenharmony_ci# Copyright (c) 2024 Huawei Device Co., Ltd. 2c8a96e64Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3c8a96e64Sopenharmony_ci# you may not use this file except in compliance with the License. 4c8a96e64Sopenharmony_ci# You may obtain a copy of the License at 5c8a96e64Sopenharmony_ci# 6c8a96e64Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7c8a96e64Sopenharmony_ci# 8c8a96e64Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9c8a96e64Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10c8a96e64Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11c8a96e64Sopenharmony_ci# See the License for the specific language governing permissions and 12c8a96e64Sopenharmony_ci# limitations under the License. 13c8a96e64Sopenharmony_ci 14c8a96e64Sopenharmony_ciimport("//build/config/components/ets_frontend/es2abc_config.gni") 15c8a96e64Sopenharmony_ciimport("//build/ohos.gni") 16c8a96e64Sopenharmony_ciimport("//foundation/arkui/ace_engine/ace_config.gni") 17c8a96e64Sopenharmony_ciimport("//foundation/arkui/ace_engine/adapter/preview/build/config.gni") 18c8a96e64Sopenharmony_ciimport("//foundation/arkui/ace_engine/build/ace_gen_obj.gni") 19c8a96e64Sopenharmony_ci 20c8a96e64Sopenharmony_cies2abc_gen_abc("gen_atomicserviceweb_abc") { 21c8a96e64Sopenharmony_ci src_js = rebase_path("atomicserviceweb.js") 22c8a96e64Sopenharmony_ci dst_file = rebase_path(target_out_dir + "/atomicserviceweb.abc") 23c8a96e64Sopenharmony_ci in_puts = [ "atomicserviceweb.js" ] 24c8a96e64Sopenharmony_ci out_puts = [ target_out_dir + "/atomicserviceweb.abc" ] 25c8a96e64Sopenharmony_ci extra_args = [ "--module" ] 26c8a96e64Sopenharmony_ci} 27c8a96e64Sopenharmony_ci 28c8a96e64Sopenharmony_cigen_js_obj("atomicserviceweb_abc") { 29c8a96e64Sopenharmony_ci input = get_label_info(":gen_atomicserviceweb_abc", "target_out_dir") + 30c8a96e64Sopenharmony_ci "/atomicserviceweb.abc" 31c8a96e64Sopenharmony_ci output = target_out_dir + "/atomicserviceweb_abc.o" 32c8a96e64Sopenharmony_ci dep = ":gen_atomicserviceweb_abc" 33c8a96e64Sopenharmony_ci} 34c8a96e64Sopenharmony_ci 35c8a96e64Sopenharmony_cigen_obj("atomicserviceweb_abc_preview") { 36c8a96e64Sopenharmony_ci input = get_label_info(":gen_atomicserviceweb_abc", "target_out_dir") + 37c8a96e64Sopenharmony_ci "/atomicserviceweb.abc" 38c8a96e64Sopenharmony_ci output = target_out_dir + "/atomicserviceweb_abc.c" 39c8a96e64Sopenharmony_ci snapshot_dep = [ ":gen_atomicserviceweb_abc" ] 40c8a96e64Sopenharmony_ci} 41c8a96e64Sopenharmony_ci 42c8a96e64Sopenharmony_ciohos_shared_library("atomicserviceweb") { 43c8a96e64Sopenharmony_ci include_dirs = [ "include" ] 44c8a96e64Sopenharmony_ci 45c8a96e64Sopenharmony_ci sources = [ 46c8a96e64Sopenharmony_ci "api_policy_adapter.cpp", 47c8a96e64Sopenharmony_ci "atomicserviceweb.cpp", 48c8a96e64Sopenharmony_ci ] 49c8a96e64Sopenharmony_ci 50c8a96e64Sopenharmony_ci if (use_mingw_win || use_mac || use_linux) { 51c8a96e64Sopenharmony_ci deps = [ ":gen_obj_src_atomicserviceweb_abc_preview" ] 52c8a96e64Sopenharmony_ci } else { 53c8a96e64Sopenharmony_ci deps = [ ":atomicserviceweb_abc" ] 54c8a96e64Sopenharmony_ci } 55c8a96e64Sopenharmony_ci 56c8a96e64Sopenharmony_ci external_deps = [ 57c8a96e64Sopenharmony_ci "hilog:libhilog", 58c8a96e64Sopenharmony_ci "napi:ace_napi", 59c8a96e64Sopenharmony_ci ] 60c8a96e64Sopenharmony_ci 61c8a96e64Sopenharmony_ci relative_install_dir = "module/atomicservice" 62c8a96e64Sopenharmony_ci subsystem_name = "arkui" 63c8a96e64Sopenharmony_ci part_name = "as_advanced_ui_component" 64c8a96e64Sopenharmony_ci} 65