1# Copyright (c) 2022 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13import("//build/ohos.gni") 14import("//foundation/distributeddatamgr/udmf/udmf.gni") 15 16config("udmf_napi_config") { 17 include_dirs = [ 18 "${udmf_interfaces_path}/innerkits/client", 19 "${udmf_interfaces_path}/innerkits/common", 20 "${udmf_interfaces_path}/innerkits/data", 21 "${udmf_interfaces_path}/jskits/common", 22 "${udmf_interfaces_path}/jskits/data", 23 24 "${udmf_framework_path}/common", 25 "${udmf_framework_path}/service", 26 27 "//third_party/libuv/include", 28 "//third_party/node/src", 29 30 "${aafwk_inner_api_path}/ability_manager/include", 31 "${aafwk_kits_path}/appkit/native/app/include/", 32 "${aafwk_kits_path}/ability/native/include", 33 "${aafwk_napi_path}/inner/napi_common", 34 "${aafwk_service_path}/abilitymgr/include", 35 "${aafwk_service_path}/common/include", 36 ] 37} 38 39ohos_shared_library("unifieddatachannel_napi") { 40 sources = [ 41 "${udmf_framework_path}/jskitsimpl/data/application_defined_record_napi.cpp", 42 "${udmf_framework_path}/jskitsimpl/data/audio_napi.cpp", 43 "${udmf_framework_path}/jskitsimpl/data/file_napi.cpp", 44 "${udmf_framework_path}/jskitsimpl/data/folder_napi.cpp", 45 "${udmf_framework_path}/jskitsimpl/data/html_napi.cpp", 46 "${udmf_framework_path}/jskitsimpl/data/image_napi.cpp", 47 "${udmf_framework_path}/jskitsimpl/data/link_napi.cpp", 48 "${udmf_framework_path}/jskitsimpl/data/plain_text_napi.cpp", 49 "${udmf_framework_path}/jskitsimpl/data/summary_napi.cpp", 50 "${udmf_framework_path}/jskitsimpl/data/system_defined_appitem_napi.cpp", 51 "${udmf_framework_path}/jskitsimpl/data/system_defined_form_napi.cpp", 52 "${udmf_framework_path}/jskitsimpl/data/system_defined_pixelmap_napi.cpp", 53 "${udmf_framework_path}/jskitsimpl/data/system_defined_record_napi.cpp", 54 "${udmf_framework_path}/jskitsimpl/data/text_napi.cpp", 55 "${udmf_framework_path}/jskitsimpl/data/unified_data_channel_napi.cpp", 56 "${udmf_framework_path}/jskitsimpl/data/unified_data_napi.cpp", 57 "${udmf_framework_path}/jskitsimpl/data/unified_record_napi.cpp", 58 "${udmf_framework_path}/jskitsimpl/data/video_napi.cpp", 59 "${udmf_interfaces_path}/jskits/module/unified_data_channel_napi_module.cpp", 60 ] 61 62 ldflags = [ "-Wl,--exclude-libs=ALL" ] 63 64 public_configs = [ ":udmf_napi_config" ] 65 66 deps = [ 67 "${third_party_path}/bounds_checking_function:libsec_shared", 68 "../innerkits:udmf_client", 69 "../jskits:udmf_js_common", 70 ] 71 72 external_deps = [ 73 "ability_runtime:abilitykit_native", 74 "c_utils:utils", 75 "hilog:libhilog", 76 "ipc:ipc_core", 77 "kv_store:distributeddata_inner", 78 "napi:ace_napi", 79 ] 80 81 relative_install_dir = "module/data" 82 subsystem_name = "distributeddatamgr" 83 part_name = "udmf" 84} 85 86ohos_shared_library("uniformtypedescriptor_napi") { 87 sources = [ 88 "${udmf_framework_path}/jskitsimpl/data/uniform_type_descriptor_napi.cpp", 89 "${udmf_interfaces_path}/jskits/module/uniform_type_descriptor_napi_module.cpp", 90 ] 91 92 ldflags = [ "-Wl,--exclude-libs=ALL" ] 93 94 public_configs = [ ":udmf_napi_config" ] 95 96 deps = [ 97 "${third_party_path}/bounds_checking_function:libsec_shared", 98 "../innerkits:udmf_client", 99 "../jskits:udmf_js_common", 100 ] 101 102 external_deps = [ 103 "ability_runtime:abilitykit_native", 104 "hilog:libhilog", 105 "ipc:ipc_core", 106 "napi:ace_napi", 107 ] 108 109 relative_install_dir = "module/data" 110 subsystem_name = "distributeddatamgr" 111 part_name = "udmf" 112} 113 114ohos_shared_library("udmf_data_napi") { 115 sources = [ 116 "${udmf_framework_path}/jskitsimpl/data/application_defined_record_napi.cpp", 117 "${udmf_framework_path}/jskitsimpl/data/audio_napi.cpp", 118 "${udmf_framework_path}/jskitsimpl/data/file_napi.cpp", 119 "${udmf_framework_path}/jskitsimpl/data/folder_napi.cpp", 120 "${udmf_framework_path}/jskitsimpl/data/html_napi.cpp", 121 "${udmf_framework_path}/jskitsimpl/data/image_napi.cpp", 122 "${udmf_framework_path}/jskitsimpl/data/link_napi.cpp", 123 "${udmf_framework_path}/jskitsimpl/data/plain_text_napi.cpp", 124 "${udmf_framework_path}/jskitsimpl/data/summary_napi.cpp", 125 "${udmf_framework_path}/jskitsimpl/data/system_defined_appitem_napi.cpp", 126 "${udmf_framework_path}/jskitsimpl/data/system_defined_form_napi.cpp", 127 "${udmf_framework_path}/jskitsimpl/data/system_defined_pixelmap_napi.cpp", 128 "${udmf_framework_path}/jskitsimpl/data/system_defined_record_napi.cpp", 129 "${udmf_framework_path}/jskitsimpl/data/text_napi.cpp", 130 "${udmf_framework_path}/jskitsimpl/data/unified_data_channel_napi.cpp", 131 "${udmf_framework_path}/jskitsimpl/data/unified_data_napi.cpp", 132 "${udmf_framework_path}/jskitsimpl/data/unified_record_napi.cpp", 133 "${udmf_framework_path}/jskitsimpl/data/video_napi.cpp", 134 "${udmf_interfaces_path}/jskits/module/unified_data_channel_napi_module.cpp", 135 ] 136 137 ldflags = [ "-Wl,--exclude-libs=ALL" ] 138 139 public_configs = [ ":udmf_napi_config" ] 140 141 deps = [ 142 "${third_party_path}/bounds_checking_function:libsec_shared", 143 "../innerkits:udmf_client", 144 "../jskits:udmf_js_common", 145 ] 146 147 external_deps = [ 148 "ability_runtime:abilitykit_native", 149 "c_utils:utils", 150 "hilog:libhilog", 151 "ipc:ipc_core", 152 "kv_store:distributeddata_inner", 153 "napi:ace_napi", 154 ] 155 156 subsystem_name = "distributeddatamgr" 157 part_name = "udmf" 158} 159 160ohos_static_library("udmf_js_common") { 161 sources = [ 162 "${udmf_framework_path}/jskitsimpl/common/napi_data_utils.cpp", 163 "${udmf_framework_path}/jskitsimpl/common/napi_error_utils.cpp", 164 "${udmf_framework_path}/jskitsimpl/common/napi_queue.cpp", 165 ] 166 167 ldflags = [ "-Wl,--exclude-libs=ALL" ] 168 cflags = [ "-fvisibility=hidden" ] 169 170 include_dirs = [ "${udmf_interfaces_path}/jskits/common" ] 171 172 public_configs = [ ":udmf_napi_config" ] 173 external_deps = [ 174 "ability_runtime:abilitykit_native", 175 "hilog:libhilog", 176 "napi:ace_napi", 177 ] 178 subsystem_name = "distributeddatamgr" 179 part_name = "udmf" 180} 181