update angle build.

This commit is contained in:
Sean Yen 2019-01-15 13:53:12 -08:00
parent 269450283b
commit 7d5a8997ea
3 changed files with 33 additions and 7 deletions

View File

@ -1,5 +1,5 @@
cmake_minimum_required(VERSION 3.8)
project(angle CXX)
project(angle)
if(WIN32 AND NOT WINDOWS_STORE)
set(WINDOWS_DESKTOP 1)
@ -45,13 +45,22 @@ include_directories(include src ${CMAKE_CURRENT_BINARY_DIR}/include)
##########
# angle::common
if(WINDOWS_ANY)
set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_mac")
set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_mac|_posix")
elseif(LINUX)
set(ANGLE_COMMON_PLATFORM_FILTER "_win|_mac")
elseif(APPLE)
set(ANGLE_COMMON_PLATFORM_FILTER "_linux|_win")
endif()
file(GLOB ANGLE_COMMON_SOURCES "src/common/*.h" "src/common/*.inl" "src/common/*.cpp" "src/common/third_party/base/*.h")
file(GLOB ANGLE_COMMON_SOURCES
"src/common/*.h"
"src/common/*.inl"
"src/common/*.cpp"
"src/common/third_party/smhasher/src/*.h"
"src/common/third_party/smhasher/src/*.cpp"
"src/common/third_party/xxhash/*.h"
"src/common/third_party/xxhash/*.c"
"src/common/third_party/base/anglebase/*.h"
"src/common/third_party/base/anglebase/*.cc")
list(FILTER ANGLE_COMMON_SOURCES EXCLUDE REGEX "_unittest|event_tracer|${ANGLE_COMMON_PLATFORM_FILTER}")
add_library(angle_common STATIC ${ANGLE_COMMON_SOURCES})
target_include_directories(angle_common PUBLIC src/common/third_party/base)
@ -71,6 +80,10 @@ file(GLOB TRANSLATOR_SOURCES
"src/compiler/translator/glslang.y"
"src/compiler/translator/*.h"
"src/compiler/translator/*.cpp"
"src/compiler/translator/tree_util/*.h"
"src/compiler/translator/tree_util/*.cpp"
"src/compiler/translator/tree_ops/*.h"
"src/compiler/translator/tree_ops/*.cpp"
"src/third_party/compiler/ArrayBoundsClamper.cpp"
)
add_library(angle_translator STATIC ${TRANSLATOR_SOURCES})
@ -221,6 +234,7 @@ elseif(WINDOWS_DESKTOP)
angle::renderer::d3d
angle::renderer::win32
angle::renderer::opengl
gdi32
)
else()
set(LIBANGLE_RENDERER_PLATFORM )
@ -260,6 +274,7 @@ target_compile_definitions(libGLESv2
PRIVATE -DLIBGLESV2_IMPLEMENTATION
PUBLIC
-DGL_GLEXT_PROTOTYPES
-DGL_API=
-DGL_APICALL=
-DEGLAPI=
)

View File

@ -1,5 +1,5 @@
Source: angle
Version: 2017-06-14-8d471f-5
Version: 2019-01-14-c2ee2cc
Description: A conformant OpenGL ES implementation for Windows, Mac and Linux.
The goal of ANGLE is to allow users of multiple operating systems to seamlessly run WebGL and other OpenGL ES content by translating OpenGL ES API calls to one of the hardware-supported APIs available for that platform. ANGLE currently provides translation from OpenGL ES 2.0 and 3.0 to desktop OpenGL, OpenGL ES, Direct3D 9, and Direct3D 11. Support for translation from OpenGL ES to Vulkan is underway, and future plans include compute shader support (ES 3.1) and MacOS support.
Build-Depends: egl-registry

View File

@ -1,5 +1,15 @@
include(vcpkg_common_functions)
if (VCPKG_TARGET_ARCHITECTURE STREQUAL "x86")
set(ANGLE_CPU_BITNESS ANGLE_IS_32_BIT_CPU)
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "x64")
set(ANGLE_CPU_BITNESS ANGLE_IS_64_BIT_CPU)
elseif (VCPKG_TARGET_ARCHITECTURE STREQUAL "arm")
set(ANGLE_CPU_BITNESS ANGLE_IS_32_BIT_CPU)
else()
message(FATAL_ERROR "Unsupported architecture: ${VCPKG_TARGET_ARCHITECTURE}")
endif()
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
message(STATUS "ANGLE currently only supports being built as a dynamic library")
set(VCPKG_LIBRARY_LINKAGE dynamic)
@ -12,9 +22,8 @@ endif()
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO google/angle
REF 8d471f907d8d4ec1d46bc9366493bd76c11c1870
SHA512 b4670caeeaa5d662bc82702eb5f620123812ea6b5d82f57a65df54ae25cdaa5c9ff0fdb592448b07569d9c09af3d3c51b0b2f135c5800d1845b425009656bf18
HEAD_REF master
REF chromium/3672
SHA512 dd6a05f0f1f4544b8646c41ffcb4d5e3b41f5261771ada47889345a24d4e55e6370df55a26c354a7073efcde307644cec6c6064ea6fe498ed6b52c3017249f81
)
vcpkg_apply_patches(
SOURCE_PATH ${SOURCE_PATH}
@ -28,6 +37,8 @@ vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=1
OPTIONS
-D${ANGLE_CPU_BITNESS}=1
)
vcpkg_install_cmake()