Skip to content

Building for UWP

Josh Matthews edited this page Jul 8, 2020 · 26 revisions

Set up the required build pieces

  1. Install Python 2 and Python 3
  2. Set up virtualenv for Python 2 by running path\to\python2.exe -m pip install virtualenv
  3. Set the PYTHON3 environment variable to point to a python3 executable.
  4. Install Windows 10 SDK, version 1809 (10.0.17763.0) and Visual Studio 2019
  5. from a powershell terminal with administrator privileges, run this command followed by these commands to install the required components for building FxR
  6. (optional) Install the HoloLens 2 emulator
  7. Open support/hololens/ServoApp.sln in Visual Studio 2019
  8. Activate Developer Mode (Settings -> For developers -> Developer mode) if it is not already active.

(Option 1) Make a debug desktop build

  1. Open a terminal to the root of the Servo repository.
  2. path\to\python2.exe mach build -d --uwp
  3. When the build is complete, select the "Debug" and "x64" build configurations in Visual Studio.
  4. Press the "> Local Machine" button to build and launch the UWP app.

(Option 2) Make a release desktop build

  1. Open a terminal to the root of the Servo repository.
  2. path\to\python2.exe mach build -r --uwp
  3. When the build is complete, select the "Release" and "x64" build configurations in Visual Studio.
  4. Press the "> Local Machine" button to build and launch the UWP app.

(Option 3) Make a release arm64 build for HoloLens 2

  1. Open a terminal to the root of the Servo repository.
  2. path\to\python2.exe mach build -r --uwp --win-arm64
  3. When the build is complete, select the "Release" and "ARM64" build configuration in Visual Studio.
  4. Press the "> Device" button to build and then launch the UWP app on a connected device.

(Sidebar) Make a build with a debug version of ANGLE for investigating GL issues

  1. Open the NuGet Package manager, select "Include prereleases", and select the appropriate -debug package of ANGLE.WindowsStore.Servo: NuGet Package Manager
  2. Configure Visual Studio to allow code other than Just My Code to be debugged: Debug Options
  3. Start a debugging session, open the Modules window (Debug | Windows | Modules), find the entry for libEGL, and select "Load Symbols": Debug Modules Window
  4. The symbols can be found in the folder packages\ANGLE.WindowsStore.Servo.VERSION\bin\UAP\ARCH, and the source (for step debugging) can be found in packages\ANGLE.WindowsStore.Servo.VERSION\src.

See Publishing a new Nuget ANGLE version for how the nuget debug package is created.

Clone this wiki locally