1# Copyright (c) 2024 Huawei Device Co., Ltd. 2# Licensed under the Apache License, Version 2.0 (the "License"); 3# you may not use this file except in compliance with the License. 4# You may obtain a copy of the License at 5# 6# http://www.apache.org/licenses/LICENSE-2.0 7# 8# Unless required by applicable law or agreed to in writing, software 9# distributed under the License is distributed on an "AS IS" BASIS, 10# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11# See the License for the specific language governing permissions and 12# limitations under the License. 13 14import("//arkcompiler/runtime_core/ark_config.gni") 15import("//arkcompiler/runtime_core/libabckit/tests/canary/abckit_canary.gni") 16 17config("abckit_canary_cpp_config") { 18 cflags = [ 19 "-std=c++17", 20 "-pedantic", 21 "-pedantic-errors", 22 "-Wall", 23 "-Wextra", 24 "-Werror", 25 ] 26} 27 28ohos_executable("abckit_canary_cpp") { 29 configs = [ ":abckit_canary_cpp_config" ] 30 sources = [ "canary.cpp" ] 31 32 # NOTE: Important! Do not add `include_dirs` to this target! 33 # Compiling this test without `include_dirs` ensures all relative paths are correct 34 # and there are no dependencies from `include` to `src` 35 install_enable = false 36 part_name = "runtime_core" 37 subsystem_name = "arkcompiler" 38} 39 40abckit_standalone_canary("abckit_canary_cpp_headers_graph") { 41 configs = [ ":abckit_canary_cpp_config" ] 42 input_file = "$abckit_root/include/cpp/headers/graph.h" 43 extension = "cpp" 44} 45 46abckit_standalone_canary( 47 "abckit_canary_cpp_headers_core_import_descriptor_impl") { 48 configs = [ ":abckit_canary_cpp_config" ] 49 input_file = "$abckit_root/include/cpp/headers/core/import_descriptor_impl.h" 50 extension = "cpp" 51} 52 53abckit_standalone_canary("abckit_canary_cpp_headers_core_function") { 54 configs = [ ":abckit_canary_cpp_config" ] 55 input_file = "$abckit_root/include/cpp/headers/core/function.h" 56 extension = "cpp" 57} 58 59abckit_standalone_canary("abckit_canary_cpp_headers_core_function_impl") { 60 configs = [ ":abckit_canary_cpp_config" ] 61 input_file = "$abckit_root/include/cpp/headers/core/function_impl.h" 62 extension = "cpp" 63} 64 65abckit_standalone_canary("abckit_canary_cpp_headers_core_class_impl") { 66 configs = [ ":abckit_canary_cpp_config" ] 67 input_file = "$abckit_root/include/cpp/headers/core/class_impl.h" 68 extension = "cpp" 69} 70 71abckit_standalone_canary( 72 "abckit_canary_cpp_headers_core_annotation_interface_field") { 73 configs = [ ":abckit_canary_cpp_config" ] 74 input_file = 75 "$abckit_root/include/cpp/headers/core/annotation_interface_field.h" 76 extension = "cpp" 77} 78 79abckit_standalone_canary( 80 "abckit_canary_cpp_headers_core_annotation_interface_impl") { 81 configs = [ ":abckit_canary_cpp_config" ] 82 input_file = 83 "$abckit_root/include/cpp/headers/core/annotation_interface_impl.h" 84 extension = "cpp" 85} 86 87abckit_standalone_canary("abckit_canary_cpp_headers_core_annotation") { 88 configs = [ ":abckit_canary_cpp_config" ] 89 input_file = "$abckit_root/include/cpp/headers/core/annotation.h" 90 extension = "cpp" 91} 92 93abckit_standalone_canary("abckit_canary_cpp_headers_core_annotation_impl") { 94 configs = [ ":abckit_canary_cpp_config" ] 95 input_file = "$abckit_root/include/cpp/headers/core/annotation_impl.h" 96 extension = "cpp" 97} 98 99abckit_standalone_canary("abckit_canary_cpp_headers_core_module") { 100 configs = [ ":abckit_canary_cpp_config" ] 101 input_file = "$abckit_root/include/cpp/headers/core/module.h" 102 extension = "cpp" 103} 104 105abckit_standalone_canary("abckit_canary_cpp_headers_core_annotation_element") { 106 configs = [ ":abckit_canary_cpp_config" ] 107 input_file = "$abckit_root/include/cpp/headers/core/annotation_element.h" 108 extension = "cpp" 109} 110 111abckit_standalone_canary( 112 "abckit_canary_cpp_headers_core_annotation_element_impl") { 113 configs = [ ":abckit_canary_cpp_config" ] 114 input_file = "$abckit_root/include/cpp/headers/core/annotation_element_impl.h" 115 extension = "cpp" 116} 117 118abckit_standalone_canary( 119 "abckit_canary_cpp_headers_core_export_descriptor_impl") { 120 configs = [ ":abckit_canary_cpp_config" ] 121 input_file = "$abckit_root/include/cpp/headers/core/export_descriptor_impl.h" 122 extension = "cpp" 123} 124 125abckit_standalone_canary("abckit_canary_cpp_headers_core_module_impl") { 126 configs = [ ":abckit_canary_cpp_config" ] 127 input_file = "$abckit_root/include/cpp/headers/core/module_impl.h" 128 extension = "cpp" 129} 130 131abckit_standalone_canary("abckit_canary_cpp_headers_core_import_descriptor") { 132 configs = [ ":abckit_canary_cpp_config" ] 133 input_file = "$abckit_root/include/cpp/headers/core/import_descriptor.h" 134 extension = "cpp" 135} 136 137abckit_standalone_canary("abckit_canary_cpp_headers_core_class") { 138 configs = [ ":abckit_canary_cpp_config" ] 139 input_file = "$abckit_root/include/cpp/headers/core/class.h" 140 extension = "cpp" 141} 142 143abckit_standalone_canary( 144 "abckit_canary_cpp_headers_core_annotation_interface_field_impl") { 145 configs = [ ":abckit_canary_cpp_config" ] 146 input_file = 147 "$abckit_root/include/cpp/headers/core/annotation_interface_field_impl.h" 148 extension = "cpp" 149} 150 151abckit_standalone_canary("abckit_canary_cpp_headers_core_export_descriptor") { 152 configs = [ ":abckit_canary_cpp_config" ] 153 input_file = "$abckit_root/include/cpp/headers/core/export_descriptor.h" 154 extension = "cpp" 155} 156 157abckit_standalone_canary("abckit_canary_cpp_headers_core_namespace") { 158 configs = [ ":abckit_canary_cpp_config" ] 159 input_file = "$abckit_root/include/cpp/headers/core/namespace.h" 160 extension = "cpp" 161} 162 163abckit_standalone_canary("abckit_canary_cpp_headers_core_namespace_impl") { 164 configs = [ ":abckit_canary_cpp_config" ] 165 input_file = "$abckit_root/include/cpp/headers/core/namespace_impl.h" 166 extension = "cpp" 167} 168 169abckit_standalone_canary( 170 "abckit_canary_cpp_headers_core_annotation_interface") { 171 configs = [ ":abckit_canary_cpp_config" ] 172 input_file = "$abckit_root/include/cpp/headers/core/annotation_interface.h" 173 extension = "cpp" 174} 175 176abckit_standalone_canary("abckit_canary_cpp_headers_instruction") { 177 configs = [ ":abckit_canary_cpp_config" ] 178 input_file = "$abckit_root/include/cpp/headers/instruction.h" 179 extension = "cpp" 180} 181 182abckit_standalone_canary("abckit_canary_cpp_headers_instruction_impl") { 183 configs = [ ":abckit_canary_cpp_config" ] 184 input_file = "$abckit_root/include/cpp/headers/instruction_impl.h" 185 extension = "cpp" 186} 187 188abckit_standalone_canary("abckit_canary_cpp_headers_file") { 189 configs = [ ":abckit_canary_cpp_config" ] 190 input_file = "$abckit_root/include/cpp/headers/file.h" 191 extension = "cpp" 192} 193 194abckit_standalone_canary("abckit_canary_cpp_headers_utils") { 195 configs = [ ":abckit_canary_cpp_config" ] 196 input_file = "$abckit_root/include/cpp/headers/utils.h" 197 extension = "cpp" 198} 199 200abckit_standalone_canary("abckit_canary_cpp_headers_value") { 201 configs = [ ":abckit_canary_cpp_config" ] 202 input_file = "$abckit_root/include/cpp/headers/value.h" 203 extension = "cpp" 204} 205 206abckit_standalone_canary("abckit_canary_cpp_headers_value_impl") { 207 configs = [ ":abckit_canary_cpp_config" ] 208 input_file = "$abckit_root/include/cpp/headers/value_impl.h" 209 extension = "cpp" 210} 211 212abckit_standalone_canary("abckit_canary_cpp_headers_graph_impl") { 213 configs = [ ":abckit_canary_cpp_config" ] 214 input_file = "$abckit_root/include/cpp/headers/graph_impl.h" 215 extension = "cpp" 216} 217 218abckit_standalone_canary("abckit_canary_cpp_headers_arkts_function") { 219 configs = [ ":abckit_canary_cpp_config" ] 220 input_file = "$abckit_root/include/cpp/headers/arkts/function.h" 221 extension = "cpp" 222} 223 224abckit_standalone_canary("abckit_canary_cpp_headers_arkts_function_impl") { 225 configs = [ ":abckit_canary_cpp_config" ] 226 input_file = "$abckit_root/include/cpp/headers/arkts/function_impl.h" 227 extension = "cpp" 228} 229 230abckit_standalone_canary( 231 "abckit_canary_cpp_headers_arkts_annotation_interface_field") { 232 configs = [ ":abckit_canary_cpp_config" ] 233 input_file = 234 "$abckit_root/include/cpp/headers/arkts/annotation_interface_field.h" 235 extension = "cpp" 236} 237 238abckit_standalone_canary( 239 "abckit_canary_cpp_headers_arkts_annotation_interface_field_impl") { 240 configs = [ ":abckit_canary_cpp_config" ] 241 input_file = 242 "$abckit_root/include/cpp/headers/arkts/annotation_interface_field_impl.h" 243 extension = "cpp" 244} 245 246abckit_standalone_canary("abckit_canary_cpp_headers_arkts_annotation_impl") { 247 configs = [ ":abckit_canary_cpp_config" ] 248 input_file = "$abckit_root/include/cpp/headers/arkts/annotation_impl.h" 249 extension = "cpp" 250} 251 252abckit_standalone_canary("abckit_canary_cpp_headers_arkts_annotation") { 253 configs = [ ":abckit_canary_cpp_config" ] 254 input_file = "$abckit_root/include/cpp/headers/arkts/annotation.h" 255 extension = "cpp" 256} 257 258abckit_standalone_canary("abckit_canary_cpp_headers_arkts_module") { 259 configs = [ ":abckit_canary_cpp_config" ] 260 input_file = "$abckit_root/include/cpp/headers/arkts/module.h" 261 extension = "cpp" 262} 263 264abckit_standalone_canary("abckit_canary_cpp_headers_arkts_module_impl") { 265 configs = [ ":abckit_canary_cpp_config" ] 266 input_file = "$abckit_root/include/cpp/headers/arkts/module_impl.h" 267 extension = "cpp" 268} 269 270abckit_standalone_canary("abckit_canary_cpp_headers_arkts_annotation_element") { 271 configs = [ ":abckit_canary_cpp_config" ] 272 input_file = "$abckit_root/include/cpp/headers/arkts/annotation_element.h" 273 extension = "cpp" 274} 275 276abckit_standalone_canary("abckit_canary_cpp_headers_arkts_import_descriptor") { 277 configs = [ ":abckit_canary_cpp_config" ] 278 input_file = "$abckit_root/include/cpp/headers/arkts/import_descriptor.h" 279 extension = "cpp" 280} 281 282abckit_standalone_canary( 283 "abckit_canary_cpp_headers_arkts_import_descriptor_impl") { 284 configs = [ ":abckit_canary_cpp_config" ] 285 input_file = "$abckit_root/include/cpp/headers/arkts/import_descriptor_impl.h" 286 extension = "cpp" 287} 288 289abckit_standalone_canary("abckit_canary_cpp_headers_arkts_class") { 290 configs = [ ":abckit_canary_cpp_config" ] 291 input_file = "$abckit_root/include/cpp/headers/arkts/class.h" 292 extension = "cpp" 293} 294 295abckit_standalone_canary("abckit_canary_cpp_headers_arkts_class_impl") { 296 configs = [ ":abckit_canary_cpp_config" ] 297 input_file = "$abckit_root/include/cpp/headers/arkts/class_impl.h" 298 extension = "cpp" 299} 300 301abckit_standalone_canary("abckit_canary_cpp_headers_arkts_export_descriptor") { 302 configs = [ ":abckit_canary_cpp_config" ] 303 input_file = "$abckit_root/include/cpp/headers/arkts/export_descriptor.h" 304 extension = "cpp" 305} 306 307abckit_standalone_canary( 308 "abckit_canary_cpp_headers_arkts_export_descriptor_impl") { 309 configs = [ ":abckit_canary_cpp_config" ] 310 input_file = "$abckit_root/include/cpp/headers/arkts/export_descriptor_impl.h" 311 extension = "cpp" 312} 313 314abckit_standalone_canary("abckit_canary_cpp_headers_arkts_namespace") { 315 configs = [ ":abckit_canary_cpp_config" ] 316 input_file = "$abckit_root/include/cpp/headers/arkts/namespace.h" 317 extension = "cpp" 318} 319 320abckit_standalone_canary("abckit_canary_cpp_headers_arkts_namespace_impl") { 321 configs = [ ":abckit_canary_cpp_config" ] 322 input_file = "$abckit_root/include/cpp/headers/arkts/namespace_impl.h" 323 extension = "cpp" 324} 325 326abckit_standalone_canary( 327 "abckit_canary_cpp_headers_arkts_annotation_element_impl") { 328 configs = [ ":abckit_canary_cpp_config" ] 329 input_file = 330 "$abckit_root/include/cpp/headers/arkts/annotation_element_impl.h" 331 extension = "cpp" 332} 333 334abckit_standalone_canary( 335 "abckit_canary_cpp_headers_arkts_annotation_interface") { 336 configs = [ ":abckit_canary_cpp_config" ] 337 input_file = "$abckit_root/include/cpp/headers/arkts/annotation_interface.h" 338 extension = "cpp" 339} 340 341abckit_standalone_canary( 342 "abckit_canary_cpp_headers_arkts_annotation_interface_impl") { 343 configs = [ ":abckit_canary_cpp_config" ] 344 input_file = 345 "$abckit_root/include/cpp/headers/arkts/annotation_interface_impl.h" 346 extension = "cpp" 347} 348 349abckit_standalone_canary("abckit_canary_cpp_headers_basic_block") { 350 configs = [ ":abckit_canary_cpp_config" ] 351 input_file = "$abckit_root/include/cpp/headers/basic_block.h" 352 extension = "cpp" 353} 354 355abckit_standalone_canary("abckit_canary_cpp_headers_basic_block_impl") { 356 configs = [ ":abckit_canary_cpp_config" ] 357 input_file = "$abckit_root/include/cpp/headers/basic_block_impl.h" 358 extension = "cpp" 359} 360 361abckit_standalone_canary("abckit_canary_cpp_headers_literal") { 362 configs = [ ":abckit_canary_cpp_config" ] 363 input_file = "$abckit_root/include/cpp/headers/literal.h" 364 extension = "cpp" 365} 366 367abckit_standalone_canary("abckit_canary_cpp_headers_config") { 368 configs = [ ":abckit_canary_cpp_config" ] 369 input_file = "$abckit_root/include/cpp/headers/config.h" 370 extension = "cpp" 371} 372 373abckit_standalone_canary("abckit_canary_cpp_headers_file_impl") { 374 configs = [ ":abckit_canary_cpp_config" ] 375 input_file = "$abckit_root/include/cpp/headers/file_impl.h" 376 extension = "cpp" 377} 378 379abckit_standalone_canary("abckit_canary_cpp_headers_type") { 380 configs = [ ":abckit_canary_cpp_config" ] 381 input_file = "$abckit_root/include/cpp/headers/type.h" 382 extension = "cpp" 383} 384 385abckit_standalone_canary("abckit_canary_cpp_headers_dynamic_isa") { 386 configs = [ ":abckit_canary_cpp_config" ] 387 input_file = "$abckit_root/include/cpp/headers/dynamic_isa.h" 388 extension = "cpp" 389} 390 391abckit_standalone_canary("abckit_canary_cpp_headers_base_classes") { 392 configs = [ ":abckit_canary_cpp_config" ] 393 input_file = "$abckit_root/include/cpp/headers/base_classes.h" 394 extension = "cpp" 395} 396 397abckit_standalone_canary("abckit_canary_cpp_headers_base_concepts") { 398 configs = [ ":abckit_canary_cpp_config" ] 399 input_file = "$abckit_root/include/cpp/headers/base_concepts.h" 400 extension = "cpp" 401} 402 403abckit_standalone_canary("abckit_canary_cpp_headers_literal_array") { 404 configs = [ ":abckit_canary_cpp_config" ] 405 input_file = "$abckit_root/include/cpp/headers/literal_array.h" 406 extension = "cpp" 407} 408 409abckit_standalone_canary("abckit_canary_cpp_headers_dynamic_isa_impl") { 410 configs = [ ":abckit_canary_cpp_config" ] 411 input_file = "$abckit_root/include/cpp/headers/dynamic_isa_impl.h" 412 extension = "cpp" 413} 414 415abckit_standalone_canary("abckit_canary_cpp_headers_literal_impl") { 416 configs = [ ":abckit_canary_cpp_config" ] 417 input_file = "$abckit_root/include/cpp/headers/literal_impl.h" 418 extension = "cpp" 419} 420 421abckit_standalone_canary("abckit_canary_cpp_abckit_cpp") { 422 configs = [ ":abckit_canary_cpp_config" ] 423 input_file = "$abckit_root/include/cpp/abckit_cpp.h" 424 extension = "cpp" 425} 426 427abckit_standalone_canary("abckit_canary_cpp_hash_specializations") { 428 configs = [ ":abckit_canary_cpp_config" ] 429 input_file = "$abckit_root/include/cpp/headers/hash_specializations.h" 430 extension = "cpp" 431} 432 433abckit_standalone_canary("abckit_canary_cpp_headers_core_field") { 434 configs = [ ":abckit_canary_cpp_config" ] 435 input_file = "$abckit_root/src/include_v2/cpp/headers/core/field.h" 436 extension = "cpp" 437} 438 439abckit_standalone_canary("abckit_canary_cpp_headers_arkts_field") { 440 configs = [ ":abckit_canary_cpp_config" ] 441 input_file = "$abckit_root/src/include_v2/cpp/headers/arkts/field.h" 442 extension = "cpp" 443} 444 445group("abckit_canary_cpp_standalone") { 446 deps = [ 447 ":abckit_canary_cpp_abckit_cpp", 448 ":abckit_canary_cpp_hash_specializations", 449 ":abckit_canary_cpp_headers_arkts_annotation", 450 ":abckit_canary_cpp_headers_arkts_annotation_element", 451 ":abckit_canary_cpp_headers_arkts_annotation_element_impl", 452 ":abckit_canary_cpp_headers_arkts_annotation_impl", 453 ":abckit_canary_cpp_headers_arkts_annotation_interface", 454 ":abckit_canary_cpp_headers_arkts_annotation_interface_field", 455 ":abckit_canary_cpp_headers_arkts_annotation_interface_field_impl", 456 ":abckit_canary_cpp_headers_arkts_annotation_interface_impl", 457 ":abckit_canary_cpp_headers_arkts_class", 458 ":abckit_canary_cpp_headers_arkts_class_impl", 459 ":abckit_canary_cpp_headers_arkts_export_descriptor", 460 ":abckit_canary_cpp_headers_arkts_export_descriptor_impl", 461 ":abckit_canary_cpp_headers_arkts_field", 462 ":abckit_canary_cpp_headers_arkts_function", 463 ":abckit_canary_cpp_headers_arkts_function_impl", 464 ":abckit_canary_cpp_headers_arkts_import_descriptor", 465 ":abckit_canary_cpp_headers_arkts_import_descriptor_impl", 466 ":abckit_canary_cpp_headers_arkts_module", 467 ":abckit_canary_cpp_headers_arkts_module_impl", 468 ":abckit_canary_cpp_headers_arkts_namespace", 469 ":abckit_canary_cpp_headers_arkts_namespace_impl", 470 ":abckit_canary_cpp_headers_base_classes", 471 ":abckit_canary_cpp_headers_base_concepts", 472 ":abckit_canary_cpp_headers_basic_block", 473 ":abckit_canary_cpp_headers_basic_block_impl", 474 ":abckit_canary_cpp_headers_config", 475 ":abckit_canary_cpp_headers_core_annotation", 476 ":abckit_canary_cpp_headers_core_annotation_element", 477 ":abckit_canary_cpp_headers_core_annotation_element_impl", 478 ":abckit_canary_cpp_headers_core_annotation_impl", 479 ":abckit_canary_cpp_headers_core_annotation_interface", 480 ":abckit_canary_cpp_headers_core_annotation_interface_field", 481 ":abckit_canary_cpp_headers_core_annotation_interface_field_impl", 482 ":abckit_canary_cpp_headers_core_annotation_interface_impl", 483 ":abckit_canary_cpp_headers_core_class", 484 ":abckit_canary_cpp_headers_core_class_impl", 485 ":abckit_canary_cpp_headers_core_export_descriptor", 486 ":abckit_canary_cpp_headers_core_export_descriptor_impl", 487 ":abckit_canary_cpp_headers_core_field", 488 ":abckit_canary_cpp_headers_core_function", 489 ":abckit_canary_cpp_headers_core_function_impl", 490 ":abckit_canary_cpp_headers_core_import_descriptor", 491 ":abckit_canary_cpp_headers_core_import_descriptor_impl", 492 ":abckit_canary_cpp_headers_core_module", 493 ":abckit_canary_cpp_headers_core_module_impl", 494 ":abckit_canary_cpp_headers_core_namespace", 495 ":abckit_canary_cpp_headers_core_namespace_impl", 496 ":abckit_canary_cpp_headers_dynamic_isa", 497 ":abckit_canary_cpp_headers_dynamic_isa_impl", 498 ":abckit_canary_cpp_headers_file", 499 ":abckit_canary_cpp_headers_file_impl", 500 ":abckit_canary_cpp_headers_graph", 501 ":abckit_canary_cpp_headers_graph_impl", 502 ":abckit_canary_cpp_headers_instruction", 503 ":abckit_canary_cpp_headers_instruction_impl", 504 ":abckit_canary_cpp_headers_literal", 505 ":abckit_canary_cpp_headers_literal_array", 506 ":abckit_canary_cpp_headers_literal_impl", 507 ":abckit_canary_cpp_headers_type", 508 ":abckit_canary_cpp_headers_utils", 509 ":abckit_canary_cpp_headers_value", 510 ":abckit_canary_cpp_headers_value_impl", 511 ] 512} 513