1# Copyright (c) 2021-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.
13
14#import("//build/config/ohos/rules.gni")
15import("//build/ohos.gni")
16import("//foundation/multimedia/image_framework/ide/image_decode_config.gni")
17group("image_framework") {
18  if (use_clang_ios) {
19    defines = image_decode_ios_defines
20    deps = [
21      "frameworks/innerkitsimpl/utils:image_utils",
22      "frameworks/kits/cj:cj_image_ffi",
23      "interfaces/innerkits:image_native",
24      "interfaces/kits/js/common:image",
25    ]
26  } else if (use_clang_android) {
27    defines = image_decode_android_defines
28    deps = [
29      "frameworks/innerkitsimpl/utils:image_utils",
30      "frameworks/kits/cj:cj_image_ffi",
31      "interfaces/innerkits:image_native",
32      "interfaces/kits/js/common:multimedia_image",
33    ]
34  } else {
35    deps = [
36      "frameworks/innerkitsimpl/utils:image_utils",
37      "frameworks/kits/cj:cj_image_ffi",
38      "frameworks/kits/js/common/ndk:image_ndk",
39      "frameworks/kits/js/common/ndk:image_receiver_ndk",
40      "frameworks/kits/js/common/pixelmap_ndk:pixelmap_ndk",
41      "frameworks/kits/native/common/ndk:image_receiver",
42      "frameworks/kits/native/common/ndk:ohimage",
43      "interfaces/innerkits:image_native",
44      "interfaces/kits/js/common:image",
45      "interfaces/kits/js/common:image_napi",
46      "interfaces/kits/js/common:sendableimage",
47    ]
48  }
49}
50
51group("plugins") {
52  deps = [ "plugins/manager:pluginmanager" ]
53
54  if (!use_clang_android && !use_clang_ios) {
55    deps += [ "plugins/common/libs:multimediaplugin" ]
56    if (enable_jpeg_hw_decode) {
57      deps += [ "frameworks/innerkitsimpl/test/unittest/jpeg_hw_decode/demo:jpeg_hw_decoder_demo" ]
58    }
59    if (enable_heif_hw_decode) {
60      deps += [ "frameworks/innerkitsimpl/test/unittest/heif_hw_decode/demo:heif_hw_decoder_demo" ]
61    }
62  }
63}
64
65group("image_test_list") {
66  testonly = true
67
68  # image
69  if (!use_clang_android && !use_clang_ios) {
70    deps = [
71      "frameworks/innerkitsimpl/test:unittest",
72      "frameworks/innerkitsimpl/test/fuzztest:fuzztest",
73    ]
74  }
75}
76
77config("media_config") {
78  defines = []
79
80  if (current_cpu == "arm64" || current_cpu == "arm") {
81    defines += [ "USE_NEON" ]
82  }
83}
84