Index: gpu/gles2_conform_support/BUILD.gn |
diff --git a/gpu/gles2_conform_support/BUILD.gn b/gpu/gles2_conform_support/BUILD.gn |
index 66d0d8ea4f46755b89c77aa98d57a0e3f6c27c0f..c91ecb317950c7060bd74d5ae84d84d4c82edea1 100644 |
--- a/gpu/gles2_conform_support/BUILD.gn |
+++ b/gpu/gles2_conform_support/BUILD.gn |
@@ -39,7 +39,7 @@ executable("gles2_conform_support") { |
} |
if (internal_gles2_conform_tests) { |
- action("generate_gles2_conform_embedded_files") { |
+ action("generate_gles2_conform_embedded_data") { |
script = "generate_gles2_embedded_data.py" |
output = [ |
"$target_gen_dir/gles2_conform_test_embedded_data/FilesData.c", |
@@ -51,6 +51,106 @@ if (internal_gles2_conform_tests) { |
"$target_gen_dir/gles2_conform_test_embedded_data", |
] |
} |
+ gles2_conform_gypi = exec_script("//build/gypi_to_gn.py", |
+ [ rebase_path("gles2_conform_gypi") ], |
+ "scoped", |
+ [ "gles2_conform_gypi" ]) |
+ executable("gles2_conform_test_windowless") { |
+ testonly = true |
+ sources = [ |
+ # Include a dummy c++ file to force linking of libstdc++. |
+ "dummy.cc", |
+ gles2_conform_gypi.gtf_es_sources, |
+ ] |
+ defines = [ |
+ "GTF_API=GTF_GLES20", |
+ "HKEMBEDDEDFILESYSTEM", |
+ ] |
+ deps = [ |
+ ":generate_gles2_conform_embedded_data", |
+ "//gpu/gles2_conform_support/egl", |
+ "//gpu/gles2_conform_support/native:windowless", |
+ "//gpu/command_buffer/client:gles2_c_libnocheck", |
+ ] |
+ if (is_linux) { |
+ if (!is_chromeos) { |
+ deps += [ "//build/linux/system/gtk" ] |
+ |
+ if (is_clang) { |
+ cflags = [ |
+ "-Wno-array-bounds", |
+ "-Wno-implicit-function-declaration", |
+ "-Wno-incompatible-pointer-types", |
+ "-Wno-parentheses-equality", |
+ "-Wno-pointer-sign", |
+ "-Wno-return-type", |
+ "-Wno-sizeof-pointer-memaccess", |
+ "-Wno-tautological-compare", |
+ ] |
+ } |
+ } |
+ } |
+ if (is_win) { |
+ deps += [ |
+ "//third_party/angle:libEGL", |
+ "//third_party/angle:libGLESv2", |
+ ] |
+ defines = [ |
+ "EGLAPI=", |
+ "EGLAPIENTRY=", |
+ ] |
+ defines -= [ "NOMINMAX" ] |
+ cflags = [ |
+ "/wd4018", # signed/unsigned mismatch |
+ "/wd4101", # unreferenced local variable |
+ "/wd4715", # not all control paths return a value |
+ "/wd4267", # size_t/unsigned int conversion |
+ ] |
+ } |
+ if (is_mac) { |
+ defines = [ |
+ "_STDINT", |
+ "_STDINT_H", |
+ ] |
+ if (is_clang) { |
+ cflags = [ |
+ "-Wno-pointer-sign", |
+ "-Wno-array-bounds", |
+ "-Wno-sizeof-pointer-memaccess", |
+ "-Wno-implicit-function-declaration", |
+ "-Wno-logical-op-parentheses", |
+ "-Wno-tautological-compare", |
+ "-Wno-parentheses-equality", |
+ "-Wno-return-type", |
+ ] |
+ #"xcode_settings": { |
+ #"LD": "clang++", |
+ #"WARNING_CFLAGS": [ |
+ #"-Wno-pointer-sign", |
+ #"-Wno-array-bounds", |
+ #"-Wno-sizeof-pointer-memaccess", |
+ #"-Wno-implicit-function-declaration", |
+ #"-Wno-logical-op-parentheses", |
+ #"-Wno-tautological-compare", |
+ #"-Wno-parentheses-equality", |
+ #"-Wno-return-type", |
+ #], |
+ #}, |
+ } |
+ } |
+ |
+ #'run_as': { |
+ # 'conditions': [ |
+ # ['OS=="win"', { |
+ # 'action': [ |
+ # '$(TargetPath)', |
+ # '-noimagefileio', |
+ # '-run=<(DEPTH)/third_party/gles2_conform/GTF_ES/glsl/GTF/mustpass.run', |
+ # ], |
+ # }], |
+ # ], |
+ # }, |
+ } |
} |
test("gles2_conform_test") { |
@@ -62,4 +162,7 @@ test("gles2_conform_test") { |
"//gpu/config", |
"//testing/gtest", |
] |
+ if (internal_gles2_conform_tests) { |
+ deps += [ "gles2_conform_test_windowless" ] |
+ } |
} |