1094332d3Sopenharmony_ci#Copyright (c) 2021-2023 Huawei Device Co., Ltd.
2094332d3Sopenharmony_ci#Licensed under the Apache License, Version 2.0 (the "License");
3094332d3Sopenharmony_ci#you may not use this file except in compliance with the License.
4094332d3Sopenharmony_ci#You may obtain a copy of the License at
5094332d3Sopenharmony_ci#
6094332d3Sopenharmony_ci#    http://www.apache.org/licenses/LICENSE-2.0
7094332d3Sopenharmony_ci#
8094332d3Sopenharmony_ci#Unless required by applicable law or agreed to in writing, software
9094332d3Sopenharmony_ci#distributed under the License is distributed on an "AS IS" BASIS,
10094332d3Sopenharmony_ci#WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
11094332d3Sopenharmony_ci#See the License for the specific language governing permissions and
12094332d3Sopenharmony_ci#limitations under the License.
13094332d3Sopenharmony_ci#
14094332d3Sopenharmony_ci
15094332d3Sopenharmony_ciimport("//build/ohos.gni")
16094332d3Sopenharmony_ciimport("../sensor.gni")
17094332d3Sopenharmony_ci
18094332d3Sopenharmony_ciif (defined(ohos_lite)) {
19094332d3Sopenharmony_ci  config("libhdi_sensor_pub_config") {
20094332d3Sopenharmony_ci    visibility = [ ":*" ]
21094332d3Sopenharmony_ci  }
22094332d3Sopenharmony_ci
23094332d3Sopenharmony_ci  ohos_shared_library("hdi_sensor") {
24094332d3Sopenharmony_ci    output_extension = "z.so"
25094332d3Sopenharmony_ci    public_configs = [ ":libhdi_sensor_pub_config" ]
26094332d3Sopenharmony_ci    sources = [
27094332d3Sopenharmony_ci      "src/sensor_channel.c",
28094332d3Sopenharmony_ci      "src/sensor_controller.c",
29094332d3Sopenharmony_ci      "src/sensor_manager.c",
30094332d3Sopenharmony_ci    ]
31094332d3Sopenharmony_ci
32094332d3Sopenharmony_ci    include_dirs = [
33094332d3Sopenharmony_ci      "include",
34094332d3Sopenharmony_ci      "../interfaces/include",
35094332d3Sopenharmony_ci      "../utils/include",
36094332d3Sopenharmony_ci    ]
37094332d3Sopenharmony_ci
38094332d3Sopenharmony_ci    external_deps = [
39094332d3Sopenharmony_ci      "hdf_core:libhdf_utils",
40094332d3Sopenharmony_ci      "hilog_lite:hilog_shared",
41094332d3Sopenharmony_ci    ]
42094332d3Sopenharmony_ci    cflags = [
43094332d3Sopenharmony_ci      "-Wall",
44094332d3Sopenharmony_ci      "-Wextra",
45094332d3Sopenharmony_ci      "-Werror",
46094332d3Sopenharmony_ci      "-fsigned-char",
47094332d3Sopenharmony_ci      "-fno-common",
48094332d3Sopenharmony_ci      "-fno-strict-aliasing",
49094332d3Sopenharmony_ci    ]
50094332d3Sopenharmony_ci    if (ohos_build_compiler != "clang") {
51094332d3Sopenharmony_ci      cflags += [
52094332d3Sopenharmony_ci        "-Wno-format",
53094332d3Sopenharmony_ci        "-Wno-format-extra-args",
54094332d3Sopenharmony_ci      ]
55094332d3Sopenharmony_ci    }
56094332d3Sopenharmony_ci    subsystem_name = "hdf"
57094332d3Sopenharmony_ci    part_name = "drivers_peripheral_sensor"
58094332d3Sopenharmony_ci  }
59094332d3Sopenharmony_ci} else {
60094332d3Sopenharmony_ci  config("libhdi_sensor_pub_config") {
61094332d3Sopenharmony_ci    visibility = [ ":*" ]
62094332d3Sopenharmony_ci
63094332d3Sopenharmony_ci    include_dirs = [ "../interfaces/include" ]
64094332d3Sopenharmony_ci  }
65094332d3Sopenharmony_ci
66094332d3Sopenharmony_ci  ohos_shared_library("hdi_sensor") {
67094332d3Sopenharmony_ci    public_configs = [ ":libhdi_sensor_pub_config" ]
68094332d3Sopenharmony_ci    sources = [
69094332d3Sopenharmony_ci      "src/sensor_channel.c",
70094332d3Sopenharmony_ci      "src/sensor_controller.c",
71094332d3Sopenharmony_ci      "src/sensor_dump.c",
72094332d3Sopenharmony_ci      "src/sensor_manager.c",
73094332d3Sopenharmony_ci    ]
74094332d3Sopenharmony_ci
75094332d3Sopenharmony_ci    include_dirs = [
76094332d3Sopenharmony_ci      "include",
77094332d3Sopenharmony_ci      " ../interfaces/include",
78094332d3Sopenharmony_ci      "../utils/include",
79094332d3Sopenharmony_ci    ]
80094332d3Sopenharmony_ci    defines = [ "__OHOS__USER__" ]
81094332d3Sopenharmony_ci    cflags = [
82094332d3Sopenharmony_ci      "-Wall",
83094332d3Sopenharmony_ci      "-Wextra",
84094332d3Sopenharmony_ci      "-Werror",
85094332d3Sopenharmony_ci      "-fsigned-char",
86094332d3Sopenharmony_ci      "-fno-common",
87094332d3Sopenharmony_ci      "-fno-strict-aliasing",
88094332d3Sopenharmony_ci    ]
89094332d3Sopenharmony_ci    install_images = [ chipset_base_dir ]
90094332d3Sopenharmony_ci    subsystem_name = "hdf"
91094332d3Sopenharmony_ci    part_name = "drivers_peripheral_sensor"
92094332d3Sopenharmony_ci    if (is_standard_system) {
93094332d3Sopenharmony_ci      external_deps = [
94094332d3Sopenharmony_ci        "hdf_core:libhdf_host",
95094332d3Sopenharmony_ci        "hdf_core:libhdf_utils",
96094332d3Sopenharmony_ci        "hilog:libhilog",
97094332d3Sopenharmony_ci      ]
98094332d3Sopenharmony_ci      if (c_utils_enable) {
99094332d3Sopenharmony_ci        external_deps += [ "c_utils:utils" ]
100094332d3Sopenharmony_ci      }
101094332d3Sopenharmony_ci    } else {
102094332d3Sopenharmony_ci      external_deps = [ "hilog:libhilog" ]
103094332d3Sopenharmony_ci    }
104094332d3Sopenharmony_ci  }
105094332d3Sopenharmony_ci}
106