• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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