The issue is simple but the solution requires some knowledge of git submodules, so detailing here for future reference.
See also the excellent https://tech.labs.oliverwyman.com/blog/2015/01/31/git-submodules/
Currently all branches are pointing at an earlier version of the releases/m71 branch of webrtc-uwp-sdk, namely webrtc-uwp/webrtc-uwp-sdk@cd7b538 from May 17th:
> git ls-files --stage -- external\webrtc-uwp-sdk
160000 cd7b538edafe414764a5bce0dc7b20d40ff1d7db 0 external/webrtc-uwp-sdk
The change introducing the --cpp17 flag into the build scripts was committed on June 28th, namely webrtc-uwp/webrtc-uwp-sdk@271ea0f.
This results in repositories freshly cloned following the instructions in the README.md not being able to compile:
> git clone --recursive https://github.com/microsoft/MixedReality-WebRTC.git
[...]
> cd tools\build
> build.ps1 -BuildConfig Debug -BuildArch x64 -BuildPlatform Win32
[...]
run.py: error: unrecognized arguments: --cpp17
There are multiple ways to fix that locally:
-
Tell git to update the webrtc-uwp-sdk submodule to the latest commit on the releases/m71 branch:
git submodule update --remote --force --recursive
Note the --remote argument which reads the branch=releases/m71 config in .gitmodules and update to the associated commit.
-
Explicitly checkout the releases/m71 branch and force a submodule sync:
cd external\webrtc-uwp-sdk
git checkout releases/m71
git submodule update --force --recursive
cd ..\..
To check that the submodule has been update, run again:
> git ls-files --stage -- external\webrtc-uwp-sdk
160000 134c00e8320133ba1e8fa1d5fe4e076b211653e5 0 external/webrtc-uwp-sdk
The fix simply consists in fixing locally then committing the change to external/webrtc-uwp-sdk, which shows the updated commit:
diff --git a/external/webrtc-uwp-sdk b/external/webrtc-uwp-sdk
index cd7b538..134c00e 160000
--- a/external/webrtc-uwp-sdk
+++ b/external/webrtc-uwp-sdk
@@ -1 +1 @@
-Subproject commit cd7b538edafe414764a5bce0dc7b20d40ff1d7db
+Subproject commit 134c00e8320133ba1e8fa1d5fe4e076b211653e5
The issue is simple but the solution requires some knowledge of git submodules, so detailing here for future reference.
See also the excellent https://tech.labs.oliverwyman.com/blog/2015/01/31/git-submodules/
Currently all branches are pointing at an earlier version of the
releases/m71branch of webrtc-uwp-sdk, namely webrtc-uwp/webrtc-uwp-sdk@cd7b538 from May 17th:The change introducing the
--cpp17flag into the build scripts was committed on June 28th, namely webrtc-uwp/webrtc-uwp-sdk@271ea0f.This results in repositories freshly cloned following the instructions in the
README.mdnot being able to compile:There are multiple ways to fix that locally:
Tell git to update the webrtc-uwp-sdk submodule to the latest commit on the
releases/m71branch:Note the
--remoteargument which reads thebranch=releases/m71config in.gitmodulesand update to the associated commit.Explicitly checkout the
releases/m71branch and force a submodule sync:To check that the submodule has been update, run again:
The fix simply consists in fixing locally then committing the change to
external/webrtc-uwp-sdk, which shows the updated commit: