Gyp is dead. Long live gn.

Remove the gyp build.  The .gypi files were not renamed so that diff and
rebase would work on this change.  They will be renamed in a separate
change.

BUG=angleproject:1569

Change-Id: If8a217027633293664b820104f91a4ca5889b24e
Reviewed-on: https://chromium-review.googlesource.com/1187380
Commit-Queue: Frank Henigman <fjhenigman@chromium.org>
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Reviewed-by: Yuly Novikov <ynovikov@chromium.org>
This commit is contained in:
Frank Henigman
2018-08-21 00:04:05 -04:00
committed by Commit Bot
parent 4c3108319e
commit a7f97a27eb
33 changed files with 2955 additions and 6886 deletions

2
.gitignore vendored
View File

@@ -30,7 +30,6 @@
/third_party/gles1_conform
/third_party/glslang/src
/third_party/googletest/src
/third_party/gyp
/third_party/libpng/src
/third_party/llvm-build
/third_party/spirv-headers/src
@@ -60,4 +59,3 @@ Release_Win32/
Release_x64/
TestResults.qpa
tools/clang
tools/gyp

4
.gn
View File

@@ -28,12 +28,12 @@ check_targets = []
# to force additional review for new uses of exec_script, which is strongly
# discouraged except for gypi_to_gn calls.
exec_script_whitelist = angle_dotfile_settings.exec_script_whitelist +
build_dotfile_settings.exec_script_whitelist + [
build_dotfile_settings.exec_script_whitelist +
[
"//build/config/sysroot.gni",
"//build/config/win/BUILD.gn",
"//build/config/win/visual_studio_version.gni",
"//build/gn_helpers.py",
"//build/gypi_to_gn.py",
]
default_args = {

139
BUILD.gn
View File

@@ -49,15 +49,8 @@ angle_git_is_present = exec_script("src/commit_id.py",
angle_use_commit_id = angle_git_is_present == 1
gles_gypi = exec_script("//build/gypi_to_gn.py",
[ rebase_path("src/libGLESv2.gypi") ],
"scope",
[ "src/libGLESv2.gypi" ])
compiler_gypi = exec_script("//build/gypi_to_gn.py",
[ rebase_path("src/compiler.gypi") ],
"scope",
[ "src/compiler.gypi" ])
import("src/libGLESv2.gypi")
import("src/compiler.gypi")
# This config is exported to dependent targets (and also applied to internal
# ones).
@@ -132,11 +125,11 @@ angle_undefine_configs = [ "//build/config/compiler:default_include_dirs" ]
# Holds the shared includes so we only need to list them once.
source_set("includes") {
sources = rebase_path(gles_gypi.libangle_includes, ".", "src")
sources = rebase_path(libangle_includes, ".", "src")
}
static_library("preprocessor") {
sources = rebase_path(compiler_gypi.angle_preprocessor_sources, ".", "src")
sources = rebase_path(angle_preprocessor_sources, ".", "src")
configs -= angle_undefine_configs
configs += [
@@ -173,18 +166,18 @@ config("angle_common_config") {
}
static_library("angle_common") {
sources = rebase_path(gles_gypi.libangle_common_sources, ".", "src")
sources = rebase_path(libangle_common_sources, ".", "src")
if (is_linux || is_android || is_fuchsia) {
sources += rebase_path(gles_gypi.libangle_common_linux_sources, ".", "src")
sources += rebase_path(libangle_common_linux_sources, ".", "src")
}
if (is_mac) {
sources += rebase_path(gles_gypi.libangle_common_mac_sources, ".", "src")
sources += rebase_path(libangle_common_mac_sources, ".", "src")
}
if (is_win) {
sources += rebase_path(gles_gypi.libangle_common_win_sources, ".", "src")
sources += rebase_path(libangle_common_win_sources, ".", "src")
}
configs -= angle_undefine_configs
@@ -211,7 +204,7 @@ config("angle_image_util_config") {
}
static_library("angle_image_util") {
sources = rebase_path(gles_gypi.libangle_image_util_sources, ".", "src")
sources = rebase_path(libangle_image_util_sources, ".", "src")
configs -= angle_undefine_configs
configs += [
@@ -246,7 +239,7 @@ static_library("angle_gpu_info_util") {
":angle_common",
]
sources = rebase_path(gles_gypi.libangle_gpu_info_util_sources, ".", "src")
sources = rebase_path(libangle_gpu_info_util_sources, ".", "src")
deps = []
libs = []
defines = []
@@ -256,19 +249,16 @@ static_library("angle_gpu_info_util") {
}
if (is_win) {
sources +=
rebase_path(gles_gypi.libangle_gpu_info_util_win_sources, ".", "src")
sources += rebase_path(libangle_gpu_info_util_win_sources, ".", "src")
libs += [ "setupapi.lib" ]
defines += [ "GPU_INFO_USE_SETUPAPI" ]
}
if (is_linux) {
sources +=
rebase_path(gles_gypi.libangle_gpu_info_util_linux_sources, ".", "src")
sources += rebase_path(libangle_gpu_info_util_linux_sources, ".", "src")
if (use_x11) {
sources +=
rebase_path(gles_gypi.libangle_gpu_info_util_x11_sources, ".", "src")
sources += rebase_path(libangle_gpu_info_util_x11_sources, ".", "src")
deps += [ "src/third_party/libXNVCtrl:libXNVCtrl" ]
defines += [ "GPU_INFO_USE_X11" ]
libs += [
@@ -280,15 +270,13 @@ static_library("angle_gpu_info_util") {
}
if (use_libpci) {
sources +=
rebase_path(gles_gypi.libangle_gpu_info_util_libpci_sources, ".", "src")
sources += rebase_path(libangle_gpu_info_util_libpci_sources, ".", "src")
defines += [ "GPU_INFO_USE_LIBPCI" ]
libs += [ "pci" ]
}
if (is_mac) {
sources +=
rebase_path(gles_gypi.libangle_gpu_info_util_mac_sources, ".", "src")
sources += rebase_path(libangle_gpu_info_util_mac_sources, ".", "src")
libs += [
"IOKit.framework",
"CoreFoundation.framework",
@@ -298,31 +286,26 @@ static_library("angle_gpu_info_util") {
}
static_library("translator") {
sources = rebase_path(compiler_gypi.angle_translator_sources, ".", "src")
sources = rebase_path(angle_translator_sources, ".", "src")
defines = []
if (angle_enable_essl || use_fuzzing_engine) {
sources +=
rebase_path(compiler_gypi.angle_translator_essl_sources, ".", "src")
sources += rebase_path(angle_translator_essl_sources, ".", "src")
defines += [ "ANGLE_ENABLE_ESSL" ]
}
if (angle_enable_glsl || use_fuzzing_engine) {
sources +=
rebase_path(compiler_gypi.angle_translator_glsl_sources, ".", "src")
sources += rebase_path(angle_translator_glsl_sources, ".", "src")
defines += [ "ANGLE_ENABLE_GLSL" ]
}
if (angle_enable_hlsl || use_fuzzing_engine) {
sources +=
rebase_path(compiler_gypi.angle_translator_hlsl_sources, ".", "src")
sources += rebase_path(angle_translator_hlsl_sources, ".", "src")
defines += [ "ANGLE_ENABLE_HLSL" ]
}
if (angle_enable_vulkan || use_fuzzing_engine) {
sources += rebase_path(compiler_gypi.angle_translator_lib_vulkan_sources,
".",
"src")
sources += rebase_path(angle_translator_lib_vulkan_sources, ".", "src")
defines += [ "ANGLE_ENABLE_VULKAN" ]
}
@@ -380,7 +363,9 @@ if (angle_use_commit_id) {
]
# commit id should depend on angle's HEAD revision
inputs = [ ".git/HEAD" ]
inputs = [
".git/HEAD",
]
args = [
"gen",
@@ -464,7 +449,7 @@ if (angle_enable_vulkan) {
}
static_library("libANGLE") {
sources = rebase_path(gles_gypi.libangle_sources, ".", "src")
sources = rebase_path(libangle_sources, ".", "src")
include_dirs = []
libs = []
@@ -486,34 +471,34 @@ static_library("libANGLE") {
# Shared D3D sources.
if (angle_enable_d3d9 || angle_enable_d3d11) {
sources += rebase_path(gles_gypi.libangle_d3d_shared_sources, ".", "src")
sources += rebase_path(libangle_d3d_shared_sources, ".", "src")
defines += [ "ANGLE_PRELOADED_D3DCOMPILER_MODULE_NAMES={ " + "\"d3dcompiler_47.dll\", \"d3dcompiler_46.dll\", \"d3dcompiler_43.dll\" }" ]
}
if (angle_enable_d3d9) {
sources += rebase_path(gles_gypi.libangle_d3d9_sources, ".", "src")
sources += rebase_path(libangle_d3d9_sources, ".", "src")
libs += [ "d3d9.lib" ]
}
if (angle_enable_d3d11) {
sources += rebase_path(gles_gypi.libangle_d3d11_sources, ".", "src")
sources += rebase_path(gles_gypi.libangle_d3d11_win32_sources, ".", "src")
sources += rebase_path(libangle_d3d11_sources, ".", "src")
sources += rebase_path(libangle_d3d11_win32_sources, ".", "src")
libs += [ "dxguid.lib" ]
}
if (angle_enable_gl) {
sources += rebase_path(gles_gypi.libangle_gl_sources, ".", "src")
sources += rebase_path(libangle_gl_sources, ".", "src")
include_dirs += [ "src/third_party/khronos" ]
if (angle_enable_gl_null) {
sources += rebase_path(gles_gypi.libangle_gl_null_sources, ".", "src")
sources += rebase_path(libangle_gl_null_sources, ".", "src")
}
if (is_win) {
sources += rebase_path(gles_gypi.libangle_gl_wgl_sources, ".", "src")
sources += rebase_path(libangle_gl_wgl_sources, ".", "src")
}
if (use_x11) {
sources += rebase_path(gles_gypi.libangle_gl_glx_sources, ".", "src")
sources += rebase_path(libangle_gl_glx_sources, ".", "src")
deps += [ "src/third_party/libXNVCtrl:libXNVCtrl" ]
libs += [
"X11",
@@ -522,7 +507,7 @@ static_library("libANGLE") {
]
}
if (is_mac) {
sources += rebase_path(gles_gypi.libangle_gl_cgl_sources, ".", "src")
sources += rebase_path(libangle_gl_cgl_sources, ".", "src")
libs += [
"Cocoa.framework",
"IOSurface.framework",
@@ -531,10 +516,9 @@ static_library("libANGLE") {
]
}
if (is_android) {
sources += rebase_path(gles_gypi.libangle_gl_egl_sources, ".", "src")
sources += rebase_path(gles_gypi.libangle_gl_egl_dl_sources, ".", "src")
sources +=
rebase_path(gles_gypi.libangle_gl_egl_android_sources, ".", "src")
sources += rebase_path(libangle_gl_egl_sources, ".", "src")
sources += rebase_path(libangle_gl_egl_dl_sources, ".", "src")
sources += rebase_path(libangle_gl_egl_android_sources, ".", "src")
if (ndk_supports_nativewindow) {
libs += [ "nativewindow" ]
} else {
@@ -546,24 +530,22 @@ static_library("libANGLE") {
configs += [ ":libdrm" ]
defines += [ "ANGLE_USE_OZONE" ]
deps += [ "//third_party/minigbm" ]
sources += rebase_path(gles_gypi.libangle_gl_egl_sources, ".", "src")
sources += rebase_path(gles_gypi.libangle_gl_egl_dl_sources, ".", "src")
sources += rebase_path(gles_gypi.libangle_gl_ozone_sources, ".", "src")
sources += rebase_path(libangle_gl_egl_sources, ".", "src")
sources += rebase_path(libangle_gl_egl_dl_sources, ".", "src")
sources += rebase_path(libangle_gl_ozone_sources, ".", "src")
}
}
if (angle_enable_vulkan) {
sources += rebase_path(gles_gypi.libangle_vulkan_sources, ".", "src")
sources += rebase_path(libangle_vulkan_sources, ".", "src")
if (is_win) {
sources +=
rebase_path(gles_gypi.libangle_vulkan_win32_sources, ".", "src")
sources += rebase_path(libangle_vulkan_win32_sources, ".", "src")
}
if (is_linux) {
sources += rebase_path(gles_gypi.libangle_vulkan_xcb_sources, ".", "src")
sources += rebase_path(libangle_vulkan_xcb_sources, ".", "src")
}
if (is_android) {
sources +=
rebase_path(gles_gypi.libangle_vulkan_android_sources, ".", "src")
sources += rebase_path(libangle_vulkan_android_sources, ".", "src")
}
deps += [ ":angle_vulkan" ]
public_deps += [ "$angle_root/third_party/vulkan-headers:vulkan_headers" ]
@@ -574,7 +556,7 @@ static_library("libANGLE") {
}
if (angle_enable_null) {
sources += rebase_path(gles_gypi.libangle_null_sources, ".", "src")
sources += rebase_path(libangle_null_sources, ".", "src")
}
if (is_debug) {
@@ -621,7 +603,7 @@ config("angle_static") {
}
shared_library("libGLESv2${angle_libs_suffix}") {
sources = rebase_path(gles_gypi.libglesv2_sources, ".", "src")
sources = rebase_path(libglesv2_sources, ".", "src")
if (is_android) {
configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
@@ -669,7 +651,7 @@ shared_library("libGLESv2${angle_libs_suffix}") {
}
static_library("libGLESv2_static") {
sources = rebase_path(gles_gypi.libglesv2_sources, ".", "src")
sources = rebase_path(libglesv2_sources, ".", "src")
configs -= angle_undefine_configs
configs += [
@@ -688,7 +670,7 @@ static_library("libGLESv2_static") {
}
shared_library("libGLESv1_CM${angle_libs_suffix}") {
sources = rebase_path(gles_gypi.libglesv1_cm_sources, ".", "src")
sources = rebase_path(libglesv1_cm_sources, ".", "src")
if (is_android) {
configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
@@ -731,7 +713,7 @@ shared_library("libGLESv1_CM${angle_libs_suffix}") {
}
static_library("libGLESv1_CM_static") {
sources = rebase_path(gles_gypi.libglesv1_cm_sources, ".", "src")
sources = rebase_path(libglesv1_cm_sources, ".", "src")
configs -= angle_undefine_configs
configs += [
@@ -750,7 +732,7 @@ static_library("libGLESv1_CM_static") {
}
shared_library("libEGL${angle_libs_suffix}") {
sources = rebase_path(gles_gypi.libegl_sources, ".", "src")
sources = rebase_path(libegl_sources, ".", "src")
if (is_android) {
configs -= [ "//build/config/android:hide_all_but_jni_onload" ]
@@ -790,7 +772,7 @@ shared_library("libEGL${angle_libs_suffix}") {
}
static_library("libEGL_static") {
sources = rebase_path(gles_gypi.libegl_sources, ".", "src")
sources = rebase_path(libegl_sources, ".", "src")
configs -= angle_undefine_configs
configs += [
@@ -808,10 +790,7 @@ static_library("libEGL_static") {
]
}
util_gypi = exec_script("//build/gypi_to_gn.py",
[ rebase_path("util/util.gyp") ],
"scope",
[ "util/util.gyp" ])
import("util/util.gyp")
config("angle_util_config") {
include_dirs = [ "util" ]
@@ -836,15 +815,15 @@ foreach(is_shared_library,
}
target(library_type, library_name) {
sources = rebase_path(util_gypi.util_sources, ".", "util")
sources = rebase_path(util_sources, ".", "util")
if (is_win) {
sources += rebase_path(util_gypi.util_win32_sources, ".", "util")
sources += rebase_path(util_win32_sources, ".", "util")
}
libs = []
if (is_linux) {
sources += rebase_path(util_gypi.util_linux_sources, ".", "util")
sources += rebase_path(util_linux_sources, ".", "util")
libs += [
"rt",
"dl",
@@ -852,7 +831,7 @@ foreach(is_shared_library,
}
if (is_mac) {
sources += rebase_path(util_gypi.util_osx_sources, ".", "util")
sources += rebase_path(util_osx_sources, ".", "util")
libs += [
"AppKit.framework",
"QuartzCore.framework",
@@ -860,7 +839,7 @@ foreach(is_shared_library,
}
if (use_x11) {
sources += rebase_path(util_gypi.util_x11_sources, ".", "util")
sources += rebase_path(util_x11_sources, ".", "util")
}
if (is_android) {
@@ -870,8 +849,8 @@ foreach(is_shared_library,
# To prevent linux sources filtering on android
set_sources_assignment_filter([])
sources += rebase_path(util_gypi.util_linux_sources, ".", "util")
sources += rebase_path(util_gypi.util_android_sources, ".", "util")
sources += rebase_path(util_linux_sources, ".", "util")
sources += rebase_path(util_android_sources, ".", "util")
libs += [
"android",
"log",
@@ -879,7 +858,7 @@ foreach(is_shared_library,
}
if (use_ozone) {
sources += rebase_path(util_gypi.util_ozone_sources, ".", "util")
sources += rebase_path(util_ozone_sources, ".", "util")
}
configs += [

12
DEPS
View File

@@ -107,11 +107,6 @@ deps = {
'url': '{chromium_git}/chromium/src/tools/clang.git@99ac9bf4ad0d629e1168a0bda9a82f87062ce106',
'condition': 'not build_with_chromium',
},
'{angle_root}/tools/gyp': {
'url': '{chromium_git}/external/gyp@4d467626b0b9f59a85fb81ca4d7ea9eca99b9d8f',
'condition': 'not build_with_chromium',
},
}
hooks = [
@@ -231,13 +226,6 @@ hooks = [
'-s', '{angle_root}/build/toolchain/win/rc/win/rc.exe.sha1',
],
},
{
# A change to a .gyp, .gypi, or to GYP itself should run the generator.
'pattern': '.',
'action': ['python', '{angle_root}/gyp/gyp_angle'],
'condition': 'not build_with_chromium',
},
]
recursedeps = [

View File

@@ -49,7 +49,7 @@ ANGLE repository is hosted by Chromium project and can be
## Building
View the [Dev setup instructions](doc/DevSetup.md). For generating a Windows Store version of ANGLE view the [Windows Store instructions](doc/BuildingAngleForWindowsStore.md)
View the [Dev setup instructions](doc/DevSetup.md).
## Contributing

View File

@@ -1,58 +0,0 @@
# How to build ANGLE for Windows Store
Building for Windows Store is deprecated because it requires [GYP](gyp.md).
ANGLE provides OpenGL ES 2.0 and EGL 1.4 libraries and dlls. You can use these to build and run OpenGL ES 2.0 applications on Windows.
## Development setup
ANGLE for Windows Store uses most of the same steps found in [ANGLE Development](DevSetup.md) with a few changes.
### Required Tools
* [Visual Studio Community 2015](http://www.visualstudio.com/downloads/download-visual-studio-vs)
* Required to build ANGLE on Windows and for the packaged Windows 10 SDK.
### Getting the source
Set the following environment variables as needed:
* `GYP_GENERATORS` to `msvs`
* `GYP_MSVS_VERSION` to `2015`
* `GYP_GENERATE_WINRT` to `1`
Download the ANGLE source by running the following commands:
```
git clone https://chromium.googlesource.com/angle/angle
cd angle
python scripts/bootstrap.py
gclient sync
git checkout master
```
Gyp will generate multiple VS2015 solution files
* `winrt/10/src/angle.sln` for Windows 10
### Building ANGLE
1. Open one of the ANGLE Visual Studio solution files (see [Getting the source](#getting-the-source)).
2. Select Build -> Configuration Manager
3. In the "Active solution configuration:" drop down, select the desired configuration (eg. Release), and close the Configuration Manager.
4. Select Build -> Build Solution.
Once the build completes, the output directory for your selected configuration (eg. `Release_Win32`, located next to the solution file) will contain the required libraries and dlls to build and run an OpenGL ES 2.0 application.
### To Use ANGLE in Your Application
1. A template for creating a Windows Store application that uses ANGLE can be found [here](http://blogs.msdn.com/b/vcblog/archive/2015/07/30/cross-platform-code-sharing-with-visual-c.aspx).
2. Configure your build environment to have access to the `include` folder to provide access to the standard Khronos EGL and GLES2 header files.
* For Visual C++
* Right-click your project in the _Solution Explorer_, and select _Properties_.
* Under the _Configuration Properties_ branch, click _C/C++_.
* Add the relative path to the Khronos EGL and GLES2 header files to _Additional Include Directories_.
3. Configure your build environment to have access to `libEGL.lib` and `libGLESv2.lib` found in the build output directory (see [Building ANGLE](DevSetup.md#building-with-visual-studio)).
* For Visual C++
* Right-click your project in the _Solution Explorer_, and select _Properties_.
* Under the _Configuration Properties_ branch, open the _Linker_ branch and click _Input_.
* Add the relative paths to both the `libEGL.lib` file and `libGLESv2.lib` file to _Additional Dependencies_, separated by a semicolon.
4. Copy `libEGL.dll` and `libGLESv2.dll` from the build output directory (see [Building ANGLE](DevSetup.md#building-with-visual-studio)) into your application folder or packages location if a ANGLE Windows Store NuGet was used.
5. Code your application to the Khronos [OpenGL ES 2.0](http://www.khronos.org/registry/gles/) and [EGL 1.4](http://www.khronos.org/registry/egl/) APIs.

View File

@@ -15,8 +15,8 @@
### Build maintenance
1. If you added or removed source files:
* You _must_ update the gyp build scripts lists with your changes. See `src/libEGL.gypi`, `src/libGLESv2.gypi`, and `src/compiler.gypi`.
2. ANGLE also now maintains a BUILD.gn script for [Chromium's gn build](https://www.chromium.org/developers/gn-build-configuration). If you changed the gyp files other than to add or remove new files, you will also need to update BUILD.gn. Ask a project member for help with testing if you don't have a Chromium checkout.
* You _must_ update the build files with your changes. See `src/libGLESv2.gypi` and `src/compiler.gypi`.
2. ANGLE's BUILD.gn script is used by [Chromium's gn build](https://www.chromium.org/developers/gn-build-configuration). If you change build files other than to add or remove source files be aware you could break the Chromium build. ANGLE's commit queue (CQ) will detect such breakage. Ask a project member for help with Chromium issues if you don't have a Chromium checkout.
3. If you modified `glslang.y` or `glslang.l`:
* You _must_ update the bison-generated compiler sources. Download and install the latest 64-bit Bison and flex from official [Cygwin](https://cygwin.com/install.html) on _Windows_. From the Cygwin shell run `generate_parser.sh` in `src/compiler/translator` and update your CL. Do not edit the generated files by hand.
* _NOTE:_ You can ignore failing chunk messages if there are no compile errors.

View File

@@ -4,7 +4,7 @@ There are many ways to debug ANGLE using generic or platform-dependent tools. He
## Running ANGLE under apitrace on Linux
[Apitrace](http://apitrace.github.io/) that captures traces of OpenGL commands for later analysis, allowing us to see how ANGLE translates OpenGL ES commands. In order to capture the trace, it inserts a driver shim using `LD_PRELOAD` that records the command and then forwards it to the OpenGL driver.
[Apitrace](http://apitrace.github.io/) captures traces of OpenGL commands for later analysis, allowing us to see how ANGLE translates OpenGL ES commands. In order to capture the trace, it inserts a driver shim using `LD_PRELOAD` that records the command and then forwards it to the OpenGL driver.
The problem with ANGLE is that it exposes the same symbols as the OpenGL driver so apitrace captures the entry point calls intended for ANGLE and reroutes them to the OpenGL driver. In order to avoid this problem, use the following:
@@ -14,7 +14,7 @@ The problem with ANGLE is that it exposes the same symbols as the OpenGL driver
If you follow these steps, apitrace will work correctly aside from a few minor bugs like not being able to figure out what the default framebuffer size is if there is no glViewport command.
For example, to trace a run of `hello_triangle`, assuming you are using the ninja gyp generator and the apitrace executables are in `$PATH`:
For example, to trace a run of `hello_triangle`, assuming the apitrace executables are in `$PATH`:
```
gn args out/Debug # add "angle_link_glx = true"
@@ -60,4 +60,4 @@ Example "Intent Arguments:" values in GAPID's "Capture Trace" dialog:
or
```
-e org.chromium.native_test.NativeTest.StdoutFile /sdcard/chromium_tests_root/out.txt --esal org.chromium.native_test.NativeTest.Shard RendererTest.SimpleOperation/ES2_VULKAN,SimpleOperationTest.DrawWithTexture/ES2_VULKAN
```
```

View File

@@ -10,7 +10,7 @@ ANGLE uses git for version control. If you are not familiar with git, helpful do
### Required Tools
On all platforms:
* GN is the supported build system. GYP is deprecated and support will be removed in the future but [instructions are available](gyp.md).
* GN is the build system. GYP support has been removed.
* Clang will be set up by the build system and used by default. See below for platform-specific compiler choices.
* [depot_tools](http://dev.chromium.org/developers/how-tos/install-depot-tools)
* Required to generate projects and build files, contribute patches, run the unit tests or build the shader compiler on non-Windows systems.

View File

@@ -1,31 +0,0 @@
# Deprecated GYP Instructions
Use GN instead of GYP, as described in the [developer instructions](DevSetup.md).
Support for GYP will be removed in the future.
Though deprecated, GYP is still run by `gclient sync`.
You may want to set certain environment variables ahead of time.
On Windows:
* `GYP_GENERATORS` to `msvs` (other options include `ninja` and `make`)
* `GYP_MSVS_VERSION` to `2015`
On Linux and MacOS:
* `GYP_GENERATORS` to `ninja` (defaults to 'make' that pollutes your source directory)
To run GYP at other times use the script `gyp/gyp_angle`.
## Running ANGLE under apitrace on Linux
See the [debugging tips](DebuggingTips.md#running-angle-under-apitrace-on-linux) and replace the gn steps with:
```
gyp/gyp_angle -D angle_link_glx=1 -D angle_gl_library_type=static_library
```
# Deprecated Windows Store Instructions
[Building for Windows Store](BuildingAngleForWindowsStore.md) is deprecated because it requires GYP.

View File

@@ -8,7 +8,6 @@
angle_dotfile_settings = {
exec_script_whitelist = [
get_path_info("BUILD.gn", "abspath"),
get_path_info("src/tests/BUILD.gn", "abspath"),
get_path_info("third_party/vulkan-headers/BUILD.gn", "abspath"),
get_path_info("third_party/vulkan-loader/BUILD.gn", "abspath"),
get_path_info("third_party/vulkan-tools/BUILD.gn", "abspath"),

View File

@@ -1,29 +0,0 @@
# Copyright (c) 2010 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'targets':
[
{
'target_name': 'All',
'type': 'none',
'dependencies':
[
'../src/angle.gyp:*',
'../src/tests/tests.gyp:*',
],
'conditions':
[
# Don't generate samples for WinRT
['angle_build_winrt==0',
{
'dependencies':
[
'../samples/samples.gyp:*',
],
}],
],
},
],
}

View File

@@ -1,458 +0,0 @@
# Copyright (c) 2010 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'includes': [ 'common_defines.gypi', ],
'variables':
{
'angle_path': '<(DEPTH)',
'angle_build_winrt%': '0',
'angle_build_winrt_app_type_revision%': '10.0',
'angle_build_winrt_target_platform_ver%' : '',
# angle_code is set to 1 for the core ANGLE targets defined in src/build_angle.gyp.
# angle_code is set to 0 for test code, sample code, and third party code.
# When angle_code is 1, we build with additional warning flags on Mac and Linux.
'angle_code%': 0,
'release_symbols%': 'true',
'gcc_or_clang_warnings':
[
'-Wall',
'-Wchar-subscripts',
'-Werror',
'-Wextra',
'-Wformat=2',
'-Winit-self',
'-Wno-format-nonliteral',
'-Wno-unknown-pragmas',
'-Wno-unused-function',
'-Wno-unused-parameter',
'-Wpacked',
'-Wpointer-arith',
'-Wundef',
'-Wwrite-strings',
],
'gcc_or_clang_warnings_cc':
[
'-Wnon-virtual-dtor',
],
# TODO: Pull chromium's clang dep.
'clang%': 0,
'clang_only_warnings':
[
'-Wshorten-64-to-32',
],
},
'target_defaults':
{
'default_configuration': 'Debug',
'variables':
{
'warn_as_error%': 1,
},
'target_conditions':
[
['warn_as_error == 1',
{
'msvs_settings':
{
'VCCLCompilerTool':
{
'WarnAsError': 'true',
},
'VCLinkerTool':
{
'TreatLinkerWarningAsErrors': 'true',
},
},
}],
],
'conditions':
[
['angle_build_winrt==1',
{
'msvs_enable_winrt' : '1',
'msvs_application_type_revision' : '<(angle_build_winrt_app_type_revision)',
'msvs_target_platform_version' : '<(angle_build_winrt_target_platform_ver)',
}],
],
'configurations':
{
'Common_Base':
{
'abstract': 1,
# Require the version of the Windows 10 SDK installed on the local machine.
'msvs_windows_sdk_version': 'v10.0',
'msvs_configuration_attributes':
{
'OutputDirectory': '$(SolutionDir)$(ConfigurationName)_$(Platform)',
'IntermediateDirectory': '$(OutDir)\\obj\\$(ProjectName)',
'CharacterSet': '0', # ASCII
},
'msvs_settings':
{
'VCCLCompilerTool':
{
# Control Flow Guard is a security feature in Windows
# 8.1 and higher designed to prevent exploitation of
# indirect calls in executables.
# Control Flow Guard is enabled using the /d2guard4
# compiler setting in combination with the /guard:cf
# linker setting.
'AdditionalOptions': ['/MP', '/d2guard4'],
'BufferSecurityCheck': 'true',
'DebugInformationFormat': '3',
'ExceptionHandling': '0',
'EnableFunctionLevelLinking': 'true',
'MinimalRebuild': 'false',
'WarningLevel': '4',
'conditions':
[
['angle_build_winrt==1',
{
# Use '/Wv:18' to avoid WRL warnings in VS2015 Update 3
# Use /Gw and /Zc:threadSafeInit to avoid
# LTCG-related crashes with VS2015 Update 3
'AdditionalOptions': ['/Wv:18', '/Gw', '/Zc:threadSafeInit-'],
}],
],
},
'VCLinkerTool':
{
# Control Flow Guard is a security feature in Windows
# 8.1 and higher designed to prevent exploitation of
# indirect calls in executables.
# Control Flow Guard is enabled using the /d2guard4
# compiler setting in combination with the /guard:cf
# linker setting.
'AdditionalOptions': ['/guard:cf'],
'FixedBaseAddress': '1',
'ImportLibrary': '$(OutDir)\\lib\\$(TargetName).lib',
'MapFileName': '$(OutDir)\\$(TargetName).map',
# Most of the executables we'll ever create are tests
# and utilities with console output.
'SubSystem': '1', # /SUBSYSTEM:CONSOLE
},
'VCResourceCompilerTool':
{
'Culture': '1033',
},
},
'xcode_settings':
{
'CLANG_CXX_LANGUAGE_STANDARD': 'c++11',
},
}, # Common_Base
'Debug_Base':
{
'abstract': 1,
'defines':
[
'_DEBUG'
],
'msvs_settings':
{
'VCCLCompilerTool':
{
'Optimization': '0', # /Od
'BasicRuntimeChecks': '3',
'RuntimeTypeInfo': 'true',
'conditions':
[
['angle_build_winrt==1',
{
# Use the dynamic C runtime to match
# Windows Application Store requirements
# The C runtime for Windows Store applications
# is a framework package that is managed by
# the Windows deployment model and can be
# shared by multiple packages.
'RuntimeLibrary': '3', # /MDd (debug dll)
},
{
# Use the static C runtime to
# match chromium and make sure
# we don't depend on the dynamic
# runtime's shared heaps
'RuntimeLibrary': '1', # /MTd (debug static)
}],
],
},
'VCLinkerTool':
{
'GenerateDebugInformation': 'true',
'LinkIncremental': '2',
'conditions':
[
['angle_build_winrt==1',
{
'AdditionalDependencies':
[
'dxgi.lib',
],
'EnableCOMDATFolding': '1', # disable
'OptimizeReferences': '1', # disable
}],
],
},
},
'xcode_settings':
{
'COPY_PHASE_STRIP': 'NO',
'GCC_OPTIMIZATION_LEVEL': '0',
},
}, # Debug_Base
'Release_Base':
{
'abstract': 1,
'defines':
[
'NDEBUG'
],
'msvs_settings':
{
'VCCLCompilerTool':
{
'RuntimeTypeInfo': 'false',
'conditions':
[
['angle_build_winrt==1',
{
# Use Chromium's settings for 'Official' builds
# to optimize WinRT release builds
'Optimization': '1', # /O1, minimize size
'FavorSizeOrSpeed': '2', # /Os
'WholeProgramOptimization': 'true',
# Use the dynamic C runtime to match
# Windows Application Store requirements
# The C runtime for Windows Store applications
# is a framework package that is managed by
# the Windows deployment model and can be
# shared by multiple packages.
'RuntimeLibrary': '2', # /MD (nondebug dll)
},
{
'Optimization': '2', # /O2, maximize speed
# Use the static C runtime to
# match chromium and make sure
# we don't depend on the dynamic
'RuntimeLibrary': '0', # /MT (nondebug static)
}],
],
},
'VCLinkerTool':
{
'GenerateDebugInformation': '<(release_symbols)',
'LinkIncremental': '1',
'conditions':
[
['angle_build_winrt==1',
{
# Use Chromium's settings for 'Official' builds
# to optimize WinRT release builds
'LinkTimeCodeGeneration': '1',
'AdditionalOptions': ['/cgthreads:8'],
}],
],
},
},
}, # Release_Base
'x86_Base':
{
'abstract': 1,
'msvs_configuration_platform': 'Win32',
'msvs_settings':
{
'VCLinkerTool':
{
'TargetMachine': '1', # x86
},
'VCLibrarianTool':
{
'TargetMachine': '1', # x86
},
},
'defines': [ 'ANGLE_IS_32_BIT_CPU' ],
}, # x86_Base
'x64_Base':
{
'abstract': 1,
'msvs_configuration_platform': 'x64',
'msvs_settings':
{
'VCLinkerTool':
{
'TargetMachine': '17', # x86 - 64
},
'VCLibrarianTool':
{
'TargetMachine': '17', # x86 - 64
},
},
'defines': [ 'ANGLE_IS_64_BIT_CPU' ],
}, # x64_Base
# Concrete configurations
'Debug':
{
'inherit_from': ['Common_Base', 'x86_Base', 'Debug_Base'],
},
'Release':
{
'inherit_from': ['Common_Base', 'x86_Base', 'Release_Base'],
},
'conditions':
[
['OS == "win"',
{
'Debug_x64':
{
'inherit_from': ['Common_Base', 'x64_Base', 'Debug_Base'],
},
'Release_x64':
{
'inherit_from': ['Common_Base', 'x64_Base', 'Release_Base'],
},
}],
['angle_build_winrt==1',
{
'arm_Base':
{
'abstract': 1,
'msvs_configuration_platform': 'ARM',
'msvs_settings':
{
'VCLinkerTool':
{
'TargetMachine': '3', # ARM
},
'VCLibrarianTool':
{
'TargetMachine': '3', # ARM
},
},
}, # arm_Base
'Debug_ARM':
{
'inherit_from': ['Common_Base', 'arm_Base', 'Debug_Base'],
},
'Release_ARM':
{
'inherit_from': ['Common_Base', 'arm_Base', 'Release_Base'],
},
}],
],
}, # configurations
}, # target_defaults
'conditions':
[
['OS == "win"',
{
'target_defaults':
{
'msvs_cygwin_dirs': ['../third_party/cygwin'],
},
},
{ # OS != win
'target_defaults':
{
'cflags':
[
'-fPIC',
],
'cflags_cc':
[
'-std=c++14',
],
},
}],
['OS != "win" and OS != "mac"',
{
'target_defaults':
{
'cflags':
[
'-pthread',
],
'cflags_cc':
[
'-fno-exceptions',
],
'ldflags':
[
'-pthread',
],
'configurations':
{
'Debug':
{
'variables':
{
'debug_optimize%': '0',
},
'defines':
[
'_DEBUG',
],
'cflags':
[
'-O>(debug_optimize)',
'-g',
],
}
},
},
}],
['angle_code==1',
{
'target_defaults':
{
'conditions':
[
['OS == "mac"',
{
'xcode_settings':
{
'WARNING_CFLAGS': ['<@(gcc_or_clang_warnings)']
},
}],
['OS != "win" and OS != "mac"',
{
'cflags_c':
[
'<@(gcc_or_clang_warnings)',
'-std=c99',
],
'cflags_cc':
[
'<@(gcc_or_clang_warnings_cc)',
],
'defines':
[
'SYSCONFDIR="/etc"',
'FALLBACK_CONFIG_DIRS="/etc/xdg"',
'FALLBACK_DATA_DIRS="/usr/local/share:/usr/share"',
],
}],
['clang==1',
{
'cflags': ['<@(clang_only_warnings)']
}],
]
}
}],
],
}

View File

@@ -1,158 +0,0 @@
# Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables':
{
'component%': 'static_library',
'use_libpci%': 1,
'windows_sdk_path%': 'C:/Program Files (x86)/Windows Kits/10',
'angle_build_winrt%': '0',
# This works like the Ozone GBM platform in Chrome:
# - Generic Buffer Manager (gbm) to allocate buffers
# - EGL_EXT_image_dma_buf_import to render into those buffers via EGLImage
# - Direct Rendering Manager + Kernel Mode Setting to scan out from those buffers
# - EGL_PLATFORM_SURFACELESS because there are no native windows
'use_ozone%': 0,
'conditions':
[
['OS=="linux" and use_x11==1 and chromeos==0', {
'angle_use_glx%': 1,
},
{
'angle_use_glx%': 0,
}],
],
# root of the OSX SDK for Chromium builds, the system root for standalone builds
'SDKROOT%': "",
},
'defines':
[
'ANGLE_STANDALONE_BUILD',
],
'msvs_disabled_warnings':
[
4100, # Unreferenced formal parameter. Not interesting.
4127, # conditional expression is constant. Too noisy to be useful.
4718, # Recursive call has no side effects. Fires on xtree system header.
4251, # STL objects do not have DLL interface, needed by ShaderVars.h and angle_util
],
'conditions':
[
['use_ozone==1',
{
'defines': [ 'USE_OZONE' ],
}],
['component=="shared_library"',
{
'defines': [ 'COMPONENT_BUILD' ],
}],
],
'msvs_settings':
{
'VCCLCompilerTool':
{
'PreprocessorDefinitions':
[
'_CRT_SECURE_NO_DEPRECATE',
'_SCL_SECURE_NO_WARNINGS',
'_HAS_EXCEPTIONS=0',
'NOMINMAX',
],
},
'VCLinkerTool':
{
'conditions':
[
['angle_build_winrt==0',
{
'AdditionalDependencies':
[
'kernel32.lib',
'gdi32.lib',
'winspool.lib',
'comdlg32.lib',
'advapi32.lib',
'shell32.lib',
'ole32.lib',
'oleaut32.lib',
'user32.lib',
'uuid.lib',
'odbc32.lib',
'odbccp32.lib',
'delayimp.lib',
],
}],
# winrt compilation is dynamic depending on the project
# type. AdditionalDependencies is automatically configured
# with the required .libs
['angle_build_winrt==1',
{
'AdditionalDependencies':
[
'%(AdditionalDependencies)',
'uuid.lib',
],
}],
],
},
},
# Windows SDK library directories for the configurations
'configurations':
{
'conditions':
[
['angle_build_winrt==0',
{
'x86_Base':
{
'abstract': 1,
'msvs_settings':
{
'VCLinkerTool':
{
'AdditionalLibraryDirectories':
[
'<(windows_sdk_path)/Lib/winv6.3/um/x86',
],
},
'VCLibrarianTool':
{
'AdditionalLibraryDirectories':
[
'<(windows_sdk_path)/Lib/winv6.3/um/x86',
],
},
},
},
'x64_Base':
{
'abstract': 1,
'msvs_settings':
{
'VCLinkerTool':
{
'AdditionalLibraryDirectories':
[
'<(windows_sdk_path)/Lib/winv6.3/um/x64',
],
},
'VCLibrarianTool':
{
'AdditionalLibraryDirectories':
[
'<(windows_sdk_path)/Lib/winv6.3/um/x64',
],
},
},
},
}],
],
},
}

View File

@@ -1,83 +0,0 @@
#!/usr/bin/python
# Copyright (c) 2010 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This script is wrapper for ANGLE that adds some support for how GYP
# is invoked by ANGLE beyond what can be done in the gclient hooks.
import os
import sys
script_dir = os.path.dirname(__file__)
angle_dir = os.path.normpath(os.path.join(script_dir, os.pardir))
sys.path.insert(0, os.path.join(angle_dir, 'tools', 'gyp', 'pylib'))
import gyp
def appendCommonArgs(args):
# Set the depth to get the top-level Makefile generated into the
# correct directory. This only has an effect on Linux.
args.append('--depth');
args.append('.');
# Add standalone.gypi to the include path to set required
# variables that are otherwise picked up from Chromium's gyp
# files.
args.append('-I' + os.path.join(script_dir, 'standalone.gypi'))
# Add common.gypi to the include path.
args.append('-I' + os.path.join(script_dir, 'common.gypi'))
args.append('--no-parallel')
def generateProjects(generate_args):
args = generate_args
appendCommonArgs(args)
# Add all.gyp as the main gyp file to be generated.
args.append(os.path.join(script_dir, 'ANGLE.gyp'))
gyp.main(args)
def generateWinRTProjects(generate_args, generation_dir, msvs_version, app_type_rev,
target_platform_ver):
args = generate_args
appendCommonArgs(args)
args.append('--ignore-environment')
args.append('--generator-output=' + generation_dir)
args.append('--format=msvs')
args.append('-Gmsvs_version=' + msvs_version)
args.append('-Dangle_use_commit_id=1')
args.append('-Dangle_build_winrt=1')
args.append('-Dangle_build_winrt_app_type_revision=' + app_type_rev)
args.append('-Dangle_build_winrt_target_platform_ver=' + target_platform_ver)
args.append('-Dangle_enable_d3d9=0')
args.append('-Dangle_enable_gl=0')
args.append('-Dangle_enable_vulkan=0')
args.append('-Dangle_enable_null=0')
args.append('-Dangle_enable_essl=0')
args.append('-Dangle_enable_glsl=0')
# Add all.gyp as the main gyp file to be generated.
args.append(os.path.join(script_dir, 'ANGLE.gyp'))
print 'Generating WinRT projects to ' + generation_dir + ' from gyp files...'
sys.stdout.flush()
gyp.main(args)
if __name__ == '__main__':
print
print '* * * WARNING: GYP IS DEPRECATED * * *'
print 'See https://chromium.googlesource.com/angle/angle/+/master/doc/DevSetup.md for new build instructions.'
print
print 'Updating projects from gyp files...'
sys.stdout.flush()
# Generate projects
args = sys.argv[1:]
generateProjects(args)
# Generate WinRT projects only if configured
if 'GYP_GENERATE_WINRT' in os.environ:
# Generate Windows 10 projects
args = sys.argv[1:]
generateWinRTProjects(args, "winrt/10", "2015", "10.0", "10.0.10240.0");

View File

@@ -1,42 +0,0 @@
# Copyright (c) 2014 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables':
{
# chromeos=1 is used in some build configurations to disable GL
# and GLX code because it typically wouldn't build for Chrome OS.
# It does not mean "enable Chrome OS code."
'chromeos': 0,
# Chrome OS chroot builds need a special pkg-config, so make it possible to change.
'pkg-config%': 'pkg-config',
# Use a nested variable trick to get use_x11 evaluated more
# eagerly than other conditional variables.
'variables':
{
'variables':
{
'use_ozone%': 0,
},
'conditions':
[
['OS=="linux" and use_ozone==0',
{
'use_x11': 1,
},
{
'use_x11': 0,
}],
],
# Copy conditionally-set variables out one scope.
'use_ozone%': '<(use_ozone)',
},
# Copy conditionally-set variables out one scope.
'use_x11%': '<(use_x11)',
},
}

View File

@@ -1,16 +0,0 @@
#!/usr/bin/python
#
# Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# touch_stamp.py: similar to the Unix touch command, used to manual make
# stamp files when building with GYP
import os
import sys
stamp_name = sys.argv[1]
with open(stamp_name, 'a'):
os.utime(stamp_name, None)

View File

@@ -1,30 +0,0 @@
# Copyright (c) 2017 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'targets':
[
{
'target_name': 'gyp_deprecation',
'type': 'none',
'actions':
[
{
'action_name': 'GYP deprecation warning',
'message': ' * * * WARNING: GYP IS DEPRECATED * * *',
'inputs': [],
'outputs':
[
# this file is never created and should not exist so the action always runs
'this_file_never_exists',
],
'action':
[
'python', '-c', 'print "See https://chromium.googlesource.com/angle/angle/+/master/doc/DevSetup.md for new build instructions."',
],
},
],
},
],
}

View File

@@ -1,240 +0,0 @@
# Copyright (c) 2010 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'target_defaults':
{
'dependencies':
[
'../gyp/warnings.gyp:gyp_deprecation',
],
},
'targets':
[
{
'target_name': 'shader_translator',
'type': 'executable',
'includes': [ '../gyp/common_defines.gypi', ],
'dependencies': [ '../src/angle.gyp:translator', ],
'include_dirs': [ '../include', ],
'sources': [ 'shader_translator/shader_translator.cpp' ],
},
{
'target_name': 'sample_util',
'type': 'static_library',
'includes': [ '../gyp/common_defines.gypi', ],
'dependencies':
[
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/src/angle.gyp:libEGL',
'<(angle_path)/src/angle.gyp:libGLESv2',
'<(angle_path)/util/util.gyp:angle_util',
],
'export_dependent_settings':
[
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/util/util.gyp:angle_util',
],
'include_dirs':
[
'<(angle_path)/include',
'sample_util',
],
'sources':
[
'sample_util/SampleApplication.cpp',
'sample_util/SampleApplication.h',
'sample_util/texture_utils.cpp',
'sample_util/texture_utils.h',
'sample_util/tga_utils.cpp',
'sample_util/tga_utils.h',
],
'defines':
[
'GL_GLEXT_PROTOTYPES',
'EGL_EGLEXT_PROTOTYPES',
],
'msvs_disabled_warnings': [ 4201 ],
'direct_dependent_settings':
{
'msvs_disabled_warnings': [ 4201 ],
'include_dirs':
[
'sample_util',
],
'defines':
[
'GL_GLEXT_PROTOTYPES',
'EGL_EGLEXT_PROTOTYPES',
],
},
},
{
'target_name': 'hello_triangle',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'hello_triangle/HelloTriangle.cpp', ],
},
{
'target_name': 'mip_map_2d',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'mip_map_2d/MipMap2D.cpp', ],
},
{
'target_name': 'multi_texture',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'multi_texture/MultiTexture.cpp', ],
'copies':
[
{
'destination': '<(PRODUCT_DIR)',
'files':
[
'multi_texture/basemap.tga',
'multi_texture/lightmap.tga',
],
},
]
},
{
'target_name': 'multi_window',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'multi_window/MultiWindow.cpp', ],
},
{
'target_name': 'multiple_draw_buffers',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'multiple_draw_buffers/MultipleDrawBuffers.cpp', ],
'copies':
[
{
'destination': '<(PRODUCT_DIR)',
'files':
[
'multiple_draw_buffers/multiple_draw_buffers_copy_fs.glsl',
'multiple_draw_buffers/multiple_draw_buffers_fs.glsl',
'multiple_draw_buffers/multiple_draw_buffers_vs.glsl',
],
}
]
},
{
'target_name': 'multiview',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'multiview/Multiview.cpp', ],
},
{
'target_name': 'particle_system',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'particle_system/ParticleSystem.cpp', ],
'copies':
[
{
'destination': '<(PRODUCT_DIR)',
'files':
[
'particle_system/smoke.tga',
],
}
]
},
{
'target_name': 'post_sub_buffer',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'post_sub_buffer/PostSubBuffer.cpp', ],
},
{
'target_name': 'simple_instancing',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'simple_instancing/SimpleInstancing.cpp', ],
},
{
'target_name': 'simple_texture_2d',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'simple_texture_2d/SimpleTexture2D.cpp', ],
},
{
'target_name': 'simple_texture_cubemap',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'simple_texture_cubemap/SimpleTextureCubemap.cpp', ],
},
{
'target_name': 'simple_vertex_shader',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'simple_vertex_shader/SimpleVertexShader.cpp', ],
},
{
'target_name': 'stencil_operations',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'stencil_operations/StencilOperations.cpp', ],
},
{
'target_name': 'tex_redef_microbench',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'tex_redef_microbench/TexRedefMicroBench.cpp', ],
},
{
'target_name': 'texture_wrap',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'texture_wrap/TextureWrap.cpp', ],
},
{
'target_name': 'tri_fan_microbench',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'tri_fan_microbench/TriFanMicroBench.cpp', ],
},
{
'target_name': 'window_test',
'type': 'executable',
'dependencies': [ 'sample_util' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ 'WindowTest/WindowTest.cpp', ],
},
],
}

View File

@@ -273,7 +273,7 @@ for impl_class in impl_classes:
h_file.close()
cpp_file.close()
# Print a block of source files to add to the GYP
# Print a block of source files to add to the build
print("Generated files:")
for impl_class in impl_classes:
path = "libANGLE/renderer/" + renderer_name + "/" + impl_class + renderer_suffix

View File

@@ -15,10 +15,6 @@ import sys, os, shutil
# Set of search paths.
source_paths = [
os.path.join('..', 'gyp', 'Debug_x64'),
os.path.join('..', 'gyp', 'Debug_Win32'),
os.path.join('..', 'gyp', 'Release_x64'),
os.path.join('..', 'gyp', 'Release_Win32'),
os.path.join('..', 'out', 'Debug'),
os.path.join('..', 'out', 'Debug_x64'),
os.path.join('..', 'out', 'Release'),

View File

@@ -1,486 +0,0 @@
# Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables':
{
'angle_code': 1,
'angle_gen_path': '<(SHARED_INTERMEDIATE_DIR)/angle',
'angle_id_script_base': 'commit_id.py',
'angle_id_script': '<(angle_gen_path)/<(angle_id_script_base)',
'angle_id_header_base': 'commit.h',
'angle_id_header': '<(angle_gen_path)/id/<(angle_id_header_base)',
'angle_use_commit_id%': '<!(python <(angle_id_script_base) check ..)',
'angle_enable_d3d9%': 0,
'angle_enable_d3d11%': 0,
'angle_enable_gl%': 0,
'angle_enable_gl_null%': 0,
'angle_enable_vulkan%': 0,
'angle_enable_essl%': 1, # Enable this for all configs by default
'angle_enable_glsl%': 1, # Enable this for all configs by default
'angle_enable_hlsl%': 0,
'angle_link_glx%': 0,
'angle_gl_library_type%': 'shared_library',
'dcheck_always_on%': 0,
'conditions':
[
['OS=="win"',
{
'angle_enable_gl%': 1,
'angle_enable_gl_null%': 1,
'angle_enable_d3d9%': 1,
'angle_enable_d3d11%': 1,
'angle_enable_hlsl%': 1,
}],
['OS=="linux" and use_x11==1 and chromeos==0',
{
'angle_enable_gl%': 1,
'angle_enable_gl_null%': 1,
}],
['OS=="mac"',
{
'angle_enable_gl%': 1,
'angle_enable_gl_null%': 1,
}],
['use_ozone==1',
{
'angle_enable_gl%': 1,
'angle_enable_gl_null%': 1,
}],
],
'angle_enable_null%': 1, # Available on all platforms
},
'includes':
[
'compiler.gypi',
'libGLESv2.gypi',
'libEGL.gypi',
],
'target_defaults':
{
'dependencies':
[
'../gyp/warnings.gyp:gyp_deprecation',
],
},
'targets':
[
{
'target_name': 'angle_common',
'type': 'static_library',
'includes': [ '../gyp/common_defines.gypi', ],
'sources':
[
'<@(libangle_common_sources)',
],
'include_dirs':
[
'.',
'../include',
'common/third_party/base',
],
'dependencies':
[
'commit_id',
],
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src',
'<(angle_path)/src/common/third_party/base',
],
'conditions':
[
['dcheck_always_on==1',
{
'configurations':
{
'Release_Base':
{
'defines':
[
'ANGLE_ENABLE_RELEASE_ASSERTS',
],
},
},
}],
['OS=="win"',
{
'configurations':
{
'Debug_Base':
{
'defines':
[
'ANGLE_ENABLE_DEBUG_ANNOTATIONS'
],
},
},
}],
],
},
'conditions':
[
['dcheck_always_on==1',
{
'configurations':
{
'Release_Base':
{
'defines':
[
'ANGLE_ENABLE_RELEASE_ASSERTS',
],
},
},
}],
['OS=="win"',
{
'configurations':
{
'Debug_Base':
{
'defines':
[
'ANGLE_ENABLE_DEBUG_ANNOTATIONS'
],
},
},
'sources':
[
'<@(libangle_common_win_sources)',
],
}],
['OS=="mac"',
{
'sources':
[
'<@(libangle_common_mac_sources)',
],
'link_settings':
{
'libraries':
[
'$(SDKROOT)/System/Library/Frameworks/IOKit.framework',
'$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
],
},
}],
['OS=="linux"',
{
'sources':
[
'<@(libangle_common_linux_sources)',
],
}]
],
},
{
'target_name': 'angle_image_util',
'type': 'static_library',
'includes': [ '../gyp/common_defines.gypi', ],
'sources':
[
'<@(libangle_image_util_sources)',
],
'include_dirs':
[
'.',
'../include',
],
'dependencies':
[
'angle_common',
],
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src',
],
},
},
{
'target_name': 'angle_gpu_info_util',
'type': 'static_library',
'includes': [ '../gyp/common_defines.gypi', ],
'sources':
[
'<@(libangle_gpu_info_util_sources)',
],
'include_dirs':
[
'.',
'../include',
],
'dependencies':
[
'angle_common',
],
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src',
],
},
'conditions':
[
['OS=="win"',
{
'sources':
[
'<@(libangle_gpu_info_util_win_sources)',
],
}],
['OS=="win" and angle_build_winrt==0',
{
'link_settings':
{
'msvs_settings':
{
'VCLinkerTool':
{
'AdditionalDependencies':
[
'setupapi.lib'
]
}
}
},
'defines':
[
'GPU_INFO_USE_SETUPAPI',
],
},
{
'link_settings':
{
'msvs_settings':
{
'VCLinkerTool':
{
'AdditionalDependencies':
[
'dxgi.lib'
]
}
}
},
'defines':
[
'GPU_INFO_USE_DXGI',
],
}],
['OS=="linux"',
{
'sources':
[
'<@(libangle_gpu_info_util_linux_sources)',
],
}],
['OS=="linux" and use_x11==1',
{
'sources':
[
'<@(libangle_gpu_info_util_x11_sources)',
],
'defines':
[
'GPU_INFO_USE_X11',
],
'dependencies':
[
'<(angle_path)/src/third_party/libXNVCtrl/libXNVCtrl.gyp:libXNVCtrl',
],
'link_settings':
{
'ldflags':
[
'<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi xext)',
],
'libraries':
[
'<!@(<(pkg-config) --libs-only-l x11 xi xext) -ldl',
],
},
}],
['OS=="linux" and use_libpci==1',
{
'sources':
[
'<@(libangle_gpu_info_util_libpci_sources)',
],
'defines':
[
'GPU_INFO_USE_LIBPCI',
],
'link_settings':
{
'ldflags':
[
'<!@(<(pkg-config) --libs-only-L --libs-only-other libpci)',
],
'libraries':
[
'<!@(<(pkg-config) --libs-only-l libpci)',
],
},
}],
['OS=="mac"',
{
'sources':
[
'<@(libangle_gpu_info_util_mac_sources)',
],
}],
],
},
{
'target_name': 'copy_scripts',
'type': 'none',
'includes': [ '../gyp/common_defines.gypi', ],
'hard_dependency': 1,
'copies':
[
{
'destination': '<(angle_gen_path)',
'files': [ 'copy_compiler_dll.bat', '<(angle_id_script_base)' ],
},
],
'conditions':
[
['angle_build_winrt==1',
{
'type' : 'shared_library',
}],
],
},
],
'conditions':
[
['angle_use_commit_id!=0',
{
'targets':
[
{
'target_name': 'commit_id',
'type': 'none',
'includes': [ '../gyp/common_defines.gypi', ],
'dependencies': [ 'copy_scripts', ],
'hard_dependency': 1,
'actions':
[
{
'action_name': 'Generate ANGLE Commit ID Header',
'message': 'Generating ANGLE Commit ID',
# reference the git index as an input, so we rebuild on changes to the index
'inputs': [ '<(angle_id_script)', '<(angle_path)/.git/index' ],
'outputs': [ '<(angle_id_header)' ],
'msvs_cygwin_shell': 0,
'action':
[
'python', '<(angle_id_script)', 'gen', '<(angle_path)', '<(angle_id_header)'
],
},
],
'all_dependent_settings':
{
'include_dirs':
[
'<(angle_gen_path)',
],
},
'conditions':
[
['angle_build_winrt==1',
{
'type' : 'shared_library',
}],
],
}
]
},
{ # angle_use_commit_id==0
'targets':
[
{
'target_name': 'commit_id',
'type': 'none',
'hard_dependency': 1,
'includes': [ '../gyp/common_defines.gypi', ],
'copies':
[
{
'destination': '<(angle_gen_path)/id',
'files': [ '<(angle_id_header_base)' ]
}
],
'all_dependent_settings':
{
'include_dirs':
[
'<(angle_gen_path)',
],
},
'conditions':
[
['angle_build_winrt==1',
{
'type' : 'shared_library',
}],
],
}
]
}],
['OS=="win"',
{
'targets':
[
{
'target_name': 'copy_compiler_dll',
'type': 'none',
'dependencies': [ 'copy_scripts', ],
'includes': [ '../gyp/common_defines.gypi', ],
'conditions':
[
['angle_build_winrt==0',
{
'actions':
[
{
'action_name': 'copy_dll',
'message': 'Copying D3D Compiler DLL...',
'msvs_cygwin_shell': 0,
'inputs': [ 'copy_compiler_dll.bat' ],
'outputs': [ '<(PRODUCT_DIR)/d3dcompiler_47.dll' ],
'action':
[
"<(angle_gen_path)/copy_compiler_dll.bat",
"$(PlatformName)",
"<(windows_sdk_path)",
"<(PRODUCT_DIR)"
],
},
], #actions
}],
['angle_build_winrt==1',
{
'type' : 'shared_library',
}],
]
},
], # targets
}],
] # conditions
}

View File

@@ -2,417 +2,302 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'variables':
{
# These file lists are shared with the GN build.
'angle_translator_sources':
[
'../include/EGL/egl.h',
'../include/EGL/eglext.h',
'../include/EGL/eglplatform.h',
'../include/GLES2/gl2.h',
'../include/GLES2/gl2ext.h',
'../include/GLES2/gl2platform.h',
'../include/GLES3/gl3.h',
'../include/GLES3/gl3platform.h',
'../include/GLES3/gl31.h',
'../include/GLES3/gl32.h',
'../include/GLSLANG/ShaderLang.h',
'../include/GLSLANG/ShaderVars.h',
'../include/KHR/khrplatform.h',
'../include/angle_gl.h',
'compiler/translator/BaseTypes.h',
'compiler/translator/BuiltInFunctionEmulator.cpp',
'compiler/translator/BuiltInFunctionEmulator.h',
'compiler/translator/CallDAG.cpp',
'compiler/translator/CallDAG.h',
'compiler/translator/CodeGen.cpp',
'compiler/translator/CollectVariables.cpp',
'compiler/translator/CollectVariables.h',
'compiler/translator/Common.h',
'compiler/translator/Compiler.cpp',
'compiler/translator/Compiler.h',
'compiler/translator/ConstantUnion.cpp',
'compiler/translator/ConstantUnion.h',
'compiler/translator/Declarator.cpp',
'compiler/translator/Declarator.h',
'compiler/translator/Diagnostics.cpp',
'compiler/translator/Diagnostics.h',
'compiler/translator/DirectiveHandler.cpp',
'compiler/translator/DirectiveHandler.h',
'compiler/translator/ExtensionBehavior.cpp',
'compiler/translator/ExtensionBehavior.h',
'compiler/translator/FlagStd140Structs.cpp',
'compiler/translator/FlagStd140Structs.h',
'compiler/translator/FunctionLookup.cpp',
'compiler/translator/FunctionLookup.h',
'compiler/translator/HashNames.cpp',
'compiler/translator/HashNames.h',
'compiler/translator/ImmutableString.cpp',
'compiler/translator/ImmutableString.h',
'compiler/translator/ImmutableStringBuilder.cpp',
'compiler/translator/ImmutableStringBuilder.h',
'compiler/translator/InfoSink.cpp',
'compiler/translator/InfoSink.h',
'compiler/translator/Initialize.cpp',
'compiler/translator/Initialize.h',
'compiler/translator/InitializeDll.cpp',
'compiler/translator/InitializeDll.h',
'compiler/translator/InitializeGlobals.h',
'compiler/translator/IntermNode.h',
'compiler/translator/IntermNode.cpp',
'compiler/translator/IsASTDepthBelowLimit.cpp',
'compiler/translator/IsASTDepthBelowLimit.h',
'compiler/translator/Operator.cpp',
'compiler/translator/Operator.h',
'compiler/translator/OutputTree.cpp',
'compiler/translator/OutputTree.h',
'compiler/translator/ParseContext.cpp',
'compiler/translator/ParseContext.h',
'compiler/translator/ParseContext_autogen.h',
'compiler/translator/PoolAlloc.cpp',
'compiler/translator/PoolAlloc.h',
'compiler/translator/Pragma.h',
'compiler/translator/QualifierTypes.h',
'compiler/translator/QualifierTypes.cpp',
'compiler/translator/Severity.h',
'compiler/translator/ShaderLang.cpp',
'compiler/translator/ShaderVars.cpp',
'compiler/translator/StaticType.h',
'compiler/translator/Symbol.cpp',
'compiler/translator/Symbol.h',
'compiler/translator/SymbolTable.cpp',
'compiler/translator/SymbolTable.h',
'compiler/translator/SymbolTable_autogen.cpp',
'compiler/translator/SymbolTable_autogen.h',
'compiler/translator/SymbolUniqueId.cpp',
'compiler/translator/SymbolUniqueId.h',
'compiler/translator/Types.cpp',
'compiler/translator/Types.h',
'compiler/translator/ValidateGlobalInitializer.cpp',
'compiler/translator/ValidateGlobalInitializer.h',
'compiler/translator/ValidateLimitations.cpp',
'compiler/translator/ValidateLimitations.h',
'compiler/translator/ValidateMaxParameters.h',
'compiler/translator/ValidateMaxParameters.cpp',
'compiler/translator/ValidateOutputs.cpp',
'compiler/translator/ValidateOutputs.h',
'compiler/translator/ValidateSwitch.cpp',
'compiler/translator/ValidateSwitch.h',
'compiler/translator/ValidateVaryingLocations.cpp',
'compiler/translator/ValidateVaryingLocations.h',
'compiler/translator/VariablePacker.cpp',
'compiler/translator/VariablePacker.h',
'compiler/translator/blocklayout.cpp',
'compiler/translator/blocklayout.h',
'compiler/translator/glslang.h',
'compiler/translator/glslang.l',
'compiler/translator/glslang.y',
'compiler/translator/glslang_lex.cpp',
'compiler/translator/glslang_tab.cpp',
'compiler/translator/glslang_tab.h',
'compiler/translator/length_limits.h',
'compiler/translator/util.cpp',
'compiler/translator/util.h',
'compiler/translator/tree_ops/AddAndTrueToLoopCondition.cpp',
'compiler/translator/tree_ops/AddAndTrueToLoopCondition.h',
'compiler/translator/tree_ops/BreakVariableAliasingInInnerLoops.cpp',
'compiler/translator/tree_ops/BreakVariableAliasingInInnerLoops.h',
'compiler/translator/tree_ops/ClampFragDepth.cpp',
'compiler/translator/tree_ops/ClampFragDepth.h',
'compiler/translator/tree_ops/ClampPointSize.cpp',
'compiler/translator/tree_ops/ClampPointSize.h',
'compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.h',
'compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp',
'compiler/translator/tree_ops/DeferGlobalInitializers.cpp',
'compiler/translator/tree_ops/DeferGlobalInitializers.h',
'compiler/translator/tree_ops/EmulateGLFragColorBroadcast.cpp',
'compiler/translator/tree_ops/EmulateGLFragColorBroadcast.h',
'compiler/translator/tree_ops/EmulatePrecision.cpp',
'compiler/translator/tree_ops/EmulatePrecision.h',
'compiler/translator/tree_ops/ExpandIntegerPowExpressions.cpp',
'compiler/translator/tree_ops/ExpandIntegerPowExpressions.h',
'compiler/translator/tree_ops/FoldExpressions.cpp',
'compiler/translator/tree_ops/FoldExpressions.h',
'compiler/translator/tree_ops/InitializeVariables.cpp',
'compiler/translator/tree_ops/InitializeVariables.h',
'compiler/translator/tree_ops/NameEmbeddedUniformStructs.cpp',
'compiler/translator/tree_ops/NameEmbeddedUniformStructs.h',
'compiler/translator/tree_ops/PruneEmptyCases.cpp',
'compiler/translator/tree_ops/PruneEmptyCases.h',
'compiler/translator/tree_ops/PruneNoOps.cpp',
'compiler/translator/tree_ops/PruneNoOps.h',
'compiler/translator/tree_ops/RecordConstantPrecision.cpp',
'compiler/translator/tree_ops/RecordConstantPrecision.h',
'compiler/translator/tree_ops/RegenerateStructNames.cpp',
'compiler/translator/tree_ops/RegenerateStructNames.h',
'compiler/translator/tree_ops/RemoveArrayLengthMethod.cpp',
'compiler/translator/tree_ops/RemoveArrayLengthMethod.h',
'compiler/translator/tree_ops/RemoveInvariantDeclaration.cpp',
'compiler/translator/tree_ops/RemoveInvariantDeclaration.h',
'compiler/translator/tree_ops/RemovePow.cpp',
'compiler/translator/tree_ops/RemovePow.h',
'compiler/translator/tree_ops/RemoveUnreferencedVariables.cpp',
'compiler/translator/tree_ops/RemoveUnreferencedVariables.h',
'compiler/translator/tree_ops/RewriteAtomicFunctionExpressions.cpp',
'compiler/translator/tree_ops/RewriteAtomicFunctionExpressions.h',
'compiler/translator/tree_ops/RewriteDoWhile.cpp',
'compiler/translator/tree_ops/RewriteDoWhile.h',
'compiler/translator/tree_ops/RewriteStructSamplers.cpp',
'compiler/translator/tree_ops/RewriteStructSamplers.h',
'compiler/translator/tree_ops/RewriteRepeatedAssignToSwizzled.cpp',
'compiler/translator/tree_ops/RewriteRepeatedAssignToSwizzled.h',
'compiler/translator/tree_ops/RewriteTexelFetchOffset.cpp',
'compiler/translator/tree_ops/RewriteTexelFetchOffset.h',
'compiler/translator/tree_ops/RewriteUnaryMinusOperatorFloat.cpp',
'compiler/translator/tree_ops/RewriteUnaryMinusOperatorFloat.h',
'compiler/translator/tree_ops/RewriteUnaryMinusOperatorInt.cpp',
'compiler/translator/tree_ops/RewriteUnaryMinusOperatorInt.h',
'compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp',
'compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.h',
'compiler/translator/tree_ops/SeparateDeclarations.cpp',
'compiler/translator/tree_ops/SeparateDeclarations.h',
'compiler/translator/tree_ops/SimplifyLoopConditions.cpp',
'compiler/translator/tree_ops/SimplifyLoopConditions.h',
'compiler/translator/tree_ops/SplitSequenceOperator.cpp',
'compiler/translator/tree_ops/SplitSequenceOperator.h',
'compiler/translator/tree_ops/UnfoldShortCircuitAST.cpp',
'compiler/translator/tree_ops/UnfoldShortCircuitAST.h',
'compiler/translator/tree_ops/UseInterfaceBlockFields.cpp',
'compiler/translator/tree_ops/UseInterfaceBlockFields.h',
'compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.cpp',
'compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.h',
'compiler/translator/tree_util/BuiltIn_autogen.h',
'compiler/translator/tree_util/FindMain.cpp',
'compiler/translator/tree_util/FindMain.h',
'compiler/translator/tree_util/FindSymbolNode.cpp',
'compiler/translator/tree_util/FindSymbolNode.h',
'compiler/translator/tree_util/IntermNodePatternMatcher.cpp',
'compiler/translator/tree_util/IntermNodePatternMatcher.h',
'compiler/translator/tree_util/IntermNode_util.cpp',
'compiler/translator/tree_util/IntermNode_util.h',
'compiler/translator/tree_util/IntermTraverse.cpp',
'compiler/translator/tree_util/IntermTraverse.h',
'compiler/translator/tree_util/NodeSearch.h',
'compiler/translator/tree_util/ReplaceVariable.cpp',
'compiler/translator/tree_util/ReplaceVariable.h',
'compiler/translator/tree_util/RunAtTheEndOfShader.cpp',
'compiler/translator/tree_util/RunAtTheEndOfShader.h',
'compiler/translator/tree_util/Visit.h',
'third_party/compiler/ArrayBoundsClamper.cpp',
'third_party/compiler/ArrayBoundsClamper.h',
],
'angle_translator_essl_sources':
[
'compiler/translator/OutputESSL.cpp',
'compiler/translator/OutputESSL.h',
'compiler/translator/TranslatorESSL.cpp',
'compiler/translator/TranslatorESSL.h',
],
'angle_translator_glsl_sources':
[
'compiler/translator/BuiltInFunctionEmulatorGLSL.cpp',
'compiler/translator/BuiltInFunctionEmulatorGLSL.h',
'compiler/translator/ExtensionGLSL.cpp',
'compiler/translator/ExtensionGLSL.h',
'compiler/translator/OutputGLSL.cpp',
'compiler/translator/OutputGLSL.h',
'compiler/translator/OutputGLSLBase.cpp',
'compiler/translator/OutputGLSLBase.h',
'compiler/translator/TranslatorGLSL.cpp',
'compiler/translator/TranslatorGLSL.h',
'compiler/translator/VersionGLSL.cpp',
'compiler/translator/VersionGLSL.h',
],
'angle_translator_hlsl_sources':
[
'compiler/translator/ASTMetadataHLSL.cpp',
'compiler/translator/ASTMetadataHLSL.h',
'compiler/translator/blocklayoutHLSL.cpp',
'compiler/translator/blocklayoutHLSL.h',
'compiler/translator/BuiltInFunctionEmulatorHLSL.cpp',
'compiler/translator/BuiltInFunctionEmulatorHLSL.h',
'compiler/translator/OutputHLSL.cpp',
'compiler/translator/OutputHLSL.h',
'compiler/translator/ResourcesHLSL.cpp',
'compiler/translator/ResourcesHLSL.h',
'compiler/translator/StructureHLSL.cpp',
'compiler/translator/StructureHLSL.h',
'compiler/translator/TextureFunctionHLSL.cpp',
'compiler/translator/TextureFunctionHLSL.h',
'compiler/translator/ImageFunctionHLSL.cpp',
'compiler/translator/ImageFunctionHLSL.h',
'compiler/translator/TranslatorHLSL.cpp',
'compiler/translator/TranslatorHLSL.h',
'compiler/translator/UtilsHLSL.cpp',
'compiler/translator/UtilsHLSL.h',
'compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp',
'compiler/translator/tree_ops/AddDefaultReturnStatements.cpp',
'compiler/translator/tree_ops/AddDefaultReturnStatements.h',
'compiler/translator/tree_ops/ArrayReturnValueToOutParameter.cpp',
'compiler/translator/tree_ops/ArrayReturnValueToOutParameter.h',
'compiler/translator/tree_ops/RemoveDynamicIndexing.cpp',
'compiler/translator/tree_ops/RemoveDynamicIndexing.h',
'compiler/translator/tree_ops/RemoveSwitchFallThrough.cpp',
'compiler/translator/tree_ops/RemoveSwitchFallThrough.h',
'compiler/translator/tree_ops/RewriteElseBlocks.cpp',
'compiler/translator/tree_ops/RewriteElseBlocks.h',
'compiler/translator/tree_ops/SeparateArrayConstructorStatements.cpp',
'compiler/translator/tree_ops/SeparateArrayConstructorStatements.h',
'compiler/translator/tree_ops/SeparateArrayInitialization.cpp',
'compiler/translator/tree_ops/SeparateArrayInitialization.h',
'compiler/translator/tree_ops/SeparateExpressionsReturningArrays.cpp',
'compiler/translator/tree_ops/SeparateExpressionsReturningArrays.h',
'compiler/translator/tree_ops/UnfoldShortCircuitToIf.cpp',
'compiler/translator/tree_ops/UnfoldShortCircuitToIf.h',
'compiler/translator/tree_ops/WrapSwitchStatementsInBlocks.cpp',
'compiler/translator/tree_ops/WrapSwitchStatementsInBlocks.h',
],
'angle_translator_lib_vulkan_sources':
[
'compiler/translator/OutputVulkanGLSL.cpp',
'compiler/translator/OutputVulkanGLSL.h',
'compiler/translator/TranslatorVulkan.cpp',
'compiler/translator/TranslatorVulkan.h',
],
'angle_preprocessor_sources':
[
'compiler/preprocessor/DiagnosticsBase.cpp',
'compiler/preprocessor/DiagnosticsBase.h',
'compiler/preprocessor/DirectiveHandlerBase.cpp',
'compiler/preprocessor/DirectiveHandlerBase.h',
'compiler/preprocessor/DirectiveParser.cpp',
'compiler/preprocessor/DirectiveParser.h',
'compiler/preprocessor/ExpressionParser.cpp',
'compiler/preprocessor/ExpressionParser.h',
'compiler/preprocessor/ExpressionParser.y',
'compiler/preprocessor/Input.cpp',
'compiler/preprocessor/Input.h',
'compiler/preprocessor/Lexer.cpp',
'compiler/preprocessor/Lexer.h',
'compiler/preprocessor/Macro.cpp',
'compiler/preprocessor/Macro.h',
'compiler/preprocessor/MacroExpander.cpp',
'compiler/preprocessor/MacroExpander.h',
'compiler/preprocessor/Preprocessor.cpp',
'compiler/preprocessor/Preprocessor.h',
'compiler/preprocessor/SourceLocation.h',
'compiler/preprocessor/Token.cpp',
'compiler/preprocessor/Token.h',
'compiler/preprocessor/Tokenizer.cpp',
'compiler/preprocessor/Tokenizer.h',
'compiler/preprocessor/Tokenizer.l',
'compiler/preprocessor/numeric_lex.h',
],
},
# Everything below this is duplicated in the GN build. If you change
# anything also change angle/BUILD.gn
'targets':
[
{
'target_name': 'preprocessor',
'type': 'static_library',
'dependencies': [ 'angle_common' ],
'includes': [ '../gyp/common_defines.gypi', ],
'sources': [ '<@(angle_preprocessor_sources)', ],
},
{
'target_name': 'translator',
'type': 'static_library',
'dependencies': [ 'preprocessor', 'angle_common' ],
'includes': [ '../gyp/common_defines.gypi', ],
'include_dirs':
[
'.',
'../include',
],
'sources':
[
'<@(angle_translator_sources)',
],
'msvs_settings':
{
'VCLibrarianTool':
{
'AdditionalOptions': ['/ignore:4221']
},
},
'conditions':
[
['angle_enable_essl==1',
{
'defines':
[
'ANGLE_ENABLE_ESSL',
],
'direct_dependent_settings':
{
'defines':
[
'ANGLE_ENABLE_ESSL',
],
},
'sources':
[
'<@(angle_translator_essl_sources)',
],
}],
['angle_enable_glsl==1',
{
'defines':
[
'ANGLE_ENABLE_GLSL',
],
'direct_dependent_settings':
{
'defines':
[
'ANGLE_ENABLE_GLSL',
],
},
'sources':
[
'<@(angle_translator_glsl_sources)',
],
}],
['angle_enable_hlsl==1',
{
'defines':
[
'ANGLE_ENABLE_HLSL',
],
'direct_dependent_settings':
{
'defines':
[
'ANGLE_ENABLE_HLSL',
],
},
'sources':
[
'<@(angle_translator_hlsl_sources)',
],
}],
['angle_enable_vulkan==1',
{
'defines':
[
'ANGLE_ENABLE_VULKAN',
],
'direct_dependent_settings':
{
'defines':
[
'ANGLE_ENABLE_VULKAN',
],
},
'sources':
[
'<@(angle_translator_lib_vulkan_sources)',
],
}],
],
},
],
}
angle_translator_sources =
[
"../include/EGL/egl.h",
"../include/EGL/eglext.h",
"../include/EGL/eglplatform.h",
"../include/GLES2/gl2.h",
"../include/GLES2/gl2ext.h",
"../include/GLES2/gl2platform.h",
"../include/GLES3/gl3.h",
"../include/GLES3/gl3platform.h",
"../include/GLES3/gl31.h",
"../include/GLES3/gl32.h",
"../include/GLSLANG/ShaderLang.h",
"../include/GLSLANG/ShaderVars.h",
"../include/KHR/khrplatform.h",
"../include/angle_gl.h",
"compiler/translator/BaseTypes.h",
"compiler/translator/BuiltInFunctionEmulator.cpp",
"compiler/translator/BuiltInFunctionEmulator.h",
"compiler/translator/CallDAG.cpp",
"compiler/translator/CallDAG.h",
"compiler/translator/CodeGen.cpp",
"compiler/translator/CollectVariables.cpp",
"compiler/translator/CollectVariables.h",
"compiler/translator/Common.h",
"compiler/translator/Compiler.cpp",
"compiler/translator/Compiler.h",
"compiler/translator/ConstantUnion.cpp",
"compiler/translator/ConstantUnion.h",
"compiler/translator/Declarator.cpp",
"compiler/translator/Declarator.h",
"compiler/translator/Diagnostics.cpp",
"compiler/translator/Diagnostics.h",
"compiler/translator/DirectiveHandler.cpp",
"compiler/translator/DirectiveHandler.h",
"compiler/translator/ExtensionBehavior.cpp",
"compiler/translator/ExtensionBehavior.h",
"compiler/translator/FlagStd140Structs.cpp",
"compiler/translator/FlagStd140Structs.h",
"compiler/translator/FunctionLookup.cpp",
"compiler/translator/FunctionLookup.h",
"compiler/translator/HashNames.cpp",
"compiler/translator/HashNames.h",
"compiler/translator/ImmutableString.cpp",
"compiler/translator/ImmutableString.h",
"compiler/translator/ImmutableStringBuilder.cpp",
"compiler/translator/ImmutableStringBuilder.h",
"compiler/translator/InfoSink.cpp",
"compiler/translator/InfoSink.h",
"compiler/translator/Initialize.cpp",
"compiler/translator/Initialize.h",
"compiler/translator/InitializeDll.cpp",
"compiler/translator/InitializeDll.h",
"compiler/translator/InitializeGlobals.h",
"compiler/translator/IntermNode.h",
"compiler/translator/IntermNode.cpp",
"compiler/translator/IsASTDepthBelowLimit.cpp",
"compiler/translator/IsASTDepthBelowLimit.h",
"compiler/translator/Operator.cpp",
"compiler/translator/Operator.h",
"compiler/translator/OutputTree.cpp",
"compiler/translator/OutputTree.h",
"compiler/translator/ParseContext.cpp",
"compiler/translator/ParseContext.h",
"compiler/translator/ParseContext_autogen.h",
"compiler/translator/PoolAlloc.cpp",
"compiler/translator/PoolAlloc.h",
"compiler/translator/Pragma.h",
"compiler/translator/QualifierTypes.h",
"compiler/translator/QualifierTypes.cpp",
"compiler/translator/Severity.h",
"compiler/translator/ShaderLang.cpp",
"compiler/translator/ShaderVars.cpp",
"compiler/translator/StaticType.h",
"compiler/translator/Symbol.cpp",
"compiler/translator/Symbol.h",
"compiler/translator/SymbolTable.cpp",
"compiler/translator/SymbolTable.h",
"compiler/translator/SymbolTable_autogen.cpp",
"compiler/translator/SymbolTable_autogen.h",
"compiler/translator/SymbolUniqueId.cpp",
"compiler/translator/SymbolUniqueId.h",
"compiler/translator/Types.cpp",
"compiler/translator/Types.h",
"compiler/translator/ValidateGlobalInitializer.cpp",
"compiler/translator/ValidateGlobalInitializer.h",
"compiler/translator/ValidateLimitations.cpp",
"compiler/translator/ValidateLimitations.h",
"compiler/translator/ValidateMaxParameters.h",
"compiler/translator/ValidateMaxParameters.cpp",
"compiler/translator/ValidateOutputs.cpp",
"compiler/translator/ValidateOutputs.h",
"compiler/translator/ValidateSwitch.cpp",
"compiler/translator/ValidateSwitch.h",
"compiler/translator/ValidateVaryingLocations.cpp",
"compiler/translator/ValidateVaryingLocations.h",
"compiler/translator/VariablePacker.cpp",
"compiler/translator/VariablePacker.h",
"compiler/translator/blocklayout.cpp",
"compiler/translator/blocklayout.h",
"compiler/translator/glslang.h",
"compiler/translator/glslang.l",
"compiler/translator/glslang.y",
"compiler/translator/glslang_lex.cpp",
"compiler/translator/glslang_tab.cpp",
"compiler/translator/glslang_tab.h",
"compiler/translator/length_limits.h",
"compiler/translator/util.cpp",
"compiler/translator/util.h",
"compiler/translator/tree_ops/AddAndTrueToLoopCondition.cpp",
"compiler/translator/tree_ops/AddAndTrueToLoopCondition.h",
"compiler/translator/tree_ops/BreakVariableAliasingInInnerLoops.cpp",
"compiler/translator/tree_ops/BreakVariableAliasingInInnerLoops.h",
"compiler/translator/tree_ops/ClampFragDepth.cpp",
"compiler/translator/tree_ops/ClampFragDepth.h",
"compiler/translator/tree_ops/ClampPointSize.cpp",
"compiler/translator/tree_ops/ClampPointSize.h",
"compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.h",
"compiler/translator/tree_ops/DeclareAndInitBuiltinsForInstancedMultiview.cpp",
"compiler/translator/tree_ops/DeferGlobalInitializers.cpp",
"compiler/translator/tree_ops/DeferGlobalInitializers.h",
"compiler/translator/tree_ops/EmulateGLFragColorBroadcast.cpp",
"compiler/translator/tree_ops/EmulateGLFragColorBroadcast.h",
"compiler/translator/tree_ops/EmulatePrecision.cpp",
"compiler/translator/tree_ops/EmulatePrecision.h",
"compiler/translator/tree_ops/ExpandIntegerPowExpressions.cpp",
"compiler/translator/tree_ops/ExpandIntegerPowExpressions.h",
"compiler/translator/tree_ops/FoldExpressions.cpp",
"compiler/translator/tree_ops/FoldExpressions.h",
"compiler/translator/tree_ops/InitializeVariables.cpp",
"compiler/translator/tree_ops/InitializeVariables.h",
"compiler/translator/tree_ops/NameEmbeddedUniformStructs.cpp",
"compiler/translator/tree_ops/NameEmbeddedUniformStructs.h",
"compiler/translator/tree_ops/PruneEmptyCases.cpp",
"compiler/translator/tree_ops/PruneEmptyCases.h",
"compiler/translator/tree_ops/PruneNoOps.cpp",
"compiler/translator/tree_ops/PruneNoOps.h",
"compiler/translator/tree_ops/RecordConstantPrecision.cpp",
"compiler/translator/tree_ops/RecordConstantPrecision.h",
"compiler/translator/tree_ops/RegenerateStructNames.cpp",
"compiler/translator/tree_ops/RegenerateStructNames.h",
"compiler/translator/tree_ops/RemoveArrayLengthMethod.cpp",
"compiler/translator/tree_ops/RemoveArrayLengthMethod.h",
"compiler/translator/tree_ops/RemoveInvariantDeclaration.cpp",
"compiler/translator/tree_ops/RemoveInvariantDeclaration.h",
"compiler/translator/tree_ops/RemovePow.cpp",
"compiler/translator/tree_ops/RemovePow.h",
"compiler/translator/tree_ops/RemoveUnreferencedVariables.cpp",
"compiler/translator/tree_ops/RemoveUnreferencedVariables.h",
"compiler/translator/tree_ops/RewriteAtomicFunctionExpressions.cpp",
"compiler/translator/tree_ops/RewriteAtomicFunctionExpressions.h",
"compiler/translator/tree_ops/RewriteDoWhile.cpp",
"compiler/translator/tree_ops/RewriteDoWhile.h",
"compiler/translator/tree_ops/RewriteStructSamplers.cpp",
"compiler/translator/tree_ops/RewriteStructSamplers.h",
"compiler/translator/tree_ops/RewriteRepeatedAssignToSwizzled.cpp",
"compiler/translator/tree_ops/RewriteRepeatedAssignToSwizzled.h",
"compiler/translator/tree_ops/RewriteTexelFetchOffset.cpp",
"compiler/translator/tree_ops/RewriteTexelFetchOffset.h",
"compiler/translator/tree_ops/RewriteUnaryMinusOperatorFloat.cpp",
"compiler/translator/tree_ops/RewriteUnaryMinusOperatorFloat.h",
"compiler/translator/tree_ops/RewriteUnaryMinusOperatorInt.cpp",
"compiler/translator/tree_ops/RewriteUnaryMinusOperatorInt.h",
"compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.cpp",
"compiler/translator/tree_ops/ScalarizeVecAndMatConstructorArgs.h",
"compiler/translator/tree_ops/SeparateDeclarations.cpp",
"compiler/translator/tree_ops/SeparateDeclarations.h",
"compiler/translator/tree_ops/SimplifyLoopConditions.cpp",
"compiler/translator/tree_ops/SimplifyLoopConditions.h",
"compiler/translator/tree_ops/SplitSequenceOperator.cpp",
"compiler/translator/tree_ops/SplitSequenceOperator.h",
"compiler/translator/tree_ops/UnfoldShortCircuitAST.cpp",
"compiler/translator/tree_ops/UnfoldShortCircuitAST.h",
"compiler/translator/tree_ops/UseInterfaceBlockFields.cpp",
"compiler/translator/tree_ops/UseInterfaceBlockFields.h",
"compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.cpp",
"compiler/translator/tree_ops/VectorizeVectorScalarArithmetic.h",
"compiler/translator/tree_util/BuiltIn_autogen.h",
"compiler/translator/tree_util/FindMain.cpp",
"compiler/translator/tree_util/FindMain.h",
"compiler/translator/tree_util/FindSymbolNode.cpp",
"compiler/translator/tree_util/FindSymbolNode.h",
"compiler/translator/tree_util/IntermNodePatternMatcher.cpp",
"compiler/translator/tree_util/IntermNodePatternMatcher.h",
"compiler/translator/tree_util/IntermNode_util.cpp",
"compiler/translator/tree_util/IntermNode_util.h",
"compiler/translator/tree_util/IntermTraverse.cpp",
"compiler/translator/tree_util/IntermTraverse.h",
"compiler/translator/tree_util/NodeSearch.h",
"compiler/translator/tree_util/ReplaceVariable.cpp",
"compiler/translator/tree_util/ReplaceVariable.h",
"compiler/translator/tree_util/RunAtTheEndOfShader.cpp",
"compiler/translator/tree_util/RunAtTheEndOfShader.h",
"compiler/translator/tree_util/Visit.h",
"third_party/compiler/ArrayBoundsClamper.cpp",
"third_party/compiler/ArrayBoundsClamper.h",
]
angle_translator_essl_sources =
[
"compiler/translator/OutputESSL.cpp",
"compiler/translator/OutputESSL.h",
"compiler/translator/TranslatorESSL.cpp",
"compiler/translator/TranslatorESSL.h",
]
angle_translator_glsl_sources =
[
"compiler/translator/BuiltInFunctionEmulatorGLSL.cpp",
"compiler/translator/BuiltInFunctionEmulatorGLSL.h",
"compiler/translator/ExtensionGLSL.cpp",
"compiler/translator/ExtensionGLSL.h",
"compiler/translator/OutputGLSL.cpp",
"compiler/translator/OutputGLSL.h",
"compiler/translator/OutputGLSLBase.cpp",
"compiler/translator/OutputGLSLBase.h",
"compiler/translator/TranslatorGLSL.cpp",
"compiler/translator/TranslatorGLSL.h",
"compiler/translator/VersionGLSL.cpp",
"compiler/translator/VersionGLSL.h",
]
angle_translator_hlsl_sources =
[
"compiler/translator/ASTMetadataHLSL.cpp",
"compiler/translator/ASTMetadataHLSL.h",
"compiler/translator/blocklayoutHLSL.cpp",
"compiler/translator/blocklayoutHLSL.h",
"compiler/translator/BuiltInFunctionEmulatorHLSL.cpp",
"compiler/translator/BuiltInFunctionEmulatorHLSL.h",
"compiler/translator/OutputHLSL.cpp",
"compiler/translator/OutputHLSL.h",
"compiler/translator/ResourcesHLSL.cpp",
"compiler/translator/ResourcesHLSL.h",
"compiler/translator/StructureHLSL.cpp",
"compiler/translator/StructureHLSL.h",
"compiler/translator/TextureFunctionHLSL.cpp",
"compiler/translator/TextureFunctionHLSL.h",
"compiler/translator/ImageFunctionHLSL.cpp",
"compiler/translator/ImageFunctionHLSL.h",
"compiler/translator/TranslatorHLSL.cpp",
"compiler/translator/TranslatorHLSL.h",
"compiler/translator/UtilsHLSL.cpp",
"compiler/translator/UtilsHLSL.h",
"compiler/translator/emulated_builtin_functions_hlsl_autogen.cpp",
"compiler/translator/tree_ops/AddDefaultReturnStatements.cpp",
"compiler/translator/tree_ops/AddDefaultReturnStatements.h",
"compiler/translator/tree_ops/ArrayReturnValueToOutParameter.cpp",
"compiler/translator/tree_ops/ArrayReturnValueToOutParameter.h",
"compiler/translator/tree_ops/RemoveDynamicIndexing.cpp",
"compiler/translator/tree_ops/RemoveDynamicIndexing.h",
"compiler/translator/tree_ops/RemoveSwitchFallThrough.cpp",
"compiler/translator/tree_ops/RemoveSwitchFallThrough.h",
"compiler/translator/tree_ops/RewriteElseBlocks.cpp",
"compiler/translator/tree_ops/RewriteElseBlocks.h",
"compiler/translator/tree_ops/SeparateArrayConstructorStatements.cpp",
"compiler/translator/tree_ops/SeparateArrayConstructorStatements.h",
"compiler/translator/tree_ops/SeparateArrayInitialization.cpp",
"compiler/translator/tree_ops/SeparateArrayInitialization.h",
"compiler/translator/tree_ops/SeparateExpressionsReturningArrays.cpp",
"compiler/translator/tree_ops/SeparateExpressionsReturningArrays.h",
"compiler/translator/tree_ops/UnfoldShortCircuitToIf.cpp",
"compiler/translator/tree_ops/UnfoldShortCircuitToIf.h",
"compiler/translator/tree_ops/WrapSwitchStatementsInBlocks.cpp",
"compiler/translator/tree_ops/WrapSwitchStatementsInBlocks.h",
]
angle_translator_lib_vulkan_sources =
[
"compiler/translator/OutputVulkanGLSL.cpp",
"compiler/translator/OutputVulkanGLSL.h",
"compiler/translator/TranslatorVulkan.cpp",
"compiler/translator/TranslatorVulkan.h",
]
angle_preprocessor_sources =
[
"compiler/preprocessor/DiagnosticsBase.cpp",
"compiler/preprocessor/DiagnosticsBase.h",
"compiler/preprocessor/DirectiveHandlerBase.cpp",
"compiler/preprocessor/DirectiveHandlerBase.h",
"compiler/preprocessor/DirectiveParser.cpp",
"compiler/preprocessor/DirectiveParser.h",
"compiler/preprocessor/ExpressionParser.cpp",
"compiler/preprocessor/ExpressionParser.h",
"compiler/preprocessor/ExpressionParser.y",
"compiler/preprocessor/Input.cpp",
"compiler/preprocessor/Input.h",
"compiler/preprocessor/Lexer.cpp",
"compiler/preprocessor/Lexer.h",
"compiler/preprocessor/Macro.cpp",
"compiler/preprocessor/Macro.h",
"compiler/preprocessor/MacroExpander.cpp",
"compiler/preprocessor/MacroExpander.h",
"compiler/preprocessor/Preprocessor.cpp",
"compiler/preprocessor/Preprocessor.h",
"compiler/preprocessor/SourceLocation.h",
"compiler/preprocessor/Token.cpp",
"compiler/preprocessor/Token.h",
"compiler/preprocessor/Tokenizer.cpp",
"compiler/preprocessor/Tokenizer.h",
"compiler/preprocessor/Tokenizer.l",
"compiler/preprocessor/numeric_lex.h",
]

View File

@@ -1,91 +0,0 @@
# Copyright (c) 2013 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
# Everything below this is duplicated in the GN build. If you change
# anything also change angle/BUILD.gn
'targets':
[
{
'target_name': 'libEGL',
'type': '<(angle_gl_library_type)',
'dependencies':
[
'libGLESv2',
],
'includes':
[
'../gyp/common_defines.gypi',
],
'include_dirs':
[
'.',
'../include',
],
'sources':
[
'libEGL/libEGL.def',
'<@(libegl_sources)',
],
'conditions':
[
['angle_build_winrt==1',
{
'msvs_requires_importlibrary' : 'true',
}],
['OS=="win"', {
'defines':
[
'EGLAPI=',
],
}, {
'defines':
[
'EGLAPI=__attribute__((visibility("default")))',
],
}],
['OS == "mac"',
{
'xcode_settings':
{
'DYLIB_INSTALL_NAME_BASE': '@rpath',
},
}],
],
},
{
'target_name': 'libEGL_static',
'type': 'static_library',
'dependencies':
[
'libGLESv2_static',
],
'includes':
[
'../gyp/common_defines.gypi',
],
'include_dirs':
[
'.',
'../include',
],
'sources':
[
'<@(libegl_sources)',
],
'defines':
[
'EGLAPI=',
],
'direct_dependent_settings':
{
'defines':
[
'EGLAPI=',
],
},
},
],
}

File diff suppressed because it is too large Load Diff

View File

@@ -5,14 +5,7 @@
import("../../gni/angle.gni")
import("//build/config/chromecast_build.gni")
import("//testing/test.gni")
unittests_gypi = exec_script("//build/gypi_to_gn.py",
[
rebase_path("angle_unittests.gypi"),
"--replace=<(angle_path)=.",
],
"scope",
[ "angle_unittests.gypi" ])
import("angle_unittests.gypi")
declare_args() {
# Don't build dEQP by default.
@@ -96,11 +89,10 @@ if (build_with_chromium) {
test("angle_unittests") {
include_dirs = [ "$angle_root/src" ]
sources = rebase_path(unittests_gypi.angle_unittests_sources, ".", "../..")
sources = rebase_path(angle_unittests_sources, ".", "../..")
if (angle_enable_hlsl) {
sources +=
rebase_path(unittests_gypi.angle_unittests_hlsl_sources, ".", "../..")
sources += rebase_path(angle_unittests_hlsl_sources, ".", "../..")
defines = [ "ANGLE_ENABLE_HLSL" ]
}
@@ -118,13 +110,7 @@ test("angle_unittests") {
}
if (is_win || is_linux || is_mac || is_android) {
end2end_gypi = exec_script("//build/gypi_to_gn.py",
[
rebase_path("angle_end2end_tests.gypi"),
"--replace=<(angle_path)=.",
],
"scope",
[ "angle_end2end_tests.gypi" ])
import("angle_end2end_tests.gypi")
test("angle_end2end_tests") {
include_dirs = [
@@ -140,28 +126,21 @@ if (is_win || is_linux || is_mac || is_android) {
use_native_activity = true
}
sources =
rebase_path(end2end_gypi.angle_end2end_tests_sources, ".", "../..")
sources = rebase_path(angle_end2end_tests_sources, ".", "../..")
libs = []
if (is_mac) {
sources += rebase_path(end2end_gypi.angle_end2end_tests_mac_sources,
".",
"../..")
sources += rebase_path(angle_end2end_tests_mac_sources, ".", "../..")
libs += [
"CoreFoundation.framework",
"IOSurface.framework",
]
}
if (is_win) {
sources += rebase_path(end2end_gypi.angle_end2end_tests_win_sources,
".",
"../..")
sources += rebase_path(angle_end2end_tests_win_sources, ".", "../..")
}
if (use_x11) {
sources += rebase_path(end2end_gypi.angle_end2end_tests_x11_sources,
".",
"../..")
sources += rebase_path(angle_end2end_tests_x11_sources, ".", "../..")
}
if (build_with_chromium) {
@@ -191,13 +170,7 @@ if (is_win || is_linux || is_mac || is_android) {
]
}
white_box_gypi = exec_script("//build/gypi_to_gn.py",
[
rebase_path("angle_white_box_tests.gypi"),
"--replace=<(angle_path)=.",
],
"scope",
[ "angle_white_box_tests.gypi" ])
import("angle_white_box_tests.gypi")
test("angle_white_box_tests") {
include_dirs = [
@@ -209,13 +182,10 @@ if (is_win || is_linux || is_mac || is_android) {
use_native_activity = true
}
sources =
rebase_path(white_box_gypi.angle_white_box_tests_sources, ".", "../..")
sources = rebase_path(angle_white_box_tests_sources, ".", "../..")
if (is_win) {
sources += rebase_path(white_box_gypi.angle_white_box_tests_win_sources,
".",
"../..")
sources += rebase_path(angle_white_box_tests_win_sources, ".", "../..")
}
# Share the same main file as end2end_tests.
@@ -253,13 +223,7 @@ if (is_win || is_linux || is_mac || is_android) {
}
if (is_win || is_linux || is_android || is_mac) {
perftests_gypi = exec_script("//build/gypi_to_gn.py",
[
rebase_path("angle_perftests.gypi"),
"--replace=<(angle_path)=.",
],
"scope",
[ "angle_perftests.gypi" ])
import("angle_perftests.gypi")
test("angle_perftests") {
include_dirs = [
@@ -267,7 +231,7 @@ if (is_win || is_linux || is_android || is_mac) {
"../../util",
]
sources = rebase_path(perftests_gypi.angle_perf_tests_sources, ".", "../..")
sources = rebase_path(angle_perf_tests_sources, ".", "../..")
deps = googletest_deps + [
angle_root + ":angle_util_static",
@@ -282,19 +246,15 @@ if (is_win || is_linux || is_android || is_mac) {
}
if (is_win) {
sources +=
rebase_path(perftests_gypi.angle_perf_tests_win_sources, ".", "../..")
sources += rebase_path(angle_perf_tests_win_sources, ".", "../..")
}
if (angle_enable_vulkan) {
sources += rebase_path(perftests_gypi.angle_perf_tests_vulkan_sources,
".",
"../..")
sources += rebase_path(angle_perf_tests_vulkan_sources, ".", "../..")
if (is_android || is_linux) {
sources += rebase_path(
perftests_gypi.angle_perf_tests_vulkan_command_buffer_sources,
".",
"../..")
sources += rebase_path(angle_perf_tests_vulkan_command_buffer_sources,
".",
"../..")
}
deps += [ "$angle_root/third_party/glslang:glslang" ]
public_configs = [ "$angle_root/third_party/glslang:glslang_config" ]
@@ -527,29 +487,51 @@ if (build_angle_gles1_conform_tests) {
###-----------------------------------------------------
if (build_angle_deqp_tests) {
deqp_gypi =
exec_script("//build/gypi_to_gn.py",
[
rebase_path("deqp.gypi"),
"--replace=<(angle_path)=.",
"--replace=<(deqp_path)=$angle_root/third_party/deqp/src",
],
"scope",
[ "deqp.gypi" ])
import("deqp.gypi")
config("angle_deqp_support") {
include_dirs = rebase_path(deqp_gypi.deqp_include_dirs, ".", "../..")
include_dirs = rebase_path(deqp_include_dirs, ".", "../..")
if (is_win && !is_clang) {
include_dirs +=
[ "$angle_root/third_party/deqp/src/framework/platform/win32" ]
cflags = deqp_gypi.deqp_win_cflags
cflags = [
"/EHsc", # dEQP requires exceptions
"/wd4091", # typedef ignored when no variable is declared
"/wd4100",
"/wd4125", # decimal digit terminates octal escape sequence
"/wd4127", # conditional expression constant
"/wd4244", # possible loss of data
"/wd4245", # argument signed/unsigned mismatch
"/wd4297", # function assumed not to throw an exception but does
"/wd4389", # signed/unsigned mismatch
"/wd4510", # default constructor could not be generated
"/wd4512",
"/wd4610", # cannot be instantiated
"/wd4611", # setjmp interaction non-portable
"/wd4701", # potentially uninit used
"/wd4702", # unreachable code
"/wd4706", # assignment within conditional expression
"/wd4838", # conversion requires a narrowing conversion
"/wd4996", # deprecated
]
}
if (is_android) {
include_dirs +=
[ "$angle_root/third_party/deqp/src/framework/platform/android" ]
}
defines = deqp_gypi.deqp_defines
defines += [ "_MBCS" ]
defines = [
"DEQP_SUPPORT_GLES31=1",
"DEQP_SUPPORT_GLES3=1",
"DEQP_SUPPORT_GLES2=1",
"DEQP_SUPPORT_EGL=1",
"DEQP_TARGET_NAME=\"angle\"",
"DEQP_GLES31_RUNTIME_LOAD=1",
"DEQP_GLES3_RUNTIME_LOAD=1",
"DEQP_GLES2_RUNTIME_LOAD=1",
"QP_SUPPORT_PNG=1",
"_HAS_EXCEPTIONS=1",
"_MBCS",
]
if (is_clang) {
# TODO(jmadill): Remove this once we fix dEQP.
@@ -600,7 +582,7 @@ if (build_angle_deqp_tests) {
]
}
sources = rebase_path(deqp_gypi.deqp_libtester_decpp_sources, ".", "../..")
sources = rebase_path(deqp_libtester_decpp_sources, ".", "../..")
}
config("angle_deqp_libtester_config") {
@@ -633,17 +615,15 @@ if (build_angle_deqp_tests) {
configs -= deqp_undefine_configs
public_configs = [ ":angle_deqp_libtester_config" ]
sources = rebase_path(deqp_gypi.deqp_libtester_sources, ".", "../..")
sources = rebase_path(deqp_libtester_sources, ".", "../..")
if (is_win) {
sources += rebase_path(deqp_gypi.deqp_libtester_sources_win, ".", "../..")
sources += rebase_path(deqp_libtester_sources_win, ".", "../..")
}
if (is_linux || is_android || is_mac) {
sources +=
rebase_path(deqp_gypi.deqp_libtester_sources_unix, ".", "../..")
sources += rebase_path(deqp_libtester_sources_unix, ".", "../..")
}
if (is_android) {
sources +=
rebase_path(deqp_gypi.deqp_libtester_sources_android, ".", "../..")
sources += rebase_path(deqp_libtester_sources_android, ".", "../..")
libs = [ "log" ]
}
}
@@ -662,9 +642,9 @@ if (build_angle_deqp_tests) {
public_configs = [ ":angle_deqp_gtest_support_config" ]
sources = deqp_gypi.deqp_gpu_test_expectations_sources
sources = deqp_gpu_test_expectations_sources
if (is_mac) {
sources += deqp_gypi.deqp_gpu_test_expectations_sources_mac
sources += deqp_gpu_test_expectations_sources_mac
libs = [ "Cocoa.framework" ]
}
@@ -692,10 +672,10 @@ if (build_angle_deqp_tests) {
"ANGLE_DEQP_EGL_TESTS",
]
target_sources = [
deqp_gypi.deqp_gles2_sources,
deqp_gypi.deqp_gles3_sources,
deqp_gypi.deqp_gles31_sources,
deqp_gypi.deqp_egl_sources,
deqp_gles2_sources,
deqp_gles3_sources,
deqp_gles31_sources,
deqp_egl_sources,
]
foreach(index,

View File

@@ -2,223 +2,156 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This .gypi describes all of the sources and dependencies to build a
# unified "angle_end2end_tests" target, which contains all of the
# tests that exercise the ANGLE implementation. It requires a parent
# target to include this gypi in an executable target containing a
# gtest harness in a main.cpp.
{
# Everything below this is duplicated in the GN build.
# If you change anything also change angle/src/tests/BUILD.gn
'variables':
{
'angle_end2end_tests_sources':
[
'<(angle_path)/src/tests/gl_tests/AtomicCounterBufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/AttributeLayoutTest.cpp',
'<(angle_path)/src/tests/gl_tests/BindGeneratesResourceTest.cpp',
'<(angle_path)/src/tests/gl_tests/BindUniformLocationTest.cpp',
'<(angle_path)/src/tests/gl_tests/BlendMinMaxTest.cpp',
'<(angle_path)/src/tests/gl_tests/BlitFramebufferANGLETest.cpp',
'<(angle_path)/src/tests/gl_tests/BufferDataTest.cpp',
'<(angle_path)/src/tests/gl_tests/BuiltinVariableTest.cpp',
'<(angle_path)/src/tests/gl_tests/ClearTest.cpp',
'<(angle_path)/src/tests/gl_tests/ClientArraysTest.cpp',
'<(angle_path)/src/tests/gl_tests/ColorMaskTest.cpp',
'<(angle_path)/src/tests/gl_tests/ComputeShaderTest.cpp',
'<(angle_path)/src/tests/gl_tests/CopyCompressedTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/CopyTexImageTest.cpp',
'<(angle_path)/src/tests/gl_tests/CopyTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/CubeMapTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/DebugMarkerTest.cpp',
'<(angle_path)/src/tests/gl_tests/DebugTest.cpp',
'<(angle_path)/src/tests/gl_tests/DepthStencilFormatsTest.cpp',
'<(angle_path)/src/tests/gl_tests/DiscardFramebufferEXTTest.cpp',
'<(angle_path)/src/tests/gl_tests/DrawBuffersTest.cpp',
'<(angle_path)/src/tests/gl_tests/DrawElementsTest.cpp',
'<(angle_path)/src/tests/gl_tests/DXT1CompressedTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/DXTSRGBCompressedTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/ETCTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/ExplicitContextTest.cpp',
'<(angle_path)/src/tests/gl_tests/FenceSyncTests.cpp',
'<(angle_path)/src/tests/gl_tests/FloatingPointSurfaceTest.cpp',
'<(angle_path)/src/tests/gl_tests/FramebufferMixedSamplesTest.cpp',
'<(angle_path)/src/tests/gl_tests/FramebufferMultiviewTest.cpp',
'<(angle_path)/src/tests/gl_tests/FramebufferRenderMipmapTest.cpp',
'<(angle_path)/src/tests/gl_tests/FramebufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/GeometryShaderTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/AlphaFuncTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/BasicDrawTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/ClientActiveTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/ClientStateEnable.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/ClipPlaneTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/CurrentColorTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/CurrentNormalTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/CurrentTextureCoordsTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/DrawTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/FogTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MaterialsTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MatrixBuiltinsTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MatrixLoadTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MatrixModeTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MatrixMultTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/MatrixStackTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/LightsTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/PointParameterTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/ShadeModelTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/TextureEnvTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/TextureParameterTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/TextureTargetEnableTest.cpp',
'<(angle_path)/src/tests/gl_tests/gles1/VertexPointerTest.cpp',
'<(angle_path)/src/tests/gl_tests/GLSLTest.cpp',
'<(angle_path)/src/tests/gl_tests/ImageTest.cpp',
'<(angle_path)/src/tests/gl_tests/IncompleteTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/IndexBufferOffsetTest.cpp',
'<(angle_path)/src/tests/gl_tests/IndexedPointsTest.cpp',
'<(angle_path)/src/tests/gl_tests/InstancingTest.cpp',
'<(angle_path)/src/tests/gl_tests/LineLoopTest.cpp',
'<(angle_path)/src/tests/gl_tests/LinkAndRelinkTest.cpp',
'<(angle_path)/src/tests/gl_tests/MaxTextureSizeTest.cpp',
'<(angle_path)/src/tests/gl_tests/MipmapTest.cpp',
'<(angle_path)/src/tests/gl_tests/MultisampleCompatibilityTest.cpp',
'<(angle_path)/src/tests/gl_tests/MultithreadingTest.cpp',
'<(angle_path)/src/tests/gl_tests/MultiviewDrawTest.cpp',
'<(angle_path)/src/tests/gl_tests/media/pixel.inl',
'<(angle_path)/src/tests/gl_tests/PackUnpackTest.cpp',
'<(angle_path)/src/tests/gl_tests/PathRenderingTest.cpp',
'<(angle_path)/src/tests/gl_tests/PbufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/PBOExtensionTest.cpp',
'<(angle_path)/src/tests/gl_tests/PointSpritesTest.cpp',
'<(angle_path)/src/tests/gl_tests/ProvokingVertexTest.cpp',
'<(angle_path)/src/tests/gl_tests/ObjectAllocationTest.cpp',
'<(angle_path)/src/tests/gl_tests/OcclusionQueriesTest.cpp',
'<(angle_path)/src/tests/gl_tests/ParallelShaderCompileTest.cpp',
'<(angle_path)/src/tests/gl_tests/ProgramBinaryTest.cpp',
'<(angle_path)/src/tests/gl_tests/ProgramInterfaceTest.cpp',
'<(angle_path)/src/tests/gl_tests/ProgramParameterTest.cpp',
'<(angle_path)/src/tests/gl_tests/ProgramPipelineTest.cpp',
'<(angle_path)/src/tests/gl_tests/ReadPixelsTest.cpp',
'<(angle_path)/src/tests/gl_tests/RenderbufferMultisampleTest.cpp',
'<(angle_path)/src/tests/gl_tests/RendererTest.cpp',
'<(angle_path)/src/tests/gl_tests/RequestExtensionTest.cpp',
'<(angle_path)/src/tests/gl_tests/RobustBufferAccessBehaviorTest.cpp',
'<(angle_path)/src/tests/gl_tests/RobustClientMemoryTest.cpp',
'<(angle_path)/src/tests/gl_tests/RobustResourceInitTest.cpp',
'<(angle_path)/src/tests/gl_tests/SamplersTest.cpp',
'<(angle_path)/src/tests/gl_tests/ShaderStorageBufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/SimpleOperationTest.cpp',
'<(angle_path)/src/tests/gl_tests/SixteenBppTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/SRGBFramebufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/SRGBTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/StateChangeTest.cpp',
'<(angle_path)/src/tests/gl_tests/SwizzleTest.cpp',
'<(angle_path)/src/tests/gl_tests/SyncQueriesTest.cpp',
'<(angle_path)/src/tests/gl_tests/TextureMultisampleTest.cpp',
'<(angle_path)/src/tests/gl_tests/TextureRectangleTest.cpp',
'<(angle_path)/src/tests/gl_tests/TextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/TextureUploadFormatTest.cpp',
'<(angle_path)/src/tests/gl_tests/TimerQueriesTest.cpp',
'<(angle_path)/src/tests/gl_tests/TransformFeedbackTest.cpp',
'<(angle_path)/src/tests/gl_tests/UniformBufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/UniformTest.cpp',
'<(angle_path)/src/tests/gl_tests/UnpackAlignmentTest.cpp',
'<(angle_path)/src/tests/gl_tests/UnpackRowLength.cpp',
'<(angle_path)/src/tests/gl_tests/VertexAttributeTest.cpp',
'<(angle_path)/src/tests/gl_tests/ViewportTest.cpp',
'<(angle_path)/src/tests/gl_tests/WebGLCompatibilityTest.cpp',
'<(angle_path)/src/tests/gl_tests/WebGLFramebufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/WebGLReadOutsideFramebufferTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLContextCompatibilityTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLContextSharingTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLDebugTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLProgramCacheControlTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLQueryContextTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLRobustnessTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLSanityCheckTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLSurfacelessContextTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLSurfaceTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLThreadTest.cpp',
'<(angle_path)/src/tests/test_utils/ANGLETest.cpp',
'<(angle_path)/src/tests/test_utils/ANGLETest.h',
'<(angle_path)/src/tests/test_utils/MultiviewTest.cpp',
'<(angle_path)/src/tests/test_utils/MultiviewTest.h',
'<(angle_path)/src/tests/test_utils/angle_test_configs.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_configs.h',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.h',
'<(angle_path)/src/tests/test_utils/gl_raii.h',
],
'angle_end2end_tests_mac_sources':
[
'<(angle_path)/src/tests/egl_tests/EGLIOSurfaceClientBufferTest.cpp',
],
'angle_end2end_tests_win_sources':
[
'<(angle_path)/src/tests/gl_tests/D3DImageFormatConversionTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLDeviceTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLPresentPathD3D11Test.cpp',
'<(angle_path)/src/tests/egl_tests/EGLStreamTest.cpp',
'<(angle_path)/src/tests/egl_tests/EGLSyncControlTest.cpp',
'<(angle_path)/src/tests/egl_tests/media/yuvtest.inl',
],
'angle_end2end_tests_x11_sources':
[
'<(angle_path)/src/tests/egl_tests/EGLX11VisualTest.cpp',
],
},
'dependencies':
[
'<(angle_path)/src/angle.gyp:angle_image_util',
# We use the D3D11 config for enabling Debug runtime error logging.
'<(angle_path)/src/angle.gyp:libANGLE_d3d11_config',
# This lets us filter test configs more intelligently.
'<(angle_path)/src/angle.gyp:libANGLE_renderer_config',
'<(angle_path)/src/angle.gyp:libEGL',
'<(angle_path)/src/angle.gyp:libGLESv1_CM',
'<(angle_path)/src/angle.gyp:libGLESv2',
'<(angle_path)/src/tests/tests.gyp:angle_test_support',
'<(angle_path)/util/util.gyp:angle_util',
],
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src/tests'
],
'sources':
[
'<@(angle_end2end_tests_sources)',
],
'conditions':
[
['OS=="mac"',
{
'sources':
[
'<@(angle_end2end_tests_mac_sources)',
],
'link_settings':
{
'libraries':
[
'$(SDKROOT)/System/Library/Frameworks/CoreFoundation.framework',
'$(SDKROOT)/System/Library/Frameworks/IOSurface.framework',
],
},
}],
['OS=="win"',
{
'sources':
[
'<@(angle_end2end_tests_win_sources)',
],
}],
['use_x11==1',
{
'sources':
[
'<@(angle_end2end_tests_x11_sources)',
],
}],
]
}
angle_end2end_tests_sources =
[
"src/tests/gl_tests/AtomicCounterBufferTest.cpp",
"src/tests/gl_tests/AttributeLayoutTest.cpp",
"src/tests/gl_tests/BindGeneratesResourceTest.cpp",
"src/tests/gl_tests/BindUniformLocationTest.cpp",
"src/tests/gl_tests/BlendMinMaxTest.cpp",
"src/tests/gl_tests/BlitFramebufferANGLETest.cpp",
"src/tests/gl_tests/BufferDataTest.cpp",
"src/tests/gl_tests/BuiltinVariableTest.cpp",
"src/tests/gl_tests/ClearTest.cpp",
"src/tests/gl_tests/ClientArraysTest.cpp",
"src/tests/gl_tests/ColorMaskTest.cpp",
"src/tests/gl_tests/ComputeShaderTest.cpp",
"src/tests/gl_tests/CopyCompressedTextureTest.cpp",
"src/tests/gl_tests/CopyTexImageTest.cpp",
"src/tests/gl_tests/CopyTextureTest.cpp",
"src/tests/gl_tests/CubeMapTextureTest.cpp",
"src/tests/gl_tests/DebugMarkerTest.cpp",
"src/tests/gl_tests/DebugTest.cpp",
"src/tests/gl_tests/DepthStencilFormatsTest.cpp",
"src/tests/gl_tests/DiscardFramebufferEXTTest.cpp",
"src/tests/gl_tests/DrawBuffersTest.cpp",
"src/tests/gl_tests/DrawElementsTest.cpp",
"src/tests/gl_tests/DXT1CompressedTextureTest.cpp",
"src/tests/gl_tests/DXTSRGBCompressedTextureTest.cpp",
"src/tests/gl_tests/ETCTextureTest.cpp",
"src/tests/gl_tests/ExplicitContextTest.cpp",
"src/tests/gl_tests/FenceSyncTests.cpp",
"src/tests/gl_tests/FloatingPointSurfaceTest.cpp",
"src/tests/gl_tests/FramebufferMixedSamplesTest.cpp",
"src/tests/gl_tests/FramebufferMultiviewTest.cpp",
"src/tests/gl_tests/FramebufferRenderMipmapTest.cpp",
"src/tests/gl_tests/FramebufferTest.cpp",
"src/tests/gl_tests/GeometryShaderTest.cpp",
"src/tests/gl_tests/gles1/AlphaFuncTest.cpp",
"src/tests/gl_tests/gles1/BasicDrawTest.cpp",
"src/tests/gl_tests/gles1/ClientActiveTextureTest.cpp",
"src/tests/gl_tests/gles1/ClientStateEnable.cpp",
"src/tests/gl_tests/gles1/ClipPlaneTest.cpp",
"src/tests/gl_tests/gles1/CurrentColorTest.cpp",
"src/tests/gl_tests/gles1/CurrentNormalTest.cpp",
"src/tests/gl_tests/gles1/CurrentTextureCoordsTest.cpp",
"src/tests/gl_tests/gles1/DrawTextureTest.cpp",
"src/tests/gl_tests/gles1/FogTest.cpp",
"src/tests/gl_tests/gles1/MaterialsTest.cpp",
"src/tests/gl_tests/gles1/MatrixBuiltinsTest.cpp",
"src/tests/gl_tests/gles1/MatrixLoadTest.cpp",
"src/tests/gl_tests/gles1/MatrixModeTest.cpp",
"src/tests/gl_tests/gles1/MatrixMultTest.cpp",
"src/tests/gl_tests/gles1/MatrixStackTest.cpp",
"src/tests/gl_tests/gles1/LightsTest.cpp",
"src/tests/gl_tests/gles1/PointParameterTest.cpp",
"src/tests/gl_tests/gles1/ShadeModelTest.cpp",
"src/tests/gl_tests/gles1/TextureEnvTest.cpp",
"src/tests/gl_tests/gles1/TextureParameterTest.cpp",
"src/tests/gl_tests/gles1/TextureTargetEnableTest.cpp",
"src/tests/gl_tests/gles1/VertexPointerTest.cpp",
"src/tests/gl_tests/GLSLTest.cpp",
"src/tests/gl_tests/ImageTest.cpp",
"src/tests/gl_tests/IncompleteTextureTest.cpp",
"src/tests/gl_tests/IndexBufferOffsetTest.cpp",
"src/tests/gl_tests/IndexedPointsTest.cpp",
"src/tests/gl_tests/InstancingTest.cpp",
"src/tests/gl_tests/LineLoopTest.cpp",
"src/tests/gl_tests/LinkAndRelinkTest.cpp",
"src/tests/gl_tests/MaxTextureSizeTest.cpp",
"src/tests/gl_tests/MipmapTest.cpp",
"src/tests/gl_tests/MultisampleCompatibilityTest.cpp",
"src/tests/gl_tests/MultithreadingTest.cpp",
"src/tests/gl_tests/MultiviewDrawTest.cpp",
"src/tests/gl_tests/media/pixel.inl",
"src/tests/gl_tests/PackUnpackTest.cpp",
"src/tests/gl_tests/PathRenderingTest.cpp",
"src/tests/gl_tests/PbufferTest.cpp",
"src/tests/gl_tests/PBOExtensionTest.cpp",
"src/tests/gl_tests/PointSpritesTest.cpp",
"src/tests/gl_tests/ProvokingVertexTest.cpp",
"src/tests/gl_tests/ObjectAllocationTest.cpp",
"src/tests/gl_tests/OcclusionQueriesTest.cpp",
"src/tests/gl_tests/ParallelShaderCompileTest.cpp",
"src/tests/gl_tests/ProgramBinaryTest.cpp",
"src/tests/gl_tests/ProgramInterfaceTest.cpp",
"src/tests/gl_tests/ProgramParameterTest.cpp",
"src/tests/gl_tests/ProgramPipelineTest.cpp",
"src/tests/gl_tests/ReadPixelsTest.cpp",
"src/tests/gl_tests/RenderbufferMultisampleTest.cpp",
"src/tests/gl_tests/RendererTest.cpp",
"src/tests/gl_tests/RequestExtensionTest.cpp",
"src/tests/gl_tests/RobustBufferAccessBehaviorTest.cpp",
"src/tests/gl_tests/RobustClientMemoryTest.cpp",
"src/tests/gl_tests/RobustResourceInitTest.cpp",
"src/tests/gl_tests/SamplersTest.cpp",
"src/tests/gl_tests/ShaderStorageBufferTest.cpp",
"src/tests/gl_tests/SimpleOperationTest.cpp",
"src/tests/gl_tests/SixteenBppTextureTest.cpp",
"src/tests/gl_tests/SRGBFramebufferTest.cpp",
"src/tests/gl_tests/SRGBTextureTest.cpp",
"src/tests/gl_tests/StateChangeTest.cpp",
"src/tests/gl_tests/SwizzleTest.cpp",
"src/tests/gl_tests/SyncQueriesTest.cpp",
"src/tests/gl_tests/TextureMultisampleTest.cpp",
"src/tests/gl_tests/TextureRectangleTest.cpp",
"src/tests/gl_tests/TextureTest.cpp",
"src/tests/gl_tests/TextureUploadFormatTest.cpp",
"src/tests/gl_tests/TimerQueriesTest.cpp",
"src/tests/gl_tests/TransformFeedbackTest.cpp",
"src/tests/gl_tests/UniformBufferTest.cpp",
"src/tests/gl_tests/UniformTest.cpp",
"src/tests/gl_tests/UnpackAlignmentTest.cpp",
"src/tests/gl_tests/UnpackRowLength.cpp",
"src/tests/gl_tests/VertexAttributeTest.cpp",
"src/tests/gl_tests/ViewportTest.cpp",
"src/tests/gl_tests/WebGLCompatibilityTest.cpp",
"src/tests/gl_tests/WebGLFramebufferTest.cpp",
"src/tests/gl_tests/WebGLReadOutsideFramebufferTest.cpp",
"src/tests/egl_tests/EGLContextCompatibilityTest.cpp",
"src/tests/egl_tests/EGLContextSharingTest.cpp",
"src/tests/egl_tests/EGLDebugTest.cpp",
"src/tests/egl_tests/EGLProgramCacheControlTest.cpp",
"src/tests/egl_tests/EGLQueryContextTest.cpp",
"src/tests/egl_tests/EGLRobustnessTest.cpp",
"src/tests/egl_tests/EGLSanityCheckTest.cpp",
"src/tests/egl_tests/EGLSurfacelessContextTest.cpp",
"src/tests/egl_tests/EGLSurfaceTest.cpp",
"src/tests/egl_tests/EGLThreadTest.cpp",
"src/tests/test_utils/ANGLETest.cpp",
"src/tests/test_utils/ANGLETest.h",
"src/tests/test_utils/MultiviewTest.cpp",
"src/tests/test_utils/MultiviewTest.h",
"src/tests/test_utils/angle_test_configs.cpp",
"src/tests/test_utils/angle_test_configs.h",
"src/tests/test_utils/angle_test_instantiate.cpp",
"src/tests/test_utils/angle_test_instantiate.h",
"src/tests/test_utils/gl_raii.h",
]
angle_end2end_tests_mac_sources =
[
"src/tests/egl_tests/EGLIOSurfaceClientBufferTest.cpp",
]
angle_end2end_tests_win_sources =
[
"src/tests/gl_tests/D3DImageFormatConversionTest.cpp",
"src/tests/egl_tests/EGLDeviceTest.cpp",
"src/tests/egl_tests/EGLPresentPathD3D11Test.cpp",
"src/tests/egl_tests/EGLStreamTest.cpp",
"src/tests/egl_tests/EGLSyncControlTest.cpp",
"src/tests/egl_tests/media/yuvtest.inl",
]
angle_end2end_tests_x11_sources =
[
"src/tests/egl_tests/EGLX11VisualTest.cpp",
]

View File

@@ -1,100 +1,56 @@
# Copyright 2015 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
#
# angle_perftests.gypi:
#
# This .gypi describes all of the sources and dependencies to build a
# unified "angle_perftests" target, which contains all of ANGLE's
# performance tests (buffer updates, texture updates, draw calls, etc)
# It requires a parent target to include this gypi in an executable
# target containing a gtest harness in a main.cpp.
{
'variables':
{
'angle_perf_tests_sources':
[
'<(angle_path)/src/tests/perf_tests/ANGLEPerfTest.cpp',
'<(angle_path)/src/tests/perf_tests/ANGLEPerfTest.h',
'<(angle_path)/src/tests/perf_tests/BlitFramebufferPerf.cpp',
'<(angle_path)/src/tests/perf_tests/BindingPerf.cpp',
'<(angle_path)/src/tests/perf_tests/BitSetIteratorPerf.cpp',
'<(angle_path)/src/tests/perf_tests/BufferSubData.cpp',
'<(angle_path)/src/tests/perf_tests/CompilerPerf.cpp',
'<(angle_path)/src/tests/perf_tests/DispatchComputePerf.cpp',
'<(angle_path)/src/tests/perf_tests/DrawCallPerf.cpp',
'<(angle_path)/src/tests/perf_tests/DrawCallPerfParams.cpp',
'<(angle_path)/src/tests/perf_tests/DrawCallPerfParams.h',
'<(angle_path)/src/tests/perf_tests/DrawElementsPerf.cpp',
'<(angle_path)/src/tests/perf_tests/DynamicPromotionPerfTest.cpp',
'<(angle_path)/src/tests/perf_tests/EGLInitializePerf.cpp',
'<(angle_path)/src/tests/perf_tests/EGLMakeCurrentPerf.cpp',
'<(angle_path)/src/tests/perf_tests/ResultPerf.cpp',
'<(angle_path)/src/tests/perf_tests/IndexConversionPerf.cpp',
'<(angle_path)/src/tests/perf_tests/InstancingPerf.cpp',
'<(angle_path)/src/tests/perf_tests/InterleavedAttributeData.cpp',
'<(angle_path)/src/tests/perf_tests/LinkProgramPerfTest.cpp',
'<(angle_path)/src/tests/perf_tests/MultiviewPerf.cpp',
'<(angle_path)/src/tests/perf_tests/PointSprites.cpp',
'<(angle_path)/src/tests/perf_tests/TexSubImage.cpp',
'<(angle_path)/src/tests/perf_tests/TextureSampling.cpp',
'<(angle_path)/src/tests/perf_tests/TexturesPerf.cpp',
'<(angle_path)/src/tests/perf_tests/UniformsPerf.cpp',
'<(angle_path)/src/tests/perf_tests/third_party/perf/perf_test.cc',
'<(angle_path)/src/tests/perf_tests/third_party/perf/perf_test.h',
'<(angle_path)/src/tests/test_utils/angle_test_configs.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_configs.h',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.h',
'<(angle_path)/src/tests/test_utils/draw_call_perf_utils.cpp',
'<(angle_path)/src/tests/test_utils/draw_call_perf_utils.h',
],
'angle_perf_tests_win_sources':
[
'<(angle_path)/src/tests/perf_tests/IndexDataManagerTest.cpp',
],
# Only enabled with angle_enable_vulkan. Not exposed in the gyp.
'angle_perf_tests_vulkan_sources':
[
'<(angle_path)/src/tests/perf_tests/VulkanPipelineCachePerf.cpp',
],
# Currently Vulkan Command Buffer Perf Tests compile on Android/Linux
'angle_perf_tests_vulkan_command_buffer_sources':
[
'<(angle_path)/src/tests/perf_tests/VulkanCommandBufferPerf.cpp',
'<(angle_path)/src/tests/test_utils/third_party/vulkan_command_buffer_utils.cpp',
'<(angle_path)/src/tests/test_utils/third_party/vulkan_command_buffer_utils.h'
],
},
# Everything below (except WinRT-related config) must be also maintained for GN.
# If you change anything below, also update angle/src/tests/BUILD.gn.
'dependencies':
[
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/src/angle.gyp:libANGLE',
'<(angle_path)/src/angle.gyp:libGLESv2_static',
'<(angle_path)/src/angle.gyp:libEGL_static',
'<(angle_path)/src/tests/tests.gyp:angle_test_support',
'<(angle_path)/util/util.gyp:angle_util_static',
],
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src/tests'
],
'sources':
[
'<@(angle_perf_tests_sources)',
],
'conditions':
[
['OS=="win"',
{
'sources':
[
'<@(angle_perf_tests_win_sources)',
],
}],
]
}
angle_perf_tests_sources =
[
"src/tests/perf_tests/ANGLEPerfTest.cpp",
"src/tests/perf_tests/ANGLEPerfTest.h",
"src/tests/perf_tests/BlitFramebufferPerf.cpp",
"src/tests/perf_tests/BindingPerf.cpp",
"src/tests/perf_tests/BitSetIteratorPerf.cpp",
"src/tests/perf_tests/BufferSubData.cpp",
"src/tests/perf_tests/CompilerPerf.cpp",
"src/tests/perf_tests/DispatchComputePerf.cpp",
"src/tests/perf_tests/DrawCallPerf.cpp",
"src/tests/perf_tests/DrawCallPerfParams.cpp",
"src/tests/perf_tests/DrawCallPerfParams.h",
"src/tests/perf_tests/DrawElementsPerf.cpp",
"src/tests/perf_tests/DynamicPromotionPerfTest.cpp",
"src/tests/perf_tests/EGLInitializePerf.cpp",
"src/tests/perf_tests/EGLMakeCurrentPerf.cpp",
"src/tests/perf_tests/ResultPerf.cpp",
"src/tests/perf_tests/IndexConversionPerf.cpp",
"src/tests/perf_tests/InstancingPerf.cpp",
"src/tests/perf_tests/InterleavedAttributeData.cpp",
"src/tests/perf_tests/LinkProgramPerfTest.cpp",
"src/tests/perf_tests/MultiviewPerf.cpp",
"src/tests/perf_tests/PointSprites.cpp",
"src/tests/perf_tests/TexSubImage.cpp",
"src/tests/perf_tests/TextureSampling.cpp",
"src/tests/perf_tests/TexturesPerf.cpp",
"src/tests/perf_tests/UniformsPerf.cpp",
"src/tests/perf_tests/third_party/perf/perf_test.cc",
"src/tests/perf_tests/third_party/perf/perf_test.h",
"src/tests/test_utils/angle_test_configs.cpp",
"src/tests/test_utils/angle_test_configs.h",
"src/tests/test_utils/angle_test_instantiate.cpp",
"src/tests/test_utils/angle_test_instantiate.h",
"src/tests/test_utils/draw_call_perf_utils.cpp",
"src/tests/test_utils/draw_call_perf_utils.h",
]
angle_perf_tests_win_sources =
[
"src/tests/perf_tests/IndexDataManagerTest.cpp",
]
angle_perf_tests_vulkan_sources =
[
"src/tests/perf_tests/VulkanPipelineCachePerf.cpp",
]
# Currently Vulkan Command Buffer Perf Tests compile on Android/Linux
angle_perf_tests_vulkan_command_buffer_sources =
[
"src/tests/perf_tests/VulkanCommandBufferPerf.cpp",
"src/tests/test_utils/third_party/vulkan_command_buffer_utils.cpp",
"src/tests/test_utils/third_party/vulkan_command_buffer_utils.h"
]

View File

@@ -2,195 +2,128 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This .gypi describes all of the sources and dependencies to build a
# unified "angle_unittests" target, which contains all of ANGLE's
# tests that don't require a fully functional ANGLE in order to run
# (compiler tests, preprocessor tests, etc.). It requires a parent
# target to include this gypi in an executable target containing a
# gtest harness in a main.cpp.
{
'variables':
{
'angle_unittests_sources':
[
'<(angle_path)/src/common/FixedVector_unittest.cpp',
'<(angle_path)/src/common/Optional_unittest.cpp',
'<(angle_path)/src/common/aligned_memory_unittest.cpp',
'<(angle_path)/src/common/angleutils_unittest.cpp',
'<(angle_path)/src/common/bitset_utils_unittest.cpp',
'<(angle_path)/src/common/mathutil_unittest.cpp',
'<(angle_path)/src/common/matrix_utils_unittest.cpp',
'<(angle_path)/src/common/string_utils_unittest.cpp',
'<(angle_path)/src/common/utilities_unittest.cpp',
'<(angle_path)/src/common/vector_utils_unittest.cpp',
'<(angle_path)/src/gpu_info_util/SystemInfo_unittest.cpp',
'<(angle_path)/src/libANGLE/BinaryStream_unittest.cpp',
'<(angle_path)/src/libANGLE/Config_unittest.cpp',
'<(angle_path)/src/libANGLE/Fence_unittest.cpp',
'<(angle_path)/src/libANGLE/HandleAllocator_unittest.cpp',
'<(angle_path)/src/libANGLE/HandleRangeAllocator_unittest.cpp',
'<(angle_path)/src/libANGLE/Image_unittest.cpp',
'<(angle_path)/src/libANGLE/ImageIndexIterator_unittest.cpp',
'<(angle_path)/src/libANGLE/Observer_unittest.cpp',
'<(angle_path)/src/libANGLE/Program_unittest.cpp',
'<(angle_path)/src/libANGLE/ResourceManager_unittest.cpp',
'<(angle_path)/src/libANGLE/SizedMRUCache_unittest.cpp',
'<(angle_path)/src/libANGLE/Surface_unittest.cpp',
'<(angle_path)/src/libANGLE/TransformFeedback_unittest.cpp',
'<(angle_path)/src/libANGLE/VaryingPacking_unittest.cpp',
'<(angle_path)/src/libANGLE/VertexArray_unittest.cpp',
'<(angle_path)/src/libANGLE/WorkerThread_unittest.cpp',
'<(angle_path)/src/libANGLE/renderer/BufferImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/FramebufferImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/ProgramImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/RenderbufferImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/ImageImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/TextureImpl_mock.h',
'<(angle_path)/src/libANGLE/renderer/TransformFeedbackImpl_mock.h',
'<(angle_path)/src/tests/angle_unittests_utils.h',
'<(angle_path)/src/tests/compiler_tests/API_test.cpp',
'<(angle_path)/src/tests/compiler_tests/AppendixALimitations_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ARB_texture_rectangle_test.cpp',
'<(angle_path)/src/tests/compiler_tests/AtomicCounter_test.cpp',
'<(angle_path)/src/tests/compiler_tests/BufferVariables_test.cpp',
'<(angle_path)/src/tests/compiler_tests/CollectVariables_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ConstantFolding_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ConstantFoldingNaN_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ConstantFoldingOverflow_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ConstructCompiler_test.cpp',
'<(angle_path)/src/tests/compiler_tests/DebugShaderPrecision_test.cpp',
'<(angle_path)/src/tests/compiler_tests/EmulateGLFragColorBroadcast_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ExpressionLimit_test.cpp',
'<(angle_path)/src/tests/compiler_tests/EXT_YUV_target_test.cpp',
'<(angle_path)/src/tests/compiler_tests/EXT_blend_func_extended_test.cpp',
'<(angle_path)/src/tests/compiler_tests/EXT_frag_depth_test.cpp',
'<(angle_path)/src/tests/compiler_tests/EXT_shader_texture_lod_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ExtensionDirective_test.cpp',
'<(angle_path)/src/tests/compiler_tests/FloatLex_test.cpp',
'<(angle_path)/src/tests/compiler_tests/FragDepth_test.cpp',
'<(angle_path)/src/tests/compiler_tests/GLSLCompatibilityOutput_test.cpp',
'<(angle_path)/src/tests/compiler_tests/GlFragDataNotModified_test.cpp',
'<(angle_path)/src/tests/compiler_tests/GeometryShader_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ImmutableString_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ImmutableString_test_autogen.cpp',
'<(angle_path)/src/tests/compiler_tests/InitOutputVariables_test.cpp',
'<(angle_path)/src/tests/compiler_tests/IntermNode_test.cpp',
'<(angle_path)/src/tests/compiler_tests/NV_draw_buffers_test.cpp',
'<(angle_path)/src/tests/compiler_tests/OES_standard_derivatives_test.cpp',
'<(angle_path)/src/tests/compiler_tests/Pack_Unpack_test.cpp',
'<(angle_path)/src/tests/compiler_tests/PruneEmptyCases_test.cpp',
'<(angle_path)/src/tests/compiler_tests/PruneEmptyDeclarations_test.cpp',
'<(angle_path)/src/tests/compiler_tests/PrunePureLiteralStatements_test.cpp',
'<(angle_path)/src/tests/compiler_tests/PruneUnusedFunctions_test.cpp',
'<(angle_path)/src/tests/compiler_tests/QualificationOrderESSL31_test.cpp',
'<(angle_path)/src/tests/compiler_tests/QualificationOrder_test.cpp',
'<(angle_path)/src/tests/compiler_tests/RecordConstantPrecision_test.cpp',
'<(angle_path)/src/tests/compiler_tests/RegenerateStructNames_test.cpp',
'<(angle_path)/src/tests/compiler_tests/RemovePow_test.cpp',
'<(angle_path)/src/tests/compiler_tests/RemoveUnreferencedVariables_test.cpp',
'<(angle_path)/src/tests/compiler_tests/RewriteDoWhile_test.cpp',
'<(angle_path)/src/tests/compiler_tests/SamplerMultisample_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ShaderImage_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ShaderValidation_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ShaderVariable_test.cpp',
'<(angle_path)/src/tests/compiler_tests/ShCompile_test.cpp',
'<(angle_path)/src/tests/compiler_tests/TextureFunction_test.cpp',
'<(angle_path)/src/tests/compiler_tests/Type_test.cpp',
'<(angle_path)/src/tests/compiler_tests/TypeTracking_test.cpp',
'<(angle_path)/src/tests/compiler_tests/UnfoldShortCircuitAST_test.cpp',
'<(angle_path)/src/tests/compiler_tests/VariablePacker_test.cpp',
'<(angle_path)/src/tests/compiler_tests/VectorizeVectorScalarArithmetic_test.cpp',
'<(angle_path)/src/tests/compiler_tests/WEBGL_multiview_test.cpp',
'<(angle_path)/src/tests/compiler_tests/WorkGroupSize_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/char_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/comment_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/define_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/error_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/extension_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/identifier_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/if_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/input_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/location_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/MockDiagnostics.h',
'<(angle_path)/src/tests/preprocessor_tests/MockDirectiveHandler.h',
'<(angle_path)/src/tests/preprocessor_tests/number_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/operator_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/pragma_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/PreprocessorTest.cpp',
'<(angle_path)/src/tests/preprocessor_tests/PreprocessorTest.h',
'<(angle_path)/src/tests/preprocessor_tests/space_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/token_test.cpp',
'<(angle_path)/src/tests/preprocessor_tests/version_test.cpp',
'<(angle_path)/src/tests/test_utils/compiler_test.cpp',
'<(angle_path)/src/tests/test_utils/compiler_test.h',
'<(angle_path)/src/tests/test_utils/ConstantFoldingTest.h',
'<(angle_path)/src/tests/test_utils/ConstantFoldingTest.cpp',
'<(angle_path)/src/tests/test_utils/ShaderCompileTreeTest.h',
'<(angle_path)/src/tests/test_utils/ShaderCompileTreeTest.cpp',
'<(angle_path)/src/tests/test_utils/ShaderExtensionTest.h',
],
# TODO(jmadill): should probably call this windows sources
'angle_unittests_hlsl_sources':
[
'<(angle_path)/src/tests/compiler_tests/HLSLOutput_test.cpp',
'<(angle_path)/src/tests/compiler_tests/UnrollFlatten_test.cpp',
],
},
# Everything below this but the WinRT configuration is duplicated in the GN build.
# If you change anything also change angle/src/tests/BUILD.gn
'dependencies':
[
'<(angle_path)/src/angle.gyp:libANGLE',
'<(angle_path)/src/angle.gyp:preprocessor',
'<(angle_path)/src/angle.gyp:translator',
'<(angle_path)/src/tests/tests.gyp:angle_test_support',
],
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src',
],
'sources':
[
'<@(angle_unittests_sources)',
],
'conditions':
[
['angle_build_winrt==1',
{
'sources':
[
'<(angle_path)/src/libANGLE/renderer/d3d/d3d11/winrt/CoreWindowNativeWindow_unittest.cpp',
'<(angle_path)/src/libANGLE/renderer/d3d/d3d11/winrt/SwapChainPanelNativeWindow_unittest.cpp',
],
'defines':
[
'ANGLE_ENABLE_D3D11',
],
'msvs_settings':
{
'VCLinkerTool':
{
'AdditionalDependencies':
[
'runtimeobject.lib',
],
},
},
}],
['OS=="win"',
{
# TODO(cwallez): make this angle_enable_hlsl instead (requires gyp file refactoring)
'defines':
[
'ANGLE_ENABLE_HLSL',
],
'sources':
[
'<@(angle_unittests_hlsl_sources)',
],
}],
],
}
angle_unittests_sources =
[
"src/common/FixedVector_unittest.cpp",
"src/common/Optional_unittest.cpp",
"src/common/aligned_memory_unittest.cpp",
"src/common/angleutils_unittest.cpp",
"src/common/bitset_utils_unittest.cpp",
"src/common/mathutil_unittest.cpp",
"src/common/matrix_utils_unittest.cpp",
"src/common/string_utils_unittest.cpp",
"src/common/utilities_unittest.cpp",
"src/common/vector_utils_unittest.cpp",
"src/gpu_info_util/SystemInfo_unittest.cpp",
"src/libANGLE/BinaryStream_unittest.cpp",
"src/libANGLE/Config_unittest.cpp",
"src/libANGLE/Fence_unittest.cpp",
"src/libANGLE/HandleAllocator_unittest.cpp",
"src/libANGLE/HandleRangeAllocator_unittest.cpp",
"src/libANGLE/Image_unittest.cpp",
"src/libANGLE/ImageIndexIterator_unittest.cpp",
"src/libANGLE/Observer_unittest.cpp",
"src/libANGLE/Program_unittest.cpp",
"src/libANGLE/ResourceManager_unittest.cpp",
"src/libANGLE/SizedMRUCache_unittest.cpp",
"src/libANGLE/Surface_unittest.cpp",
"src/libANGLE/TransformFeedback_unittest.cpp",
"src/libANGLE/VaryingPacking_unittest.cpp",
"src/libANGLE/VertexArray_unittest.cpp",
"src/libANGLE/WorkerThread_unittest.cpp",
"src/libANGLE/renderer/BufferImpl_mock.h",
"src/libANGLE/renderer/FramebufferImpl_mock.h",
"src/libANGLE/renderer/ProgramImpl_mock.h",
"src/libANGLE/renderer/RenderbufferImpl_mock.h",
"src/libANGLE/renderer/ImageImpl_mock.h",
"src/libANGLE/renderer/TextureImpl_mock.h",
"src/libANGLE/renderer/TransformFeedbackImpl_mock.h",
"src/tests/angle_unittests_utils.h",
"src/tests/compiler_tests/API_test.cpp",
"src/tests/compiler_tests/AppendixALimitations_test.cpp",
"src/tests/compiler_tests/ARB_texture_rectangle_test.cpp",
"src/tests/compiler_tests/AtomicCounter_test.cpp",
"src/tests/compiler_tests/BufferVariables_test.cpp",
"src/tests/compiler_tests/CollectVariables_test.cpp",
"src/tests/compiler_tests/ConstantFolding_test.cpp",
"src/tests/compiler_tests/ConstantFoldingNaN_test.cpp",
"src/tests/compiler_tests/ConstantFoldingOverflow_test.cpp",
"src/tests/compiler_tests/ConstructCompiler_test.cpp",
"src/tests/compiler_tests/DebugShaderPrecision_test.cpp",
"src/tests/compiler_tests/EmulateGLFragColorBroadcast_test.cpp",
"src/tests/compiler_tests/ExpressionLimit_test.cpp",
"src/tests/compiler_tests/EXT_YUV_target_test.cpp",
"src/tests/compiler_tests/EXT_blend_func_extended_test.cpp",
"src/tests/compiler_tests/EXT_frag_depth_test.cpp",
"src/tests/compiler_tests/EXT_shader_texture_lod_test.cpp",
"src/tests/compiler_tests/ExtensionDirective_test.cpp",
"src/tests/compiler_tests/FloatLex_test.cpp",
"src/tests/compiler_tests/FragDepth_test.cpp",
"src/tests/compiler_tests/GLSLCompatibilityOutput_test.cpp",
"src/tests/compiler_tests/GlFragDataNotModified_test.cpp",
"src/tests/compiler_tests/GeometryShader_test.cpp",
"src/tests/compiler_tests/ImmutableString_test.cpp",
"src/tests/compiler_tests/ImmutableString_test_autogen.cpp",
"src/tests/compiler_tests/InitOutputVariables_test.cpp",
"src/tests/compiler_tests/IntermNode_test.cpp",
"src/tests/compiler_tests/NV_draw_buffers_test.cpp",
"src/tests/compiler_tests/OES_standard_derivatives_test.cpp",
"src/tests/compiler_tests/Pack_Unpack_test.cpp",
"src/tests/compiler_tests/PruneEmptyCases_test.cpp",
"src/tests/compiler_tests/PruneEmptyDeclarations_test.cpp",
"src/tests/compiler_tests/PrunePureLiteralStatements_test.cpp",
"src/tests/compiler_tests/PruneUnusedFunctions_test.cpp",
"src/tests/compiler_tests/QualificationOrderESSL31_test.cpp",
"src/tests/compiler_tests/QualificationOrder_test.cpp",
"src/tests/compiler_tests/RecordConstantPrecision_test.cpp",
"src/tests/compiler_tests/RegenerateStructNames_test.cpp",
"src/tests/compiler_tests/RemovePow_test.cpp",
"src/tests/compiler_tests/RemoveUnreferencedVariables_test.cpp",
"src/tests/compiler_tests/RewriteDoWhile_test.cpp",
"src/tests/compiler_tests/SamplerMultisample_test.cpp",
"src/tests/compiler_tests/ScalarizeVecAndMatConstructorArgs_test.cpp",
"src/tests/compiler_tests/ShaderImage_test.cpp",
"src/tests/compiler_tests/ShaderValidation_test.cpp",
"src/tests/compiler_tests/ShaderVariable_test.cpp",
"src/tests/compiler_tests/ShCompile_test.cpp",
"src/tests/compiler_tests/TextureFunction_test.cpp",
"src/tests/compiler_tests/Type_test.cpp",
"src/tests/compiler_tests/TypeTracking_test.cpp",
"src/tests/compiler_tests/UnfoldShortCircuitAST_test.cpp",
"src/tests/compiler_tests/VariablePacker_test.cpp",
"src/tests/compiler_tests/VectorizeVectorScalarArithmetic_test.cpp",
"src/tests/compiler_tests/WEBGL_multiview_test.cpp",
"src/tests/compiler_tests/WorkGroupSize_test.cpp",
"src/tests/preprocessor_tests/char_test.cpp",
"src/tests/preprocessor_tests/comment_test.cpp",
"src/tests/preprocessor_tests/define_test.cpp",
"src/tests/preprocessor_tests/error_test.cpp",
"src/tests/preprocessor_tests/extension_test.cpp",
"src/tests/preprocessor_tests/identifier_test.cpp",
"src/tests/preprocessor_tests/if_test.cpp",
"src/tests/preprocessor_tests/input_test.cpp",
"src/tests/preprocessor_tests/location_test.cpp",
"src/tests/preprocessor_tests/MockDiagnostics.h",
"src/tests/preprocessor_tests/MockDirectiveHandler.h",
"src/tests/preprocessor_tests/number_test.cpp",
"src/tests/preprocessor_tests/operator_test.cpp",
"src/tests/preprocessor_tests/pragma_test.cpp",
"src/tests/preprocessor_tests/PreprocessorTest.cpp",
"src/tests/preprocessor_tests/PreprocessorTest.h",
"src/tests/preprocessor_tests/space_test.cpp",
"src/tests/preprocessor_tests/token_test.cpp",
"src/tests/preprocessor_tests/version_test.cpp",
"src/tests/test_utils/compiler_test.cpp",
"src/tests/test_utils/compiler_test.h",
"src/tests/test_utils/ConstantFoldingTest.h",
"src/tests/test_utils/ConstantFoldingTest.cpp",
"src/tests/test_utils/ShaderCompileTreeTest.h",
"src/tests/test_utils/ShaderCompileTreeTest.cpp",
"src/tests/test_utils/ShaderExtensionTest.h",
]
# TODO(jmadill): should probably call this windows sources
angle_unittests_hlsl_sources =
[
"src/tests/compiler_tests/HLSLOutput_test.cpp",
"src/tests/compiler_tests/UnrollFlatten_test.cpp",
]

View File

@@ -2,63 +2,22 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
# This .gypi describes all of the sources and dependencies to build a
# unified "angle_white_box_tests" target, which contains all of the
# tests that exercise the ANGLE implementation. It requires a parent
# target to include this gypi in an executable target containing a
# gtest harness in a main.cpp.
{
# Everything below this is duplicated in the GN build.
# If you change anything also change angle/src/tests/BUILD.gn
'variables':
{
'angle_white_box_tests_sources':
[
'<(angle_path)/src/tests/util_tests/PrintSystemInfoTest.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_configs.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_configs.h',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.cpp',
'<(angle_path)/src/tests/test_utils/angle_test_instantiate.h',
'<(angle_path)/src/tests/test_utils/ANGLETest.cpp',
'<(angle_path)/src/tests/test_utils/ANGLETest.h',
'<(angle_path)/src/tests/test_utils/gl_raii.h',
],
'angle_white_box_tests_win_sources':
[
'<(angle_path)/src/tests/gl_tests/D3D11EmulatedIndexedBufferTest.cpp',
'<(angle_path)/src/tests/gl_tests/D3D11FormatTablesTest.cpp',
'<(angle_path)/src/tests/gl_tests/D3D11InputLayoutCacheTest.cpp',
'<(angle_path)/src/tests/gl_tests/D3DTextureTest.cpp',
'<(angle_path)/src/tests/gl_tests/ErrorMessages.cpp'
],
},
'dependencies':
[
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/src/angle.gyp:libANGLE',
'<(angle_path)/src/angle.gyp:libGLESv2_static',
'<(angle_path)/src/angle.gyp:libEGL_static',
'<(angle_path)/src/tests/tests.gyp:angle_test_support',
'<(angle_path)/util/util.gyp:angle_util_static',
],
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/src/tests'
],
'sources':
[
'<@(angle_white_box_tests_sources)',
],
'conditions':
[
['OS=="win"',
{
'sources':
[
'<@(angle_white_box_tests_win_sources)',
],
}],
]
}
angle_white_box_tests_sources =
[
"src/tests/util_tests/PrintSystemInfoTest.cpp",
"src/tests/test_utils/angle_test_configs.cpp",
"src/tests/test_utils/angle_test_configs.h",
"src/tests/test_utils/angle_test_instantiate.cpp",
"src/tests/test_utils/angle_test_instantiate.h",
"src/tests/test_utils/ANGLETest.cpp",
"src/tests/test_utils/ANGLETest.h",
"src/tests/test_utils/gl_raii.h",
]
angle_white_box_tests_win_sources =
[
"src/tests/gl_tests/D3D11EmulatedIndexedBufferTest.cpp",
"src/tests/gl_tests/D3D11FormatTablesTest.cpp",
"src/tests/gl_tests/D3D11InputLayoutCacheTest.cpp",
"src/tests/gl_tests/D3DTextureTest.cpp",
"src/tests/gl_tests/ErrorMessages.cpp"
]

File diff suppressed because it is too large Load Diff

View File

@@ -1,369 +0,0 @@
# Copyright (c) 2012 The ANGLE Project Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
'includes':
[
'deqp.gypi',
'../../gyp/common_defines.gypi',
],
'variables':
{
'angle_build_conformance_tests%': '0',
'rapidjson_include_dir': 'third_party/rapidjson/include',
'rapidjson_headers':
[
'third_party/rapidjson/include/rapidjson/allocators.h',
'third_party/rapidjson/include/rapidjson/document.h',
'third_party/rapidjson/include/rapidjson/encodedstream.h',
'third_party/rapidjson/include/rapidjson/encodings.h',
'third_party/rapidjson/include/rapidjson/filereadstream.h',
'third_party/rapidjson/include/rapidjson/filestream.h',
'third_party/rapidjson/include/rapidjson/filewritestream.h',
'third_party/rapidjson/include/rapidjson/memorybuffer.h',
'third_party/rapidjson/include/rapidjson/memorystream.h',
'third_party/rapidjson/include/rapidjson/prettywriter.h',
'third_party/rapidjson/include/rapidjson/rapidjson.h',
'third_party/rapidjson/include/rapidjson/reader.h',
'third_party/rapidjson/include/rapidjson/stringbuffer.h',
'third_party/rapidjson/include/rapidjson/writer.h',
'third_party/rapidjson/include/rapidjson/error/en.h',
'third_party/rapidjson/include/rapidjson/error/error.h',
'third_party/rapidjson/include/rapidjson/internal/dtoa.h',
'third_party/rapidjson/include/rapidjson/internal/itoa.h',
'third_party/rapidjson/include/rapidjson/internal/meta.h',
'third_party/rapidjson/include/rapidjson/internal/pow10.h',
'third_party/rapidjson/include/rapidjson/internal/stack.h',
'third_party/rapidjson/include/rapidjson/internal/strfunc.h',
'third_party/rapidjson/include/rapidjson/msinttypes/inttypes.h',
'third_party/rapidjson/include/rapidjson/msinttypes/stdint.h',
],
},
'target_defaults':
{
'dependencies':
[
'../../gyp/warnings.gyp:gyp_deprecation',
],
},
'conditions':
[
# GoogleTest doesn't support WinRT
['angle_build_winrt==0',
{
'targets':
[
{
'target_name': 'angle_test_support',
'type': 'none',
'dependencies':
[
'angle_internal_gmock',
'angle_internal_gtest',
],
},
],
}],
['angle_build_winrt==0',
{
'targets':
[
# Hide these targets from Chromium, because it can't
# find our standalone copy of the gtest/gmock sources.
{
'target_name': 'angle_internal_gtest',
'type': 'static_library',
'includes': [ '../../gyp/common_defines.gypi', ],
'include_dirs':
[
'<(angle_path)/third_party/googletest/src/googletest',
'<(angle_path)/third_party/googletest/src/googletest/include',
],
'sources':
[
'<(angle_path)/third_party/googletest/src/googletest/src/gtest-all.cc',
],
'defines':
[
'_VARIADIC_MAX=10',
],
'all_dependent_settings':
{
'defines':
[
'_VARIADIC_MAX=10',
],
'include_dirs':
[
'<(angle_path)/third_party/googletest/src/googletest',
'<(angle_path)/third_party/googletest/src/googletest/include',
],
},
},
{
'target_name': 'angle_internal_gmock',
'type': 'static_library',
'includes': [ '../../gyp/common_defines.gypi', ],
'include_dirs':
[
'<(angle_path)/third_party/googletest/src/googlemock',
'<(angle_path)/third_party/googletest/src/googlemock/include',
'<(angle_path)/third_party/googletest/src/googletest/include',
],
'sources':
[
'<(angle_path)/third_party/googletest/src/googlemock/src/gmock-all.cc',
],
'defines':
[
'_VARIADIC_MAX=10',
],
'all_dependent_settings':
{
'defines':
[
'_VARIADIC_MAX=10',
],
'include_dirs':
[
'<(angle_path)/third_party/googletest/src/googlemock',
'<(angle_path)/third_party/googletest/src/googlemock/include',
'<(angle_path)/third_party/googletest/src/googletest/include',
],
},
},
# These same target names exist on the Chromium side,
# which is forbidden, so we make them conditional on
# ANGLE's standalone build.
{
'target_name': 'angle_unittests',
'type': 'executable',
'includes':
[
'../../gyp/common_defines.gypi',
'angle_unittests.gypi',
],
'sources':
[
'angle_unittests_main.cpp',
],
'msvs_settings':
{
'VCLinkerTool':
{
'conditions':
[
['angle_build_winrt==1',
{
'AdditionalDependencies':
[
'runtimeobject.lib',
],
}],
],
},
},
'msvs_disabled_warnings':
[
4244, # Conversion from 'type1' to 'type2', possible loss of data
],
},
{
'target_name': 'angle_end2end_tests',
'type': 'executable',
'includes':
[
'../../gyp/common_defines.gypi',
'angle_end2end_tests.gypi',
],
'sources':
[
'angle_end2end_tests_main.cpp',
],
},
{
'target_name': 'angle_white_box_tests',
'type': 'executable',
'includes':
[
'../../gyp/common_defines.gypi',
'angle_white_box_tests.gypi',
],
'sources':
[
'angle_white_box_tests_main.cpp',
],
},
{
'target_name': 'angle_perftests',
'type': 'executable',
'includes':
[
'../../gyp/common_defines.gypi',
'angle_perftests.gypi',
],
'sources':
[
'angle_perftests_main.cpp',
],
},
],
}],
['OS=="win"',
{
'conditions':
[
['angle_build_conformance_tests',
{
'variables':
{
'gles_conformance_tests_output_dir': '<(SHARED_INTERMEDIATE_DIR)/conformance_tests',
'gles_conformance_tests_input_dir': 'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF',
'gles_conformance_tests_generator_script': 'gles_conformance_tests/generate_gles_conformance_tests.py',
},
'targets':
[
{
'target_name': 'angle_gles2_conformance_tests',
'type': 'executable',
'includes': [ '../../gyp/common_defines.gypi', ],
'dependencies':
[
'<(angle_path)/src/angle.gyp:libGLESv2',
'<(angle_path)/src/angle.gyp:libEGL',
'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es_cts_test_data',
'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es2_cts',
'angle_test_support',
],
'variables':
{
'gles2_conformance_tests_input_file': '<(gles_conformance_tests_input_dir)/mustpass_es20.run',
'gles2_conformance_tests_generated_file': '<(gles_conformance_tests_output_dir)/generated_gles2_conformance_tests.cpp',
},
'sources':
[
'gles_conformance_tests/gles_conformance_tests.cpp',
'gles_conformance_tests/gles_conformance_tests.h',
'gles_conformance_tests/gles_conformance_tests_main.cpp',
'<(gles2_conformance_tests_generated_file)',
],
'include_dirs':
[
'<(angle_path)/include',
'gles_conformance_tests',
],
'defines':
[
'CONFORMANCE_TESTS_TYPE=CONFORMANCE_TESTS_ES2',
],
'msvs_settings':
{
'VCCLCompilerTool':
{
# MSVS has trouble compiling this due to the obj files becoming too large.
'AdditionalOptions': [ '/bigobj' ],
},
},
'actions':
[
{
'action_name': 'generate_gles2_conformance_tests',
'message': 'Generating ES2 conformance tests...',
'msvs_cygwin_shell': 0,
'inputs':
[
'<(gles_conformance_tests_generator_script)',
'<(gles2_conformance_tests_input_file)',
],
'outputs':
[
'<(gles2_conformance_tests_generated_file)',
],
'action':
[
'python',
'<(gles_conformance_tests_generator_script)',
'<(gles2_conformance_tests_input_file)',
'<(gles_conformance_tests_input_dir)',
'<(gles2_conformance_tests_generated_file)',
],
},
],
},
{
'target_name': 'angle_gles3_conformance_tests',
'type': 'executable',
'includes': [ '../../gyp/common_defines.gypi', ],
'dependencies':
[
'<(angle_path)/src/angle.gyp:libGLESv2',
'<(angle_path)/src/angle.gyp:libEGL',
'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es_cts_test_data',
'third_party/gles_conformance_tests/conform/GTF_ES/glsl/GTF/es_cts.gyp:es3_cts',
'angle_test_support',
],
'variables':
{
'gles3_conformance_tests_input_file': '<(gles_conformance_tests_input_dir)/mustpass_es30.run',
'gles3_conformance_tests_generated_file': '<(gles_conformance_tests_output_dir)/generated_gles3_conformance_tests.cpp',
},
'sources':
[
'gles_conformance_tests/gles_conformance_tests.cpp',
'gles_conformance_tests/gles_conformance_tests.h',
'gles_conformance_tests/gles_conformance_tests_main.cpp',
'<(gles3_conformance_tests_generated_file)',
],
'include_dirs':
[
'<(angle_path)/include',
'gles_conformance_tests',
],
'defines':
[
'CONFORMANCE_TESTS_TYPE=CONFORMANCE_TESTS_ES3',
],
'msvs_settings':
{
'VCCLCompilerTool':
{
# MSVS has trouble compiling this due to the obj files becoming too large.
'AdditionalOptions': [ '/bigobj' ],
},
},
'actions':
[
{
'action_name': 'generate_gles3_conformance_tests',
'message': 'Generating ES3 conformance tests...',
'msvs_cygwin_shell': 0,
'inputs':
[
'<(gles_conformance_tests_generator_script)',
'<(gles3_conformance_tests_input_file)',
],
'outputs':
[
'<(gles3_conformance_tests_generated_file)',
],
'action':
[
'python',
'<(gles_conformance_tests_generator_script)',
'<(gles3_conformance_tests_input_file)',
'<(gles_conformance_tests_input_dir)',
'<(gles3_conformance_tests_generated_file)',
],
},
],
},
],
}],
],
}],
],
}

View File

@@ -2,257 +2,83 @@
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
{
# Everything below this is duplicated in the GN build, except Mac support.
# If you change anything also change angle/BUILD.gn
'variables':
{
'util_sources':
[
'com_utils.h',
'keyboard.h',
'geometry_utils.cpp',
'geometry_utils.h',
'mouse.h',
'random_utils.cpp',
'random_utils.h',
'shader_utils.cpp',
'shader_utils.h',
'system_utils.h',
'Event.h',
'EGLWindow.cpp',
'EGLWindow.h',
'Matrix.cpp',
'Matrix.h',
'OSPixmap.h',
'OSWindow.cpp',
'OSWindow.h',
'Timer.h',
],
'util_win32_sources':
[
'windows/win32/Win32_system_utils.cpp',
'windows/win32/Win32Pixmap.cpp',
'windows/win32/Win32Pixmap.h',
'windows/win32/Win32Window.cpp',
'windows/win32/Win32Window.h',
'windows/Windows_system_utils.cpp',
'windows/WindowsTimer.cpp',
'windows/WindowsTimer.h',
],
'util_winrt_sources':
[
'windows/winrt/WinRT_system_utils.cpp',
'windows/winrt/WinRTPixmap.cpp',
'windows/winrt/WinRTWindow.cpp',
'windows/winrt/WinRTWindow.h',
'windows/Windows_system_utils.cpp',
'windows/WindowsTimer.cpp',
'windows/WindowsTimer.h',
],
'util_linux_sources':
[
'linux/LinuxTimer.cpp',
'linux/LinuxTimer.h',
'posix/Posix_system_utils.cpp',
],
'util_x11_sources':
[
'x11/X11Pixmap.cpp',
'x11/X11Pixmap.h',
'x11/X11Window.cpp',
'x11/X11Window.h',
],
'util_ozone_sources':
[
'ozone/OzonePixmap.cpp',
'ozone/OzoneWindow.cpp',
'ozone/OzoneWindow.h',
],
'util_osx_sources':
[
'osx/OSXTimer.cpp',
'osx/OSXTimer.h',
'osx/OSXPixmap.mm',
'osx/OSXPixmap.h',
'osx/OSXWindow.mm',
'osx/OSXWindow.h',
'posix/Posix_system_utils.cpp',
],
'util_android_sources':
[
'android/AndroidPixmap.cpp',
'android/AndroidWindow.cpp',
'android/AndroidWindow.h',
'android/third_party/android_native_app_glue.c',
'android/third_party/android_native_app_glue.h',
],
},
'target_defaults':
{
'dependencies':
[
'../gyp/warnings.gyp:gyp_deprecation',
],
},
'targets':
[
{
'target_name': 'angle_util_config',
'type': 'none',
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/util',
],
'sources':
[
'<@(util_sources)',
],
'defines':
[
'GL_GLEXT_PROTOTYPES',
'EGL_EGLEXT_PROTOTYPES',
'LIBANGLE_UTIL_IMPLEMENTATION',
],
'conditions':
[
['OS=="win" and angle_build_winrt==0',
{
'sources':
[
'<@(util_win32_sources)',
],
}],
['OS=="win" and angle_build_winrt==1',
{
'sources':
[
'<@(util_winrt_sources)',
],
}],
['OS=="linux"',
{
'sources':
[
'<@(util_linux_sources)',
],
'link_settings':
{
'libraries':
[
'-ldl',
],
},
}],
['use_x11==1',
{
'sources':
[
'<@(util_x11_sources)',
],
'link_settings':
{
'ldflags':
[
'<!@(<(pkg-config) --libs-only-L --libs-only-other x11 xi)',
],
'libraries':
[
'<!@(<(pkg-config) --libs-only-l x11 xi)',
],
},
}],
['use_ozone==1',
{
'sources':
[
'<@(util_ozone_sources)',
],
}],
['OS=="mac"',
{
'sources':
[
'<@(util_osx_sources)',
],
'xcode_settings':
{
'DYLIB_INSTALL_NAME_BASE': '@rpath',
},
'link_settings':
{
'libraries':
[
'$(SDKROOT)/System/Library/Frameworks/AppKit.framework',
'$(SDKROOT)/System/Library/Frameworks/QuartzCore.framework',
],
},
}],
],
},
},
{
'target_name': 'angle_util',
'type': 'shared_library',
'includes': [ '../gyp/common_defines.gypi', ],
'dependencies':
[
'angle_util_config',
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/src/angle.gyp:libEGL',
'<(angle_path)/src/angle.gyp:libGLESv2',
],
'export_dependent_settings':
[
'<(angle_path)/src/angle.gyp:angle_common',
],
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/util',
],
'defines':
[
'GL_GLEXT_PROTOTYPES',
'EGL_EGLEXT_PROTOTYPES',
],
},
},
{
'target_name': 'angle_util_static',
'type': 'static_library',
'includes': [ '../gyp/common_defines.gypi', ],
'dependencies':
[
'angle_util_config',
'<(angle_path)/src/angle.gyp:angle_common',
'<(angle_path)/src/angle.gyp:libEGL_static',
'<(angle_path)/src/angle.gyp:libGLESv2_static',
],
'export_dependent_settings':
[
'<(angle_path)/src/angle.gyp:angle_common',
],
'direct_dependent_settings':
{
'include_dirs':
[
'<(angle_path)/include',
'<(angle_path)/util',
],
'defines':
[
'GL_GLEXT_PROTOTYPES',
'EGL_EGLEXT_PROTOTYPES',
],
},
},
],
}
util_sources =
[
"com_utils.h",
"keyboard.h",
"geometry_utils.cpp",
"geometry_utils.h",
"mouse.h",
"random_utils.cpp",
"random_utils.h",
"shader_utils.cpp",
"shader_utils.h",
"system_utils.h",
"Event.h",
"EGLWindow.cpp",
"EGLWindow.h",
"Matrix.cpp",
"Matrix.h",
"OSPixmap.h",
"OSWindow.cpp",
"OSWindow.h",
"Timer.h",
]
util_win32_sources =
[
"windows/win32/Win32_system_utils.cpp",
"windows/win32/Win32Pixmap.cpp",
"windows/win32/Win32Pixmap.h",
"windows/win32/Win32Window.cpp",
"windows/win32/Win32Window.h",
"windows/Windows_system_utils.cpp",
"windows/WindowsTimer.cpp",
"windows/WindowsTimer.h",
]
util_winrt_sources =
[
"windows/winrt/WinRT_system_utils.cpp",
"windows/winrt/WinRTPixmap.cpp",
"windows/winrt/WinRTWindow.cpp",
"windows/winrt/WinRTWindow.h",
"windows/Windows_system_utils.cpp",
"windows/WindowsTimer.cpp",
"windows/WindowsTimer.h",
]
util_linux_sources =
[
"linux/LinuxTimer.cpp",
"linux/LinuxTimer.h",
"posix/Posix_system_utils.cpp",
]
util_x11_sources =
[
"x11/X11Pixmap.cpp",
"x11/X11Pixmap.h",
"x11/X11Window.cpp",
"x11/X11Window.h",
]
util_ozone_sources =
[
"ozone/OzonePixmap.cpp",
"ozone/OzoneWindow.cpp",
"ozone/OzoneWindow.h",
]
util_osx_sources =
[
"osx/OSXTimer.cpp",
"osx/OSXTimer.h",
"osx/OSXPixmap.mm",
"osx/OSXPixmap.h",
"osx/OSXWindow.mm",
"osx/OSXWindow.h",
"posix/Posix_system_utils.cpp",
]
util_android_sources =
[
"android/AndroidPixmap.cpp",
"android/AndroidWindow.cpp",
"android/AndroidWindow.h",
"android/third_party/android_native_app_glue.c",
"android/third_party/android_native_app_glue.h",
]