| # 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, |
| |
| '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' ], |
| }], |
| ['target_os=="win" and angle_build_winrt==1', |
| { |
| 'defines': [ |
| 'WINAPI_FAMILY=WINAPI_FAMILY_APP', # UWP. |
| ' __WRL_NO_DEFAULT_LIB__', |
| ], |
| }], |
| ['target_os=="win" and angle_build_winrt==0', |
| { |
| 'defines': [ |
| '_WIN32', |
| 'WINAPI_FAMILY=WINAPI_FAMILY_DESKTOP_APP', # win32 |
| ' __WRL_NO_DEFAULT_LIB__', |
| ], |
| }] |
| ], |
| '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', |
| ], |
| }, |
| }, |
| }, |
| }], |
| ], |
| }, |
| } |