Skip to content

Commit ed87929

Browse files
[WASM] Replace Wasm with WASI to switch target OS
1 parent 3f11931 commit ed87929

26 files changed

+116
-116
lines changed

CMakeLists.txt

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -258,7 +258,7 @@ set(SWIFT_ANDROID_DEPLOY_DEVICE_PATH "" CACHE STRING
258258
# User-configurable ICU specific options for Android, FreeBSD, Linux, Haiku, and WebAssembly.
259259
#
260260

261-
foreach(sdk ANDROID;FREEBSD;LINUX;WINDOWS;HAIKU;WASM)
261+
foreach(sdk ANDROID;FREEBSD;LINUX;WINDOWS;HAIKU;WASI)
262262
foreach(arch aarch64;armv6;armv7;i686;powerpc64;powerpc64le;s390x;wasm32;x86_64)
263263
set(SWIFT_${sdk}_${arch}_ICU_UC "" CACHE STRING
264264
"Path to a directory containing the icuuc library for ${sdk}")
@@ -820,19 +820,19 @@ if(swift_build_windows AND NOT "${CMAKE_SYSTEM_NAME}" STREQUAL "Windows")
820820
endif()
821821

822822
# Should we cross-compile the standard library for WebAssembly (WASI)?
823-
is_sdk_requested(WASM swift_build_wasm)
824-
if(swift_build_wasm AND NOT "${SWIFT_HOST_VARIANT_SDK}" STREQUAL "WASM")
823+
is_sdk_requested(WASI swift_build_wasm)
824+
if(swift_build_wasm AND NOT "${SWIFT_HOST_VARIANT_SDK}" STREQUAL "WASI")
825825
#if ("${SWIFT_ANDROID_NDK_PATH}" STREQUAL "")
826826
# message(FATAL_ERROR "You must set SWIFT_ANDROID_NDK_PATH to cross-compile the Swift runtime for Android")
827827
#endif()
828828
#if (NOT ("${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Darwin" OR "${CMAKE_HOST_SYSTEM_NAME}" STREQUAL "Linux"))
829829
# message(FATAL_ERROR "A Darwin or Linux host is required to build the Swift runtime for Android")
830830
#endif()
831831

832-
if("${SWIFT_SDK_WASM_ARCHITECTURES}" STREQUAL "")
833-
set(SWIFT_SDK_WASM_ARCHITECTURES wasm32)
832+
if("${SWIFT_SDK_WASI_ARCHITECTURES}" STREQUAL "")
833+
set(SWIFT_SDK_WASI_ARCHITECTURES wasm32)
834834
endif()
835-
configure_sdk_unix("Wasm" "${SWIFT_SDK_WASM_ARCHITECTURES}")
835+
configure_sdk_unix("WASI" "${SWIFT_SDK_WASI_ARCHITECTURES}")
836836
endif()
837837

838838
if("${SWIFT_SDKS}" STREQUAL "")

build-linux.sh

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -5,23 +5,23 @@ export sourcedir=$PWD/..
55
./utils/build-script --release --wasm --verbose \
66
--skip-build-benchmarks \
77
--extra-cmake-options=" \
8-
-DSWIFT_SDKS='WASM;LINUX' \
8+
-DSWIFT_SDKS='WASI;LINUX' \
99
-DSWIFT_BUILD_SOURCEKIT=FALSE \
1010
-DSWIFT_ENABLE_SOURCEKIT_TESTS=FALSE \
1111
-DCMAKE_AR='$sourcedir/wasi-sdk/bin/llvm-ar' \
1212
-DCMAKE_RANLIB='$sourcedir/wasi-sdk/bin/llvm-ranlib' \
1313
" \
14-
--build-stdlib-deployment-targets "wasm-wasm32" \
14+
--build-stdlib-deployment-targets "wasi-wasm32" \
1515
--build-swift-static-stdlib \
1616
--install-destdir="$sourcedir/install" \
1717
--install-prefix="/opt/swiftwasm-sdk" \
1818
--install-swift \
1919
--installable-package="$sourcedir/swiftwasm-linux.tar.gz" \
2020
--llvm-targets-to-build "X86;WebAssembly" \
21-
--stdlib-deployment-targets "wasm-wasm32" \
22-
--wasm-icu-data "todo-icu-data" \
23-
--wasm-icu-i18n "$sourcedir/icu_out/lib" \
24-
--wasm-icu-i18n-include "$sourcedir/icu_out/include" \
25-
--wasm-icu-uc "$sourcedir/icu_out/lib" \
26-
--wasm-icu-uc-include "$sourcedir/icu_out/include" \
27-
--wasm-wasi-sdk "$sourcedir/wasi-sdk"
21+
--stdlib-deployment-targets "wasi-wasm32" \
22+
--wasi-icu-data "todo-icu-data" \
23+
--wasi-icu-i18n "$sourcedir/icu_out/lib" \
24+
--wasi-icu-i18n-include "$sourcedir/icu_out/include" \
25+
--wasi-icu-uc "$sourcedir/icu_out/lib" \
26+
--wasi-icu-uc-include "$sourcedir/icu_out/include" \
27+
--wasi-sdk "$sourcedir/wasi-sdk"

build-mac.sh

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,12 +13,12 @@ export sourcedir=$PWD/..
1313
-DCMAKE_AR='/usr/local/opt/llvm/bin/llvm-ar' \
1414
-DCMAKE_RANLIB='/usr/local/opt/llvm/bin/llvm-ranlib' \
1515
" \
16-
--build-stdlib-deployment-targets "wasm-wasm32" \
16+
--build-stdlib-deployment-targets "wasi-wasm32" \
1717
--build-swift-dynamic-sdk-overlay false \
1818
--build-swift-static-sdk-overlay false \
1919
--build-swift-static-stdlib \
2020
--llvm-targets-to-build "X86;WebAssembly" \
21-
--stdlib-deployment-targets "wasm-wasm32" \
21+
--stdlib-deployment-targets "wasi-wasm32" \
2222
--wasm-icu-data "todo-icu-data" \
2323
--wasm-icu-i18n "$sourcedir/icu_out/lib" \
2424
--wasm-icu-i18n-include "$sourcedir/icu_out/include" \

cmake/modules/AddSwift.cmake

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -500,7 +500,7 @@ function(_add_variant_link_flags)
500500
foreach(path IN LISTS ${LFLAGS_ARCH}_LIB)
501501
list(APPEND library_search_directories ${path})
502502
endforeach()
503-
elseif("${LFLAGS_SDK}" STREQUAL "WASM")
503+
elseif("${LFLAGS_SDK}" STREQUAL "WASI")
504504
# No extra libraries needed.
505505
else()
506506
# If lto is enabled, we need to add the object path flag so that the LTO code
@@ -531,7 +531,7 @@ function(_add_variant_link_flags)
531531
if(NOT SWIFT_COMPILER_IS_MSVC_LIKE)
532532
# FIXME: On Apple platforms, find_program needs to look for "ld64.lld"
533533
find_program(LDLLD_PATH "ld.lld")
534-
if("${LFLAGS_SDK}" STREQUAL "WASM")
534+
if("${SWIFT_SDK_${LFLAGS_SDK}_OBJECT_FORMAT}" STREQUAL "WASM")
535535
list(APPEND result "-fuse-ld=${CMAKE_SOURCE_DIR}/fakeld")
536536
elseif((SWIFT_ENABLE_LLD_LINKER AND LDLLD_PATH AND NOT APPLE) OR
537537
("${LFLAGS_SDK}" STREQUAL "WINDOWS" AND
@@ -1617,8 +1617,8 @@ endfunction()
16171617
# SWIFT_MODULE_DEPENDS_HAIKU
16181618
# Swift modules this library depends on when built for Haiku.
16191619
#
1620-
# SWIFT_MODULE_DEPENDS_WASM
1621-
# Swift modules this library depends on when built for WebAssembly.
1620+
# SWIFT_MODULE_DEPENDS_WASI
1621+
# Swift modules this library depends on when built for WASI.
16221622
#
16231623
# FRAMEWORK_DEPENDS
16241624
# System frameworks this library depends on.
@@ -1728,7 +1728,7 @@ function(add_swift_target_library name)
17281728
SWIFT_MODULE_DEPENDS_OSX
17291729
SWIFT_MODULE_DEPENDS_TVOS
17301730
SWIFT_MODULE_DEPENDS_WATCHOS
1731-
SWIFT_MODULE_DEPENDS_WASM
1731+
SWIFT_MODULE_DEPENDS_WASI
17321732
SWIFT_MODULE_DEPENDS_WINDOWS
17331733
TARGET_SDKS)
17341734

@@ -1838,9 +1838,9 @@ function(add_swift_target_library name)
18381838
elseif(${sdk} STREQUAL HAIKU)
18391839
list(APPEND swiftlib_module_depends_flattened
18401840
${SWIFTLIB_SWIFT_MODULE_DEPENDS_HAIKU})
1841-
elseif(${sdk} STREQUAL WASM)
1841+
elseif(${sdk} STREQUAL WASI)
18421842
list(APPEND swiftlib_module_depends_flattened
1843-
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WASM})
1843+
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WASI})
18441844
elseif(${sdk} STREQUAL WINDOWS)
18451845
list(APPEND swiftlib_module_depends_flattened
18461846
${SWIFTLIB_SWIFT_MODULE_DEPENDS_WINDOWS})

cmake/modules/SwiftConfigureSDK.cmake

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ macro(configure_sdk_unix name architectures)
203203
set(SWIFT_SDK_${prefix}_ARCHITECTURES "${architectures}")
204204
if("${prefix}" STREQUAL "CYGWIN")
205205
set(SWIFT_SDK_${prefix}_OBJECT_FORMAT "COFF")
206-
elseif("${prefix}" STREQUAL "WASM")
206+
elseif("${prefix}" STREQUAL "WASI")
207207
set(SWIFT_SDK_${prefix}_OBJECT_FORMAT "WASM")
208208
else()
209209
set(SWIFT_SDK_${prefix}_OBJECT_FORMAT "ELF")
@@ -321,15 +321,15 @@ macro(configure_sdk_unix name architectures)
321321
message(FATAL_ERROR "unsupported arch for Haiku: ${arch}")
322322
endif()
323323
set(SWIFT_SDK_HAIKU_ARCH_x86_64_TRIPLE "x86_64-unknown-haiku")
324-
elseif("${prefix}" STREQUAL "WASM")
324+
elseif("${prefix}" STREQUAL "WASI")
325325
if(NOT arch STREQUAL wasm32)
326326
message(FATAL_ERROR "unsupported arch for WebAssembly: ${arch}")
327327
endif()
328-
set(SWIFT_SDK_WASM_ARCH_wasm32_PATH "${SWIFT_WASM_WASI_SDK_PATH}/share/sysroot")
328+
set(SWIFT_SDK_WASI_ARCH_wasm32_PATH "${SWIFT_WASI_SDK_PATH}/share/sysroot")
329329
# fixme: Wasi is wasm32-unknown-wasi-musl. This LLVM doesn't have it yet.
330-
set(SWIFT_SDK_WASM_ARCH_wasm32_TRIPLE "wasm32-unknown-unknown-wasm")
331-
set(SWIFT_SDK_WASM_ARCH_wasm32_LIBC_INCLUDE_DIRECTORY "${SWIFT_WASM_WASI_SDK_PATH}/share/sysroot/include")
332-
set(SWIFT_SDK_WASM_ARCH_wasm32_LIBC_ARCHITECTURE_INCLUDE_DIRECTORY "${SWIFT_WASM_WASI_SDK_PATH}/share/sysroot/include")
330+
set(SWIFT_SDK_WASI_ARCH_wasm32_TRIPLE "wasm32-unknown-unknown-wasi")
331+
set(SWIFT_SDK_WASI_ARCH_wasm32_LIBC_INCLUDE_DIRECTORY "${SWIFT_WASI_SDK_PATH}/share/sysroot/include")
332+
set(SWIFT_SDK_WASI_ARCH_wasm32_LIBC_ARCHITECTURE_INCLUDE_DIRECTORY "${SWIFT_WASI_SDK_PATH}/share/sysroot/include")
333333
else()
334334
message(FATAL_ERROR "unknown Unix OS: ${prefix}")
335335
endif()

stdlib/private/StdlibUnittest/CMakeLists.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ add_swift_target_library(swiftStdlibUnittest ${SWIFT_STDLIB_LIBRARY_BUILD_TYPES}
4040
SWIFT_MODULE_DEPENDS_FREEBSD Glibc
4141
SWIFT_MODULE_DEPENDS_CYGWIN Glibc
4242
SWIFT_MODULE_DEPENDS_HAIKU Glibc
43-
SWIFT_MODULE_DEPENDS_WASM Glibc
43+
SWIFT_MODULE_DEPENDS_WASI Glibc
4444
SWIFT_MODULE_DEPENDS_WINDOWS MSVCRT WinSDK
4545
SWIFT_COMPILE_FLAGS ${swift_stdlib_unittest_compile_flags} ${SWIFT_STANDARD_LIBRARY_SWIFT_FLAGS}
4646
INSTALL_IN_COMPONENT stdlib-experimental

stdlib/private/StdlibUnittest/RaceTest.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ import SwiftPrivateLibcExtras
4141
import SwiftPrivateThreadExtras
4242
#if os(macOS) || os(iOS)
4343
import Darwin
44-
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(Wasm)
44+
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(WASI)
4545
import Glibc
4646
#elseif os(Windows)
4747
import MSVCRT
@@ -562,7 +562,7 @@ class _InterruptibleSleep {
562562
return
563563
}
564564

565-
#if os(Wasm)
565+
#if os(WASI)
566566
// WebAssembly/WASI on wasm32 is the only 32-bit platform with Int64 time_t
567567
var timeout = timeval(tv_sec: time_t(duration), tv_usec: 0)
568568
#else

stdlib/private/StdlibUnittest/StdlibCoreExtras.swift

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ import SwiftPrivate
1414
import SwiftPrivateLibcExtras
1515
#if os(macOS) || os(iOS)
1616
import Darwin
17-
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(Wasm)
17+
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(WASI)
1818
import Glibc
1919
#elseif os(Windows)
2020
import MSVCRT

stdlib/private/StdlibUnittest/StdlibUnittest.swift

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ import SwiftPrivateLibcExtras
1818
#if os(macOS) || os(iOS) || os(watchOS) || os(tvOS)
1919
import Foundation
2020
import Darwin
21-
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(Wasm)
21+
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(WASI)
2222
import Glibc
2323
#elseif os(Windows)
2424
import MSVCRT
@@ -748,7 +748,7 @@ extension ProcessTerminationStatus {
748748
case .signal(let signal):
749749
#if os(Windows)
750750
return CInt(signal) == SIGILL
751-
#elseif os(Wasm)
751+
#elseif os(WASI)
752752
return false
753753
#else
754754
return CInt(signal) == SIGILL || CInt(signal) == SIGTRAP
@@ -1748,7 +1748,7 @@ public enum OSVersion : CustomStringConvertible {
17481748
case windowsCygnus
17491749
case windows
17501750
case haiku
1751-
case wasm
1751+
case wasi
17521752

17531753
public var description: String {
17541754
switch self {
@@ -1780,8 +1780,8 @@ public enum OSVersion : CustomStringConvertible {
17801780
return "Windows"
17811781
case .haiku:
17821782
return "Haiku"
1783-
case .wasm:
1784-
return "Wasm"
1783+
case .wasi:
1784+
return "WASI"
17851785
}
17861786
}
17871787
}
@@ -1826,8 +1826,8 @@ func _getOSVersion() -> OSVersion {
18261826
return .windows
18271827
#elseif os(Haiku)
18281828
return .haiku
1829-
#elseif os(Wasm)
1830-
return .wasm
1829+
#elseif os(WASI)
1830+
return .wasi
18311831
#else
18321832
let productVersion = _getSystemVersionPlistProperty("ProductVersion")!
18331833
let (major, minor, bugFix) = _parseDottedVersionTriple(productVersion)

stdlib/private/StdlibUnittest/SymbolLookup.swift

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212

1313
#if os(macOS) || os(iOS) || os(tvOS) || os(watchOS)
1414
import Darwin
15-
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(Wasm)
15+
#elseif os(Linux) || os(FreeBSD) || os(PS4) || os(Android) || os(Cygwin) || os(Haiku) || os(WASI)
1616
import Glibc
1717
#elseif os(Windows)
1818
import MSVCRT
@@ -23,7 +23,7 @@
2323

2424
#if os(macOS) || os(iOS) || os(watchOS) || os(tvOS)
2525
let RTLD_DEFAULT = UnsafeMutableRawPointer(bitPattern: -2)
26-
#elseif os(Linux) || os(Wasm)
26+
#elseif os(Linux) || os(WASI)
2727
let RTLD_DEFAULT = UnsafeMutableRawPointer(bitPattern: 0)
2828
#elseif os(Android)
2929
#if arch(arm) || arch(i386)
@@ -43,7 +43,7 @@ public func pointerToSwiftCoreSymbol(name: String) -> UnsafeMutableRawPointer? {
4343
#if os(Windows)
4444
return unsafeBitCast(GetProcAddress(hStdlibCore, name),
4545
to: UnsafeMutableRawPointer?.self)
46-
#elseif os(Wasm)
46+
#elseif os(WASI)
4747
fatalError("\(#function) is not supported on WebAssembly")
4848
#else
4949
return dlsym(RTLD_DEFAULT, name)

0 commit comments

Comments
 (0)