The Swift Package Index logo.Swift Package Index

Build Information

Failed to build REPL, reference v2.2.0 (90d95e), with Swift 6.1 for Android on 28 May 2025 10:35:00 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Samasaur1/REPL.git
Reference: v2.2.0
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
 * tag               v2.2.0     -> FETCH_HEAD
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 v2.2.0
========================================
Build
========================================
Selected platform:         android
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-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -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
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-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:18:17: error: cannot find 'S_IRWXU' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                 `- error: cannot find 'S_IRWXU' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:27: error: cannot find 'S_IRWXG' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                           `- error: cannot find 'S_IRWXG' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:37: error: cannot find 'S_IRWXO' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                     `- error: cannot find 'S_IRWXO' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:35: error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                   `- error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/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:59: error: cannot find 'O_WRONLY' 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_WRONLY' 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 |
/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 |
/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:51:89: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: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:205:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: function is unused
212 |     exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
    | `- error: function is unused
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: function is unused
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
    | `- error: function is unused
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: function is unused
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
    | `- error: function is unused
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: function is unused
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
    | `- error: function is unused
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: function is unused
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
    | `- error: function is unused
225 |     if task.isRunning {
226 |         task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:233:16: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
231 |         cmdIdx = 0
232 |         print(prompt(), terminator: "")
233 |         fflush(stdout)
    |                `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
234 |     }
235 | }
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/stdio.h:63:23: note: var declared here
 61 | #if __ANDROID_API__ >= 23
 62 | extern FILE* _Nonnull stdin __INTRODUCED_IN(23);
 63 | extern FILE* _Nonnull stdout __INTRODUCED_IN(23);
    |                       `- note: var declared here
 64 | extern FILE* _Nonnull stderr __INTRODUCED_IN(23);
 65 |
[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:18:17: error: cannot find 'S_IRWXU' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                 `- error: cannot find 'S_IRWXU' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:27: error: cannot find 'S_IRWXG' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                           `- error: cannot find 'S_IRWXG' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:37: error: cannot find 'S_IRWXO' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                     `- error: cannot find 'S_IRWXO' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:35: error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                   `- error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/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:59: error: cannot find 'O_WRONLY' 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_WRONLY' 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 |
/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 |
/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:51:89: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: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:205:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: function is unused
212 |     exit(sig)
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
    | `- error: function is unused
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:215:1: error: function is unused
213 | }
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
    | `- error: function is unused
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
/host/spi-builder-workspace/Sources/REPL/main.swift:216:1: error: function is unused
214 | signal(SIGKILL, resetTermAndExitWith(sig:))
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
    | `- error: function is unused
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
218 |
/host/spi-builder-workspace/Sources/REPL/main.swift:217:1: error: function is unused
215 | signal(SIGTERM, resetTermAndExitWith(sig:))
216 | signal(SIGQUIT, resetTermAndExitWith(sig:))
217 | signal(SIGSTOP, resetTermAndExitWith(sig:))
    | `- error: function is unused
218 |
219 | var chars: [Int32] = []
/host/spi-builder-workspace/Sources/REPL/main.swift:224:1: error: function is unused
222 | var cmdIdx = 0
223 |
224 | signal(SIGINT) { _ in
    | `- error: function is unused
225 |     if task.isRunning {
226 |         task.interrupt()
/host/spi-builder-workspace/Sources/REPL/main.swift:233:16: warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
231 |         cmdIdx = 0
232 |         print(prompt(), terminator: "")
233 |         fflush(stdout)
    |                `- warning: reference to var 'stdout' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
234 |     }
235 | }
/root/.swiftpm/swift-sdks/swift-6.1-RELEASE-android-24-0.1.artifactbundle/swift-6.1-release-android-24-sdk/android-27c-sysroot/usr/include/stdio.h:63:23: note: var declared here
 61 | #if __ANDROID_API__ >= 23
 62 | extern FILE* _Nonnull stdin __INTRODUCED_IN(23);
 63 | extern FILE* _Nonnull stdout __INTRODUCED_IN(23);
    |                       `- note: var declared here
 64 | extern FILE* _Nonnull stderr __INTRODUCED_IN(23);
 65 |
/host/spi-builder-workspace/Sources/REPL/main.swift:183:10: warning: 'launchPath' is deprecated: renamed to 'executableURL'
181 | func exec(_ command: String) -> String {
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
    |          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |          `- note: use 'executableURL' instead
184 |     task.arguments = ["-c", command]
185 |
/host/spi-builder-workspace/Sources/REPL/main.swift:188:10: warning: 'launch()' is deprecated: renamed to 'run'
186 |     let pipe = Pipe()
187 |     task.standardOutput = pipe
188 |     task.launch()
    |          |- warning: 'launch()' is deprecated: renamed to 'run'
    |          `- note: use 'run' instead
189 |
190 |     let data = pipe.fileHandleForReading.readDataToEndOfFile()
/host/spi-builder-workspace/Sources/REPL/main.swift:182:5: error: main actor-isolated var 'task' can not be mutated from a nonisolated context
178 | //}
179 |
180 | var task: Process = Process()
    |     `- note: mutation of this var is only permitted within the actor
181 | func exec(_ command: String) -> String {
    |      `- note: add '@MainActor' to make global function 'exec' part of global actor 'MainActor'
182 |     task = Process()
    |     `- error: main actor-isolated var 'task' can not be mutated from a nonisolated context
183 |     task.launchPath = "/bin/bash"
184 |     task.arguments = ["-c", command]
/host/spi-builder-workspace/Sources/REPL/main.swift:183:5: error: main actor-isolated var 'task' can not be referenced from a nonisolated context
178 | //}
179 |
180 | var task: Process = Process()
    |     `- note: var declared here
181 | func exec(_ command: String) -> String {
    |      `- note: add '@MainActor' to make global function 'exec' part of global actor 'MainActor'
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
    |     `- error: main actor-isolated var 'task' can not be referenced from a nonisolated context
184 |     task.arguments = ["-c", command]
185 |
/host/spi-builder-workspace/Sources/REPL/main.swift:184:5: error: main actor-isolated var 'task' can not be referenced from a nonisolated context
178 | //}
179 |
180 | var task: Process = Process()
    |     `- note: var declared here
181 | func exec(_ command: String) -> String {
    |      `- note: add '@MainActor' to make global function 'exec' part of global actor 'MainActor'
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
184 |     task.arguments = ["-c", command]
    |     `- error: main actor-isolated var 'task' can not be referenced from a nonisolated context
185 |
186 |     let pipe = Pipe()
/host/spi-builder-workspace/Sources/REPL/main.swift:187:5: error: main actor-isolated var 'task' can not be referenced from a nonisolated context
178 | //}
179 |
180 | var task: Process = Process()
    |     `- note: var declared here
181 | func exec(_ command: String) -> String {
    |      `- note: add '@MainActor' to make global function 'exec' part of global actor 'MainActor'
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
    :
185 |
186 |     let pipe = Pipe()
187 |     task.standardOutput = pipe
    |     `- error: main actor-isolated var 'task' can not be referenced from a nonisolated context
188 |     task.launch()
189 |
/host/spi-builder-workspace/Sources/REPL/main.swift:188:5: error: main actor-isolated var 'task' can not be referenced from a nonisolated context
178 | //}
179 |
180 | var task: Process = Process()
    |     `- note: var declared here
181 | func exec(_ command: String) -> String {
    |      `- note: add '@MainActor' to make global function 'exec' part of global actor 'MainActor'
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
    :
186 |     let pipe = Pipe()
187 |     task.standardOutput = pipe
188 |     task.launch()
    |     `- error: main actor-isolated var 'task' can not be referenced from a nonisolated context
189 |
190 |     let data = pipe.fileHandleForReading.readDataToEndOfFile()
/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:15: error: cannot find 'STDIN_FILENO' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 |     tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
    |               `- error: cannot find 'STDIN_FILENO' 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 | }
/host/spi-builder-workspace/Sources/REPL/main.swift:239:5: error: cannot find 'write' in scope
237 | func tputBel() {
238 |     var v = UInt8(7)
239 |     write(STDOUT_FILENO, &v, 1)
    |     `- error: cannot find 'write' in scope
240 | }
241 |
/host/spi-builder-workspace/Sources/REPL/main.swift:239:11: error: cannot find 'STDOUT_FILENO' in scope
237 | func tputBel() {
238 |     var v = UInt8(7)
239 |     write(STDOUT_FILENO, &v, 1)
    |           `- error: cannot find 'STDOUT_FILENO' in scope
240 | }
241 |
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-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:18:17: error: cannot find 'S_IRWXU' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                 `- error: cannot find 'S_IRWXU' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:27: error: cannot find 'S_IRWXG' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                           `- error: cannot find 'S_IRWXG' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:37: error: cannot find 'S_IRWXO' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                     `- error: cannot find 'S_IRWXO' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:35: error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                   `- error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/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:59: error: cannot find 'O_WRONLY' 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_WRONLY' 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 |
/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 |
/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:51:89: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: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:205:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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) {
[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:18:17: error: cannot find 'S_IRWXU' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                 `- error: cannot find 'S_IRWXU' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:27: error: cannot find 'S_IRWXG' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                           `- error: cannot find 'S_IRWXG' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:37: error: cannot find 'S_IRWXO' in scope
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                     `- error: cannot find 'S_IRWXO' in scope
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/host/spi-builder-workspace/Sources/REPL/main.swift:18:35: error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 16 | posix_spawn_file_actions_init(&action);
 17 | defer { posix_spawn_file_actions_destroy(&action) }
 18 | let m: mode_t = S_IRWXU | S_IRWXG | S_IRWXO
    |                                   `- error: cannot convert value of type 'UInt8' to specified type 'mode_t' (aka 'UInt32')
 19 | posix_spawn_file_actions_addopen(&action, 1, "/tmp/ps1", (O_WRONLY | O_CREAT | O_TRUNC), m)
 20 | //posix_spawn_file_actions_adddup2(&action, 1, 2)
/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:59: error: cannot find 'O_WRONLY' 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_WRONLY' 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 |
/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 |
/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:51:89: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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: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:205:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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:11: error: cannot find 'STDIN_FILENO' 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 'STDIN_FILENO' 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:183:10: warning: 'launchPath' is deprecated: renamed to 'executableURL'
181 | func exec(_ command: String) -> String {
182 |     task = Process()
183 |     task.launchPath = "/bin/bash"
    |          |- warning: 'launchPath' is deprecated: renamed to 'executableURL'
    |          `- note: use 'executableURL' instead
184 |     task.arguments = ["-c", command]
185 |
/host/spi-builder-workspace/Sources/REPL/main.swift:188:10: warning: 'launch()' is deprecated: renamed to 'run'
186 |     let pipe = Pipe()
187 |     task.standardOutput = pipe
188 |     task.launch()
    |          |- warning: 'launch()' is deprecated: renamed to 'run'
    |          `- note: use 'run' instead
189 |
190 |     let data = pipe.fileHandleForReading.readDataToEndOfFile()
/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:15: error: cannot find 'STDIN_FILENO' in scope
209 |
210 | func resetTermAndExitWith(sig: Int32) {
211 |     tcsetattr(STDIN_FILENO, TCSANOW, &originalTerm)
    |               `- error: cannot find 'STDIN_FILENO' 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 | }
/host/spi-builder-workspace/Sources/REPL/main.swift:239:5: error: cannot find 'write' in scope
237 | func tputBel() {
238 |     var v = UInt8(7)
239 |     write(STDOUT_FILENO, &v, 1)
    |     `- error: cannot find 'write' in scope
240 | }
241 |
/host/spi-builder-workspace/Sources/REPL/main.swift:239:11: error: cannot find 'STDOUT_FILENO' in scope
237 | func tputBel() {
238 |     var v = UInt8(7)
239 |     write(STDOUT_FILENO, &v, 1)
    |           `- error: cannot find 'STDOUT_FILENO' in scope
240 | }
241 |
BUILD FAILURE 6.1 android