1800b99b8Sopenharmony_ci# Copyright (c) 2023 Huawei Device Co., Ltd. 2800b99b8Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3800b99b8Sopenharmony_ci# you may not use this file except in compliance with the License. 4800b99b8Sopenharmony_ci# You may obtain a copy of the License at 5800b99b8Sopenharmony_ci# 6800b99b8Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7800b99b8Sopenharmony_ci# 8800b99b8Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9800b99b8Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10800b99b8Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11800b99b8Sopenharmony_ci# See the License for the specific language governing permissions and 12800b99b8Sopenharmony_ci# limitations under the License. 13800b99b8Sopenharmony_ci 14800b99b8Sopenharmony_ciimport("//base/hiviewdfx/faultloggerd/faultloggerd.gni") 15800b99b8Sopenharmony_ci 16800b99b8Sopenharmony_cilibunwindstack_path = 17800b99b8Sopenharmony_ci "$faultloggerd_path/matrix-backtrace/src/main/cpp/external/libunwindstack" 18800b99b8Sopenharmony_ci 19800b99b8Sopenharmony_ciif (!defined(ohos_lite)) { 20800b99b8Sopenharmony_ci import("//build/config/features.gni") 21800b99b8Sopenharmony_ci import("//build/test.gni") 22800b99b8Sopenharmony_ci 23800b99b8Sopenharmony_ci module_output_path = "faultloggerd/benchmarktest" 24800b99b8Sopenharmony_ci 25800b99b8Sopenharmony_ci ohos_benchmarktest("UnwindStackBenchmarkTest") { 26800b99b8Sopenharmony_ci module_out_path = module_output_path 27800b99b8Sopenharmony_ci include_dirs = [ 28800b99b8Sopenharmony_ci "./", 29800b99b8Sopenharmony_ci "$faultloggerd_interfaces_path/innerkits/unwinder/include", 30800b99b8Sopenharmony_ci "$faultloggerd_path/test/utils", 31800b99b8Sopenharmony_ci "$libunwindstack_path/include", 32800b99b8Sopenharmony_ci ] 33800b99b8Sopenharmony_ci cflags = [ 34800b99b8Sopenharmony_ci "-O0", 35800b99b8Sopenharmony_ci "-Werror", 36800b99b8Sopenharmony_ci "-Wno-unused-variable", 37800b99b8Sopenharmony_ci "-Wno-reorder-init-list", 38800b99b8Sopenharmony_ci "-Wno-header-hygiene", 39800b99b8Sopenharmony_ci "-Wno-unused-function", 40800b99b8Sopenharmony_ci ] 41800b99b8Sopenharmony_ci 42800b99b8Sopenharmony_ci cflags_cc = [ "-frtti" ] 43800b99b8Sopenharmony_ci defines = [ "LOCK_TO_CPU" ] 44800b99b8Sopenharmony_ci if (libunwinder_debug) { 45800b99b8Sopenharmony_ci defines += [ "DFX_LOG_UNWIND" ] 46800b99b8Sopenharmony_ci } 47800b99b8Sopenharmony_ci sources = [ 48800b99b8Sopenharmony_ci "$faultloggerd_test_path/benchmarktest/main/main_benchmark.cpp", 49800b99b8Sopenharmony_ci "pid_utils.cpp", 50800b99b8Sopenharmony_ci "unwind_local_benchmark.cpp", 51800b99b8Sopenharmony_ci "unwind_remote_benchmark.cpp", 52800b99b8Sopenharmony_ci ] 53800b99b8Sopenharmony_ci deps = [ 54800b99b8Sopenharmony_ci "$faultloggerd_common_path/dfxlog:dfx_hilog", 55800b99b8Sopenharmony_ci "$faultloggerd_common_path/dfxutil:dfx_util", 56800b99b8Sopenharmony_ci "$faultloggerd_path/libunwind-x/libbase:libabase", 57800b99b8Sopenharmony_ci "$faultloggerd_path/libunwind-x/libdemangle:libdemangle", 58800b99b8Sopenharmony_ci "$faultloggerd_path/libunwind-x/liblog:libalog", 59800b99b8Sopenharmony_ci "$faultloggerd_path/libunwind-x/liblzma/C:liblzma", 60800b99b8Sopenharmony_ci "$faultloggerd_path/libunwind-x/libprocinfo:libaprocinfo", 61800b99b8Sopenharmony_ci "$faultloggerd_path/test/utils:dfx_test_util", 62800b99b8Sopenharmony_ci "$libunwindstack_path:libwxunwindstack", 63800b99b8Sopenharmony_ci "$libunwindstack_path/deps/sys_compat:libwxcompat", 64800b99b8Sopenharmony_ci ] 65800b99b8Sopenharmony_ci 66800b99b8Sopenharmony_ci external_deps = [ 67800b99b8Sopenharmony_ci "benchmark:benchmark", 68800b99b8Sopenharmony_ci "bounds_checking_function:libsec_shared", 69800b99b8Sopenharmony_ci "c_utils:utils", 70800b99b8Sopenharmony_ci "hilog:libhilog", 71800b99b8Sopenharmony_ci ] 72800b99b8Sopenharmony_ci } 73800b99b8Sopenharmony_ci 74800b99b8Sopenharmony_ci group("benchmarktest") { 75800b99b8Sopenharmony_ci testonly = true 76800b99b8Sopenharmony_ci deps = [ ":UnwindStackBenchmarkTest" ] 77800b99b8Sopenharmony_ci } 78800b99b8Sopenharmony_ci} 79