1# Copyright (C) 2021 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. 13 14import("//build/ohos.gni") 15import("//foundation/multimedia/image_framework/ide/image_decode_config.gni") 16 17if (use_clang_ios) { 18 ohos_source_set("image_utils") { 19 include_dirs = [ 20 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include", 21 "//foundation/multimedia/utils/include", 22 "//foundation/multimedia/image_framework/plugins/manager/include", 23 "//foundation/multimedia/image_framework/interfaces/innerkits/include", 24 "//commonlibrary/c_utils/base/include", 25 "//foundation/multimedia/media_utils_lite/interfaces/kits", 26 "//foundation/communication/ipc/utils/include", 27 ] 28 29 sources = [ 30 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp", 31 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_utils.cpp", 32 "src/image_system_properties.cpp", 33 "src/image_type_converter.cpp", 34 ] 35 36 defines = image_decode_ios_defines 37 sources -= [ "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp" ] 38 include_dirs += [ "$image_subsystem/mock/native/include/log" ] 39 deps = [ 40 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 41 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager", 42 ] 43 44 #relative_install_dir = "module/multimedia" 45 subsystem_name = "multimedia" 46 part_name = "image_framework" 47 } 48} else { 49 ohos_shared_library("image_utils") { 50 if (!use_clang_android) { 51 sanitize = { 52 cfi = true 53 cfi_cross_dso = true 54 debug = false 55 } 56 } 57 include_dirs = [ 58 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include", 59 "//foundation/multimedia/utils/include", 60 "//foundation/multimedia/image_framework/plugins/manager/include", 61 "//foundation/multimedia/image_framework/interfaces/innerkits/include", 62 "//commonlibrary/c_utils/base/include", 63 "//foundation/multimedia/media_utils_lite/interfaces/kits", 64 "//foundation/communication/ipc/utils/include", 65 "$skia_root/skia", 66 "${graphic_subsystem}/interfaces/inner_api/surface", 67 ] 68 69 sources = [ 70 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp", 71 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_utils.cpp", 72 "src/image_system_properties.cpp", 73 "src/image_type_converter.cpp", 74 ] 75 76 if (use_mingw_win) { 77 defines = image_decode_windows_defines 78 sources -= [ "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp" ] 79 include_dirs += 80 [ "//foundation/multimedia/image_framework/mock/native/include" ] 81 deps = [ 82 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 83 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager_static", 84 ] 85 } else if (use_clang_mac) { 86 defines = image_decode_mac_defines 87 sources -= [ "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp" ] 88 include_dirs += [ 89 "//foundation/multimedia/image_framework/mock/native/include", 90 "//third_party/bounds_checking_function/include", 91 ] 92 deps = [ 93 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 94 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager_static", 95 "//third_party/bounds_checking_function:libsec_static", 96 ] 97 } else if (use_clang_android) { 98 defines = image_decode_android_defines 99 sources -= [ "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp" ] 100 include_dirs += [ "$image_subsystem/mock/native/include/log" ] 101 deps = [ 102 "//commonlibrary/c_utils/base:utils", 103 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 104 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager", 105 ] 106 } else { 107 defines = [ "DUAL_ADAPTER" ] 108 109 deps = [ 110 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager", 111 ] 112 113 external_deps = [ 114 "c_utils:utils", 115 "graphic_2d:surface", 116 "hilog:libhilog", 117 "hitrace:hitrace_meter", 118 ] 119 120 if (is_standard_system) { 121 external_deps += [ "init:libbegetutil" ] 122 } else { 123 external_deps += [ "startup:syspara" ] 124 } 125 } 126 127 #relative_install_dir = "module/multimedia" 128 subsystem_name = "multimedia" 129 innerapi_tags = [ "platformsdk_indirect" ] 130 part_name = "image_framework" 131 } 132} 133 134ohos_static_library("image_utils_static") { 135 include_dirs = [ 136 "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include", 137 "//foundation/multimedia/utils/include", 138 "//foundation/multimedia/image_framework/plugins/manager/include", 139 "//foundation/multimedia/image_framework/interfaces/innerkits/include", 140 "//commonlibrary/c_utils/base/include", 141 "$skia_root/skia", 142 ] 143 144 sources = [ 145 "src/image_system_properties.cpp", 146 "src/image_type_converter.cpp", 147 "src/image_utils.cpp", 148 ] 149 150 if (use_mingw_win) { 151 defines = image_decode_windows_defines 152 include_dirs += 153 [ "//foundation/multimedia/image_framework/mock/native/include" ] 154 deps = [ 155 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 156 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager_static", 157 ] 158 } else if (use_clang_mac) { 159 defines = image_decode_mac_defines 160 include_dirs += [ 161 "//foundation/multimedia/image_framework/mock/native/include", 162 "//third_party/bounds_checking_function/include", 163 ] 164 deps = [ 165 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 166 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager_static", 167 "//third_party/bounds_checking_function:libsec_static", 168 ] 169 } else if (use_clang_ios) { 170 defines = image_decode_ios_defines 171 include_dirs += [ "$image_subsystem/mock/native/include/log" ] 172 deps = [ 173 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 174 ] 175 } else if (use_clang_android) { 176 defines = image_decode_android_defines 177 include_dirs += [ "$image_subsystem/mock/native/include/log" ] 178 deps = [ 179 "//foundation/multimedia/image_framework/mock/native:log_mock_static", 180 ] 181 } else { 182 sources += [ "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/src/image_trace.cpp" ] 183 deps = [ 184 "//foundation/multimedia/image_framework/plugins/manager:pluginmanager", 185 ] 186 187 external_deps = [ 188 "c_utils:utils", 189 "hilog:libhilog", 190 "hitrace:hitrace_meter", 191 ] 192 193 if (is_standard_system) { 194 external_deps += [ "init:libbegetutil" ] 195 } else { 196 external_deps += [ "startup:syspara" ] 197 } 198 } 199 subsystem_name = "multimedia" 200 part_name = "image_framework" 201} 202