# Copyright (c) 2024 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("//arkcompiler/ets_frontend/es2panda/es2abc_config.gni") import("//build/ohos.gni") import("//foundation/arkui/ace_engine/ace_config.gni") import("//foundation/arkui/ace_engine/build/ace_gen_obj.gni") component_ext_path = "${ace_root}/component_ext" additional_include_dirs = [ "${ace_root}" ] es2abc_gen_abc("gen_multimedia_movingphotoview_abc") { src_js = rebase_path("multimedia_movingphotoview.js") dst_file = rebase_path(target_out_dir + "/multimedia_movingphotoview.abc") in_puts = [ "multimedia_movingphotoview.js" ] out_puts = [ target_out_dir + "/multimedia_movingphotoview.abc" ] extra_args = [ "--module" ] } gen_obj("multimedia_movingphotoview_js") { input = "multimedia_movingphotoview.js" output = target_out_dir + "/multimedia_movingphotoview.o" snapshot_dep = [] } gen_obj("multimedia_movingphotoview_abc") { input = get_label_info(":gen_multimedia_movingphotoview_abc", "target_out_dir") + "/multimedia_movingphotoview.abc" output = target_out_dir + "multimedia_movingphotoview_abc.o" snapshot_dep = [ ":gen_multimedia_movingphotoview_abc" ] } ohos_shared_library("movingphotoview") { defines = [ "USE_ARK_ENGINE" ] sources = [ "$ace_root/frameworks/core/components_ng/base/inspector_filter.cpp", "${component_ext_path}/ext_common/ext_napi_utils.cpp", "${component_ext_path}/movingphoto/movingphoto_layout_algorithm.cpp", "${component_ext_path}/movingphoto/movingphoto_model_ng.cpp", "${component_ext_path}/movingphoto/movingphoto_napi.cpp", "${component_ext_path}/movingphoto/movingphoto_node.cpp", "${component_ext_path}/movingphoto/movingphoto_pattern.cpp", ] include_dirs = [ "${component_ext_path}/ext_common/", "${component_ext_path}/movingphoto/", ] include_dirs += additional_include_dirs deps = [ ":gen_obj_src_multimedia_movingphotoview_abc", ":gen_obj_src_multimedia_movingphotoview_js", "$ace_root/build:libace_compatible", "$ace_root/interfaces/inner_api/ace:ace_uicontent", "$ace_root/interfaces/napi/kits/plugincomponent:plugincomponent", ] external_deps = [ "bounds_checking_function:libsec_static", "data_share:datashare_consumer", "hilog:libhilog", "image_framework:image", "image_framework:image_native", "media_library:media_library_manager", "napi:ace_container_scope", "napi:ace_napi", ] ldflags = [ "-Wl,--gc-sections" ] cflags = [ "-fvisibility=hidden", "-fdata-sections", "-ffunction-sections", "-Os", ] cflags_cc = [ "-fvisibility-inlines-hidden", "-Os", ] relative_install_dir = "module/multimedia" subsystem_name = ace_engine_subsystem part_name = ace_engine_part }