1b1994897Sopenharmony_ci# Copyright (c) 2021-2024 Huawei Device Co., Ltd. 2b1994897Sopenharmony_ci# Licensed under the Apache License, Version 2.0 (the "License"); 3b1994897Sopenharmony_ci# you may not use this file except in compliance with the License. 4b1994897Sopenharmony_ci# You may obtain a copy of the License at 5b1994897Sopenharmony_ci# 6b1994897Sopenharmony_ci# http://www.apache.org/licenses/LICENSE-2.0 7b1994897Sopenharmony_ci# 8b1994897Sopenharmony_ci# Unless required by applicable law or agreed to in writing, software 9b1994897Sopenharmony_ci# distributed under the License is distributed on an "AS IS" BASIS, 10b1994897Sopenharmony_ci# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11b1994897Sopenharmony_ci# See the License for the specific language governing permissions and 12b1994897Sopenharmony_ci# limitations under the License. 13b1994897Sopenharmony_ci 14b1994897Sopenharmony_ciimport("//arkcompiler/runtime_core/ark_config.gni") 15b1994897Sopenharmony_ci 16b1994897Sopenharmony_ciforeach(plugin, enabled_plugins) { 17b1994897Sopenharmony_ci print("plugin $plugin is enabled") 18b1994897Sopenharmony_ci} 19b1994897Sopenharmony_ci 20b1994897Sopenharmony_cigroup("arkcompiler_params") { 21b1994897Sopenharmony_ci deps = [ "libpandafile:arkcompiler_params" ] 22b1994897Sopenharmony_ci} 23b1994897Sopenharmony_ci 24b1994897Sopenharmony_cigroup("ark_device_packages") { 25b1994897Sopenharmony_ci deps = [ "$ark_root/verifier:libarkverifier" ] 26b1994897Sopenharmony_ci} 27b1994897Sopenharmony_ci 28b1994897Sopenharmony_cigroup("ark_packages") { 29b1994897Sopenharmony_ci deps = [] 30b1994897Sopenharmony_ci if (host_os != "mac") { 31b1994897Sopenharmony_ci deps += [ 32b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase", 33b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile", 34b1994897Sopenharmony_ci "$ark_root/libziparchive:libarkziparchive", 35b1994897Sopenharmony_ci ] 36b1994897Sopenharmony_ci } 37b1994897Sopenharmony_ci 38b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 39b1994897Sopenharmony_ci deps += [ "$ark_root/plugins/$plugin:ark_packages" ] 40b1994897Sopenharmony_ci } 41b1994897Sopenharmony_ci} 42b1994897Sopenharmony_ci 43b1994897Sopenharmony_cigroup("ark_host_linux_tools_packages") { 44b1994897Sopenharmony_ci deps = [] 45b1994897Sopenharmony_ci if (host_os != "mac") { 46b1994897Sopenharmony_ci deps += [ 47b1994897Sopenharmony_ci "$ark_root/abc2program:abc2prog(${host_toolchain})", 48b1994897Sopenharmony_ci "$ark_root/disassembler:ark_disasm(${host_toolchain})", 49b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase(${host_toolchain})", 50b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile(${host_toolchain})", 51b1994897Sopenharmony_ci "$ark_root/libziparchive:libarkziparchive(${host_toolchain})", 52b1994897Sopenharmony_ci "$ark_root/verifier:ark_verifier(${host_toolchain})", 53b1994897Sopenharmony_ci ] 54b1994897Sopenharmony_ci } 55b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 56b1994897Sopenharmony_ci deps += [ "$ark_root/plugins/$plugin:ark_host_linux_tools_packages" ] 57b1994897Sopenharmony_ci } 58b1994897Sopenharmony_ci} 59b1994897Sopenharmony_ci 60b1994897Sopenharmony_cigroup("ark_host_windows_tools_packages") { 61b1994897Sopenharmony_ci deps = [] 62b1994897Sopenharmony_ci if (host_os != "mac") { 63b1994897Sopenharmony_ci deps += [ 64b1994897Sopenharmony_ci "$ark_root/abc2program:abc2prog($build_root/toolchain/mingw:mingw_x86_64)", 65b1994897Sopenharmony_ci "$ark_root/disassembler:ark_disasm($build_root/toolchain/mingw:mingw_x86_64)", 66b1994897Sopenharmony_ci "$ark_root/verifier:ark_verifier($build_root/toolchain/mingw:mingw_x86_64)", 67b1994897Sopenharmony_ci ] 68b1994897Sopenharmony_ci } 69b1994897Sopenharmony_ci 70b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 71b1994897Sopenharmony_ci deps += [ "$ark_root/plugins/$plugin:ark_host_windows_tools_packages" ] 72b1994897Sopenharmony_ci } 73b1994897Sopenharmony_ci} 74b1994897Sopenharmony_ci 75b1994897Sopenharmony_cigroup("ark_host_mac_tools_packages") { 76b1994897Sopenharmony_ci deps = [] 77b1994897Sopenharmony_ci if (host_os == "mac") { 78b1994897Sopenharmony_ci if (host_cpu == "arm64") { 79b1994897Sopenharmony_ci deps += [ 80b1994897Sopenharmony_ci "$ark_root/abc2program:abc2prog($build_root/toolchain/mac:clang_arm64)", 81b1994897Sopenharmony_ci "$ark_root/disassembler:ark_disasm($build_root/toolchain/mac:clang_arm64)", 82b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase($build_root/toolchain/mac:clang_arm64)", 83b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile($build_root/toolchain/mac:clang_arm64)", 84b1994897Sopenharmony_ci "$ark_root/libziparchive:libarkziparchive($build_root/toolchain/mac:clang_arm64)", 85b1994897Sopenharmony_ci "$ark_root/verifier:ark_verifier($build_root/toolchain/mac:clang_arm64)", 86b1994897Sopenharmony_ci ] 87b1994897Sopenharmony_ci } else { 88b1994897Sopenharmony_ci deps += [ 89b1994897Sopenharmony_ci "$ark_root/abc2program:abc2prog($build_root/toolchain/mac:clang_x64)", 90b1994897Sopenharmony_ci "$ark_root/disassembler:ark_disasm($build_root/toolchain/mac:clang_x64)", 91b1994897Sopenharmony_ci "$ark_root/libpandabase:libarkbase($build_root/toolchain/mac:clang_x64)", 92b1994897Sopenharmony_ci "$ark_root/libpandafile:libarkfile($build_root/toolchain/mac:clang_x64)", 93b1994897Sopenharmony_ci "$ark_root/libziparchive:libarkziparchive($build_root/toolchain/mac:clang_x64)", 94b1994897Sopenharmony_ci "$ark_root/verifier:ark_verifier($build_root/toolchain/mac:clang_x64)", 95b1994897Sopenharmony_ci ] 96b1994897Sopenharmony_ci } 97b1994897Sopenharmony_ci } 98b1994897Sopenharmony_ci 99b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 100b1994897Sopenharmony_ci deps += [ "$ark_root/plugins/$plugin:ark_host_mac_tools_packages" ] 101b1994897Sopenharmony_ci } 102b1994897Sopenharmony_ci} 103b1994897Sopenharmony_ci 104b1994897Sopenharmony_ciif (!ark_standalone_build) { 105b1994897Sopenharmony_ci group("ark_host_ohos_tools_packages") { 106b1994897Sopenharmony_ci deps = [] 107b1994897Sopenharmony_ci if (host_os != "mac") { 108b1994897Sopenharmony_ci deps += [ "$ark_root/disassembler:ark_disasm($build_root/toolchain/ohos:ohos_clang_arm64)" ] 109b1994897Sopenharmony_ci } 110b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 111b1994897Sopenharmony_ci deps += [ "$ark_root/plugins/$plugin:ark_host_ohos_tools_packages" ] 112b1994897Sopenharmony_ci } 113b1994897Sopenharmony_ci } 114b1994897Sopenharmony_ci} 115b1994897Sopenharmony_ci 116b1994897Sopenharmony_ci# Common config for ark source 117b1994897Sopenharmony_ciconfig("ark_config") { 118b1994897Sopenharmony_ci visibility = [ 119b1994897Sopenharmony_ci "./*", 120b1994897Sopenharmony_ci "//arkcompiler/ets_frontend/*", 121b1994897Sopenharmony_ci ] 122b1994897Sopenharmony_ci 123b1994897Sopenharmony_ci include_dirs = [ "$ark_root" ] 124b1994897Sopenharmony_ci defines = [ "PANDA_TARGET_MOBILE_WITH_MANAGED_LIBS=1" ] 125b1994897Sopenharmony_ci 126b1994897Sopenharmony_ci if (is_linux) { 127b1994897Sopenharmony_ci defines += [ 128b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 129b1994897Sopenharmony_ci "PANDA_TARGET_LINUX", 130b1994897Sopenharmony_ci "PANDA_WITH_BYTECODE_OPTIMIZER", 131b1994897Sopenharmony_ci "PANDA_WITH_COMPILER", 132b1994897Sopenharmony_ci "PANDA_USE_FUTEX", 133b1994897Sopenharmony_ci ] 134b1994897Sopenharmony_ci } else if (is_mingw) { 135b1994897Sopenharmony_ci defines += [ 136b1994897Sopenharmony_ci "PANDA_TARGET_WINDOWS", 137b1994897Sopenharmony_ci "PANDA_WITH_BYTECODE_OPTIMIZER", 138b1994897Sopenharmony_ci "PANDA_WITH_COMPILER", 139b1994897Sopenharmony_ci "_CRTBLD", 140b1994897Sopenharmony_ci "__LIBMSVCRT__", 141b1994897Sopenharmony_ci ] 142b1994897Sopenharmony_ci } else if (is_mac) { 143b1994897Sopenharmony_ci defines += [ 144b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 145b1994897Sopenharmony_ci "PANDA_TARGET_MACOS", 146b1994897Sopenharmony_ci "PANDA_WITH_BYTECODE_OPTIMIZER", 147b1994897Sopenharmony_ci "PANDA_WITH_COMPILER", 148b1994897Sopenharmony_ci ] 149b1994897Sopenharmony_ci } else if (target_os == "ios") { 150b1994897Sopenharmony_ci defines += [ 151b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 152b1994897Sopenharmony_ci "PANDA_TARGET_IOS", 153b1994897Sopenharmony_ci "PANDA_WITH_BYTECODE_OPTIMIZER", 154b1994897Sopenharmony_ci "PANDA_WITH_COMPILER", 155b1994897Sopenharmony_ci ] 156b1994897Sopenharmony_ci } else if (is_mob) { 157b1994897Sopenharmony_ci defines += [ 158b1994897Sopenharmony_ci "PANDA_TARGET_OHOS", 159b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 160b1994897Sopenharmony_ci "PANDA_USE_FUTEX", 161b1994897Sopenharmony_ci "PANDA_TARGET_MOBILE", 162b1994897Sopenharmony_ci "PANDA_TARGET_MOBILE_WITH_NATIVE_LIBS", 163b1994897Sopenharmony_ci ] 164b1994897Sopenharmony_ci } else if (is_ohos) { 165b1994897Sopenharmony_ci if (is_build_sdk) { 166b1994897Sopenharmony_ci defines += [ 167b1994897Sopenharmony_ci "PANDA_TARGET_OHOS", 168b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 169b1994897Sopenharmony_ci "PANDA_WITH_BYTECODE_OPTIMIZER", 170b1994897Sopenharmony_ci "PANDA_USE_FUTEX", 171b1994897Sopenharmony_ci ] 172b1994897Sopenharmony_ci } else { 173b1994897Sopenharmony_ci defines += [ 174b1994897Sopenharmony_ci "PANDA_TARGET_OHOS", 175b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 176b1994897Sopenharmony_ci "PANDA_USE_FUTEX", 177b1994897Sopenharmony_ci ] 178b1994897Sopenharmony_ci } 179b1994897Sopenharmony_ci } else { 180b1994897Sopenharmony_ci defines += [ 181b1994897Sopenharmony_ci "PANDA_TARGET_UNIX", 182b1994897Sopenharmony_ci "PANDA_USE_FUTEX", 183b1994897Sopenharmony_ci ] 184b1994897Sopenharmony_ci } 185b1994897Sopenharmony_ci 186b1994897Sopenharmony_ci if (current_os == "android" && defined(is_arkui_x) && is_arkui_x) { 187b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_ARKUI_X" ] 188b1994897Sopenharmony_ci } 189b1994897Sopenharmony_ci 190b1994897Sopenharmony_ci if (enable_hilog) { 191b1994897Sopenharmony_ci defines += [ "ENABLE_HILOG" ] 192b1994897Sopenharmony_ci } 193b1994897Sopenharmony_ci 194b1994897Sopenharmony_ci if (!is_debug) { 195b1994897Sopenharmony_ci defines += [ "NDEBUG" ] 196b1994897Sopenharmony_ci } 197b1994897Sopenharmony_ci 198b1994897Sopenharmony_ci cflags_cc = [ 199b1994897Sopenharmony_ci "-std=c++17", 200b1994897Sopenharmony_ci "-pedantic", 201b1994897Sopenharmony_ci "-Wall", 202b1994897Sopenharmony_ci "-Wextra", 203b1994897Sopenharmony_ci "-Werror", 204b1994897Sopenharmony_ci "-fno-rtti", 205b1994897Sopenharmony_ci "-fno-exceptions", 206b1994897Sopenharmony_ci "-Wno-invalid-offsetof", 207b1994897Sopenharmony_ci 208b1994897Sopenharmony_ci "-Wno-gnu-statement-expression", 209b1994897Sopenharmony_ci "-Wno-unused-parameter", 210b1994897Sopenharmony_ci "-Wno-unused-result", 211b1994897Sopenharmony_ci "-Wno-unused-but-set-variable", 212b1994897Sopenharmony_ci ] 213b1994897Sopenharmony_ci 214b1994897Sopenharmony_ci cflags_c = [] 215b1994897Sopenharmony_ci 216b1994897Sopenharmony_ci if (!is_mac && use_pbqp) { 217b1994897Sopenharmony_ci cflags_cc += [ 218b1994897Sopenharmony_ci # PBQP regalloc 219b1994897Sopenharmony_ci "-mllvm", 220b1994897Sopenharmony_ci "-regalloc=pbqp", 221b1994897Sopenharmony_ci ] 222b1994897Sopenharmony_ci } 223b1994897Sopenharmony_ci 224b1994897Sopenharmony_ci if (is_fastverify) { 225b1994897Sopenharmony_ci cflags_cc += [ 226b1994897Sopenharmony_ci "-O3", 227b1994897Sopenharmony_ci "-ggdb3", 228b1994897Sopenharmony_ci "-fno-omit-frame-pointer", 229b1994897Sopenharmony_ci "-D_GLIBCXX_ASSERTIONS", 230b1994897Sopenharmony_ci ] 231b1994897Sopenharmony_ci cflags_c += [ 232b1994897Sopenharmony_ci "-O3", 233b1994897Sopenharmony_ci "-ggdb3", 234b1994897Sopenharmony_ci "-fno-omit-frame-pointer", 235b1994897Sopenharmony_ci "-D_GLIBCXX_ASSERTIONS", 236b1994897Sopenharmony_ci ] 237b1994897Sopenharmony_ci } else if (is_debug) { 238b1994897Sopenharmony_ci cflags_cc += [ 239b1994897Sopenharmony_ci "-Og", 240b1994897Sopenharmony_ci "-ggdb3", 241b1994897Sopenharmony_ci ] 242b1994897Sopenharmony_ci } 243b1994897Sopenharmony_ci 244b1994897Sopenharmony_ci if (enable_relayout_profile) { 245b1994897Sopenharmony_ci defines += [ "PANDA_ENABLE_RELAYOUT_PROFILE" ] 246b1994897Sopenharmony_ci } 247b1994897Sopenharmony_ci 248b1994897Sopenharmony_ci configs = [] 249b1994897Sopenharmony_ci foreach(plugin, enabled_plugins) { 250b1994897Sopenharmony_ci configs += [ "$ark_root/plugins/$plugin:ark_config" ] 251b1994897Sopenharmony_ci } 252b1994897Sopenharmony_ci 253b1994897Sopenharmony_ci if (current_cpu == "arm") { 254b1994897Sopenharmony_ci cflags_cc += [ 255b1994897Sopenharmony_ci "-march=armv7-a", 256b1994897Sopenharmony_ci "-mfloat-abi=${arm_float_abi}", 257b1994897Sopenharmony_ci "-marm", 258b1994897Sopenharmony_ci "-mfpu=vfp", 259b1994897Sopenharmony_ci ] 260b1994897Sopenharmony_ci 261b1994897Sopenharmony_ci if (arm_float_abi == "soft") { 262b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_ARM32_ABI_SOFT=1" ] 263b1994897Sopenharmony_ci } else if (arm_float_abi == "softfp") { 264b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_ARM32_ABI_SOFTFP=1" ] 265b1994897Sopenharmony_ci } else if (arm_float_abi == "hard") { 266b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_ARM32_ABI_HARD=1" ] 267b1994897Sopenharmony_ci } 268b1994897Sopenharmony_ci 269b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_ARM32" ] 270b1994897Sopenharmony_ci } else if (current_cpu == "arm64") { 271b1994897Sopenharmony_ci defines += [ 272b1994897Sopenharmony_ci "PANDA_TARGET_ARM64", 273b1994897Sopenharmony_ci "PANDA_TARGET_64", 274b1994897Sopenharmony_ci "PANDA_ENABLE_GLOBAL_REGISTER_VARIABLES", 275b1994897Sopenharmony_ci "PANDA_USE_32_BIT_POINTER", 276b1994897Sopenharmony_ci ] 277b1994897Sopenharmony_ci } else if (current_cpu == "x86") { 278b1994897Sopenharmony_ci defines += [ "PANDA_TARGET_X86" ] 279b1994897Sopenharmony_ci } else if (current_cpu == "amd64" || current_cpu == "x64" || 280b1994897Sopenharmony_ci current_cpu == "x86_64") { 281b1994897Sopenharmony_ci defines += [ 282b1994897Sopenharmony_ci "PANDA_TARGET_64", 283b1994897Sopenharmony_ci "PANDA_TARGET_AMD64", 284b1994897Sopenharmony_ci "PANDA_USE_32_BIT_POINTER", 285b1994897Sopenharmony_ci ] 286b1994897Sopenharmony_ci } 287b1994897Sopenharmony_ci} 288b1994897Sopenharmony_ci 289b1994897Sopenharmony_ciplugins_yamls = [] 290b1994897Sopenharmony_ciforeach(plugin, enabled_plugins) { 291b1994897Sopenharmony_ci plugin_dir = "$ark_root/plugins/$plugin" 292b1994897Sopenharmony_ci source_files = read_file("$plugin_dir/subproject_sources.gn", "scope") 293b1994897Sopenharmony_ci 294b1994897Sopenharmony_ci if (defined(source_files.option_yaml_path)) { 295b1994897Sopenharmony_ci plugins_yamls += [ "$plugin_dir/${source_files.option_yaml_path}" ] 296b1994897Sopenharmony_ci } 297b1994897Sopenharmony_ci 298b1994897Sopenharmony_ci source_files = { 299b1994897Sopenharmony_ci } 300b1994897Sopenharmony_ci} 301b1994897Sopenharmony_ci 302b1994897Sopenharmony_ciconcat_yamls("concat_plugins_yamls") { 303b1994897Sopenharmony_ci output_file = "$target_gen_dir/plugin_options.yaml" 304b1994897Sopenharmony_ci default_file = "$ark_root/templates/plugin_options.yaml" 305b1994897Sopenharmony_ci add_yamls = plugins_yamls 306b1994897Sopenharmony_ci} 307b1994897Sopenharmony_ci 308b1994897Sopenharmony_ciinst_templates_yamls = [] 309b1994897Sopenharmony_ciforeach(plugin, enabled_plugins) { 310b1994897Sopenharmony_ci plugin_dir = "$ark_root/plugins/$plugin" 311b1994897Sopenharmony_ci source_files = read_file("$plugin_dir/subproject_sources.gn", "scope") 312b1994897Sopenharmony_ci if (defined(source_files.inst_templates_yaml_path)) { 313b1994897Sopenharmony_ci inst_templates_yamls += 314b1994897Sopenharmony_ci [ "$plugin_dir/${source_files.inst_templates_yaml_path}" ] 315b1994897Sopenharmony_ci } 316b1994897Sopenharmony_ci source_files = { 317b1994897Sopenharmony_ci } 318b1994897Sopenharmony_ci} 319b1994897Sopenharmony_ci 320b1994897Sopenharmony_ciconcat_yamls("concat_inst_templates_yamls") { 321b1994897Sopenharmony_ci output_file = "$target_gen_dir/compiler/generated/inst_templates.yaml" 322b1994897Sopenharmony_ci default_file = "$ark_root/compiler/optimizer/ir_builder/inst_templates.yaml" 323b1994897Sopenharmony_ci add_yamls = inst_templates_yamls 324b1994897Sopenharmony_ci} 325b1994897Sopenharmony_ci 326b1994897Sopenharmony_cigroup("ark_host_defectscanaux_tools") { 327b1994897Sopenharmony_ci deps = [] 328b1994897Sopenharmony_ci if (host_os == "linux") { 329b1994897Sopenharmony_ci deps += [ 330b1994897Sopenharmony_ci ":ark_host_linux_defectscanaux_unittest", 331b1994897Sopenharmony_ci ":ark_host_win_defectscanaux_unittest", 332b1994897Sopenharmony_ci ] 333b1994897Sopenharmony_ci } else if (host_os == "mac") { 334b1994897Sopenharmony_ci deps += [ ":ark_host_mac_defectscanaux_unittest" ] 335b1994897Sopenharmony_ci } 336b1994897Sopenharmony_ci} 337b1994897Sopenharmony_ci 338b1994897Sopenharmony_cigroup("ark_host_linux_defectscanaux_unittest") { 339b1994897Sopenharmony_ci deps = [] 340b1994897Sopenharmony_ci if (host_os == "linux") { 341b1994897Sopenharmony_ci deps += [ "$ark_root/libark_defect_scan_aux/tests/unittest:defect_scan_aux_demo(${host_toolchain})" ] 342b1994897Sopenharmony_ci } 343b1994897Sopenharmony_ci} 344b1994897Sopenharmony_ci 345b1994897Sopenharmony_cigroup("ark_host_win_defectscanaux_unittest") { 346b1994897Sopenharmony_ci deps = [] 347b1994897Sopenharmony_ci if (host_os == "linux") { 348b1994897Sopenharmony_ci deps += [ "$ark_root/libark_defect_scan_aux/tests/unittest:defect_scan_aux_demo($build_root/toolchain/mingw:mingw_x86_64)" ] 349b1994897Sopenharmony_ci } 350b1994897Sopenharmony_ci} 351b1994897Sopenharmony_ci 352b1994897Sopenharmony_cigroup("ark_host_mac_defectscanaux_unittest") { 353b1994897Sopenharmony_ci deps = [] 354b1994897Sopenharmony_ci if (host_os == "mac") { 355b1994897Sopenharmony_ci if (host_cpu == "arm64") { 356b1994897Sopenharmony_ci deps += [ "$ark_root/libark_defect_scan_aux/tests/unittest:defect_scan_aux_demo($build_root/toolchain/mac:clang_arm64)" ] 357b1994897Sopenharmony_ci } else { 358b1994897Sopenharmony_ci deps += [ "$ark_root/libark_defect_scan_aux/tests/unittest:defect_scan_aux_demo($build_root/toolchain/mac:clang_x64)" ] 359b1994897Sopenharmony_ci } 360b1994897Sopenharmony_ci } 361b1994897Sopenharmony_ci} 362b1994897Sopenharmony_ci 363b1994897Sopenharmony_ciif (!ark_standalone_build) { 364b1994897Sopenharmony_ci group("runtime_core_unittest") { 365b1994897Sopenharmony_ci testonly = true 366b1994897Sopenharmony_ci deps = [ 367b1994897Sopenharmony_ci "$ark_root/arkplatform/tests:unittest", 368b1994897Sopenharmony_ci "$ark_root/libpandabase/tests:unittest", 369b1994897Sopenharmony_ci "$ark_root/libpandafile/tests:unittest", 370b1994897Sopenharmony_ci "$ark_root/libziparchive/tests:unittest", 371b1994897Sopenharmony_ci ] 372b1994897Sopenharmony_ci } 373b1994897Sopenharmony_ci 374b1994897Sopenharmony_ci group("runtime_core_host_unittest") { 375b1994897Sopenharmony_ci testonly = true 376b1994897Sopenharmony_ci deps = [ 377b1994897Sopenharmony_ci "$ark_root/abc2program/tests:host_unittest", 378b1994897Sopenharmony_ci "$ark_root/arkplatform/tests:host_unittest", 379b1994897Sopenharmony_ci "$ark_root/assembler/tests:host_unittest", 380b1994897Sopenharmony_ci "$ark_root/bytecode_optimizer/tests:host_unittest", 381b1994897Sopenharmony_ci "$ark_root/compiler/tests:host_unittest", 382b1994897Sopenharmony_ci "$ark_root/disassembler/tests:host_unittest", 383b1994897Sopenharmony_ci "$ark_root/libark_defect_scan_aux/tests/unittest:host_unittest", 384b1994897Sopenharmony_ci "$ark_root/libpandabase/tests:host_unittest", 385b1994897Sopenharmony_ci "$ark_root/libpandafile/tests:host_unittest", 386b1994897Sopenharmony_ci "$ark_root/libziparchive/tests:host_unittest", 387b1994897Sopenharmony_ci "$ark_root/platforms/tests:host_unittest", 388b1994897Sopenharmony_ci "$ark_root/verifier/tests:host_unittest", 389b1994897Sopenharmony_ci ] 390b1994897Sopenharmony_ci } 391b1994897Sopenharmony_ci 392b1994897Sopenharmony_ci group("verifier_host_unittest") { 393b1994897Sopenharmony_ci testonly = true 394b1994897Sopenharmony_ci deps = [ "$ark_root/verifier/tests:host_unittest" ] 395b1994897Sopenharmony_ci } 396b1994897Sopenharmony_ci 397b1994897Sopenharmony_ci group("compiler_host_unittest") { 398b1994897Sopenharmony_ci testonly = true 399b1994897Sopenharmony_ci deps = [ "$ark_root/compiler/tests:host_unittest" ] 400b1994897Sopenharmony_ci } 401b1994897Sopenharmony_ci 402b1994897Sopenharmony_ci group("arkplatform_host_unittest") { 403b1994897Sopenharmony_ci testonly = true 404b1994897Sopenharmony_ci deps = [ "$ark_root/arkplatform/tests:host_unittest" ] 405b1994897Sopenharmony_ci } 406b1994897Sopenharmony_ci 407b1994897Sopenharmony_ci group("arkplatform_unittest") { 408b1994897Sopenharmony_ci testonly = true 409b1994897Sopenharmony_ci deps = [ "$ark_root/arkplatform/tests:unittest" ] 410b1994897Sopenharmony_ci } 411b1994897Sopenharmony_ci} 412