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_source_set("spir") { 8 # TODO: The main.cpp file #includes ../math_brute_force/function_list.cpp, which is not easily 9 # allowed. It's best to change this file to .h upstream, create a target with that include and 10 # add it to deps. In the meantime, make gn not complain about this. http://anglebug.com/42266967 11 check_includes = false 12 13 include_dirs = 14 [ "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir" ] 15 sources = [ 16 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/datagen.cpp", 17 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernelargs.cpp", 18 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/main.cpp", 19 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/run_build_test.cpp", 20 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/run_services.cpp", 21 ] 22 if (is_win) { 23 cflags = [ 24 "/GR", 25 "/EHs", 26 "/EHc", 27 ] 28 } else { 29 cflags = [ 30 "-fexceptions", 31 "-frtti", 32 ] 33 } 34 deps = [ ":copy_spir" ] 35} 36 37copy("copy_spir") { 38 sources = [ 39 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/api.zip", 40 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/atomics.zip", 41 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/basic.zip", 42 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/binary_type.zip", 43 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/commonfns.zip", 44 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/compile_and_link.zip", 45 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/conversions.zip", 46 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/enum_values.zip", 47 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/geometrics.zip", 48 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/half.zip", 49 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/images_kernel_read_write.zip", 50 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/images_samplerlessRead.zip", 51 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/integer_ops.zip", 52 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernel_attributes.zip", 53 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/kernel_image_methods.zip", 54 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/khr.csv", 55 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/math_brute_force.zip", 56 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/printf.zip", 57 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/profiling.zip", 58 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/relationals.zip", 59 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/sampler_enumeration.zip", 60 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/select.zip", 61 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/vec_align.zip", 62 "$angle_root/third_party/OpenCL-CTS/src/test_conformance/spir/vec_step.zip", 63 ] 64 outputs = [ "$root_out_dir/{{source_file_part}}" ] 65} 66