skia2/third_party/angle2/BUILD.gn

147 lines
3.6 KiB
Plaintext
Raw Normal View History

# Copyright 2016 Google Inc.
#
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
declare_args() {
}
angle_root = "../externals/angle2"
import("../third_party.gni")
import("$angle_root/src/compiler.gni")
import("$angle_root/src/libGLESv2.gni")
third_party("angle2") {
public_include_dirs = [ "$angle_root/include" ]
deps = [
":libEGL",
":libGLESv2",
]
}
config("common") {
defines = [
"ANGLE_ENABLE_ESSL",
"ANGLE_ENABLE_GLSL",
"ANGLE_ENABLE_HLSL",
"ANGLE_ENABLE_OPENGL",
"EGL_EGLEXT_PROTOTYPES",
"GL_GLEXT_PROTOTYPES",
]
include_dirs = [
"$root_gen_dir/angle2",
"$angle_root/include",
"$angle_root/src",
"$angle_root/src/common/third_party/base",
"$angle_root/src/third_party/khronos",
]
cflags_cc = []
assert(is_linux || is_win) # TODO: is_mac?
if (is_linux) {
defines += [
"ANGLE_USE_X11",
"GL_APICALL=__attribute__((visibility(\"default\")))",
"GL_API=__attribute__((visibility(\"default\")))",
"EGLAPI=__attribute__((visibility(\"default\")))",
]
cflags_cc += [ "-std=c++14" ]
} else if (is_win) {
defines += [
"ANGLE_ENABLE_D3D11",
"ANGLE_ENABLE_D3D9",
"GL_APICALL=",
"GL_API=",
"EGLAPI=",
]
# Allow noexcept, even though we build without exceptions
cflags_cc += [ "/wd4577" ]
if (is_clang) {
cflags_cc += [
# utilities.cpp includes an 'unsigned long' <= UINT_MAX check
"-Wno-tautological-constant-compare",
# With distributed Windows builds, files may lose their case during copy, causing
# case-sensitivity mismatch on remote machines.
"-Wno-nonportable-include-path",
]
}
}
}
copy("commit_id") {
sources = [
"$angle_root/src/commit.h",
]
outputs = [
"$root_gen_dir/angle2/id/commit.h",
]
}
shared_library("libGLESv2") {
configs += [ ":common" ]
configs -= [ "//gn:warnings" ]
defines = [
"LIBANGLE_IMPLEMENTATION",
"LIBGLESV2_IMPLEMENTATION",
]
deps = [
":commit_id",
]
libs = []
sources = rebase_path(
angle_preprocessor_sources + angle_translator_sources +
angle_translator_essl_sources + angle_translator_glsl_sources +
angle_translator_hlsl_sources + libangle_sources +
libangle_common_sources + libangle_image_util_sources +
libglesv2_sources + libangle_gl_sources +
Roll third_party/externals/angle2 a54104803d72..52d861bd49cc (8 commits) https://chromium.googlesource.com/angle/angle.git/+log/a54104803d72..52d861bd49cc git log a54104803d72..52d861bd49cc --date=short --no-merges --format='%ad %ae %s' 2019-02-02 syoussefi@chromium.org Disable -Wextra-semi-stmt 2019-02-02 ianelliott@google.com Implement EGL_ANDROID_recordable for Vulkan back-end. 2019-02-01 jonahr@google.com Fix unnecessary copy of for loop variables in ANGLE 2019-02-01 syoussefi@chromium.org Use env variable to select default backend 2019-02-01 jmadill@chromium.org Enable -Wextra-semi and -Wextra-semi-stmt. 2019-02-01 syoussefi@chromium.org Initial support for compiler AST validation 2019-02-01 jmadill@chromium.org Roll glslang. 2019-02-01 ckulakowski@opera.com Fix for linking of non-component angle_unittests Created with: gclient setdep -r third_party/externals/angle2@52d861bd49cc The AutoRoll server is located here: https://autoroll.skia.org/r/angle-skia-autoroll Documentation for the AutoRoller is here: https://skia.googlesource.com/buildbot/+/master/autoroll/README.md If the roll is causing failures, please contact the current sheriff, who should be CC'd on the roll, and stop the roller if necessary. CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE TBR=borenet@google.com Change-Id: I008df064f6301658404c371cf47a5656d8c11621 Reviewed-on: https://skia-review.googlesource.com/c/188852 Reviewed-by: Eric Boren <borenet@google.com> Reviewed-by: Mike Klein <mtklein@google.com> Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com> Commit-Queue: Mike Klein <mtklein@google.com> Commit-Queue: Eric Boren <borenet@google.com>
2019-02-07 18:05:06 +00:00
angle_system_utils_sources + xxhash_sources,
".",
angle_root)
Roll third_party/externals/angle2/ 5d2ccc534..a00ef3144 (10 commits) Manual roll including GN fixes https://chromium.googlesource.com/angle/angle.git/+log/5d2ccc534d26..a00ef3144f70 $ git log 5d2ccc534..a00ef3144 --date=short --no-merges --format='%ad %ae %s' 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 cwallez DisplayGLX: Close the X display if we own it. 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 geofflang DEQP: Print not supported messages from tests. 2018-05-14 geofflang Add dEQP EGL test expectations for Linux and Android. 2018-05-10 jmadill Vulkan: Implement masked color clear with depth. 2018-05-14 jmadill Fix libGLESv2 wrong .def file. 2018-05-14 jmadill Fix warnings from size_t conversions. 2018-04-23 lfy GLES1: Renderer (minimal) CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE TBR=herb@google.com Change-Id: I0ed2b9c8824b7833a4a0234204cb849805717daa Reviewed-on: https://skia-review.googlesource.com/128322 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-05-15 14:43:08 +00:00
if (is_win) {
sources += [ "$angle_root/src/libGLESv2/libGLESv2_autogen.def" ]
}
if (is_linux) {
libs += [
"X11",
"Xi",
"Xext",
]
sources += rebase_path(libangle_gl_glx_sources, ".", angle_root) +
[ "$angle_root/src/third_party/libXNVCtrl/NVCtrl.c" ]
} else if (is_win) {
defines += [
# TODO: ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES
]
sources +=
rebase_path(libangle_gl_wgl_sources + libangle_d3d_shared_sources +
libangle_d3d9_sources + libangle_d3d11_sources +
libangle_d3d11_win32_sources,
".",
angle_root)
libs += [
"d3d9.lib",
"dxguid.lib",
"gdi32.lib",
"user32.lib",
]
deps += [
# TODO: copy_compiler_dll?
]
}
}
shared_library("libEGL") {
configs += [ ":common" ]
configs -= [ "//gn:warnings" ]
defines = [ "LIBEGL_IMPLEMENTATION" ]
deps = [
":libGLESv2",
]
sources = rebase_path(libegl_sources, ".", angle_root)
Roll third_party/externals/angle2/ 5d2ccc534..a00ef3144 (10 commits) Manual roll including GN fixes https://chromium.googlesource.com/angle/angle.git/+log/5d2ccc534d26..a00ef3144f70 $ git log 5d2ccc534..a00ef3144 --date=short --no-merges --format='%ad %ae %s' 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 cwallez DisplayGLX: Close the X display if we own it. 2018-05-14 geofflang Add more dEQP EGL expectations for Linux and Android. 2018-05-14 geofflang DEQP: Print not supported messages from tests. 2018-05-14 geofflang Add dEQP EGL test expectations for Linux and Android. 2018-05-10 jmadill Vulkan: Implement masked color clear with depth. 2018-05-14 jmadill Fix libGLESv2 wrong .def file. 2018-05-14 jmadill Fix warnings from size_t conversions. 2018-04-23 lfy GLES1: Renderer (minimal) CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE TBR=herb@google.com Change-Id: I0ed2b9c8824b7833a4a0234204cb849805717daa Reviewed-on: https://skia-review.googlesource.com/128322 Reviewed-by: Brian Osman <brianosman@google.com> Reviewed-by: Mike Klein <mtklein@chromium.org> Commit-Queue: Brian Osman <brianosman@google.com> Commit-Queue: Mike Klein <mtklein@chromium.org>
2018-05-15 14:43:08 +00:00
if (is_win) {
sources += [ "$angle_root/src/libEGL/libEGL.def" ]
}
}