148f512ceSopenharmony_ci# Copyright (C) 2021 Huawei Device Co., Ltd.
248f512ceSopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License");
348f512ceSopenharmony_ci# you may not use this file except in compliance with the License.
448f512ceSopenharmony_ci# You may obtain a copy of the License at
548f512ceSopenharmony_ci#
648f512ceSopenharmony_ci#     http://www.apache.org/licenses/LICENSE-2.0
748f512ceSopenharmony_ci#
848f512ceSopenharmony_ci# Unless required by applicable law or agreed to in writing, software
948f512ceSopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS,
1048f512ceSopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1148f512ceSopenharmony_ci# See the License for the specific language governing permissions and
1248f512ceSopenharmony_ci# limitations under the License.
1348f512ceSopenharmony_ci
1448f512ceSopenharmony_ciimport("//build/ohos.gni")
1548f512ceSopenharmony_ciimport("../../../hiperf.gni")
1648f512ceSopenharmony_ci
1748f512ceSopenharmony_ciconfig("hiperf_client_config") {
1848f512ceSopenharmony_ci  visibility = [ ":*" ]
1948f512ceSopenharmony_ci  visibility += [ "../../../:*" ]
2048f512ceSopenharmony_ci  include_dirs = [
2148f512ceSopenharmony_ci    "include",
2248f512ceSopenharmony_ci    "${hiperf_path}/include",
2348f512ceSopenharmony_ci  ]
2448f512ceSopenharmony_ci}
2548f512ceSopenharmony_ci
2648f512ceSopenharmony_ciohos_shared_library("hiperf_client") {
2748f512ceSopenharmony_ci  branch_protector_ret = "pac_ret"
2848f512ceSopenharmony_ci  install_enable = true
2948f512ceSopenharmony_ci  public_configs = [ ":hiperf_client_config" ]
3048f512ceSopenharmony_ci  sources = [ "src/hiperf_client.cpp" ]
3148f512ceSopenharmony_ci  defines = []
3248f512ceSopenharmony_ci  if (is_linux) {
3348f512ceSopenharmony_ci    defines += [ "CONFIG_NO_HILOG" ]
3448f512ceSopenharmony_ci  } else {
3548f512ceSopenharmony_ci    external_deps = [
3648f512ceSopenharmony_ci      "bounds_checking_function:libsec_shared",
3748f512ceSopenharmony_ci      "hilog:libhilog",
3848f512ceSopenharmony_ci    ]
3948f512ceSopenharmony_ci  }
4048f512ceSopenharmony_ci
4148f512ceSopenharmony_ci  subsystem_name = "developtools"
4248f512ceSopenharmony_ci  innerapi_tags = [ "platformsdk" ]
4348f512ceSopenharmony_ci  part_name = "hiperf"
4448f512ceSopenharmony_ci}
4548f512ceSopenharmony_ci
4648f512ceSopenharmony_ciohos_static_library("hiperf_client_static") {
4748f512ceSopenharmony_ci  branch_protector_ret = "pac_ret"
4848f512ceSopenharmony_ci  public_configs = [ ":hiperf_client_config" ]
4948f512ceSopenharmony_ci  sources = [ "src/hiperf_client.cpp" ]
5048f512ceSopenharmony_ci  defines = []
5148f512ceSopenharmony_ci  if (is_linux) {
5248f512ceSopenharmony_ci    defines += [ "CONFIG_NO_HILOG" ]
5348f512ceSopenharmony_ci  } else {
5448f512ceSopenharmony_ci    external_deps = [
5548f512ceSopenharmony_ci      "bounds_checking_function:libsec_shared",
5648f512ceSopenharmony_ci      "hilog:libhilog",
5748f512ceSopenharmony_ci    ]
5848f512ceSopenharmony_ci  }
5948f512ceSopenharmony_ci
6048f512ceSopenharmony_ci  subsystem_name = "developtools"
6148f512ceSopenharmony_ci  part_name = "hiperf"
6248f512ceSopenharmony_ci}
63