1f6603c60Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd.
2f6603c60Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
3f6603c60Sopenharmony_ci# you may not use this file except in compliance with the License.
4f6603c60Sopenharmony_ci# You may obtain a copy of the License at
5f6603c60Sopenharmony_ci#
6f6603c60Sopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
7f6603c60Sopenharmony_ci#
8f6603c60Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software
9f6603c60Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
10f6603c60Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11f6603c60Sopenharmony_ci# See the License for the specific language governing permissions and
12f6603c60Sopenharmony_ci# limitations under the License.
13f6603c60Sopenharmony_ci
14f6603c60Sopenharmony_ciimport("//build/ohos.gni")
15f6603c60Sopenharmony_ciimport("//build/toolchain/toolchain.gni")
16f6603c60Sopenharmony_ciimport("//test/xts/tools/build/suite.gni")
17f6603c60Sopenharmony_ci
18f6603c60Sopenharmony_ciohos_js_hap_suite("camera_framework_ndk_hap") {
19f6603c60Sopenharmony_ci  hap_profile = "./src/main/module.json"
20f6603c60Sopenharmony_ci  js_build_mode = "debug"
21f6603c60Sopenharmony_ci  deps = [
22f6603c60Sopenharmony_ci    ":camera_ets_resources",
23f6603c60Sopenharmony_ci    ":camera_ets_test_assets",
24f6603c60Sopenharmony_ci  ]
25f6603c60Sopenharmony_ci  ets2abc = true
26f6603c60Sopenharmony_ci  certificate_profile = "signature/openharmony_sx.p7b"
27f6603c60Sopenharmony_ci  hap_name = "ActsCameraFrameWorkNdkTest"
28f6603c60Sopenharmony_ci  part_name = "camera_framework"
29f6603c60Sopenharmony_ci  subsystem_name = "multimedia"
30f6603c60Sopenharmony_ci  shared_libraries = [
31f6603c60Sopenharmony_ci    "./src/main/cpp:entry",
32f6603c60Sopenharmony_ci    ":libcppsharedso",
33f6603c60Sopenharmony_ci    ":libcppso",
34f6603c60Sopenharmony_ci  ]
35f6603c60Sopenharmony_ci}
36f6603c60Sopenharmony_ci
37f6603c60Sopenharmony_ciohos_prebuilt_shared_library("libcppsharedso") {
38f6603c60Sopenharmony_ci  source = rebase_path(libcxx_ndk_shared_file)
39f6603c60Sopenharmony_ci  part_name = "camera_framework"
40f6603c60Sopenharmony_ci  subsystem_name = "multimedia"
41f6603c60Sopenharmony_ci}
42f6603c60Sopenharmony_ci
43f6603c60Sopenharmony_ciohos_prebuilt_shared_library("libcppso") {
44f6603c60Sopenharmony_ci  if (target_cpu == "arm") {
45f6603c60Sopenharmony_ci    source = "${clang_base_path}/../llvm/lib/arm-linux-ohos/libc++.so"
46f6603c60Sopenharmony_ci  } else if (target_cpu == "x86_64") {
47f6603c60Sopenharmony_ci    source = "${clang_base_path}/../llvm/lib/x86_64-unknown-linux-gnu/libc++.so"
48f6603c60Sopenharmony_ci  } else {
49f6603c60Sopenharmony_ci    source = "${clang_base_path}/../llvm/lib/aarch64-linux-ohos/libc++.so"
50f6603c60Sopenharmony_ci  }
51f6603c60Sopenharmony_ci  assert(defined(source))
52f6603c60Sopenharmony_ci  subsystem_name = "multimedia"
53f6603c60Sopenharmony_ci  install_enable = false
54f6603c60Sopenharmony_ci}
55f6603c60Sopenharmony_ci
56f6603c60Sopenharmony_ciohos_app_scope("camera_ets_app_profile") {
57f6603c60Sopenharmony_ci  app_profile = "AppScope/app.json"
58f6603c60Sopenharmony_ci  sources = [ "AppScope/resources" ]
59f6603c60Sopenharmony_ci}
60f6603c60Sopenharmony_ci
61f6603c60Sopenharmony_ciohos_js_assets("camera_ets_test_assets") {
62f6603c60Sopenharmony_ci  source_dir = "./src/main/ets"
63f6603c60Sopenharmony_ci}
64f6603c60Sopenharmony_ci
65f6603c60Sopenharmony_ciohos_resources("camera_ets_resources") {
66f6603c60Sopenharmony_ci  sources = [ "./src/main/resources" ]
67f6603c60Sopenharmony_ci  deps = [ ":camera_ets_app_profile" ]
68f6603c60Sopenharmony_ci  hap_profile = "./src/main/module.json"
69f6603c60Sopenharmony_ci}
70