You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- remove numbers on steps, they get out of sync and auto-numbering headers doesn't work
- correct some header titles
- re-render the tree to be ascii pretty
- split out "one-time setup" from "getting started"
- fix invocation of cmake for toolchain
- fix libdispatch build rules
- convert libdispatch build rules to be copy-paste friendly
- add libdispatch test instructions
Copy file name to clipboardExpand all lines: docs/WindowsBuild.md
+37-36Lines changed: 37 additions & 36 deletions
Original file line number
Diff line number
Diff line change
@@ -2,13 +2,11 @@
2
2
3
3
Visual Studio 2017 or newer is needed to build swift on Windows.
4
4
5
-
## 1. Install dependencies
5
+
## Install dependencies
6
6
- Install the latest version of [Visual Studio](https://www.visualstudio.com/downloads/)
7
-
- Make sure to include "Programming Languages|Visual C++" and "Windows and Web
8
-
Development|Universal Windows App Development|Windows SDK" in your
9
-
installation.
7
+
- Make sure to include "Programming Languages|Visual C++" and "Windows and Web Development|Universal Windows App Development|Windows SDK" in your installation.
10
8
11
-
## 1. Clone the repositories
9
+
## Clone the repositories
12
10
1. Clone `apple/llvm-project` into a directory for the toolchain
13
11
1. Clone `apple/swift-cmark`, `apple/swift`, `apple/swift-corelibs-libdispatch`, `apple/swift-corelibs-foundation`, `apple/swift-corelibs-xctest`, `apple/swift-llbuild`, `apple/swift-package-manager` into the toolchain directory
14
12
1. Clone `compnerd/windows-swift` as a peer of the toolchain directory
1. Go to https://dev.azure.com/compnerd/windows-swift and scroll down to "Dependencies" where you'll see bots (hopefully green) for icu, SQLite, curl, and libxml2. Download each of the zip files and copy their contents into S:/Library. The directory structure should resemble:
39
37
40
38
```
41
-
S:/Library/
42
-
/icu-64/usr
43
-
/libcurl-development/usr
44
-
/libxml2-development/usr
45
-
/sqlite-3.28.0/usr
46
-
/zlib-1.2.11/usr
39
+
/Library
40
+
┝ icu-64
41
+
│ ┕ usr/...
42
+
├ libcurl-development
43
+
│ ┕ usr/...
44
+
├ libxml2-development
45
+
│ ┕ usr/...
46
+
├ sqlite-3.28.0
47
+
│ ┕ usr/...
48
+
┕ zlib-1.2.11
49
+
┕ usr/...
47
50
```
48
51
49
-
## 1. Get ready
52
+
## Get ready
50
53
- From within a **NATIVE developer** command prompt (not PowerShell nor cmd, but the [Visual Studio Developer Command Prompt](https://msdn.microsoft.com/en-us/library/f35ctcxw.aspx)), execute the following command if you have an x64 PC (The Native Developer command prompt is situated at "C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Visual Studio 2019\Visual Studio Tools\VC\x64 Native Tools Command Prompt for VS 2019.lnk").
51
54
52
55
Run this as administrator the first time, for setting up the symlinks below.
@@ -62,6 +65,7 @@ VsDevCmd -arch=x86
62
65
(`Debug`, `RelWithDebInfoAssert` or `Release`) to avoid conflicts between the debug and
63
66
non-debug version of the MSCRT library.
64
67
68
+
## One-time Setup (re-run on Visual Studio upgrades)
65
69
- Set up the `ucrt`, `visualc`, and `WinSDK` modules by copying `ucrt.modulemap` located at
66
70
`swift/stdlib/public/Platform/ucrt.modulemap` into
67
71
`${UniversalCRTSdkDir}/Include/${UCRTVersion}/ucrt` as `module.modulemap`, copying `visualc.modulemap` located at `swift/stdlib/public/Platform/visualc.modulemap` into `${VCToolsInstallDir}/include` as `module.modulemap`, and copying `winsdk.modulemap` located at `swift/stdlib/public/Platform/winsdk.modulemap` into `${UniversalCRTSdkDir}/Include/${UCRTVersion}/um` and setup the `visualc.apinotes` located at `swift/stdlib/public/Platform/visualc.apinotes` into `${VCToolsInstallDir}/include` as `visualc.apinotes`
Warning: Creating the above links usually requires administrator privileges. The quick and easy way to do this is to open a second developer prompt by right clicking whatever shortcut you used to open the first one, choosing Run As Administrator, and pasting the above commands into the resulting window. You can then close the privileged prompt; this is the only step which requires elevation.
77
81
78
-
## 1. Build toolchain
82
+
## Build the toolchain
79
83
- This must be done from within a developer command prompt. Make sure that the build type for LLVM/Clang is compatible with the build type for Swift. That is, either build everything `Debug` or some variant of `Release` (e.g. `Release`, `RelWithDebInfo`).
0 commit comments