Build Information
Failed to build REPL, reference master (90d95e
), with Swift 6.1 for Wasm on 28 May 2025 10:34:58 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Samasaur1/REPL.git
Reference: master
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/Samasaur1/REPL
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 90d95e4 Support command aliases
Cloned https://github.com/Samasaur1/REPL.git
Revision (git rev-parse @):
90d95e4b116bb8de356c015025af26c95e569e9a
SUCCESS checkout https://github.com/Samasaur1/REPL.git at master
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.1
Building package at path: $PWD
https://github.com/Samasaur1/REPL.git
https://github.com/Samasaur1/REPL.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
],
"manifest_display_name" : "REPL",
"name" : "REPL",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "repl",
"targets" : [
"REPL"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "REPLTests",
"module_type" : "SwiftTarget",
"name" : "REPLTests",
"path" : "Tests/REPLTests",
"sources" : [
"REPLTests.swift",
"XCTestManifests.swift"
],
"target_dependencies" : [
"REPL"
],
"type" : "test"
},
{
"c99name" : "REPL",
"module_type" : "SwiftTarget",
"name" : "REPL",
"path" : "Sources/REPL",
"product_memberships" : [
"repl"
],
"sources" : [
"main.swift"
],
"type" : "executable"
}
],
"tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Building for debugging...
[0/5] Write sources
[1/5] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/7] Emitting module REPL
/host/spi-builder-workspace/Sources/REPL/main.swift:15:13: error: cannot find type 'posix_spawn_file_actions_t' in scope
13 | // MARK: - Extract PS1
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
| `- error: cannot find type 'posix_spawn_file_actions_t' in scope
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
/host/spi-builder-workspace/Sources/REPL/main.swift:16:1: error: cannot find 'posix_spawn_file_actions_init' in scope
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
| `- error: cannot find 'posix_spawn_file_actions_init' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
/host/spi-builder-workspace/Sources/REPL/main.swift:19:1: error: cannot find 'posix_spawn_file_actions_addopen' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'posix_spawn_file_actions_addopen' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/host/spi-builder-workspace/Sources/REPL/main.swift:19:70: error: cannot find 'O_CREAT' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_CREAT' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:13:9: note: macro 'O_CREAT' unavailable: structure not supported
11 | #define O_RSYNC __WASI_FDFLAGS_RSYNC
12 | #define O_SYNC __WASI_FDFLAGS_SYNC
13 | #define O_CREAT (__WASI_OFLAGS_CREAT << 12)
| `- note: macro 'O_CREAT' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:80: error: cannot find 'O_TRUNC' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_TRUNC' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:16:9: note: macro 'O_TRUNC' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
16 | #define O_TRUNC (__WASI_OFLAGS_TRUNC << 12)
| `- note: macro 'O_TRUNC' unavailable: structure not supported
17 |
18 | #define O_NOFOLLOW (0x01000000)
/host/spi-builder-workspace/Sources/REPL/main.swift:27:10: error: cannot find 'posix_spawn' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'posix_spawn' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:69: error: cannot find 'environ' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'environ' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:48: error: 'nil' requires a contextual type
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: 'nil' requires a contextual type
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:35:1: error: cannot find 'waitpid' in scope
33 |
34 | var exitCode: Int32 = 0
35 | waitpid(pid, &exitCode, 0)
| `- error: cannot find 'waitpid' in scope
36 |
37 | //print("Process exited with code \(exitCode)")
/host/spi-builder-workspace/Sources/REPL/main.swift:51:81: error: cannot find 'ttyname' in scope
49 | .replacingOccurrences(of: #"\H"#, with: ProcessInfo.processInfo.hostName)
50 | .replacingOccurrences(of: #"\j"#, with: "0") //jobs — since we won't allow backgrounding, always 0
51 | .replacingOccurrences(of: #"\l"#, with: String(cString: ttyname(STDIN_FILENO)).split(separator: "/").last!) //"The basename of the shell's terminal device name."
| `- error: cannot find 'ttyname' in scope
52 | .replacingOccurrences(of: #"\s"#, with: CommandLine.arguments[0].split(separator: "/").last!) //"The name of the shell, the basename of $0 (the portion following the final slash)."
53 | //.replOcc("t", "T", "@") //time, must be done every time we print prompt
/host/spi-builder-workspace/Sources/REPL/main.swift:62:65: error: cannot find 'getuid' in scope
60 | //.replacingOccurrences(of: #"\!"#, with: "1.0") //history number
61 | //.replacingOccurrences(of: #"\#"#, with: "1.0") //command number (i.e. length of commands list)
62 | .replacingOccurrences(of: #"\$"#, with: getuid() == 0 ? "#" : "$") //'#' iff root else '$'
| `- error: cannot find 'getuid' in scope
63 |
64 | //MARK: - Build command prompt function
/host/spi-builder-workspace/Sources/REPL/main.swift:180:11: error: cannot find type 'Process' in scope
178 | //}
179 |
180 | var task: Process = Process()
| `- error: cannot find type 'Process' in scope
181 | func exec(_ command: String) -> String {
182 | task = Process()
/host/spi-builder-workspace/Sources/REPL/main.swift:202:8: error: cannot find type 'cc_t' in scope
200 |
201 | var key: Int = 0
202 | let c: cc_t = 0
| `- error: cannot find type 'cc_t' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
/host/spi-builder-workspace/Sources/REPL/main.swift:204:19: error: cannot find type 'termios' in scope
202 | let c: cc_t = 0
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
| `- error: cannot find type 'termios' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
/host/spi-builder-workspace/Sources/REPL/main.swift:205:1: error: cannot find 'tcgetattr' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
| `- error: cannot find 'tcgetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
/host/spi-builder-workspace/Sources/REPL/main.swift:207:24: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:207:44: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:208:1: error: cannot find 'tcsetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:208:25: error: cannot find 'TCSANOW' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:214:1: error: cannot find 'signal' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:214:8: error: cannot find 'SIGKILL' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGKILL' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: cannot find 'signal' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:8: error: cannot find 'SIGTERM' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGTERM' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: cannot find 'signal' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:216:8: error: cannot find 'SIGQUIT' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGQUIT' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:217:8: error: cannot find 'SIGSTOP' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGSTOP' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: cannot find 'signal' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'signal' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:224:8: error: cannot find 'SIGINT' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'SIGINT' in scope
225 | if task.isRunning {
226 | task.interrupt()
[4/7] Compiling REPL main.swift
/host/spi-builder-workspace/Sources/REPL/main.swift:15:13: error: cannot find type 'posix_spawn_file_actions_t' in scope
13 | // MARK: - Extract PS1
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
| `- error: cannot find type 'posix_spawn_file_actions_t' in scope
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
/host/spi-builder-workspace/Sources/REPL/main.swift:16:1: error: cannot find 'posix_spawn_file_actions_init' in scope
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
| `- error: cannot find 'posix_spawn_file_actions_init' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
/host/spi-builder-workspace/Sources/REPL/main.swift:17:9: error: cannot find 'posix_spawn_file_actions_destroy' in scope
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
| `- error: cannot find 'posix_spawn_file_actions_destroy' in scope
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:1: error: cannot find 'posix_spawn_file_actions_addopen' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'posix_spawn_file_actions_addopen' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/host/spi-builder-workspace/Sources/REPL/main.swift:19:70: error: cannot find 'O_CREAT' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_CREAT' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:13:9: note: macro 'O_CREAT' unavailable: structure not supported
11 | #define O_RSYNC __WASI_FDFLAGS_RSYNC
12 | #define O_SYNC __WASI_FDFLAGS_SYNC
13 | #define O_CREAT (__WASI_OFLAGS_CREAT << 12)
| `- note: macro 'O_CREAT' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:80: error: cannot find 'O_TRUNC' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_TRUNC' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:16:9: note: macro 'O_TRUNC' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
16 | #define O_TRUNC (__WASI_OFLAGS_TRUNC << 12)
| `- note: macro 'O_TRUNC' unavailable: structure not supported
17 |
18 | #define O_NOFOLLOW (0x01000000)
/host/spi-builder-workspace/Sources/REPL/main.swift:27:10: error: cannot find 'posix_spawn' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'posix_spawn' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:69: error: cannot find 'environ' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'environ' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:48: error: 'nil' requires a contextual type
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: 'nil' requires a contextual type
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:35:1: error: cannot find 'waitpid' in scope
33 |
34 | var exitCode: Int32 = 0
35 | waitpid(pid, &exitCode, 0)
| `- error: cannot find 'waitpid' in scope
36 |
37 | //print("Process exited with code \(exitCode)")
/host/spi-builder-workspace/Sources/REPL/main.swift:51:81: error: cannot find 'ttyname' in scope
49 | .replacingOccurrences(of: #"\H"#, with: ProcessInfo.processInfo.hostName)
50 | .replacingOccurrences(of: #"\j"#, with: "0") //jobs — since we won't allow backgrounding, always 0
51 | .replacingOccurrences(of: #"\l"#, with: String(cString: ttyname(STDIN_FILENO)).split(separator: "/").last!) //"The basename of the shell's terminal device name."
| `- error: cannot find 'ttyname' in scope
52 | .replacingOccurrences(of: #"\s"#, with: CommandLine.arguments[0].split(separator: "/").last!) //"The name of the shell, the basename of $0 (the portion following the final slash)."
53 | //.replOcc("t", "T", "@") //time, must be done every time we print prompt
/host/spi-builder-workspace/Sources/REPL/main.swift:62:65: error: cannot find 'getuid' in scope
60 | //.replacingOccurrences(of: #"\!"#, with: "1.0") //history number
61 | //.replacingOccurrences(of: #"\#"#, with: "1.0") //command number (i.e. length of commands list)
62 | .replacingOccurrences(of: #"\$"#, with: getuid() == 0 ? "#" : "$") //'#' iff root else '$'
| `- error: cannot find 'getuid' in scope
63 |
64 | //MARK: - Build command prompt function
/host/spi-builder-workspace/Sources/REPL/main.swift:180:11: error: cannot find type 'Process' in scope
178 | //}
179 |
180 | var task: Process = Process()
| `- error: cannot find type 'Process' in scope
181 | func exec(_ command: String) -> String {
182 | task = Process()
/host/spi-builder-workspace/Sources/REPL/main.swift:202:8: error: cannot find type 'cc_t' in scope
200 |
201 | var key: Int = 0
202 | let c: cc_t = 0
| `- error: cannot find type 'cc_t' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
/host/spi-builder-workspace/Sources/REPL/main.swift:204:19: error: cannot find type 'termios' in scope
202 | let c: cc_t = 0
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
| `- error: cannot find type 'termios' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
/host/spi-builder-workspace/Sources/REPL/main.swift:205:1: error: cannot find 'tcgetattr' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
| `- error: cannot find 'tcgetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
/host/spi-builder-workspace/Sources/REPL/main.swift:207:24: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:207:44: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:208:1: error: cannot find 'tcsetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:208:25: error: cannot find 'TCSANOW' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:214:1: error: cannot find 'signal' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:214:8: error: cannot find 'SIGKILL' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGKILL' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: cannot find 'signal' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:8: error: cannot find 'SIGTERM' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGTERM' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: cannot find 'signal' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:216:8: error: cannot find 'SIGQUIT' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGQUIT' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:217:8: error: cannot find 'SIGSTOP' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGSTOP' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: cannot find 'signal' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'signal' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:224:8: error: cannot find 'SIGINT' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'SIGINT' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:182:12: error: cannot find 'Process' in scope
180 | var task: Process = Process()
181 | func exec(_ command: String) -> String {
182 | task = Process()
| `- error: cannot find 'Process' in scope
183 | task.launchPath = "/bin/bash"
184 | task.arguments = ["-c", command]
/host/spi-builder-workspace/Sources/REPL/main.swift:211:5: error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 | tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
| `- error: cannot find 'tcsetattr' in scope
212 | exit(sig)
213 | }
/host/spi-builder-workspace/Sources/REPL/main.swift:211:29: error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 | tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
| `- error: cannot find 'TCSANOW' in scope
212 | exit(sig)
213 | }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
[0/1] Planning build
Building for debugging...
[0/4] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/6] Emitting module REPL
/host/spi-builder-workspace/Sources/REPL/main.swift:15:13: error: cannot find type 'posix_spawn_file_actions_t' in scope
13 | // MARK: - Extract PS1
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
| `- error: cannot find type 'posix_spawn_file_actions_t' in scope
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
/host/spi-builder-workspace/Sources/REPL/main.swift:16:1: error: cannot find 'posix_spawn_file_actions_init' in scope
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
| `- error: cannot find 'posix_spawn_file_actions_init' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
/host/spi-builder-workspace/Sources/REPL/main.swift:19:1: error: cannot find 'posix_spawn_file_actions_addopen' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'posix_spawn_file_actions_addopen' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/host/spi-builder-workspace/Sources/REPL/main.swift:19:70: error: cannot find 'O_CREAT' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_CREAT' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:13:9: note: macro 'O_CREAT' unavailable: structure not supported
11 | #define O_RSYNC __WASI_FDFLAGS_RSYNC
12 | #define O_SYNC __WASI_FDFLAGS_SYNC
13 | #define O_CREAT (__WASI_OFLAGS_CREAT << 12)
| `- note: macro 'O_CREAT' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:80: error: cannot find 'O_TRUNC' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_TRUNC' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:16:9: note: macro 'O_TRUNC' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
16 | #define O_TRUNC (__WASI_OFLAGS_TRUNC << 12)
| `- note: macro 'O_TRUNC' unavailable: structure not supported
17 |
18 | #define O_NOFOLLOW (0x01000000)
/host/spi-builder-workspace/Sources/REPL/main.swift:27:10: error: cannot find 'posix_spawn' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'posix_spawn' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:69: error: cannot find 'environ' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'environ' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:48: error: 'nil' requires a contextual type
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: 'nil' requires a contextual type
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:35:1: error: cannot find 'waitpid' in scope
33 |
34 | var exitCode: Int32 = 0
35 | waitpid(pid, &exitCode, 0)
| `- error: cannot find 'waitpid' in scope
36 |
37 | //print("Process exited with code \(exitCode)")
/host/spi-builder-workspace/Sources/REPL/main.swift:51:81: error: cannot find 'ttyname' in scope
49 | .replacingOccurrences(of: #"\H"#, with: ProcessInfo.processInfo.hostName)
50 | .replacingOccurrences(of: #"\j"#, with: "0") //jobs — since we won't allow backgrounding, always 0
51 | .replacingOccurrences(of: #"\l"#, with: String(cString: ttyname(STDIN_FILENO)).split(separator: "/").last!) //"The basename of the shell's terminal device name."
| `- error: cannot find 'ttyname' in scope
52 | .replacingOccurrences(of: #"\s"#, with: CommandLine.arguments[0].split(separator: "/").last!) //"The name of the shell, the basename of $0 (the portion following the final slash)."
53 | //.replOcc("t", "T", "@") //time, must be done every time we print prompt
/host/spi-builder-workspace/Sources/REPL/main.swift:62:65: error: cannot find 'getuid' in scope
60 | //.replacingOccurrences(of: #"\!"#, with: "1.0") //history number
61 | //.replacingOccurrences(of: #"\#"#, with: "1.0") //command number (i.e. length of commands list)
62 | .replacingOccurrences(of: #"\$"#, with: getuid() == 0 ? "#" : "$") //'#' iff root else '$'
| `- error: cannot find 'getuid' in scope
63 |
64 | //MARK: - Build command prompt function
/host/spi-builder-workspace/Sources/REPL/main.swift:180:11: error: cannot find type 'Process' in scope
178 | //}
179 |
180 | var task: Process = Process()
| `- error: cannot find type 'Process' in scope
181 | func exec(_ command: String) -> String {
182 | task = Process()
/host/spi-builder-workspace/Sources/REPL/main.swift:202:8: error: cannot find type 'cc_t' in scope
200 |
201 | var key: Int = 0
202 | let c: cc_t = 0
| `- error: cannot find type 'cc_t' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
/host/spi-builder-workspace/Sources/REPL/main.swift:204:19: error: cannot find type 'termios' in scope
202 | let c: cc_t = 0
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
| `- error: cannot find type 'termios' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
/host/spi-builder-workspace/Sources/REPL/main.swift:205:1: error: cannot find 'tcgetattr' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
| `- error: cannot find 'tcgetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
/host/spi-builder-workspace/Sources/REPL/main.swift:207:24: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:207:44: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:208:1: error: cannot find 'tcsetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:208:25: error: cannot find 'TCSANOW' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:214:1: error: cannot find 'signal' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:214:8: error: cannot find 'SIGKILL' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGKILL' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: cannot find 'signal' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:8: error: cannot find 'SIGTERM' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGTERM' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: cannot find 'signal' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:216:8: error: cannot find 'SIGQUIT' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGQUIT' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:217:8: error: cannot find 'SIGSTOP' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGSTOP' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: cannot find 'signal' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'signal' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:224:8: error: cannot find 'SIGINT' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'SIGINT' in scope
225 | if task.isRunning {
226 | task.interrupt()
[3/6] Compiling REPL main.swift
/host/spi-builder-workspace/Sources/REPL/main.swift:15:13: error: cannot find type 'posix_spawn_file_actions_t' in scope
13 | // MARK: - Extract PS1
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
| `- error: cannot find type 'posix_spawn_file_actions_t' in scope
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
/host/spi-builder-workspace/Sources/REPL/main.swift:16:1: error: cannot find 'posix_spawn_file_actions_init' in scope
14 | // (via `bash -i -c 'echo "$PS1"'`)
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
| `- error: cannot find 'posix_spawn_file_actions_init' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
/host/spi-builder-workspace/Sources/REPL/main.swift:17:9: error: cannot find 'posix_spawn_file_actions_destroy' in scope
15 | var action: posix_spawn_file_actions_t? = nil
16 | posix_spawn_file_actions_init(&action);
17 | defer { posix_spawn_file_actions_destroy(&action) }
| `- error: cannot find 'posix_spawn_file_actions_destroy' in scope
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:1: error: cannot find 'posix_spawn_file_actions_addopen' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'posix_spawn_file_actions_addopen' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/host/spi-builder-workspace/Sources/REPL/main.swift:19:70: error: cannot find 'O_CREAT' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_CREAT' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:13:9: note: macro 'O_CREAT' unavailable: structure not supported
11 | #define O_RSYNC __WASI_FDFLAGS_RSYNC
12 | #define O_SYNC __WASI_FDFLAGS_SYNC
13 | #define O_CREAT (__WASI_OFLAGS_CREAT << 12)
| `- note: macro 'O_CREAT' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
/host/spi-builder-workspace/Sources/REPL/main.swift:19:80: error: cannot find 'O_TRUNC' in scope
17 | defer { posix_spawn_file_actions_destroy(&action) }
18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
| `- error: cannot find 'O_TRUNC' in scope
20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
21 |
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_fcntl.h:16:9: note: macro 'O_TRUNC' unavailable: structure not supported
14 | #define O_DIRECTORY (__WASI_OFLAGS_DIRECTORY << 12)
15 | #define O_EXCL (__WASI_OFLAGS_EXCL << 12)
16 | #define O_TRUNC (__WASI_OFLAGS_TRUNC << 12)
| `- note: macro 'O_TRUNC' unavailable: structure not supported
17 |
18 | #define O_NOFOLLOW (0x01000000)
/host/spi-builder-workspace/Sources/REPL/main.swift:27:10: error: cannot find 'posix_spawn' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'posix_spawn' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:69: error: cannot find 'environ' in scope
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: cannot find 'environ' in scope
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:27:48: error: 'nil' requires a contextual type
25 |
26 | var pid = pid_t()
27 | let rv = posix_spawn(&pid, c_args[0], &action, nil, c_args + [nil], environ)
| `- error: 'nil' requires a contextual type
28 | guard rv == 0 else {
29 | // Should get errno
/host/spi-builder-workspace/Sources/REPL/main.swift:35:1: error: cannot find 'waitpid' in scope
33 |
34 | var exitCode: Int32 = 0
35 | waitpid(pid, &exitCode, 0)
| `- error: cannot find 'waitpid' in scope
36 |
37 | //print("Process exited with code \(exitCode)")
/host/spi-builder-workspace/Sources/REPL/main.swift:51:81: error: cannot find 'ttyname' in scope
49 | .replacingOccurrences(of: #"\H"#, with: ProcessInfo.processInfo.hostName)
50 | .replacingOccurrences(of: #"\j"#, with: "0") //jobs — since we won't allow backgrounding, always 0
51 | .replacingOccurrences(of: #"\l"#, with: String(cString: ttyname(STDIN_FILENO)).split(separator: "/").last!) //"The basename of the shell's terminal device name."
| `- error: cannot find 'ttyname' in scope
52 | .replacingOccurrences(of: #"\s"#, with: CommandLine.arguments[0].split(separator: "/").last!) //"The name of the shell, the basename of $0 (the portion following the final slash)."
53 | //.replOcc("t", "T", "@") //time, must be done every time we print prompt
/host/spi-builder-workspace/Sources/REPL/main.swift:62:65: error: cannot find 'getuid' in scope
60 | //.replacingOccurrences(of: #"\!"#, with: "1.0") //history number
61 | //.replacingOccurrences(of: #"\#"#, with: "1.0") //command number (i.e. length of commands list)
62 | .replacingOccurrences(of: #"\$"#, with: getuid() == 0 ? "#" : "$") //'#' iff root else '$'
| `- error: cannot find 'getuid' in scope
63 |
64 | //MARK: - Build command prompt function
/host/spi-builder-workspace/Sources/REPL/main.swift:180:11: error: cannot find type 'Process' in scope
178 | //}
179 |
180 | var task: Process = Process()
| `- error: cannot find type 'Process' in scope
181 | func exec(_ command: String) -> String {
182 | task = Process()
/host/spi-builder-workspace/Sources/REPL/main.swift:202:8: error: cannot find type 'cc_t' in scope
200 |
201 | var key: Int = 0
202 | let c: cc_t = 0
| `- error: cannot find type 'cc_t' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
/host/spi-builder-workspace/Sources/REPL/main.swift:204:19: error: cannot find type 'termios' in scope
202 | let c: cc_t = 0
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
| `- error: cannot find type 'termios' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
/host/spi-builder-workspace/Sources/REPL/main.swift:205:1: error: cannot find 'tcgetattr' in scope
203 | let cct = (c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c, c) // Set of 20 Special Characters
204 | var originalTerm: termios = termios(c_iflag: 0, c_oflag: 0, c_cflag: 0, c_lflag: 0, c_cc: cct, c_ispeed: 0, c_ospeed: 0)
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
| `- error: cannot find 'tcgetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
/host/spi-builder-workspace/Sources/REPL/main.swift:207:24: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:207:44: error: cannot find 'Darwin' in scope
205 | tcgetattr(STDIN_FILENO, &originalTerm) //this gets the current settings
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
| `- error: cannot find 'Darwin' in scope
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
209 |
/host/spi-builder-workspace/Sources/REPL/main.swift:208:1: error: cannot find 'tcsetattr' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:208:25: error: cannot find 'TCSANOW' in scope
206 | var term = originalTerm
207 | term.c_lflag &= ~(UInt(Darwin.ECHO) | UInt(Darwin.ICANON)) //turn off ECHO and ICANON
208 | tcsetattr(STDIN_FILENO, TCSANOW, &term) //set these new settings
| `- error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
/host/spi-builder-workspace/Sources/REPL/main.swift:214:1: error: cannot find 'signal' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:214:8: error: cannot find 'SIGKILL' in scope
212 | exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGKILL' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: cannot find 'signal' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:8: error: cannot find 'SIGTERM' in scope
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGTERM' in scope
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: cannot find 'signal' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:216:8: error: cannot find 'SIGQUIT' in scope
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGQUIT' in scope
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: cannot find 'signal' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'signal' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:217:8: error: cannot find 'SIGSTOP' in scope
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
| `- error: cannot find 'SIGSTOP' in scope
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: cannot find 'signal' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'signal' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:224:8: error: cannot find 'SIGINT' in scope
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
| `- error: cannot find 'SIGINT' in scope
225 | if task.isRunning {
226 | task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:182:12: error: cannot find 'Process' in scope
180 | var task: Process = Process()
181 | func exec(_ command: String) -> String {
182 | task = Process()
| `- error: cannot find 'Process' in scope
183 | task.launchPath = "/bin/bash"
184 | task.arguments = ["-c", command]
/host/spi-builder-workspace/Sources/REPL/main.swift:211:5: error: cannot find 'tcsetattr' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 | tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
| `- error: cannot find 'tcsetattr' in scope
212 | exit(sig)
213 | }
/host/spi-builder-workspace/Sources/REPL/main.swift:211:29: error: cannot find 'TCSANOW' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 | tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
| `- error: cannot find 'TCSANOW' in scope
212 | exit(sig)
213 | }
BUILD FAILURE 6.1 wasm