@@ -74,7 +74,9 @@ argument to `x86` and run
74
74
VsDevCmd -arch=x86
75
75
```
76
76
77
- - Then adapt the following command and run it.
77
+ - Then adapt the following command and run it. Make sure to use forward slashes
78
+ (` / ` ) instead of backslashes (` \ ` ) as the path seperators. ` clang ` breaks
79
+ with backslashed paths
78
80
``` cmd
79
81
set swift_source_dir=path-to-directory-containing-all-cloned-repositories
80
82
```
@@ -113,7 +115,14 @@ cmake -G "Ninja"^
113
115
-DLLVM_TARGETS_TO_BUILD=X86^
114
116
"%swift_source_dir%/llvm"
115
117
popd
116
- cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/llvm-windows-amd64"
118
+ cmake --build "%swift_source_dir%/build/Ninja-RelWithDebInfoAssert/llvm-windows-amd64"
119
+ ```
120
+ - store the llvm ` bin ` directory in an environment variable so it can be used
121
+ to build swift. Assuming you followed the instructions exactly, the path
122
+ below is correct, but it may be different based on your build variant and
123
+ platform, so double check.
124
+ ``` cmd
125
+ set llvm_bin_dir="%swift_source_dir%/build/Ninja-RelWithDebInfoAssert/llvm-windows-amd64/bin"
117
126
```
118
127
119
128
### 7. Build Swift
@@ -122,8 +131,8 @@ cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/llvm-windows-amd64"
122
131
- You may need to adjust the ` SWIFT_WINDOWS_LIB_DIRECTORY ` parameter depending on
123
132
your target platform or Windows SDK version.
124
133
``` cmd
125
- mkdir "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
126
- pushd "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
134
+ mkdir "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
135
+ pushd "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
127
136
cmake -G "Ninja" "%swift_source_dir%/swift"^
128
137
-DCMAKE_BUILD_TYPE=Debug^
129
138
-DSWIFT_PATH_TO_CMARK_SOURCE="%swift_source_dir%/cmark"^
@@ -141,13 +150,13 @@ cmake -G "Ninja" "%swift_source_dir%/swift"^
141
150
-DICU_I18N_LIB_NAME="icuin"^
142
151
-DSWIFT_INCLUDE_DOCS=FALSE^
143
152
-DSWIFT_INCLUDE_TESTS=FALSE^
144
- -DCMAKE_C_COMPILER="<path-to-llvm-bin> /clang-cl.exe"^
145
- -DCMAKE_CXX_COMPILER="<path-to-llvm-bin>/bin /clang-cl.exe"^
153
+ -DCMAKE_C_COMPILER="%llvm_bin_dir% /clang-cl.exe"^
154
+ -DCMAKE_CXX_COMPILER="%llvm_bin_dir% /clang-cl.exe"^
146
155
-DCMAKE_C_FLAGS="-fms-compatibility-version=19.00 /Z7"^
147
156
-DCMAKE_CXX_FLAGS="-fms-compatibility-version=19.00 -Z7" ^
148
157
-DSWIFT_BUILD_RUNTIME_WITH_HOST_COMPILER=FALSE
149
158
popd
150
- cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
159
+ cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
151
160
```
152
161
153
162
- To create a Visual Studio project, you'll need to change the generator and,
@@ -168,13 +177,13 @@ cmake -G "Visual Studio 15" "%swift_source_dir%/swift"^
168
177
Follow instructions 1-6 for ` clang-cl ` , but run the following instead to build Swift
169
178
170
179
``` cmd
171
- mkdir "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
172
- pushd "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
180
+ mkdir "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
181
+ pushd "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
173
182
cmake -G "Ninja" "%swift_source_dir%/swift"^
174
183
-DCMAKE_BUILD_TYPE=Debug^
175
184
-DSWIFT_PATH_TO_CMARK_SOURCE="%swift_source_dir%/cmark"^
176
- -DSWIFT_PATH_TO_CMARK_BUILD="%swift_source_dir%/build/Ninja-DebugAssert /cmark-windows-amd64"^
177
- -DSWIFT_CMARK_LIBRARY_DIR="%swift_source_dir%/build/Ninja-DebugAssert /cmark-windows-amd64/src"^
185
+ -DSWIFT_PATH_TO_CMARK_BUILD="%swift_source_dir%/build/Ninja-RelWithDebInfoAssert /cmark-windows-amd64"^
186
+ -DSWIFT_CMARK_LIBRARY_DIR="%swift_source_dir%/build/Ninja-RelWithDebInfoAssert /cmark-windows-amd64/src"^
178
187
-DSWIFT_PATH_TO_LLVM_SOURCE="%swift_source_dir%/llvm"^
179
188
-DSWIFT_PATH_TO_LLVM_BUILD="%swift_source_dir%/build/Ninja-RelWithDebInfoAssert/llvm-windows-amd64"^
180
189
-DSWIFT_PATH_TO_CLANG_SOURCE="%swift_source_dir%/llvm/tools/clang"^
@@ -190,5 +199,5 @@ cmake -G "Ninja" "%swift_source_dir%/swift"^
190
199
-DSWIFT_BUILD_DYNAMIC_SDK_OVERLAY=FALSE^
191
200
-DSWIFT_BUILD_RUNTIME_WITH_HOST_COMPILER=FALSE
192
201
popd
193
- cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64/ninja "
202
+ cmake --build "%swift_source_dir%/build/Ninja-DebugAssert/swift-windows-amd64"
194
203
```
0 commit comments