1fb726d48Sopenharmony_ci# Copyright (c) Huawei Technologies Co., Ltd. 2023. All rights reserved. 2fb726d48Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3fb726d48Sopenharmony_ci# you may not use this file except in compliance with the License. 4fb726d48Sopenharmony_ci# You may obtain a copy of the License at 5fb726d48Sopenharmony_ci# 6fb726d48Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7fb726d48Sopenharmony_ci# 8fb726d48Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9fb726d48Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10fb726d48Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11fb726d48Sopenharmony_ci# See the License for the specific language governing permissions and 12fb726d48Sopenharmony_ci# limitations under the License. 13fb726d48Sopenharmony_ci 14fb726d48Sopenharmony_ciimport("//build/ohos.gni") 15fb726d48Sopenharmony_ciimport("//build/test.gni") 16fb726d48Sopenharmony_ciimport("../ts.gni") 17fb726d48Sopenharmony_ci 18fb726d48Sopenharmony_ciif (target == "sdkdemotest") { 19fb726d48Sopenharmony_ci ohos_unittest("trace_streamer_sdk_ut") { 20fb726d48Sopenharmony_ci sources = [ "unittest/sdk_api_test.cpp" ] 21fb726d48Sopenharmony_ci deps = [ 22fb726d48Sopenharmony_ci "${THIRD_PARTY}/googletest:gtest", 23fb726d48Sopenharmony_ci "${THIRD_PARTY}/googletest:gtest_main", 24fb726d48Sopenharmony_ci "${THIRD_PARTY}/protobuf:protobuf_lite_static", 25fb726d48Sopenharmony_ci "${THIRD_PARTY}/protobuf:protobuf_static", 26fb726d48Sopenharmony_ci "${THIRD_PARTY}/sqlite:sqlite", 27fb726d48Sopenharmony_ci "../:trace_streamer_sdk", 28fb726d48Sopenharmony_ci ] 29fb726d48Sopenharmony_ci include_dirs = [ 30fb726d48Sopenharmony_ci "${SRC}/base", 31fb726d48Sopenharmony_ci "../sdk", 32fb726d48Sopenharmony_ci "..", 33fb726d48Sopenharmony_ci "../trace_streamer", 34fb726d48Sopenharmony_ci "../filter", 35fb726d48Sopenharmony_ci "../table", 36fb726d48Sopenharmony_ci "../trace_data", 37fb726d48Sopenharmony_ci "../include", 38fb726d48Sopenharmony_ci "../plugin", 39fb726d48Sopenharmony_ci "../rpc", 40fb726d48Sopenharmony_ci "./", 41fb726d48Sopenharmony_ci "../parser", 42fb726d48Sopenharmony_ci "../cfg", 43fb726d48Sopenharmony_ci "${THIRD_PARTY}/sqlite/include", 44fb726d48Sopenharmony_ci "${OHOS_PROTO_GEN}", 45fb726d48Sopenharmony_ci "${OHOS_PROTO_GEN}/types/plugins/mock_data", 46fb726d48Sopenharmony_ci "${THIRD_PARTY}/googletest/googletest/include/gtest", 47fb726d48Sopenharmony_ci "${THIRD_PARTY}/protobuf/src", 48fb726d48Sopenharmony_ci "${THIRD_PARTY}/json/single_include/nlohmann", 49fb726d48Sopenharmony_ci ] 50fb726d48Sopenharmony_ci cflags = [ 51fb726d48Sopenharmony_ci "-Wno-inconsistent-missing-override", 52fb726d48Sopenharmony_ci "-Dprivate=public", #allow test code access private members 53fb726d48Sopenharmony_ci "-fprofile-arcs", 54fb726d48Sopenharmony_ci "-ftest-coverage", 55fb726d48Sopenharmony_ci "-Wno-unused-command-line-argument", 56fb726d48Sopenharmony_ci "-Wno-format", 57fb726d48Sopenharmony_ci "-Wno-unused-const-variable", 58fb726d48Sopenharmony_ci "-Wno-unused-variable", 59fb726d48Sopenharmony_ci "-Wno-used-but-marked-unused", 60fb726d48Sopenharmony_ci ] 61fb726d48Sopenharmony_ci ldflags = [ 62fb726d48Sopenharmony_ci "-fprofile-arcs", 63fb726d48Sopenharmony_ci "-ftest-coverage", 64fb726d48Sopenharmony_ci "--coverage", 65fb726d48Sopenharmony_ci ] 66fb726d48Sopenharmony_ci cflags += [ 67fb726d48Sopenharmony_ci # clang coverage options: 68fb726d48Sopenharmony_ci "--coverage", 69fb726d48Sopenharmony_ci "-mllvm", 70fb726d48Sopenharmony_ci "-limited-coverage-experimental=true", 71fb726d48Sopenharmony_ci "-fno-use-cxa-atexit", 72fb726d48Sopenharmony_ci "-DIS_UT", 73fb726d48Sopenharmony_ci ] 74fb726d48Sopenharmony_ci if (is_mac) { 75fb726d48Sopenharmony_ci lib_dirs = [ "/usr/local/opt/llvm/lib" ] 76fb726d48Sopenharmony_ci } 77fb726d48Sopenharmony_ci libs = [ "LLVMCore" ] 78fb726d48Sopenharmony_ci } 79fb726d48Sopenharmony_ci} 80fb726d48Sopenharmony_ci 81fb726d48Sopenharmony_ci# this is the dest for ohos.build 82fb726d48Sopenharmony_ciif (target == "sdkdemotest") { 83fb726d48Sopenharmony_ci group("sdkunittest") { 84fb726d48Sopenharmony_ci testonly = true 85fb726d48Sopenharmony_ci deps = [ ":trace_streamer_sdk_ut" ] 86fb726d48Sopenharmony_ci } 87fb726d48Sopenharmony_ci} 88