angleproject: update to 2.1.r25748.890b5d8f (#24941)
- rebase most patches - enable d3d11 compositor - enable swiftshader on mingw64 and ucrt64
This commit is contained in:
parent
1400ad5092
commit
b1e6a41c9d
File diff suppressed because it is too large
Load Diff
@ -1,8 +1,28 @@
|
||||
diff --git a/.gn b/.gn
|
||||
index dc3df25a1b..7fc44a7337 100644
|
||||
--- a/.gn
|
||||
+++ b/.gn
|
||||
@@ -26,15 +26,6 @@ script_executable = "python3"
|
||||
# These are the list of GN files that run exec_script. This allowlist exists
|
||||
# to force additional review for new uses of exec_script, which is strongly
|
||||
# discouraged except for gypi_to_gn calls.
|
||||
-exec_script_allowlist = angle_dotfile_settings.exec_script_allowlist +
|
||||
- build_dotfile_settings.exec_script_allowlist +
|
||||
- [
|
||||
- "//build/config/sysroot.gni",
|
||||
- "//build/config/win/BUILD.gn",
|
||||
- "//build/config/win/visual_studio_version.gni",
|
||||
- "//build/gn_helpers.py",
|
||||
- "//build_overrides/build.gni",
|
||||
- ]
|
||||
|
||||
default_args = {
|
||||
clang_use_chrome_plugins = false
|
||||
diff --git a/BUILD.gn b/BUILD.gn
|
||||
index 964d511238..1a99c6095d 100644
|
||||
index 957af7e194..1935b75749 100644
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -14,7 +14,10 @@ if (angle_has_build) {
|
||||
@@ -18,7 +18,10 @@ if (angle_has_build) {
|
||||
import("//build/config/linux/pkg_config.gni")
|
||||
import("//build/config/sanitizers/sanitizers.gni")
|
||||
import("//build/config/ui.gni")
|
||||
@ -14,51 +34,66 @@ index 964d511238..1a99c6095d 100644
|
||||
|
||||
if (is_android) {
|
||||
# android/rules.gni can only be imported for Android targets
|
||||
@@ -91,10 +94,14 @@ if (angle_build_all) {
|
||||
@@ -108,10 +111,11 @@ if (angle_build_all) {
|
||||
":angle",
|
||||
":angle_shader_translator",
|
||||
":translator_fuzzer",
|
||||
- ":xxhash_fuzzer",
|
||||
"$angle_root/samples:angle_samples",
|
||||
- "$angle_root/src/tests:angle_tests",
|
||||
+ #"$angle_root/src/tests:angle_tests",
|
||||
]
|
||||
+ if (use_fuzzing_engine) {
|
||||
+ deps += [
|
||||
+ ":xxhash_fuzzer",
|
||||
+ ]
|
||||
+ deps += [ ":xxhash_fuzzer" ]
|
||||
+ }
|
||||
if (angle_enable_cl) {
|
||||
deps += [ "$angle_root/src/libOpenCL:angle_cl" ]
|
||||
}
|
||||
@@ -271,7 +278,7 @@ config("constructor_and_destructor_warnings") {
|
||||
config("extra_warnings") {
|
||||
cflags = []
|
||||
|
||||
- is_gcc = !is_clang && !is_win
|
||||
+ is_gcc = !is_clang && !is_msvs
|
||||
|
||||
# Avoid failing builds for warnings enabled by Skia build.
|
||||
if (defined(is_skia_standalone)) {
|
||||
@@ -279,7 +286,7 @@ config("extra_warnings") {
|
||||
@@ -339,7 +343,7 @@ config("extra_warnings") {
|
||||
}
|
||||
|
||||
# Enable more default warnings on Windows.
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags += [
|
||||
"/we4244", # Conversion: possible loss of data.
|
||||
"/we4312", # Conversion: greater size.
|
||||
@@ -342,7 +349,7 @@ config("build_id_config") {
|
||||
@@ -381,6 +385,17 @@ config("extra_warnings") {
|
||||
]
|
||||
}
|
||||
|
||||
+ if (is_mingw && !is_clang) {
|
||||
+ cflags_cc = [
|
||||
+ "-Wno-conversion-null",
|
||||
+ "-Wno-dangling-pointer",
|
||||
+ "-Wno-deprecated-copy",
|
||||
+ "-Wno-sign-compare",
|
||||
+ "-Wno-stringop-truncation",
|
||||
+ "-Wno-unused-function",
|
||||
+ ]
|
||||
+ }
|
||||
+
|
||||
if (is_gcc) {
|
||||
cflags_cc = [ "-Wdeprecated-copy" ]
|
||||
}
|
||||
@@ -402,7 +417,7 @@ config("build_id_config") {
|
||||
ldflags = [ "-Wl,--build-id" ]
|
||||
}
|
||||
|
||||
-_use_copy_compiler_dll = angle_has_build && is_win
|
||||
+_use_copy_compiler_dll = angle_has_build && is_msvs
|
||||
+_use_copy_compiler_dll = angle_has_build && is_msvc
|
||||
|
||||
if (_use_copy_compiler_dll) {
|
||||
copy("copy_compiler_dll") {
|
||||
@@ -451,7 +458,7 @@ angle_source_set("xxhash") {
|
||||
@@ -487,7 +502,7 @@ config("angle_common_config") {
|
||||
|
||||
if (is_win && !angle_is_winuwp && !build_with_chromium) {
|
||||
# Needed for futex support
|
||||
- libs += [ "synchronization.lib" ]
|
||||
+ libs += [ "synchronization" ]
|
||||
}
|
||||
|
||||
defines = []
|
||||
@@ -517,7 +532,7 @@ angle_source_set("xxhash") {
|
||||
}
|
||||
}
|
||||
|
||||
@ -67,7 +102,7 @@ index 964d511238..1a99c6095d 100644
|
||||
fuzzer_test("xxhash_fuzzer") {
|
||||
sources = [ "src/common/third_party/xxhash/xxhash_fuzzer.cpp" ]
|
||||
deps = [ ":xxhash" ]
|
||||
@@ -616,9 +623,9 @@ angle_static_library("angle_gpu_info_util") {
|
||||
@@ -682,9 +697,9 @@ angle_static_library("angle_gpu_info_util") {
|
||||
if (is_win) {
|
||||
sources += libangle_gpu_info_util_win_sources
|
||||
if (!angle_is_winuwp) {
|
||||
@ -79,25 +114,25 @@ index 964d511238..1a99c6095d 100644
|
||||
}
|
||||
|
||||
if (is_linux || is_chromeos) {
|
||||
@@ -762,7 +769,7 @@ template("translator_lib") {
|
||||
":angle_version_info",
|
||||
]
|
||||
@@ -827,7 +842,7 @@ angle_static_library("translator") {
|
||||
":angle_version_info",
|
||||
]
|
||||
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
# Necessary to suppress some system header xtree warnings in Release.
|
||||
# For some reason this warning doesn't get triggered in Chromium
|
||||
cflags = [ "/wd4718" ]
|
||||
@@ -949,7 +956,7 @@ config("libANGLE_config") {
|
||||
- if (is_win) {
|
||||
+ if (is_msvc) {
|
||||
# Necessary to suppress some system header xtree warnings in Release.
|
||||
# For some reason this warning doesn't get triggered in Chromium
|
||||
cflags = [ "/wd4718" ]
|
||||
@@ -986,7 +1001,7 @@ config("libANGLE_config") {
|
||||
ldflags = []
|
||||
defines += [ "LIBANGLE_IMPLEMENTATION" ]
|
||||
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags += [ "/wd4530" ] # C++ exception handler used, but unwind semantics
|
||||
# are not enabled.
|
||||
}
|
||||
@@ -1053,8 +1060,8 @@ angle_source_set("libANGLE_no_vulkan") {
|
||||
@@ -1087,8 +1102,8 @@ angle_source_set("libANGLE_no_vulkan") {
|
||||
|
||||
if (is_win && !angle_is_winuwp) {
|
||||
libs += [
|
||||
@ -108,7 +143,7 @@ index 964d511238..1a99c6095d 100644
|
||||
]
|
||||
}
|
||||
|
||||
@@ -1079,7 +1086,7 @@ angle_source_set("libANGLE_no_vulkan") {
|
||||
@@ -1117,7 +1132,7 @@ angle_source_set("libANGLE_no_vulkan") {
|
||||
}
|
||||
|
||||
if (angle_enable_d3d11) {
|
||||
@ -117,16 +152,31 @@ index 964d511238..1a99c6095d 100644
|
||||
}
|
||||
|
||||
if (angle_enable_metal) {
|
||||
@@ -1469,6 +1476,8 @@ if (angle_enable_gl_desktop_frontend) {
|
||||
@@ -1129,7 +1144,7 @@ angle_source_set("libANGLE_no_vulkan") {
|
||||
}
|
||||
|
||||
# Enable extra Chromium style warnings for libANGLE.
|
||||
- if (is_clang && angle_has_build && !is_nacl) {
|
||||
+ if (is_clang && angle_has_build && !is_nacl && !is_mingw) {
|
||||
suppressed_configs -= [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
|
||||
@@ -1467,11 +1482,14 @@ angle_static_library("libGLESv2_thin_static") {
|
||||
|
||||
public_configs += [ ":angle_static_config" ]
|
||||
deps = [ ":includes" ]
|
||||
+ output_name = "libGLESv2_thin"
|
||||
public_deps = [ ":libANGLE" ]
|
||||
}
|
||||
|
||||
angle_static_library("libGLESv2_static") {
|
||||
sources = libglesv2_sources
|
||||
+ complete_static_lib = true
|
||||
+ output_name = "libGLESv2"
|
||||
if (angle_enable_gl_desktop_frontend) {
|
||||
sources += libglesv2_gl_sources
|
||||
defines = [ "ANGLE_ENABLE_GL_DESKTOP_FRONTEND" ]
|
||||
@@ -1614,6 +1623,7 @@ if (angle_enable_vulkan) {
|
||||
public_deps = [ ":libGLESv2_thin_static" ]
|
||||
}
|
||||
|
||||
@@ -1588,6 +1606,7 @@ if (angle_enable_vulkan) {
|
||||
}
|
||||
|
||||
libEGL_template("libEGL_static") {
|
||||
@ -134,24 +184,11 @@ index 964d511238..1a99c6095d 100644
|
||||
target_type = "angle_static_library"
|
||||
public_configs = [ ":angle_static_config" ]
|
||||
deps = [ ":libGLESv2_static" ]
|
||||
diff --git a/build_overrides/build.gni b/build_overrides/build.gni
|
||||
index f9d54f2b3..40c1f8e63 100644
|
||||
--- a/build_overrides/build.gni
|
||||
+++ b/build_overrides/build.gni
|
||||
@@ -42,7 +42,7 @@ limit_android_deps = true
|
||||
# of hardening checks. To ensure performance remains competitive, drop the
|
||||
# libc++ hardening checks, since ANGLE already makes no security guarantees in
|
||||
# these situations.
|
||||
-if (is_win) {
|
||||
+if (is_msvs) {
|
||||
# TODO(https://crbug.com/1418717): ANGLE uses Chromium's abseil-cpp directory.
|
||||
# Since Abseil does not mark symbols as exported, Chromium uses an alternate
|
||||
# approach to scrape the symbols that need to be exported and generates .def
|
||||
diff --git a/gni/angle.gni b/gni/angle.gni
|
||||
index e946c6b6f..8862dc2f7 100644
|
||||
index bdefa2e04c..2d87b3927b 100644
|
||||
--- a/gni/angle.gni
|
||||
+++ b/gni/angle.gni
|
||||
@@ -48,7 +48,6 @@ if (angle_has_build) {
|
||||
@@ -53,7 +53,6 @@ if (angle_has_build) {
|
||||
import("//build/config/ozone.gni") # import the ozone_platform_x11 variable
|
||||
import("//build/config/sanitizers/sanitizers.gni")
|
||||
import("//build_overrides/build.gni")
|
||||
@ -159,20 +196,23 @@ index e946c6b6f..8862dc2f7 100644
|
||||
if (is_android) {
|
||||
import("//build/config/android/config.gni")
|
||||
}
|
||||
@@ -61,6 +60,12 @@ if (angle_has_build) {
|
||||
angle_vulkan_display_mode = "headless"
|
||||
}
|
||||
@@ -153,7 +152,7 @@ declare_args() {
|
||||
# Windows App SDK is almost UWP but for Win32, so we want all the same things
|
||||
angle_is_winuwp = (is_win && target_os == "winuwp") || angle_is_winappsdk
|
||||
|
||||
+ if (is_mingw) {
|
||||
+ declare_args() {
|
||||
+ use_fuzzing_engine = false
|
||||
+ }
|
||||
+ }
|
||||
+
|
||||
declare_args() {
|
||||
angle_use_gbm = ozone_platform_gbm
|
||||
angle_use_x11 = ozone_platform_x11 && !is_ggp && (is_linux || is_chromeos)
|
||||
@@ -197,7 +202,7 @@ declare_args() {
|
||||
- angle_is_msvc = is_win && !is_clang
|
||||
+ angle_is_msvc = is_win && !is_clang && !is_mingw
|
||||
|
||||
# Default to using "_angle" suffix on Android
|
||||
if (is_android) {
|
||||
@@ -212,13 +211,13 @@ declare_args() {
|
||||
# anglebug.com/42266968
|
||||
angle_enable_wgpu =
|
||||
!is_official_build && !(is_android || is_fuchsia || angle_is_winuwp) &&
|
||||
- (!is_win || is_clang) && (!is_linux || angle_use_x11) &&
|
||||
+ (!is_win || is_clang) && (!is_linux || angle_use_x11) && !is_mingw &&
|
||||
defined(angle_dawn_dir)
|
||||
}
|
||||
|
||||
declare_args() {
|
||||
# ASTC emulation is only built on standalone non-android builds
|
||||
@ -181,17 +221,17 @@ index e946c6b6f..8862dc2f7 100644
|
||||
}
|
||||
|
||||
declare_args() {
|
||||
@@ -274,7 +279,7 @@ declare_args() {
|
||||
angle_vulkan_validation_layers_dir =
|
||||
"$angle_root/third_party/vulkan-deps/vulkan-validation-layers/src"
|
||||
@@ -350,7 +349,7 @@ angle_remove_configs = []
|
||||
if (angle_has_build) {
|
||||
angle_remove_configs += [ "//build/config/compiler:default_include_dirs" ]
|
||||
|
||||
- angle_build_vulkan_system_info = angle_has_build && !angle_is_winuwp
|
||||
+ angle_build_vulkan_system_info = angle_has_build && angle_enable_vulkan && !angle_is_winuwp
|
||||
- if (is_clang && !is_nacl) {
|
||||
+ if (is_clang && !is_nacl && !is_mingw) {
|
||||
angle_remove_configs += [ "//build/config/clang:find_bad_constructs" ]
|
||||
}
|
||||
|
||||
# Enable overlay by default when debug layers are enabled. This is currently only implemented on
|
||||
# Vulkan.
|
||||
diff --git a/src/libANGLE/renderer/d3d/BUILD.gn b/src/libANGLE/renderer/d3d/BUILD.gn
|
||||
index b5cbea8b7..054395801 100644
|
||||
index 55227c34b3..a1a027773c 100644
|
||||
--- a/src/libANGLE/renderer/d3d/BUILD.gn
|
||||
+++ b/src/libANGLE/renderer/d3d/BUILD.gn
|
||||
@@ -27,14 +27,16 @@ angle_source_set("angle_d3d_shared") {
|
||||
@ -199,7 +239,7 @@ index b5cbea8b7..054395801 100644
|
||||
config("angle_d3d9_backend_config") {
|
||||
defines = [ "ANGLE_ENABLE_D3D9" ]
|
||||
- ldflags = [ "/DELAYLOAD:d3d9.dll" ]
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
+ ldflags = [ "/DELAYLOAD:d3d9.dll" ]
|
||||
+ }
|
||||
}
|
||||
@ -224,36 +264,36 @@ index b5cbea8b7..054395801 100644
|
||||
public_deps = [ ":angle_d3d_shared" ]
|
||||
public_configs = [ ":angle_d3d11_backend_config" ]
|
||||
diff --git a/src/tests/BUILD.gn b/src/tests/BUILD.gn
|
||||
index 440d2e0dd..f686474b5 100644
|
||||
index c0dc92ae34..d10eceb320 100644
|
||||
--- a/src/tests/BUILD.gn
|
||||
+++ b/src/tests/BUILD.gn
|
||||
@@ -3,7 +3,6 @@
|
||||
@@ -2,7 +2,6 @@
|
||||
# Use of this source code is governed by a BSD-style license that can be
|
||||
# found in the LICENSE file.
|
||||
|
||||
import("//build/config/chromecast_build.gni")
|
||||
-import("//testing/test.gni")
|
||||
import("../../gni/angle.gni")
|
||||
import("angle_unittests.gni")
|
||||
|
||||
diff --git a/util/BUILD.gn b/util/BUILD.gn
|
||||
index 89bfb5362..9a1fd3a07 100644
|
||||
index 6cff850678..ff8e74551d 100644
|
||||
--- a/util/BUILD.gn
|
||||
+++ b/util/BUILD.gn
|
||||
@@ -379,7 +379,7 @@ foreach(is_shared_library,
|
||||
@@ -396,7 +396,7 @@ foreach(is_shared_library,
|
||||
}
|
||||
}
|
||||
|
||||
-if (is_win && !angle_is_winuwp) {
|
||||
+if (is_msvs && !angle_is_winuwp) {
|
||||
+if (is_msvc && !angle_is_winuwp) {
|
||||
angle_source_set("angle_stack_walker") {
|
||||
sources = [
|
||||
"windows/third_party/StackWalker/src/StackWalker.cpp",
|
||||
@@ -435,7 +435,7 @@ angle_source_set("angle_test_utils") {
|
||||
@@ -452,7 +452,7 @@ angle_source_set("angle_test_utils") {
|
||||
sources += [ "windows/test_utils_win.cpp" ]
|
||||
if (angle_is_winuwp) {
|
||||
sources += [ "windows/test_utils_winuwp.cpp" ]
|
||||
- } else {
|
||||
+ } else if (is_msvs) {
|
||||
+ } else if (is_msvc) {
|
||||
deps += [ ":angle_stack_walker" ]
|
||||
sources += [ "windows/win32/test_utils_win32.cpp" ]
|
||||
}
|
||||
|
||||
@ -1,38 +1,5 @@
|
||||
diff --git a/src/common/mathutil.h b/src/common/mathutil.h
|
||||
index d142b35de..46b9eac13 100644
|
||||
--- a/src/common/mathutil.h
|
||||
+++ b/src/common/mathutil.h
|
||||
@@ -1032,8 +1032,8 @@ inline uint32_t BitfieldReverse(uint32_t value)
|
||||
}
|
||||
|
||||
// Count the 1 bits.
|
||||
-#if defined(_MSC_VER) && !defined(__clang__)
|
||||
-# if defined(_M_IX86) || defined(_M_X64)
|
||||
+#if defined(ANGLE_PLATFORM_WINDOWS) && !defined(__clang__)
|
||||
+# if defined(_M_IX86) || defined(_M_X64) || defined(__i386__) || defined(__x86_64__)
|
||||
namespace priv
|
||||
{
|
||||
// Check POPCNT instruction support and cache the result.
|
||||
@@ -1076,7 +1076,7 @@ inline int BitCount(uint64_t bits)
|
||||
{
|
||||
if (priv::kHasPopcnt)
|
||||
{
|
||||
-# if defined(_M_X64)
|
||||
+# if defined(_M_X64) || defined(__x86_64__)
|
||||
return static_cast<int>(__popcnt64(bits));
|
||||
# else // x86
|
||||
return static_cast<int>(__popcnt(static_cast<uint32_t>(bits >> 32)) +
|
||||
@@ -1109,7 +1109,7 @@ inline int BitCount(uint64_t bits)
|
||||
return static_cast<int>(vget_lane_u64(vpaddl_u32(vpaddl_u16(vpaddl_u8(vsum))), 0));
|
||||
}
|
||||
# endif // defined(_M_IX86) || defined(_M_X64)
|
||||
-#endif // defined(_MSC_VER) && !defined(__clang__)
|
||||
+#endif // defined(ANGLE_PLATFORM_WINDOWS) && !defined(__clang__)
|
||||
|
||||
#if defined(ANGLE_PLATFORM_POSIX) || defined(__clang__)
|
||||
inline int BitCount(uint32_t bits)
|
||||
diff --git a/src/common/serializer/JsonSerializer.cpp b/src/common/serializer/JsonSerializer.cpp
|
||||
index 0028331d9..e675c406b 100644
|
||||
index 0028331d9b..e675c406b8 100644
|
||||
--- a/src/common/serializer/JsonSerializer.cpp
|
||||
+++ b/src/common/serializer/JsonSerializer.cpp
|
||||
@@ -173,7 +173,7 @@ void JsonSerializer::addValue(const std::string &name, rapidjson::Value &&value)
|
||||
@ -44,24 +11,69 @@ index 0028331d9..e675c406b 100644
|
||||
mDoc.AddMember(nameValue, std::move(value), mAllocator);
|
||||
}
|
||||
}
|
||||
diff --git a/src/compiler/translator/Compiler.cpp b/src/compiler/translator/Compiler.cpp
|
||||
index 485b4bd38..cbe275733 100644
|
||||
--- a/src/compiler/translator/Compiler.cpp
|
||||
+++ b/src/compiler/translator/Compiler.cpp
|
||||
@@ -1213,7 +1213,7 @@ bool TCompiler::checkAndSimplifyAST(TIntermBlock *root,
|
||||
diff --git a/src/libANGLE/renderer/gl/renderergl_utils.cpp b/src/libANGLE/renderer/gl/renderergl_utils.cpp
|
||||
index c62bb468dd..1fb6e91716 100644
|
||||
--- a/src/libANGLE/renderer/gl/renderergl_utils.cpp
|
||||
+++ b/src/libANGLE/renderer/gl/renderergl_utils.cpp
|
||||
@@ -2288,9 +2288,9 @@ void InitializeFeatures(const FunctionsGL *functions, angle::FeaturesGL *feature
|
||||
// Mesa always exposes ASTC extension but only Intel Gen9, Gen11, and Gen12 have hardware
|
||||
// support for it. Newer Intel GPUs (Gen12.5+) do not support ASTC.
|
||||
ANGLE_FEATURE_CONDITION(features, allowAstcFormats,
|
||||
- !isMesa || isIntel && (Is9thGenIntel(device) || IsGeminiLake(device) ||
|
||||
+ !isMesa || (isIntel && (Is9thGenIntel(device) || IsGeminiLake(device) ||
|
||||
IsCoffeeLake(device) || Is11thGenIntel(device) ||
|
||||
- Is12thGenIntel(device)));
|
||||
+ Is12thGenIntel(device))));
|
||||
|
||||
bool TCompiler::resizeClipAndCullDistanceBuiltins(TIntermBlock *root)
|
||||
{
|
||||
- auto resizeVariable = [=](const ImmutableString &name, uint32_t size, uint32_t maxSize) {
|
||||
+ auto resizeVariable = [=, this](const ImmutableString &name, uint32_t size, uint32_t maxSize) {
|
||||
// Skip if the variable is not used or implicitly has the maximum size
|
||||
if (size == 0 || size == maxSize)
|
||||
return true;
|
||||
// Ported from gpu_driver_bug_list.json (#183)
|
||||
ANGLE_FEATURE_CONDITION(features, emulateAbsIntFunction, IsApple() && isIntel);
|
||||
diff --git a/src/libANGLE/renderer/vulkan/CommandQueue.h b/src/libANGLE/renderer/vulkan/CommandQueue.h
|
||||
index bd2bb019a8..6f46f8c9da 100644
|
||||
--- a/src/libANGLE/renderer/vulkan/CommandQueue.h
|
||||
+++ b/src/libANGLE/renderer/vulkan/CommandQueue.h
|
||||
@@ -591,8 +591,8 @@ class [[nodiscard]] ScopedPrimaryCommandBuffer final
|
||||
|
||||
DeviceScoped<PrimaryCommandBuffer> unlockAndRelease()
|
||||
{
|
||||
- ASSERT(mCommandBuffer.get().valid() && mPoolLock.owns_lock() ||
|
||||
- !mCommandBuffer.get().valid() && mPoolLock.mutex() == nullptr);
|
||||
+ ASSERT((mCommandBuffer.get().valid() && mPoolLock.owns_lock()) ||
|
||||
+ (!mCommandBuffer.get().valid() && mPoolLock.mutex() == nullptr));
|
||||
mPoolLock = {};
|
||||
return std::move(mCommandBuffer);
|
||||
}
|
||||
diff --git a/src/libANGLE/renderer/vulkan/ProgramExecutableVk.cpp b/src/libANGLE/renderer/vulkan/ProgramExecutableVk.cpp
|
||||
index 124155117c..ee33f139cf 100644
|
||||
--- a/src/libANGLE/renderer/vulkan/ProgramExecutableVk.cpp
|
||||
+++ b/src/libANGLE/renderer/vulkan/ProgramExecutableVk.cpp
|
||||
@@ -2037,11 +2037,6 @@ angle::Result ProgramExecutableVk::updateTexturesDescriptorSet(
|
||||
if (newSharedCacheKey)
|
||||
{
|
||||
ASSERT(newSharedCacheKey->valid());
|
||||
- ANGLE_TRY(UpdateFullTexturesDescriptorSet(
|
||||
- context, mVariableInfoMap, mTextureWriteDescriptorDescs, updateBuilder,
|
||||
- *mExecutable, textures, samplers,
|
||||
- mDescriptorSets[DescriptorSetIndex::Texture]->getDescriptorSet()));
|
||||
-
|
||||
const gl::ActiveTextureMask &activeTextureMask = mExecutable->getActiveSamplersMask();
|
||||
for (size_t textureUnit : activeTextureMask)
|
||||
{
|
||||
@@ -2056,10 +2051,6 @@ angle::Result ProgramExecutableVk::updateTexturesDescriptorSet(
|
||||
context, *mDescriptorSetLayouts[DescriptorSetIndex::Texture],
|
||||
&mDescriptorSets[DescriptorSetIndex::Texture]));
|
||||
ASSERT(mDescriptorSets[DescriptorSetIndex::Texture]);
|
||||
-
|
||||
- ANGLE_TRY(UpdateFullTexturesDescriptorSet(
|
||||
- context, mVariableInfoMap, mTextureWriteDescriptorDescs, updateBuilder, *mExecutable,
|
||||
- textures, samplers, mDescriptorSets[DescriptorSetIndex::Texture]->getDescriptorSet()));
|
||||
}
|
||||
|
||||
mValidDescriptorSetIndices.set(DescriptorSetIndex::Texture);
|
||||
diff --git a/util/capture/frame_capture_test_utils.cpp b/util/capture/frame_capture_test_utils.cpp
|
||||
index 427844c5d..8c549d1b3 100644
|
||||
index 13dc463dc6..9941adb4c4 100644
|
||||
--- a/util/capture/frame_capture_test_utils.cpp
|
||||
+++ b/util/capture/frame_capture_test_utils.cpp
|
||||
@@ -84,7 +84,7 @@ bool LoadTraceInfoFromJSON(const std::string &traceName,
|
||||
@@ -170,7 +170,7 @@ bool LoadTraceInfoFromJSON(const std::string &traceName,
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -69,4 +81,4 @@ index 427844c5d..8c549d1b3 100644
|
||||
+ const rapidjson::Document::Object &meta = doc["TraceMetadata"].GetObject();
|
||||
|
||||
strncpy(traceInfoOut->name, traceName.c_str(), kTraceInfoMaxNameLen);
|
||||
traceInfoOut->contextClientMajorVersion = meta["ContextClientMajorVersion"].GetInt();
|
||||
traceInfoOut->frameEnd = meta["FrameEnd"].GetInt();
|
||||
|
||||
@ -1,5 +1,18 @@
|
||||
diff --git a/BUILD.gn b/BUILD.gn
|
||||
index b405f5122..4c9ad3d45 100644
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -34,7 +34,7 @@ config("swiftshader_config") {
|
||||
defines += [ "_ENABLE_EXTENDED_ALIGNED_STORAGE" ]
|
||||
|
||||
# Diable some MSVC warnings.
|
||||
- if (!is_clang) {
|
||||
+ if (!is_clang && !is_mingw) {
|
||||
cflags += [
|
||||
"/wd4065", # switch statement contains 'default' but no 'case' labels
|
||||
"/wd4309", # Truncation of constant value. See PixelRoutine.cpp casts
|
||||
diff --git a/src/Reactor/BUILD.gn b/src/Reactor/BUILD.gn
|
||||
index 67dfeb0ec..5df50ba8a 100644
|
||||
index 67dfeb0ec..379bb6468 100644
|
||||
--- a/src/Reactor/BUILD.gn
|
||||
+++ b/src/Reactor/BUILD.gn
|
||||
@@ -16,7 +16,7 @@ import("reactor.gni")
|
||||
@ -7,19 +20,29 @@ index 67dfeb0ec..5df50ba8a 100644
|
||||
|
||||
config("swiftshader_llvm_reactor_private_config") {
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags = [
|
||||
"/wd4141", # 'inline' used more than once. (LLVM 7.0)
|
||||
"/wd4146", # unary minus operator applied to unsigned type. (LLVM 7.0)
|
||||
@@ -104,12 +104,19 @@ if (supports_subzero) {
|
||||
@@ -25,6 +25,8 @@ config("swiftshader_llvm_reactor_private_config") {
|
||||
"/wd4245", # conversion from int to unsigned int (llvm)
|
||||
"/wd4624", # destructor was implicitly defined as deleted (LLVM 7.0)
|
||||
]
|
||||
+ } else if (is_mingw) {
|
||||
+ cflags = [ "-Wno-missing-template-keyword" ]
|
||||
} else {
|
||||
cflags = [ "-Wno-unused-local-typedef" ]
|
||||
}
|
||||
@@ -104,12 +106,20 @@ if (supports_subzero) {
|
||||
} else if (is_mac) {
|
||||
include_dirs += [ "../../third_party/llvm-subzero/build/MacOS/include/" ]
|
||||
}
|
||||
+
|
||||
+ if (is_clang) {
|
||||
+ if (is_mingw) {
|
||||
+ defines += [
|
||||
+ "__STDC_CONSTANT_MACROS",
|
||||
+ "__STDC_LIMIT_MACROS"
|
||||
+ "__STDC_FORMAT_MACROS",
|
||||
+ "__STDC_LIMIT_MACROS",
|
||||
+ ]
|
||||
+ }
|
||||
}
|
||||
@ -28,21 +51,21 @@ index 67dfeb0ec..5df50ba8a 100644
|
||||
cflags = []
|
||||
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags += [
|
||||
"/wd4005",
|
||||
"/wd4018",
|
||||
@@ -155,7 +162,7 @@ if (supports_subzero) {
|
||||
@@ -155,7 +165,7 @@ if (supports_subzero) {
|
||||
config("swiftshader_reactor_with_subzero_private_config") {
|
||||
cflags = []
|
||||
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags += [
|
||||
"/wd4141",
|
||||
"/wd4146",
|
||||
diff --git a/src/Reactor/SubzeroReactor.cpp b/src/Reactor/SubzeroReactor.cpp
|
||||
index 0a4e9d2ce..0d282b0d3 100644
|
||||
index c0c6b1d6e..c33dd10c5 100644
|
||||
--- a/src/Reactor/SubzeroReactor.cpp
|
||||
+++ b/src/Reactor/SubzeroReactor.cpp
|
||||
@@ -286,7 +286,7 @@ private:
|
||||
@ -55,12 +78,21 @@ index 0a4e9d2ce..0d282b0d3 100644
|
||||
# else
|
||||
__asm volatile("cpuid"
|
||||
diff --git a/src/Vulkan/BUILD.gn b/src/Vulkan/BUILD.gn
|
||||
index 5556abdf0..4bc957ba8 100644
|
||||
index 852068cad..c70307160 100644
|
||||
--- a/src/Vulkan/BUILD.gn
|
||||
+++ b/src/Vulkan/BUILD.gn
|
||||
@@ -183,8 +183,10 @@ swiftshader_shared_library("swiftshader_libvulkan") {
|
||||
"vk_swiftshader.def",
|
||||
]
|
||||
@@ -50,7 +50,7 @@ config("swiftshader_libvulkan_private_config") {
|
||||
defines = [ "VK_EXPORT=" ]
|
||||
}
|
||||
|
||||
- if (is_clang) {
|
||||
+ if (is_clang || is_mingw) {
|
||||
cflags = [
|
||||
"-Wno-unused-private-field",
|
||||
"-Wno-switch",
|
||||
@@ -172,8 +172,10 @@ swiftshader_source_set("_swiftshader_libvulkan") {
|
||||
|
||||
if (is_win) {
|
||||
libs += [
|
||||
- "gdi32.lib",
|
||||
- "user32.lib",
|
||||
@ -71,17 +103,51 @@ index 5556abdf0..4bc957ba8 100644
|
||||
]
|
||||
}
|
||||
|
||||
@@ -237,7 +239,7 @@ action("icd_file") {
|
||||
@@ -200,7 +202,7 @@ swiftshader_source_set("_swiftshader_libvulkan") {
|
||||
|
||||
swiftshader_shared_library("swiftshader_libvulkan") {
|
||||
# TODO(capn): Use the same ICD name on both Windows and non-Windows.
|
||||
- if (is_win) {
|
||||
+ if (is_msvc) {
|
||||
output_name = "vk_swiftshader"
|
||||
} else {
|
||||
output_name = "libvk_swiftshader"
|
||||
@@ -242,8 +244,10 @@ action("icd_file") {
|
||||
output_icd_file = "${root_out_dir}/${swiftshader_icd_file_name}"
|
||||
input_file = swiftshader_icd_file_name
|
||||
|
||||
if (is_win) {
|
||||
- library_path = ".\\vk_swiftshader.dll"
|
||||
- if (is_win) {
|
||||
+ if (is_msvc) {
|
||||
library_path = ".\\vk_swiftshader.dll"
|
||||
+ } else if (is_mingw) {
|
||||
+ library_path = "./libvk_swiftshader.dll"
|
||||
} else if (is_mac) {
|
||||
library_path = "./libvk_swiftshader.dylib"
|
||||
} else if (is_fuchsia) {
|
||||
diff --git a/third_party/SPIRV-Tools/BUILD.gn b/third_party/SPIRV-Tools/BUILD.gn
|
||||
index 4848fddd0..7da529600 100644
|
||||
--- a/third_party/SPIRV-Tools/BUILD.gn
|
||||
+++ b/third_party/SPIRV-Tools/BUILD.gn
|
||||
@@ -374,7 +374,7 @@ config("spvtools_internal_config") {
|
||||
"-Wno-unreachable-code-break",
|
||||
"-Wno-unreachable-code-return",
|
||||
]
|
||||
- } else if (!is_win) {
|
||||
+ } else if (!is_msvc) {
|
||||
# Work around a false-positive on a Skia GCC 10 builder.
|
||||
cflags += [ "-Wno-format-truncation" ]
|
||||
} else {
|
||||
@@ -382,7 +382,7 @@ config("spvtools_internal_config") {
|
||||
cflags += [ "/Zc:__cplusplus" ]
|
||||
}
|
||||
|
||||
- if (!is_win) {
|
||||
+ if (!is_msvc) {
|
||||
cflags += [ "-std=c++17" ]
|
||||
} else {
|
||||
cflags += [ "/std:c++17" ]
|
||||
diff --git a/third_party/llvm-10.0/BUILD.gn b/third_party/llvm-10.0/BUILD.gn
|
||||
index 59e52303c..09ca85108 100644
|
||||
index f99abba37..46754bbc0 100644
|
||||
--- a/third_party/llvm-10.0/BUILD.gn
|
||||
+++ b/third_party/llvm-10.0/BUILD.gn
|
||||
@@ -18,7 +18,7 @@ import("../../src/swiftshader.gni")
|
||||
@ -89,10 +155,50 @@ index 59e52303c..09ca85108 100644
|
||||
cflags = []
|
||||
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
cflags += [
|
||||
"/wd4005",
|
||||
"/wd4018",
|
||||
@@ -53,6 +53,18 @@ config("swiftshader_llvm_private_config") {
|
||||
"-Wno-macro-redefined",
|
||||
]
|
||||
}
|
||||
+ } else if (is_mingw) {
|
||||
+ cflags += [
|
||||
+ "-Wno-format",
|
||||
+ "-Wno-sign-compare",
|
||||
+ ]
|
||||
+ if (!is_clang) {
|
||||
+ cflags_cc = [
|
||||
+ "-Wno-cast-user-defined",
|
||||
+ "-Wno-init-list-lifetime",
|
||||
+ "-Wno-missing-template-keyword",
|
||||
+ ]
|
||||
+ }
|
||||
}
|
||||
|
||||
if (is_fuchsia) {
|
||||
@@ -80,6 +92,7 @@ config("swiftshader_llvm_private_config") {
|
||||
|
||||
defines = [
|
||||
"__STDC_CONSTANT_MACROS",
|
||||
+ "__STDC_FORMAT_MACROS",
|
||||
"__STDC_LIMIT_MACROS",
|
||||
]
|
||||
}
|
||||
diff --git a/third_party/llvm-10.0/llvm/include/llvm/Support/Threading.h b/third_party/llvm-10.0/llvm/include/llvm/Support/Threading.h
|
||||
index bacab8fa2..16ddf6d20 100644
|
||||
--- a/third_party/llvm-10.0/llvm/include/llvm/Support/Threading.h
|
||||
+++ b/third_party/llvm-10.0/llvm/include/llvm/Support/Threading.h
|
||||
@@ -18,7 +18,7 @@
|
||||
#include "llvm/ADT/SmallVector.h"
|
||||
#include "llvm/Config/llvm-config.h" // for LLVM_ON_UNIX
|
||||
#include "llvm/Support/Compiler.h"
|
||||
-#include <ciso646> // So we can check the C++ standard lib macros.
|
||||
+#include <version> // So we can check the C++ standard lib macros.
|
||||
#include <functional>
|
||||
|
||||
#if defined(_MSC_VER)
|
||||
diff --git a/third_party/llvm-10.0/llvm/include/llvm/Support/Windows/WindowsSupport.h b/third_party/llvm-10.0/llvm/include/llvm/Support/Windows/WindowsSupport.h
|
||||
index bb7e79b86..640c00eed 100644
|
||||
--- a/third_party/llvm-10.0/llvm/include/llvm/Support/Windows/WindowsSupport.h
|
||||
@ -120,6 +226,35 @@ index a9463024c..2df917cc7 100644
|
||||
# include <io.h>
|
||||
# include <fcntl.h>
|
||||
#endif
|
||||
diff --git a/third_party/llvm-subzero/include/llvm/Support/Atomic.h b/third_party/llvm-subzero/include/llvm/Support/Atomic.h
|
||||
index d03714b00..552313f0c 100644
|
||||
--- a/third_party/llvm-subzero/include/llvm/Support/Atomic.h
|
||||
+++ b/third_party/llvm-subzero/include/llvm/Support/Atomic.h
|
||||
@@ -20,6 +20,11 @@
|
||||
|
||||
#include "llvm/Support/DataTypes.h"
|
||||
|
||||
+// Windows will at times define MemoryFence.
|
||||
+#ifdef MemoryFence
|
||||
+#undef MemoryFence
|
||||
+#endif
|
||||
+
|
||||
namespace llvm {
|
||||
namespace sys {
|
||||
void MemoryFence();
|
||||
diff --git a/third_party/llvm-subzero/include/llvm/Support/Threading.h b/third_party/llvm-subzero/include/llvm/Support/Threading.h
|
||||
index 4bef7ec8d..be8da3621 100644
|
||||
--- a/third_party/llvm-subzero/include/llvm/Support/Threading.h
|
||||
+++ b/third_party/llvm-subzero/include/llvm/Support/Threading.h
|
||||
@@ -17,7 +17,7 @@
|
||||
|
||||
#include "llvm/Config/llvm-config.h" // for LLVM_ON_UNIX
|
||||
#include "llvm/Support/Compiler.h"
|
||||
-#include <ciso646> // So we can check the C++ standard lib macros.
|
||||
+#include <version> // So we can check the C++ standard lib macros.
|
||||
#include <functional>
|
||||
|
||||
// std::call_once from libc++ is used on all Unix platforms. Other
|
||||
diff --git a/third_party/llvm-subzero/lib/Support/ErrorHandling.cpp b/third_party/llvm-subzero/lib/Support/ErrorHandling.cpp
|
||||
index a7d3a1800..191264b4b 100644
|
||||
--- a/third_party/llvm-subzero/lib/Support/ErrorHandling.cpp
|
||||
@ -134,17 +269,16 @@ index a7d3a1800..191264b4b 100644
|
||||
# include <fcntl.h>
|
||||
#endif
|
||||
diff --git a/third_party/llvm-subzero/lib/Support/Timer.cpp b/third_party/llvm-subzero/lib/Support/Timer.cpp
|
||||
index fbd73d0b6..c9d17a53b 100644
|
||||
index 7e95b4514..420b6d1ac 100644
|
||||
--- a/third_party/llvm-subzero/lib/Support/Timer.cpp
|
||||
+++ b/third_party/llvm-subzero/lib/Support/Timer.cpp
|
||||
@@ -174,7 +174,7 @@ void TimeRecord::print(const TimeRecord &Total, raw_ostream &OS) const {
|
||||
OS << " ";
|
||||
|
||||
if (Total.getMemUsed())
|
||||
- OS << format("%9" PRId64 " ", (int64_t)getMemUsed());
|
||||
+ OS << format("%9lld ", (int64_t)getMemUsed());
|
||||
}
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
#include "llvm/Support/Process.h"
|
||||
#include "llvm/Support/YAMLTraits.h"
|
||||
#include "llvm/Support/raw_ostream.h"
|
||||
+#include <cinttypes>
|
||||
#include <ratio>
|
||||
using namespace llvm;
|
||||
|
||||
diff --git a/third_party/llvm-subzero/lib/Support/Windows/Process.inc b/third_party/llvm-subzero/lib/Support/Windows/Process.inc
|
||||
index 8d646b321..2d56e4c0d 100644
|
||||
@ -195,22 +329,19 @@ index c358b99ab..d67b21ec8 100644
|
||||
#define NOMINMAX
|
||||
#endif
|
||||
diff --git a/third_party/marl/BUILD.gn b/third_party/marl/BUILD.gn
|
||||
index 4c0264892..ccd1c482a 100644
|
||||
index 4c0264892..ad8ee6239 100644
|
||||
--- a/third_party/marl/BUILD.gn
|
||||
+++ b/third_party/marl/BUILD.gn
|
||||
@@ -14,7 +14,9 @@
|
||||
@@ -14,7 +14,6 @@
|
||||
|
||||
import("../../src/swiftshader.gni")
|
||||
|
||||
-import("//testing/test.gni")
|
||||
+if (build_with_chromium) {
|
||||
+ import("//testing/test.gni")
|
||||
+}
|
||||
|
||||
config("marl_config") {
|
||||
include_dirs = [ "include" ]
|
||||
diff --git a/third_party/marl/src/scheduler.cpp b/third_party/marl/src/scheduler.cpp
|
||||
index f5e9df0ec..c762e5dde 100644
|
||||
index 51bb27b44..fd2cf6c0c 100644
|
||||
--- a/third_party/marl/src/scheduler.cpp
|
||||
+++ b/third_party/marl/src/scheduler.cpp
|
||||
@@ -20,7 +20,7 @@
|
||||
@ -231,19 +362,6 @@ index f5e9df0ec..c762e5dde 100644
|
||||
__nop();
|
||||
#else
|
||||
__asm__ __volatile__("nop");
|
||||
diff --git a/third_party/subzero/CMakeLists.txt b/third_party/subzero/CMakeLists.txt
|
||||
index aec878b79..7c9fc9f2e 100644
|
||||
--- a/third_party/subzero/CMakeLists.txt
|
||||
+++ b/third_party/subzero/CMakeLists.txt
|
||||
@@ -78,7 +78,7 @@ else()
|
||||
message(WARNING "Architecture '${ARCH}' not supported by Subzero")
|
||||
endif()
|
||||
|
||||
-if(WIN32)
|
||||
+if(MSVC)
|
||||
list(APPEND SUBZERO_COMPILE_OPTIONS
|
||||
"/wd4146" # unary minus operator applied to unsigned type, result still unsigned
|
||||
"/wd4334" # ''operator' : result of 32-bit shift implicitly converted to 64 bits (was 64-bit shift intended?)
|
||||
diff --git a/third_party/subzero/src/IceTargetLowering.cpp b/third_party/subzero/src/IceTargetLowering.cpp
|
||||
index ab09b48cb..64cca4cda 100644
|
||||
--- a/third_party/subzero/src/IceTargetLowering.cpp
|
||||
|
||||
@ -1,38 +1,48 @@
|
||||
diff --git a/BUILD.gn b/BUILD.gn
|
||||
index 97aab3a..4b1ddd6 100644
|
||||
index 97aab3a..036c36a 100644
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -22,7 +22,7 @@ config("vulkan_memory_allocator_config") {
|
||||
@@ -22,10 +22,12 @@ config("vulkan_memory_allocator_config") {
|
||||
"-Wno-unused-variable",
|
||||
]
|
||||
}
|
||||
- if (is_win && !is_clang) {
|
||||
+ if (is_msvs && !is_clang) {
|
||||
+ if (is_msvc && !is_clang) {
|
||||
cflags_cc = [
|
||||
"/wd4189", # local variable is initialized but not referenced
|
||||
]
|
||||
+ } else if (is_mingw && !is_clang) {
|
||||
+ cflags_cc = [ "-Wno-unused-variable" ]
|
||||
}
|
||||
defines = [
|
||||
"VMA_DYNAMIC_VULKAN_FUNCTIONS=0",
|
||||
diff --git a/include/vk_mem_alloc.h b/include/vk_mem_alloc.h
|
||||
index 8091bae..cb49117 100644
|
||||
index 0bbfeed..7871149 100644
|
||||
--- a/include/vk_mem_alloc.h
|
||||
+++ b/include/vk_mem_alloc.h
|
||||
@@ -2485,6 +2485,7 @@ remove them if not needed.
|
||||
#include <cassert> // for assert
|
||||
#include <algorithm> // for min, max
|
||||
#include <mutex>
|
||||
+#include <cstdio> // for snprintf
|
||||
|
||||
#ifndef VMA_NULL
|
||||
// Value used as null pointer. Define it to e.g.: nullptr, NULL, 0, (void*)0.
|
||||
@@ -2704,6 +2704,7 @@ remove them if not needed.
|
||||
#include <cassert> // for assert
|
||||
#include <algorithm> // for min, max
|
||||
#include <mutex>
|
||||
+ #include <cstdio> // for snprintf
|
||||
#else
|
||||
#include VMA_CONFIGURATION_USER_INCLUDES_H
|
||||
#endif
|
||||
diff --git a/vulkan_memory_allocator.gni b/vulkan_memory_allocator.gni
|
||||
index 4aa2d79..0cf24b2 100644
|
||||
index 4aa2d79..368b847 100644
|
||||
--- a/vulkan_memory_allocator.gni
|
||||
+++ b/vulkan_memory_allocator.gni
|
||||
@@ -26,7 +26,7 @@ template("vulkan_memory_allocator") {
|
||||
@@ -26,10 +26,12 @@ template("vulkan_memory_allocator") {
|
||||
"-Wno-unused-variable",
|
||||
]
|
||||
}
|
||||
- if (is_win && !is_clang) {
|
||||
+ if (is_msvs && !is_clang) {
|
||||
+ if (is_msvc && !is_clang) {
|
||||
cflags_cc = [
|
||||
"/wd4189", # local variable is initialized but not referenced
|
||||
]
|
||||
+ } else if (is_mingw && !is_clang) {
|
||||
+ cflags_cc = [ "-Wno-unused-variable" ]
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@ -1,22 +1,22 @@
|
||||
diff --git a/BUILD.gn b/BUILD.gn
|
||||
index 44954b2d..0e62c356 100644
|
||||
index 7cf33942..e12f62e1 100644
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -367,7 +367,7 @@ config("spvtools_internal_config") {
|
||||
@@ -188,7 +188,7 @@ config("spvtools_internal_config") {
|
||||
"-Wno-unreachable-code-break",
|
||||
"-Wno-unreachable-code-return",
|
||||
]
|
||||
- } else if (!is_win) {
|
||||
+ } else if (!is_msvs) {
|
||||
+ } else if (!is_msvc) {
|
||||
# Work around a false-positive on a Skia GCC 10 builder.
|
||||
cflags += [ "-Wno-format-truncation" ]
|
||||
} else {
|
||||
@@ -375,7 +375,7 @@ config("spvtools_internal_config") {
|
||||
@@ -196,7 +196,7 @@ config("spvtools_internal_config") {
|
||||
cflags += [ "/Zc:__cplusplus" ]
|
||||
}
|
||||
|
||||
- if (!is_win) {
|
||||
+ if (!is_msvs) {
|
||||
+ if (!is_msvc) {
|
||||
cflags += [ "-std=c++17" ]
|
||||
} else {
|
||||
cflags += [ "/std:c++17" ]
|
||||
|
||||
@ -1,54 +1,63 @@
|
||||
diff --git a/BUILD.gn b/BUILD.gn
|
||||
index 7bbd39316..45f0d588c 100644
|
||||
index 5a73707d4..847d5710b 100644
|
||||
--- a/BUILD.gn
|
||||
+++ b/BUILD.gn
|
||||
@@ -80,7 +80,7 @@ config("vulkan_loader_config") {
|
||||
"LOADER_USE_UNSAFE_FILE_SEARCH=1",
|
||||
@@ -37,8 +37,8 @@ if (is_win) {
|
||||
|
||||
config("vulkan_internal_config") {
|
||||
defines = [ "VK_ENABLE_BETA_EXTENSIONS" ]
|
||||
- if (is_clang || !is_win) {
|
||||
- cflags = [
|
||||
+ if (is_clang || !is_msvc) {
|
||||
+ cflags_cc = [
|
||||
"-Wno-conversion",
|
||||
"-Wno-extra-semi",
|
||||
"-Wno-sign-compare",
|
||||
@@ -78,7 +78,7 @@ config("vulkan_loader_config") {
|
||||
]
|
||||
|
||||
cflags = []
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
cflags = [ "/wd4201" ]
|
||||
+ if (is_msvc) {
|
||||
cflags += [ "/wd4201" ]
|
||||
}
|
||||
if (is_linux || is_chromeos) {
|
||||
@@ -146,7 +146,7 @@ if (!is_android) {
|
||||
@@ -222,7 +222,7 @@ if (!is_android) {
|
||||
if (custom_vulkan_loader_library_name != "") {
|
||||
output_name = custom_vulkan_loader_library_name
|
||||
} else {
|
||||
- if (is_win) {
|
||||
+ if (is_msvs) {
|
||||
+ if (is_msvc) {
|
||||
output_name = "vulkan-1"
|
||||
} else {
|
||||
output_name = "vulkan"
|
||||
@@ -164,10 +164,14 @@ if (!is_android) {
|
||||
"loader/dirent_on_windows.h",
|
||||
"loader/loader_windows.c",
|
||||
"loader/loader_windows.h",
|
||||
- "loader/loader.rc",
|
||||
- "loader/vulkan-1.def",
|
||||
@@ -244,7 +244,14 @@ if (!is_android) {
|
||||
"$target_gen_dir/loader.rc",
|
||||
"loader/vulkan-1.def",
|
||||
]
|
||||
- if (!is_clang) {
|
||||
+ if (vulkan_loader_shared) {
|
||||
+ sources += [
|
||||
+ "loader/loader.rc",
|
||||
+ if (is_mingw) {
|
||||
+ sources -= [
|
||||
+ "$target_gen_dir/loader.rc",
|
||||
+ "loader/vulkan-1.def",
|
||||
+ ]
|
||||
+ defines = [ "BUILD_STATIC_LOADER" ]
|
||||
+ }
|
||||
+ if (is_msvs && !is_clang) {
|
||||
+ if (is_msvc && !is_clang) {
|
||||
cflags = [
|
||||
"/wd4054", # Type cast from function pointer
|
||||
"/wd4055", # Type cast from data pointer
|
||||
@@ -186,7 +190,7 @@ if (!is_android) {
|
||||
@@ -263,7 +270,7 @@ if (!is_android) {
|
||||
if (is_clang) {
|
||||
cflags = [ "-Wno-incompatible-pointer-types" ]
|
||||
}
|
||||
- libs = [ "Cfgmgr32.lib" ]
|
||||
+ libs = [ "cfgmgr32" ]
|
||||
deps += [ ":gen_loader_rc" ]
|
||||
}
|
||||
if (is_linux || is_chromeos) {
|
||||
sources += [
|
||||
diff --git a/loader/loader_windows.c b/loader/loader_windows.c
|
||||
index f9f2ddae8..1a0d999d7 100644
|
||||
index f73659c09..b8f701f15 100644
|
||||
--- a/loader/loader_windows.c
|
||||
+++ b/loader/loader_windows.c
|
||||
@@ -95,6 +95,7 @@ void windows_initialization(void) {
|
||||
@ -59,7 +68,7 @@ index f9f2ddae8..1a0d999d7 100644
|
||||
BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) {
|
||||
(void)hinst;
|
||||
switch (reason) {
|
||||
@@ -112,6 +113,7 @@ BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) {
|
||||
@@ -116,6 +117,7 @@ BOOL WINAPI DllMain(HINSTANCE hinst, DWORD reason, LPVOID reserved) {
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@ -5,12 +5,14 @@
|
||||
_realname=angleproject
|
||||
pkgbase=mingw-w64-${_realname}
|
||||
pkgname="${MINGW_PACKAGE_PREFIX}-${_realname}"
|
||||
pkgver=2.1.r21358.2e285bb5
|
||||
pkgrel=9
|
||||
pkgver=2.1.r25748.890b5d8f
|
||||
pkgrel=1
|
||||
pkgdesc='A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android (mingw-w64)'
|
||||
arch=('any')
|
||||
mingw_arch=('mingw64' 'ucrt64' 'clang64' 'clangarm64')
|
||||
url='https://chromium.googlesource.com/angle/angle'
|
||||
url='http://angleproject.org/'
|
||||
msys2_repository_url='https://chromium.googlesource.com/angle/angle'
|
||||
msys2_documentation_url='https://chromium.googlesource.com/angle/angle/+/main/README.md'
|
||||
license=('spdx:BSD-3-Clause')
|
||||
depends=("${MINGW_PACKAGE_PREFIX}-egl-headers"
|
||||
"${MINGW_PACKAGE_PREFIX}-gles-headers"
|
||||
@ -26,20 +28,19 @@ makedepends=("${MINGW_PACKAGE_PREFIX}-cc"
|
||||
"${MINGW_PACKAGE_PREFIX}-python"
|
||||
"git"
|
||||
"unzip")
|
||||
_commit=("2e285bb591f78af3b5b1f83617e06f9ef9067924")
|
||||
_commit=("890b5d8fa2988e3719e0d80421bf3e927db9cd5c")
|
||||
source=("${_realname}::git+https://chromium.googlesource.com/angle/angle.git#commit=${_commit}"
|
||||
"bare-clones/build::git+https://chromium.googlesource.com/chromium/src/build.git#commit=ccb49e801879c107ed6e96a84eb227f65ce4823b"
|
||||
"bare-clones/zlib::git+https://chromium.googlesource.com/chromium/src/third_party/zlib.git#commit=90e67ba3f8998a3532fc8e3db9539aada8060d43"
|
||||
"bare-clones/clang::git+https://chromium.googlesource.com/chromium/src/tools/clang.git#commit=64e9f9321c450d938fec79ef8e4431fd1a08f5ce"
|
||||
"swiftshader.zip::https://github.com/google/swiftshader/archive/0ba0b45490cd209448c5f976f41b34a746c9de5d.zip"
|
||||
"bare-clones/vulkan_memory_allocator::git+https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git#commit=ebe84bec02c041d28f902da0214bf442743fc907"
|
||||
"bare-clones/vulkan-deps::git+https://chromium.googlesource.com/vulkan-deps.git#commit=23a32754e71562453af68898e6918e06172d4c46"
|
||||
"bare-clones/spirv-headers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git#commit=3469b164e25cee24435029a569933cb42578db5d"
|
||||
"bare-clones/spirv-tools::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git#commit=310a67020a7d67be4fdf1b4bfa9bb85f985c6fd7"
|
||||
"bare-clones/vulkan-headers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git#commit=b6a29e5ca865f48368f6b2f170adb89975bb0be1"
|
||||
"bare-clones/vulkan-loader::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git#commit=a1d9d485ce1a66adc9a584ea79bc3829203863b6"
|
||||
"bare-clones/vulkan-tools::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git#commit=247c806c93c720488daa0bc86acd5b6f3a0e14f9"
|
||||
"bare-clones/vulkan-validation-layers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git#commit=9086fcc46a679c334f9ede021a65215981df776a"
|
||||
"swiftshader.zip::https://github.com/google/swiftshader/archive/c1f7fbbec4e17769c0182daae185466cb806d0d5.zip"
|
||||
"bare-clones/build::git+https://chromium.googlesource.com/chromium/src/build.git#commit=70c150bc0ae989d00c15ab1ed67464198e4890d0"
|
||||
"bare-clones/zlib::git+https://chromium.googlesource.com/chromium/src/third_party/zlib.git#commit=bf1e8de6cc305fdab82db1b65bed76b70bd96c8b"
|
||||
"bare-clones/clang::git+https://chromium.googlesource.com/chromium/src/tools/clang.git#commit=d6072980974f9a4922d2eb27e4fd244ca3017031"
|
||||
"bare-clones/spirv-headers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Headers.git#commit=c8ad050fcb29e42a2f57d9f59e97488f465c436d"
|
||||
"bare-clones/spirv-tools::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/SPIRV-Tools.git#commit=257a227fbadf8176ea386c7d8fb9b889cbf08640"
|
||||
"bare-clones/vulkan-headers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Headers.git#commit=7cff847503174e2049b08253ee5f30428866fea3"
|
||||
"bare-clones/vulkan-loader::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Loader.git#commit=235d1d2cf617af03a2ecbf6e951287595138feda"
|
||||
"bare-clones/vulkan_memory_allocator::git+https://chromium.googlesource.com/external/github.com/GPUOpen-LibrariesAndSDKs/VulkanMemoryAllocator.git#commit=56300b29fbfcc693ee6609ddad3fdd5b7a449a21"
|
||||
"bare-clones/vulkan-tools::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-Tools.git#commit=5968d14a1ef8a7eeacf342e1542099e1aff20f70"
|
||||
"bare-clones/vulkan-validation-layers::git+https://chromium.googlesource.com/external/github.com/KhronosGroup/Vulkan-ValidationLayers.git#commit=6f5b5e78b22cdd8d9535986e0d4c1b94ebe2d7b4"
|
||||
001-add-mingw-toolchain.patch
|
||||
002-buildflags-fixes.patch
|
||||
003-angle-src-fixes.patch
|
||||
@ -54,26 +55,25 @@ source=("${_realname}::git+https://chromium.googlesource.com/angle/angle.git#com
|
||||
rjson.gn
|
||||
zlib.gn
|
||||
angleproject.pc)
|
||||
sha256sums=('SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'ea1e3f0cc030911596b3fc4753a9228ea3a5a4eba6e21bb34b7a9867a3702738'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'SKIP'
|
||||
'573a9e12727926e2ddddf0863bed926ef3764ec64ab75d27e3ec48648849786d'
|
||||
'926b273b0f32ce81b7508dea3dff8447e2f98bd84caa2c67fd52ede5e53a7213'
|
||||
'04bcb05dc2f349639bf4e62ee92d758b756e56532ceb9184c2d7dca01e67a38e'
|
||||
'55d291668fe98f9b095983fe9c17a7336097d3f6028a59ca749b77dac92be5b1'
|
||||
'ced98a61919f7fdb10dbff26dfbd4ea11b034eaaeb3433f0fa5c4c998519e171'
|
||||
'276799dbae43ab2577547dcc7912353619ade2ba878b28947ddef545f48afffa'
|
||||
'7fc7f35aedc101fe325c161c42d2966f974ec789025750705ceb0caf259fc1f6'
|
||||
sha256sums=('8b51860cdeedda205ab6dc641c50943afd39018212701451f9a91d0b5f5be2cd'
|
||||
'f76c7c95066b1666ee2223f25d84cf7ddf7a891300e47b8eebd41bcd10dbba37'
|
||||
'a81c93d0eeff1f64765be1cf741aa44f300dea31441760b4e4c1dbe5ed4a0e56'
|
||||
'6478d94a8295db87759f756c99a7c079d7f3710e4fb996f9851d7f9ca8982f11'
|
||||
'f58b2605f036b8c9c7992635ad5f2070abe4d527314915874766d654ae4eb429'
|
||||
'47564925640c69eb6bef13ff7bca417d39e568208702e57c23cb6d4de3991b7a'
|
||||
'4d0c3e559c632add51f5faa365218c2c45e8ab7e6430077b269575d75ac3e1e4'
|
||||
'25ef9ac33ba80d13e44b2d3b45093451a20e41c4ed802c81f764934763408752'
|
||||
'966446961563e5e8e7d1917093a71ddfa11e5ea4a686c7f7176e97053f1e0029'
|
||||
'913fc3a85ae676025bafe63880c6413ffafe42495a04a52527ee914ee9ba3ae5'
|
||||
'84a3afb0278156a286c37e3c166e4079a877ccb8d3da85b32d7c37986d78efbc'
|
||||
'169327cafbfd0653a2937962cf17610d26c46dead8187f6ca1e21b20b637d9e1'
|
||||
'f82de30bbd868c75f7f3edd191e30fcce81c87825ff7c10713929295b5f4016f'
|
||||
'df927c5f804d51e6ce8f2c9324396d56d17aebbd674db3ba1c6ebafbebded0ac'
|
||||
'36939a33c2f9fef5ecf07d5bd508057b2a49c1582e0e01891ad3e7d9e3ffb7fc'
|
||||
'8209021bad1359426f24704395e67c2ca663a3c7b65eaaa3a2fc0e67fd155353'
|
||||
'08441bed59aadcd6eb7079662a970e5c26dae3c77d4958af0485ac959d08a2fe'
|
||||
'cb5358e80a45f54e15a69bbe12ecb07eae405b491451ee38aea01ce4579b492b'
|
||||
'b69a6ff976df8192b776673f94fd494ba4c62e798708f753d9f8390f4fc0341e'
|
||||
'6d5c3d7888a671059d378e955c86d297dede5e6eee0d6aa0aeb12eb84c9e8ca1'
|
||||
'bf878de3203a62e2a7f81bd4cd79237adc74804b4b692d9277da005ed56d4f2a'
|
||||
'86013781c2700219d4f64d7ac34ad16c40fcca9a641371385f67f642e23c643b'
|
||||
@ -101,16 +101,15 @@ pkgver() {
|
||||
prepare() {
|
||||
echo ":: Patching build directory"
|
||||
cd "${srcdir}"/build
|
||||
patch -p1 -i "${srcdir}"/001-add-mingw-toolchain.patch
|
||||
apply_patch_with_msg \
|
||||
001-add-mingw-toolchain.patch
|
||||
python "${srcdir}"/build/util/lastchange.py -o "${srcdir}"/build/util/LASTCHANGE
|
||||
rm -rf "${srcdir}"/${_realname}/build
|
||||
ln -sf "${srcdir}"/build "${srcdir}"/${_realname}
|
||||
echo "checkout_google_benchmark = false" > "${srcdir}"/${_realname}/build/config/gclient_args.gni
|
||||
cp -rf "${srcdir}"/build "${srcdir}"/${_realname}
|
||||
echo "build_with_chromium = false" > "${srcdir}"/${_realname}/build/config/gclient_args.gni
|
||||
|
||||
echo ":: Patching zlib directory"
|
||||
mkdir -p "${srcdir}"/${_realname}/third_party/zlib
|
||||
ln -sf "${srcdir}"/zlib.gn "${srcdir}"/${_realname}/third_party/zlib/BUILD.gn
|
||||
ln -sf "${srcdir}"/zlib/google "${srcdir}"/${_realname}/third_party/zlib
|
||||
cp -f "${srcdir}"/zlib.gn "${srcdir}"/${_realname}/third_party/zlib/BUILD.gn
|
||||
cp -rf "${srcdir}"/zlib/google "${srcdir}"/${_realname}/third_party/zlib
|
||||
|
||||
echo ":: Extracting SwiftShader"
|
||||
cd "${srcdir}"
|
||||
@ -119,42 +118,41 @@ prepare() {
|
||||
|
||||
echo ":: Patching SwiftShader directory"
|
||||
cd "${srcdir}"/SwiftShader
|
||||
patch -p1 -i "${srcdir}"/004-swiftshader-updates.patch
|
||||
patch -p1 -i "${srcdir}"/008-arm64-mingw-intrinsic.patch
|
||||
ln -sf "${srcdir}"/SwiftShader "${srcdir}"/${_realname}/third_party
|
||||
apply_patch_with_msg \
|
||||
004-swiftshader-updates.patch \
|
||||
008-arm64-mingw-intrinsic.patch
|
||||
cp -rf "${srcdir}"/SwiftShader "${srcdir}"/${_realname}/third_party
|
||||
|
||||
echo ":: Patching vulkan_memory_allocator directory"
|
||||
cd "${srcdir}"/vulkan_memory_allocator
|
||||
patch -p1 -i "${srcdir}"/005-vulkan-memory-allocator-updates.patch
|
||||
ln -sf "${srcdir}"/vulkan_memory_allocator "${srcdir}"/${_realname}/third_party
|
||||
apply_patch_with_msg \
|
||||
005-vulkan-memory-allocator-updates.patch
|
||||
cp -rf "${srcdir}"/vulkan_memory_allocator "${srcdir}"/${_realname}/third_party
|
||||
|
||||
echo ":: Patching spirv-tools directory"
|
||||
cd "${srcdir}"/spirv-tools
|
||||
patch -p1 -i "${srcdir}"/006-spirv-updates.patch
|
||||
apply_patch_with_msg \
|
||||
006-spirv-updates.patch
|
||||
|
||||
echo ":: Patching vulkan-loader directory"
|
||||
cd "${srcdir}"/vulkan-loader
|
||||
patch -p1 -i "${srcdir}"/007-vulkan-loader-updates.patch
|
||||
apply_patch_with_msg \
|
||||
007-vulkan-loader-updates.patch
|
||||
|
||||
echo ":: Copying vulkan-deps files"
|
||||
ln -sf "${srcdir}"/vulkan-deps "${srcdir}"/${_realname}/third_party
|
||||
cp -rf "${srcdir}"/spirv-headers "${srcdir}"/${_realname}/third_party/vulkan-deps/spirv-headers/src
|
||||
cp -rf "${srcdir}"/spirv-tools "${srcdir}"/${_realname}/third_party/vulkan-deps/spirv-tools/src
|
||||
cp -rf "${srcdir}"/vulkan-headers "${srcdir}"/${_realname}/third_party/vulkan-deps/vulkan-headers/src
|
||||
cp -rf "${srcdir}"/vulkan-loader "${srcdir}"/${_realname}/third_party/vulkan-deps/vulkan-loader/src
|
||||
cp -rf "${srcdir}"/vulkan-tools "${srcdir}"/${_realname}/third_party/vulkan-deps/vulkan-tools/src
|
||||
cp -rf "${srcdir}"/vulkan-validation-layers "${srcdir}"/${_realname}/third_party/vulkan-deps/vulkan-validation-layers/src
|
||||
echo ":: Copying spirv and vulkan files"
|
||||
cp -rf "${srcdir}"/spirv-headers/* "${srcdir}"/${_realname}/third_party/spirv-headers/src
|
||||
cp -rf "${srcdir}"/spirv-tools/* "${srcdir}"/${_realname}/third_party/spirv-tools/src
|
||||
cp -rf "${srcdir}"/vulkan-headers/* "${srcdir}"/${_realname}/third_party/vulkan-headers/src
|
||||
cp -rf "${srcdir}"/vulkan-loader/* "${srcdir}"/${_realname}/third_party/vulkan-loader/src
|
||||
cp -rf "${srcdir}"/vulkan-tools/* "${srcdir}"/${_realname}/third_party/vulkan-tools/src
|
||||
cp -rf "${srcdir}"/vulkan-validation-layers/* "${srcdir}"/${_realname}/third_party/vulkan-validation-layers/src
|
||||
|
||||
echo ":: Soft linking extra repos"
|
||||
mkdir -p "${srcdir}"/${_realname}/third_party/libjpeg
|
||||
ln -sf "${srcdir}"/jpeg.gn "${srcdir}"/${_realname}/third_party/libjpeg/BUILD.gn
|
||||
mkdir -p "${srcdir}"/${_realname}/third_party/jsoncpp
|
||||
ln -sf "${srcdir}"/jsoncpp.gn "${srcdir}"/${_realname}/third_party/jsoncpp/BUILD.gn
|
||||
rm -f "${srcdir}"/${_realname}/third_party/libpng/BUILD.gn
|
||||
ln -sf "${srcdir}"/png.gn "${srcdir}"/${_realname}/third_party/libpng/BUILD.gn
|
||||
rm -f "${srcdir}"/${_realname}/third_party/rapidjson/BUILD.gn
|
||||
ln -sf "${srcdir}"/rjson.gn "${srcdir}"/${_realname}/third_party/rapidjson/BUILD.gn
|
||||
ln -sf "${srcdir}"/clang "${srcdir}"/${_realname}/tools
|
||||
echo ":: Updating extra repos"
|
||||
cp -f "${srcdir}"/jpeg.gn "${srcdir}"/${_realname}/third_party/libjpeg_turbo/BUILD.gn
|
||||
cp -f "${srcdir}"/jsoncpp.gn "${srcdir}"/${_realname}/third_party/jsoncpp/BUILD.gn
|
||||
cp -f "${srcdir}"/png.gn "${srcdir}"/${_realname}/third_party/libpng/BUILD.gn
|
||||
cp -f "${srcdir}"/rjson.gn "${srcdir}"/${_realname}/third_party/rapidjson/BUILD.gn
|
||||
cp -rf "${srcdir}"/clang "${srcdir}"/${_realname}/tools
|
||||
|
||||
echo ":: Patching angle source"
|
||||
cd "${srcdir}"/${_realname}
|
||||
@ -182,8 +180,12 @@ build() {
|
||||
fi
|
||||
|
||||
local _arch=x64
|
||||
local _cfg=true
|
||||
local _swiftshader=true
|
||||
if [[ ${CARCH} == aarch64 ]]; then
|
||||
_arch=arm64
|
||||
_cfg=false
|
||||
_swiftshader=false
|
||||
fi
|
||||
|
||||
local _clang=false
|
||||
@ -191,35 +193,24 @@ build() {
|
||||
_clang=true
|
||||
fi
|
||||
|
||||
local _swiftshader=false
|
||||
if [[ ${MSYSTEM} == CLANG* ]] && [[ ${CARCH} != aarch64 ]]; then
|
||||
_swiftshader=true
|
||||
fi
|
||||
|
||||
if [[ ${MSYSTEM} == CLANG* ]]; then
|
||||
export CXX=clang++
|
||||
export CC=clang
|
||||
export AR=llvm-ar
|
||||
else
|
||||
export CXX=g++
|
||||
export CC=gcc
|
||||
export AR=ar
|
||||
fi
|
||||
|
||||
gn gen out/${_target}-${MSYSTEM} --args="
|
||||
target_cpu=\"${_arch}\"
|
||||
is_debug=${_debug}
|
||||
is_clang=${_clang}
|
||||
is_component_build=true
|
||||
angle_build_tests=false
|
||||
angle_enable_abseil=false
|
||||
angle_enable_metal=false
|
||||
angle_enable_d3d11_compositor_native_window=false
|
||||
angle_enable_cl=false
|
||||
angle_shared_libvulkan=false
|
||||
angle_enable_metal=false
|
||||
angle_enable_swiftshader=${_swiftshader}
|
||||
angle_shared_libvulkan=false
|
||||
chrome_pgo_phase=0
|
||||
use_custom_libcxx=false
|
||||
use_libcxx_modules=false
|
||||
use_lld=false
|
||||
use_siso=false
|
||||
use_sysroot=false
|
||||
win_enable_cfg_guards=${_cfg}
|
||||
treat_warnings_as_errors=false"
|
||||
|
||||
ninja -C out/${_target}-${MSYSTEM}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user