| # Copyright 2015 The Chromium Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| import("//testing/test.gni") |
| |
| declare_args() { |
| internal_khronos_glcts_tests = false |
| } |
| |
| if (internal_khronos_glcts_tests) { |
| khronos_glcts_gypi = |
| exec_script("//build/gypi_to_gn.py", |
| [ |
| rebase_path("khronos_glcts.gypi"), |
| "--replace=<(DEPTH)=../..", |
| "--replace=<(SHARED_INTERMEDIATE_DIR)=$target_gen_dir", |
| ], |
| "scope", |
| [ "khronos_glcts.gypi" ]) |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:khronos_glcts_test_windowless |
| copy("glcts_resources") { |
| sources = khronos_glcts_gypi.glcts_data_dirs |
| outputs = [ |
| "$root_out_dir/khronos_glcts_data/gl_cts/{{source_file_part}}", |
| ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:khronos_glcts_test_windowless |
| copy("glcts_gtf_resources") { |
| sources = khronos_glcts_gypi.glcts_gtf_data_dirs + |
| khronos_glcts_gypi.glcts_gtf_runfiles |
| outputs = [ |
| "$root_out_dir/khronos_glcts_data/gl_cts/GTF/{{source_file_part}}", |
| ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:khronos_glcts_test |
| action("generate_khronos_glcts_tests") { |
| script = "generate_khronos_glcts_tests.py" |
| sources = [ "khronos_glcts_test.h" ] + khronos_glcts_gypi.glcts_gtf_runfiles |
| outputs = [ |
| "$target_gen_dir/khronos_glcts_test_autogen.cc", |
| ] |
| args = [ "--outdir=" + rebase_path("$target_gen_dir") ] + |
| khronos_glcts_gypi.glcts_gtf_runfiles |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_defaults.gypi:target_defaults |
| config("defaults_config") { |
| defines = [ |
| "DEQP_TARGET_NAME=\"chrome-gpu-command-buffer\"", |
| "DEQP_SUPPORT_GLES2=1", |
| "DEQP_SUPPORT_EGL=1", |
| "GTF_API=GTF_GLES20", |
| ] |
| |
| if (is_linux) { |
| defines += [ "_XOPEN_SOURCE=500" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:debase |
| config("debase_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/debase" ] |
| } |
| source_set("debase") { |
| sources = khronos_glcts_gypi.debase_srcs |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":debase_config" ] |
| |
| if (is_linux) { |
| cflags_c = [ "-Wno-implicit-function-declaration" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:depool |
| config("depool_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/depool" ] |
| } |
| source_set("depool") { |
| sources = khronos_glcts_gypi.depool_srcs |
| |
| deps = [ |
| ":debase", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":depool_config" ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:dethread |
| config("dethread_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/dethread" ] |
| } |
| source_set("dethread") { |
| sources = khronos_glcts_gypi.dethread_srcs |
| |
| deps = [ |
| ":debase", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":dethread_config" ] |
| |
| if (is_linux) { |
| sources += khronos_glcts_gypi.dethread_unix_srcs |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:deutil |
| config("deutil_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/deutil" ] |
| } |
| source_set("deutil") { |
| sources = khronos_glcts_gypi.deutil_srcs |
| |
| deps = [ |
| ":debase", |
| ":depool", |
| ":dethread", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":deutil_config" ] |
| |
| if (is_linux) { |
| cflags_c = [ "-Wno-string-conversion" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:decpp |
| config("decpp_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/decpp" ] |
| } |
| source_set("decpp") { |
| sources = khronos_glcts_gypi.decpp_srcs |
| |
| deps = [ |
| ":debase", |
| ":depool", |
| ":dethread", |
| ":deutil", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":decpp_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:delibs |
| group("delibs") { |
| public_deps = [ |
| ":debase", |
| ":decpp", |
| ":depool", |
| ":dethread", |
| ":deutil", |
| ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:qphelper |
| config("qphelper_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/qphelper" ] |
| } |
| source_set("qphelper") { |
| sources = khronos_glcts_gypi.qphelper_srcs |
| |
| defines = [ "QP_SUPPORT_PNG" ] |
| |
| deps = [ |
| ":delibs", |
| "//third_party/libpng:libpng", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":qphelper_config" ] |
| |
| if (is_linux) { |
| cflags_c = [ "-Wno-string-conversion" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:tcutil |
| config("tcutil_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/common" ] |
| } |
| source_set("tcutil") { |
| sources = khronos_glcts_gypi.tcutil_srcs |
| |
| deps = [ |
| ":delibs", |
| "//third_party/libpng:libpng", |
| ] |
| |
| public_deps = [ |
| ":qphelper", |
| ] |
| |
| include_dirs = [ "//third_party/khronos_glcts/framework/delibs/libpng" ] #png.hpp |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":tcutil_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| cflags_cc = [ "-Wno-int-to-pointer-cast" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:glwrapper |
| config("glwrapper_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/opengl/wrapper" ] |
| } |
| source_set("glwrapper") { |
| sources = khronos_glcts_gypi.glwrapper_srcs |
| |
| deps = [ |
| ":delibs", |
| "//gpu/command_buffer/client:gles2_c_lib_nocheck", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glwrapper_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:glutil |
| config("glutil_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/opengl" ] |
| } |
| source_set("glutil") { |
| sources = khronos_glcts_gypi.glutil_srcs |
| |
| public_deps = [ |
| ":glwrapper", |
| ] |
| |
| deps = [ |
| ":delibs", |
| ":tcutil", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glutil_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:tcutil_egl |
| config("tcutil_egl_config") { |
| include_dirs = [ "//third_party/khronos_glcts/framework/egl" ] |
| } |
| source_set("tcutil_egl") { |
| sources = khronos_glcts_gypi.tcutil_egl_srcs |
| |
| deps = [ |
| ":delibs", |
| ":glwrapper", |
| ":tcutil", |
| "//gpu/gles2_conform_support/egl", |
| ] |
| |
| include_dirs = [ "//third_party/khronos_glcts/framework/opengl" ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ |
| ":tcutil_egl_config", |
| "//third_party/khronos:khronos_headers", |
| ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| cflags_cc = [ "-Wno-int-to-void-pointer-cast" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_framework.gyp:khronos_glcts_framework |
| group("khronos_glcts_framework") { |
| public_deps = [ |
| ":delibs", |
| ":glutil", |
| ":qphelper", |
| ":tcutil", |
| ":tcutil_egl", |
| ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_cts.gyp:glcts_common |
| config("glcts_common_config") { |
| include_dirs = [ "//third_party/khronos_glcts/cts/common" ] |
| } |
| source_set("glcts_common") { |
| sources = khronos_glcts_gypi.glcts_common_sources |
| |
| deps = [ |
| ":delibs", |
| ":glutil", |
| ":tcutil", |
| ":tcutil_egl", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glcts_common_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| cflags_cc = [ "-Wno-string-conversion" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_cts.gyp:glcts_gtf_wrapper |
| config("glcts_gtf_wrapper_config") { |
| include_dirs = [ "//third_party/khronos_glcts/cts/gtf" ] |
| } |
| source_set("glcts_gtf_wrapper") { |
| sources = khronos_glcts_gypi.glcts_gtf_wrapper_srcs |
| |
| deps = [ |
| ":delibs", |
| ":glcts_common", |
| ":glutil", |
| ":tcutil", |
| ":tcutil_egl", |
| ] |
| |
| include_dirs = [ "//third_party/khronos_glcts/GTF_ES/glsl/GTF/Source" ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glcts_gtf_wrapper_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_gtf.gyp:gtf_es |
| config("gtf_es_config") { |
| include_dirs = [ "//third_party/khronos_glcts/GTF_ES/glsl/GTF/Source" ] |
| } |
| source_set("gtf_es") { |
| sources = |
| khronos_glcts_gypi.gtf_core_srcs + khronos_glcts_gypi.gtf_gl_core_srcs + |
| khronos_glcts_gypi.gtf_gles2_srcs + |
| khronos_glcts_gypi.gtf_gles2_es_only_srcs |
| |
| deps = [ |
| ":debase", |
| ":glcts_gtf_wrapper", |
| "//third_party/expat", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":gtf_es_config" ] |
| |
| if (is_linux) { |
| cflags_c = [ |
| "-Wno-pointer-sign", |
| "-Wno-incompatible-pointer-types", |
| "-Wno-return-type", |
| "-Wno-parentheses-equality", |
| "-Wno-tautological-compare", |
| ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_cts.gyp:glcts_gtf |
| config("glcts_gtf_config") { |
| include_dirs = [ "//third_party/khronos_glcts/cts/gtf" ] |
| } |
| source_set("glcts_gtf") { |
| sources = khronos_glcts_gypi.glcts_gtf_srcs |
| |
| deps = [ |
| ":delibs", |
| ":glcts_common", |
| ":glcts_gtf_wrapper", |
| ":glutil", |
| ":gtf_es", |
| ":tcutil", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glcts_gtf_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_cts.gyp:glcts_es2 |
| config("glcts_es2_config") { |
| include_dirs = [ "//third_party/khronos_glcts/cts/gles2" ] |
| } |
| source_set("glcts_es2") { |
| sources = khronos_glcts_gypi.glcts_es2_srcs |
| |
| public_deps = [ |
| ":glcts_common", |
| ] |
| |
| deps = [ |
| ":delibs", |
| ":glcts_gtf", |
| ":glutil", |
| ":tcutil", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| |
| public_configs = [ ":glcts_es2_config" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:tcutil_platform_windowless |
| source_set("tcutil_platform_windowless") { |
| sources = [ |
| "native/egl_native_windowless.cc", |
| ] |
| |
| deps = [ |
| ":khronos_glcts_framework", |
| ] |
| |
| configs -= [ "//build/config/compiler:no_rtti" ] |
| configs += [ "//build/config/compiler:rtti" ] |
| } |
| |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:khronos_glcts_test_windowless |
| executable("khronos_glcts_test_windowless") { |
| sources = [ |
| "//third_party/khronos_glcts/cts/glcTestPackageEntry.cpp", |
| "//third_party/khronos_glcts/cts/glcTestPackageRegistry.cpp", |
| "//third_party/khronos_glcts/cts/glcTestPackageRegistry.hpp", |
| "native/main.cc", |
| ] |
| |
| deps = [ |
| ":glcts_es2", |
| ":glcts_gtf_resources", |
| ":glcts_resources", |
| ":khronos_glcts_framework", |
| ":tcutil_platform_windowless", |
| ] |
| |
| configs += [ ":defaults_config" ] |
| configs -= [ "//build/config/compiler:chromium_code" ] |
| configs += [ "//build/config/compiler:no_chromium_code" ] |
| |
| if (is_linux) { |
| configs -= [ "//build/config/gcc:no_exceptions" ] |
| } |
| } |
| } |
| |
| if (!is_android) { |
| # GYP version: gpu/khronos_glcts_support/khronos_glcts_test.gyp:khronos_glcts_test |
| test("khronos_glcts_test") { |
| sources = [ |
| "khronos_glcts_test.cc", |
| ] |
| |
| deps = [ |
| "//base", |
| "//gpu", |
| "//testing/gtest", |
| ] |
| |
| data = [ |
| "khronos_glcts_test_expectations.txt", |
| ] |
| |
| if (internal_khronos_glcts_tests) { |
| sources += [ "$target_gen_dir/khronos_glcts_test_autogen.cc" ] |
| deps += [ |
| ":generate_khronos_glcts_tests", |
| ":khronos_glcts_test_windowless", |
| ] |
| } |
| } |
| } |