1# Copyright 2024 The ANGLE Project Authors. All rights reserved. 2# Use of this source code is governed by a BSD-style license that can be 3# found in the LICENSE file. 4 5import("//third_party/OpenCL-CTS/gn/angle_ocl_cts.gni") 6 7ocl_cts_binary("spir") { 8 include_dirs = 9 [ "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir" ] 10 sources = [ 11 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/datagen.cpp", 12 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernelargs.cpp", 13 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/main.cpp", 14 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/run_build_test.cpp", 15 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/run_services.cpp", 16 ] 17 if (is_win) { 18 cflags = [ 19 "/GR", 20 "/EHs", 21 "/EHc", 22 ] 23 } else { 24 cflags = [ 25 "-fexceptions", 26 "-frtti", 27 ] 28 } 29 deps = [ 30 ":copy_spir", 31 "$angle_root/third_party/OpenCL-CTS/gn/math_brute_force:test_brute_force", 32 ] 33} 34 35copy("copy_spir") { 36 sources = [ 37 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/api.zip", 38 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/atomics.zip", 39 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/basic.zip", 40 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/binary_type.zip", 41 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/commonfns.zip", 42 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/compile_and_link.zip", 43 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/conversions.zip", 44 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/enum_values.zip", 45 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/geometrics.zip", 46 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/half.zip", 47 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/images_kernel_read_write.zip", 48 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/images_samplerlessRead.zip", 49 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/integer_ops.zip", 50 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernel_attributes.zip", 51 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernel_image_methods.zip", 52 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/khr.csv", 53 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/math_brute_force.zip", 54 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/printf.zip", 55 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/profiling.zip", 56 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/relationals.zip", 57 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/sampler_enumeration.zip", 58 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/select.zip", 59 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/vec_align.zip", 60 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/vec_step.zip", 61 ] 62 outputs = [ "$root_out_dir/{{source_file_part}}" ] 63} 64