Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# MetalANGLEKit

OpenGL ES to Metal for iOS
2 changes: 1 addition & 1 deletion angle
Submodule angle updated from 5967af to 392ccf
12 changes: 12 additions & 0 deletions angle_metal_apple3_es3.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
diff --git a/src/libANGLE/renderer/metal/DisplayMtl.mm b/src/libANGLE/renderer/metal/DisplayMtl.mm
--- a/src/libANGLE/renderer/metal/DisplayMtl.mm
+++ b/src/libANGLE/renderer/metal/DisplayMtl.mm
@@ -435,7 +435,7 @@ gl::Version DisplayMtl::getMaxSupportedESVersion() const
// FIXME: None of the feature conditions are checked for simulator support.
return gl::Version(3, 0);
#else
- if (supportsEitherGPUFamily(4, 1))
+ if (supportsEitherGPUFamily(3, 1))
{
return mtl::kMaxSupportedGLVersion;
}
14 changes: 7 additions & 7 deletions angle_metal_shader_prebuild.patch
Original file line number Diff line number Diff line change
Expand Up @@ -2,21 +2,21 @@ diff --git a/src/libANGLE/renderer/metal/metal_backend.gni b/src/libANGLE/render
index d3a8a1d6e..6d3ebd624 100644
--- a/src/libANGLE/renderer/metal/metal_backend.gni
+++ b/src/libANGLE/renderer/metal/metal_backend.gni
@@ -92,8 +92,7 @@ metal_backend_sources = [
# We can build the ANGLE internal shaders at build-time if we have access to the Mac SDK in the "build" dir.
# Building internal shaders for iOS is not supported. The Chromium Mac SDK does not have all the required files.
# This is also an issue when cross-compiling for mac.
@@ -91,8 +91,7 @@ metal_backend_sources = [
# Mac SDK in the "build" dir. Building internal shaders for iOS is not
# supported. The Chromium Mac SDK does not have all the required files. This is
# also an issue when cross-compiling for mac.
-metal_internal_shader_compilation_supported =
- angle_has_build && !is_ios && target_os == host_os
+metal_internal_shader_compilation_supported = true

metal_internal_shaders_header =
"$root_gen_dir/angle/mtl_internal_shaders_metallib.h"
diff --git a/src/libANGLE/renderer/metal/BUILD.gn b/src/libANGLE/renderer/metal/BUILD.gn
index 96e9ee842..60ce22d8a 100644
--- a/src/libANGLE/renderer/metal/BUILD.gn
+++ b/src/libANGLE/renderer/metal/BUILD.gn
@@ -50,10 +50,12 @@ if (metal_internal_shader_compilation_supported) {
@@ -86,10 +86,12 @@ if (metal_internal_shader_compilation_supported) {
"-mmacosx-version-min=10.14",
]
} else if (is_ios) {
Expand All @@ -32,4 +32,4 @@ index 96e9ee842..60ce22d8a 100644
+ }
}
}

2 changes: 1 addition & 1 deletion depot_tools
Submodule depot_tools updated from 39ca85 to 9f4b1b
1 change: 1 addition & 0 deletions setup-angle.sh
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ apply_git_patch ../angle_feature_util_metal_check.patch
apply_git_patch ../angle_disable_posix_handler.patch
apply_git_patch ../angle_metal_shader_prebuild.patch
apply_git_patch ../angle_metal_blit_flush_hack.patch
apply_git_patch ../angle_metal_apple3_es3.patch

gn gen out/Debug-iphonesimulator_arm64 --args="is_debug=true enable_dsyms=true target_os=\"ios\" target_cpu=\"arm64\" ios_enable_code_signing=false angle_enable_metal=true angle_enable_gl=false angle_enable_null=false angle_enable_wgpu=false ios_deployment_target=\"11.0\" angle_build_all=false target_environment=\"simulator\""
gn gen out/Debug-iphonesimulator_x86_64 --args="is_debug=true enable_dsyms=true target_os=\"ios\" target_cpu=\"x64\" ios_enable_code_signing=false angle_enable_metal=true angle_enable_gl=false angle_enable_null=false angle_enable_wgpu=false ios_deployment_target=\"11.0\" angle_build_all=false target_environment=\"simulator\""
Expand Down