blob: 72ef393f0e63bcafd14b9c38b416f5d730401a9d [file]
#!/bin/sh
set -e
mkdir -p dependencies
cd dependencies
echo
if [ ! -d dawn ]; then
echo "Cloning Dawn..."
git clone https://dawn.googlesource.com/dawn
else
echo "Already have Dawn; updating it..."
git -C dawn fetch origin
fi
cd dawn
echo
echo Checking out code...
git reset --hard
git checkout 211333b2e3e429c3508f25c81c547f602adf448c
cp scripts/standalone.gclient .gclient
gclient sync -f -D
echo
echo Manually applying patches to suppress compiler warnings...
pushd build
git apply - << 'EOF'
diff --git a/config/compiler/BUILD.gn b/config/compiler/BUILD.gn
index 6a96f9b6f..4c1387628 100644
--- a/config/compiler/BUILD.gn
+++ b/config/compiler/BUILD.gn
@@ -336,6 +336,7 @@ config("compiler") {
# categories here, add it to the associated file to keep this shared config
# smaller.
if (is_win) {
+ defines += [ "_SILENCE_CXX20_OLD_SHARED_PTR_ATOMIC_SUPPORT_DEPRECATION_WARNING" ]
configs += [ "//build/config/win:compiler" ]
} else if (is_android) {
configs += [ "//build/config/android:compiler" ]
EOF
popd
echo
echo Generating out/release/args.gn...
gn gen --args='is_debug=false dawn_complete_static_libs=true use_custom_libcxx=false dawn_use_swiftshader=false angle_enable_swiftshader=false' out/release
echo
echo Compiling...
ninja -C out/release -j20 webgpu_dawn_static cpp proc_static