• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright (C) 2023 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("//arkcompiler/ets_frontend/es2panda/es2abc_config.gni")
14import("//build/ohos.gni")
15import("//build/ohos/ace/ace.gni")
16import("//commonlibrary/memory_utils/purgeable_mem_config.gni")
17import("//foundation/ability/ability_runtime/ability_runtime.gni")
18import("//foundation/arkui/ace_engine/ace_config.gni")
19import("//foundation/multimedia/media_library/media_library.gni")
20
21group("media_backup_package") {
22  deps = []
23  if (media_library_feature_back_up) {
24    deps += [ ":mediabackup" ]
25  } else {
26  }
27}
28
29ohos_shared_library("mediabackup") {
30  include_dirs = [
31    "./include",
32    "./include/classify",
33    "./include/geo_dictionary",
34    "./include/geo_knowledge",
35    "./include/highlight",
36    "./include/log",
37    "./include/restore",
38    "./include/report",
39    "${MEDIALIB_CLOUD_SYNC_PATH}/include",
40    "${MEDIALIB_INTERFACES_PATH}/inner_api/media_library_helper/include",
41    "${MEDIALIB_INTERFACES_PATH}/kits/js/include",
42    "${MEDIALIB_UTILS_PATH}/include",
43    "${MEDIALIB_INNERKITS_PATH}/media_library_helper/include",
44    "${MEDIALIB_INNERKITS_PATH}/medialibrary_data_extension/include",
45    "${MEDIALIB_INNERKITS_PATH}/medialibrary_data_extension/include/config",
46    "${MEDIALIB_INNERKITS_PATH}/medialibrary_data_extension/include/event_handler",
47    "${MEDIALIB_SERVICES_PATH}/media_scanner/src/scanner/include",
48  ]
49
50  sources = [
51    "${MEDIALIB_INNERKITS_PATH}/medialibrary_data_extension/src/event_handler/album_plugin_table_event_handler.cpp",
52    "./src/backup_database_helper.cpp",
53    "./src/backup_database_utils.cpp",
54    "./src/backup_dfx_utils.cpp",
55    "./src/backup_file_utils.cpp",
56    "./src/backup_restore_service.cpp",
57    "./src/base_restore.cpp",
58    "./src/burst_key_generator.cpp",
59    "./src/classify/clone_restore_classify.cpp",
60    "./src/clone_restore.cpp",
61    "./src/geo_dictionary/clone_restore_geo_dictionary.cpp",
62    "./src/geo_knowledge/clone_restore_geo.cpp",
63    "./src/geo_knowledge/geo_knowledge_restore.cpp",
64    "./src/highlight/clone_restore_cv_analysis.cpp",
65    "./src/highlight/clone_restore_highlight.cpp",
66    "./src/highlight/highlight_restore.cpp",
67    "./src/log/backup_hi_audit.cpp",
68    "./src/log/backup_hi_audit_helper.cpp",
69    "./src/log/backup_log_utils.cpp",
70    "./src/log/backup_zip_util.cpp",
71    "./src/medialibrary_backup_napi.cpp",
72    "./src/native_module_ohos_medialibrary_backup.cpp",
73    "./src/others_clone_restore.cpp",
74    "./src/report/audios_count_statistic.cpp",
75    "./src/report/database_report.cpp",
76    "./src/report/external_files_count_statistic.cpp",
77    "./src/report/gallery_media_count_statistic.cpp",
78    "./src/report/photos_count_statistic.cpp",
79    "./src/report/upgrade_restore_gallery_media_task.cpp",
80    "./src/report/upgrade_restore_task_report.cpp",
81    "./src/restore/db_upgrade_utils.cpp",
82    "./src/restore/gallery_db_upgrade.cpp",
83    "./src/restore/gallery_media_dao.cpp",
84    "./src/restore/media_library_db_upgrade.cpp",
85    "./src/restore/photo_album_clone.cpp",
86    "./src/restore/photo_album_dao.cpp",
87    "./src/restore/photo_album_restore.cpp",
88    "./src/restore/photos_clone.cpp",
89    "./src/restore/photos_dao.cpp",
90    "./src/restore/photos_data_handler.cpp",
91    "./src/restore/photos_restore.cpp",
92    "./src/restore/tab_old_photos_restore.cpp",
93    "./src/upgrade_restore.cpp",
94  ]
95
96  ldflags = [ "-Wl" ]
97
98  deps = [
99    "${MEDIALIB_INNERKITS_PATH}/media_library_helper:media_library",
100    "${MEDIALIB_INNERKITS_PATH}/medialibrary_data_extension:medialibrary_data_extension",
101    "${MEDIALIB_INTERFACES_PATH}/kits/js:medialibrary_nutils",
102  ]
103
104  external_deps = [
105    "ability_base:zuri",
106    "ability_runtime:ability_manager",
107    "ability_runtime:app_context",
108    "ability_runtime:napi_base_context",
109    "ability_runtime:runtime",
110    "background_task_mgr:bgtaskmgr_innerkits",
111    "bundle_framework:appexecfwk_core",
112    "c_utils:utils",
113    "data_share:datashare_common",
114    "data_share:datashare_consumer",
115    "ffrt:libffrt",
116    "hilog:libhilog",
117    "hisysevent:libhisysevent",
118    "i18n:intl_util",
119    "image_framework:image_native",
120    "init:libbegetutil",
121    "kv_store:distributeddata_inner",
122    "libxml2:libxml2",
123    "napi:ace_napi",
124    "os_account:libaccountkits",  # ohos_account
125    "os_account:os_account_innerkits",  # os_account
126    "player_framework:media_client",
127    "relational_store:native_rdb",
128    "relational_store:rdb_data_share_adapter",
129    "zlib:shared_libz",
130  ]
131
132  public_external_deps = [ "e2fsprogs:libext2_uuid" ]
133
134  defines = []
135
136  if (defined(global_parts_info) &&
137      defined(global_parts_info.filemanagement_dfs_service)) {
138    defines += [ "CLOUD_SYNC_MANAGER" ]
139    external_deps += [ "dfs_service:cloudsync_kit_inner" ]
140  }
141
142  sanitize = {
143    cfi = true
144    cfi_cross_dso = true
145    debug = false
146  }
147
148  relative_install_dir = "module/multimedia"
149  subsystem_name = "multimedia"
150  part_name = "media_library"
151}
152