• 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("pluginmanager") {
19    sources = [
20      "//foundation/multimedia/image_framework/plugins/manager/src/common/attr_data.cpp",
21      "//foundation/multimedia/image_framework/plugins/manager/src/common/platform_adp.cpp",
22      "//foundation/multimedia/image_framework/plugins/manager/src/framework/capability.cpp",
23      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class.cpp",
24      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_key.cpp",
25      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_mgr.cpp",
26      "//foundation/multimedia/image_framework/plugins/manager/src/framework/json_helper.cpp",
27      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin.cpp",
28      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_fw.cpp",
29      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_info_lock.cpp",
30      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_mgr.cpp",
31      "//foundation/multimedia/image_framework/plugins/manager/src/plugin_server.cpp",
32      "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase/plugin_class_base.cpp",
33      "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer/gst_plugin_fw.cpp",
34    ]
35
36    cflags = [
37      "-DIMAGE_DEBUG_FLAG",
38      #"-DIMAGE_COLORSPACE_FLAG",
39    ]
40
41    include_dirs = [
42      "//foundation/multimedia/image_framework/plugins/manager/include",
43      "//foundation/multimedia/image_framework/plugins/manager/include/pluginbase",
44      "//foundation/multimedia/image_framework/plugins/manager/include/utils",
45      "//foundation/multimedia/image_framework/plugins/manager/src/common",
46      "//foundation/multimedia/image_framework/plugins/manager/src/framework",
47      "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase",
48      "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer",
49      "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include",
50      "//foundation/multimedia/image_framework/interfaces/innerkits/include",
51      "//foundation/multimedia/utils/include",
52      "//third_party/json/single_include/nlohmann",
53      "//third_party/boost/tools/build/src/engine",
54      "//base/hiviewdfx/hilog/interfaces/native/innerkits/include",
55      "//foundation/multimedia/image_framework/mock/native/include",
56    ]
57
58    defines = image_decode_ios_defines
59    include_dirs += [
60      "//commonlibrary/c_utils/base/include",
61      "//foundation/multimedia/image_framework/mock/native/include",
62      "//foundation/multimedia/image_framework/mock/native/include/secure",
63    ]
64
65    deps = [
66      "//foundation/multimedia/image_framework/mock/native:log_mock_static",
67      "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
68    ]
69
70    #relative_install_dir = "module/multimedia"
71    subsystem_name = "multimedia"
72    part_name = "multimedia_image_framework"
73  }
74} else {
75  ohos_shared_library("pluginmanager") {
76    if (!use_clang_android) {
77      sanitize = {
78        cfi = true
79        debug = false
80      }
81    }
82    sources = [
83      "//foundation/multimedia/image_framework/plugins/manager/src/common/attr_data.cpp",
84      "//foundation/multimedia/image_framework/plugins/manager/src/common/platform_adp.cpp",
85      "//foundation/multimedia/image_framework/plugins/manager/src/framework/capability.cpp",
86      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class.cpp",
87      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_key.cpp",
88      "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_mgr.cpp",
89      "//foundation/multimedia/image_framework/plugins/manager/src/framework/json_helper.cpp",
90      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin.cpp",
91      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_fw.cpp",
92      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_info_lock.cpp",
93      "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_mgr.cpp",
94      "//foundation/multimedia/image_framework/plugins/manager/src/plugin_server.cpp",
95      "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase/plugin_class_base.cpp",
96      "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer/gst_plugin_fw.cpp",
97    ]
98
99    cflags = [
100      "-DIMAGE_DEBUG_FLAG",
101      "-DIMAGE_COLORSPACE_FLAG",
102    ]
103
104    include_dirs = [
105      "//foundation/multimedia/image_framework/plugins/manager/include",
106      "//foundation/multimedia/image_framework/plugins/manager/include/pluginbase",
107      "//foundation/multimedia/image_framework/plugins/manager/include/utils",
108      "//foundation/multimedia/image_framework/plugins/manager/src/common",
109      "//foundation/multimedia/image_framework/plugins/manager/src/framework",
110      "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase",
111      "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer",
112      "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include",
113      "//foundation/multimedia/image_framework/interfaces/innerkits/include",
114      "//foundation/multimedia/utils/include",
115      "//third_party/json/single_include/nlohmann",
116      "//third_party/boost/tools/build/src/engine",
117      "//base/hiviewdfx/hilog/interfaces/native/innerkits/include",
118      "//foundation/multimedia/image_framework/mock/native/include",
119    ]
120
121    if (use_mingw_win) {
122      defines = image_decode_windows_defines
123      include_dirs +=
124          [ "//foundation/multimedia/image_framework/mock/native/include" ]
125      deps = [
126        "//foundation/multimedia/image_framework/mock/native:log_mock_static",
127        "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
128      ]
129    } else if (use_clang_mac) {
130      defines = image_decode_mac_defines
131      include_dirs += [
132        "//foundation/multimedia/image_framework/mock/native/include",
133        "//third_party/bounds_checking_function/include",
134      ]
135      deps = [
136        "//foundation/multimedia/image_framework/mock/native:log_mock_static",
137        "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
138        "//third_party/bounds_checking_function:libsec_static",
139      ]
140    } else if (use_clang_android) {
141      include_dirs += [ "//commonlibrary/c_utils/base/include" ]
142      cflags -= [ "-DIMAGE_COLORSPACE_FLAG" ]
143
144      deps = [
145        "//commonlibrary/c_utils/base:utils",
146        "//foundation/multimedia/image_framework/mock/native:log_mock_static",
147      ]
148    } else {
149      include_dirs += [ "//commonlibrary/c_utils/base/include" ]
150
151      ldflags = [ "-Wl,-Bsymbolic" ]
152
153      external_deps = [
154        "c_utils:utils",
155        "hiviewdfx_hilog_native:libhilog",
156      ]
157    }
158
159    #relative_install_dir = "module/multimedia"
160    subsystem_name = "multimedia"
161    part_name = "multimedia_image_framework"
162  }
163}
164
165ohos_static_library("pluginmanager_static") {
166  sources = [
167    "//foundation/multimedia/image_framework/plugins/manager/src/common/attr_data.cpp",
168    "//foundation/multimedia/image_framework/plugins/manager/src/common/platform_adp.cpp",
169    "//foundation/multimedia/image_framework/plugins/manager/src/framework/capability.cpp",
170    "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class.cpp",
171    "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_key.cpp",
172    "//foundation/multimedia/image_framework/plugins/manager/src/framework/impl_class_mgr.cpp",
173    "//foundation/multimedia/image_framework/plugins/manager/src/framework/json_helper.cpp",
174    "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin.cpp",
175    "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_fw.cpp",
176    "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_info_lock.cpp",
177    "//foundation/multimedia/image_framework/plugins/manager/src/framework/plugin_mgr.cpp",
178    "//foundation/multimedia/image_framework/plugins/manager/src/plugin_server.cpp",
179    "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase/plugin_class_base.cpp",
180    "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer/gst_plugin_fw.cpp",
181  ]
182
183  include_dirs = [
184    "//foundation/multimedia/image_framework/plugins/manager/include",
185    "//foundation/multimedia/image_framework/plugins/manager/include/pluginbase",
186    "//foundation/multimedia/image_framework/plugins/manager/include/utils",
187    "//foundation/multimedia/image_framework/plugins/manager/src/common",
188    "//foundation/multimedia/image_framework/plugins/manager/src/framework",
189    "//foundation/multimedia/image_framework/plugins/manager/src/pluginbase",
190    "//foundation/multimedia/image_framework/plugins/manager/src/thirdpartyadp/gstreamer",
191    "//foundation/multimedia/utils/include",
192    "//foundation/multimedia/image_framework/frameworks/innerkitsimpl/utils/include",
193    "//foundation/multimedia/image_framework/interfaces/innerkits/include",
194    "//third_party/json/single_include/nlohmann",
195    "//third_party/boost/tools/build/src/engine",
196    "//base/hiviewdfx/hilog/interfaces/native/innerkits/include",
197  ]
198
199  if (use_mingw_win) {
200    defines = image_decode_windows_defines
201    include_dirs +=
202        [ "//foundation/multimedia/image_framework/mock/native/include" ]
203    deps = [
204      "//foundation/multimedia/image_framework/mock/native:log_mock_static",
205      "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
206    ]
207  } else if (use_clang_mac) {
208    defines = image_decode_mac_defines
209    include_dirs += [
210      "//foundation/multimedia/image_framework/mock/native/include",
211      "//third_party/bounds_checking_function/include",
212    ]
213    deps = [
214      "//foundation/multimedia/image_framework/mock/native:log_mock_static",
215      "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
216      "//third_party/bounds_checking_function:libsec_static",
217    ]
218  } else if (use_clang_ios) {
219    defines = image_decode_ios_defines
220    include_dirs +=
221        [ "//foundation/multimedia/image_framework/mock/native/include" ]
222    deps = [
223      "//foundation/multimedia/image_framework/mock/native:log_mock_static",
224      "//foundation/multimedia/image_framework/mock/native:utils_mock_static",
225    ]
226  } else if (use_clang_android) {
227    include_dirs += [
228      "//commonlibrary/c_utils/base/include",
229      "//foundation/multimedia/image_framework/mock/native/include",
230    ]
231
232    deps = [
233      "//commonlibrary/c_utils/base:utils",
234      "//foundation/multimedia/image_framework/mock/native:log_mock_static",
235    ]
236  } else {
237    include_dirs += [ "//commonlibrary/c_utils/base/include" ]
238
239    ldflags = [ "-Wl,-Bsymbolic" ]
240
241    external_deps = [
242      "c_utils:utils",
243      "hiviewdfx_hilog_native:libhilog",
244    ]
245  }
246  subsystem_name = "multimedia"
247  part_name = "multimedia_image_framework"
248}
249