Build Information
Failed to build SwiftSerial, reference 0.1.5 (764bf5), with Swift 6.4 for Wasm on 22 Sep 2026 00:37:44 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344845-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/mredig/SwiftSerial.git
Reference: 0.1.5
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/mredig/SwiftSerial
* tag 0.1.5 -> FETCH_HEAD
HEAD is now at 764bf55 (nit) readme tweak
Cloned https://github.com/mredig/SwiftSerial.git
Revision (git rev-parse @):
764bf55dc7667f665934ce69d63211471bf55b0f
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/mredig/SwiftSerial.git at 0.1.5
========================================
Build
========================================
Selected platform: wasm
Swift version: 6.4
Building package at path: $PWD
https://github.com/mredig/SwiftSerial.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344845-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest swift build --swift-sdk swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm 2>&1
wasm-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:4328fdb43c680d205c1d6761b1e3267aa38277eefdda9ddfb17b6a0f1a77857a
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:wasm-6.4-latest
Fetching https://github.com/apple/swift-argument-parser.git
[1/18918] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser.git (0.82s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.3.1 (1.02s)
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.3.1
Building for debugging...
[Pre-planning 1 / 154]
[Constructing 162 / 318]
[42 / 68] SwiftSerial
error: SwiftCompile normal wasm32 failed with a nonzero exit code. Command line: cd /host
/host/spi-builder-workspace/Sources/SwiftSerial/BaudRate.swift:106:18: [1;31merror: [1;39mcannot find type 'speed_t' in scope[0;0m
[0;36m104 |[0;0m }
[0;36m105 |[0;0m
[0;36m106 |[0;0m var speedValue: [4;39mspeed_t[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'speed_t' in scope[0;0m
[0;36m107 |[0;0m switch self {
[0;36m108 |[0;0m case .baud0:
/host/spi-builder-workspace/Sources/SwiftSerial/DataBitsSize.swift:9:17: [1;31merror: [1;39mcannot find type 'tcflag_t' in scope[0;0m
[0;36m7 |[0;0m case bits8
[0;36m8 |[0;0m
[0;36m9 |[0;0m var flagValue: [4;39mtcflag_t[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'tcflag_t' in scope[0;0m
[0;36m10 |[0;0m switch self {
[0;36m11 |[0;0m case .bits5:
/host/spi-builder-workspace/Sources/SwiftSerial/ParityType.swift:8:19: [1;31merror: [1;39mcannot find type 'tcflag_t' in scope[0;0m
[0;36m6 |[0;0m case odd
[0;36m7 |[0;0m
[0;36m8 |[0;0m var parityValue: [4;39mtcflag_t[0;0m {
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'tcflag_t' in scope[0;0m
[0;36m9 |[0;0m switch self {
[0;36m10 |[0;0m case .none:
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:13:26: [1;31merror: [1;39mcannot find type 'DispatchSourceRead' in scope[0;0m
[0;36m11 |[0;0m private var isOpen: Bool { fileDescriptor != nil }
[0;36m12 |[0;0m
[0;36m13 |[0;0m private var pollSource: [4;39mDispatchSourceRead[0;0m?
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find type 'DispatchSourceRead' in scope[0;0m
[0;36m14 |[0;0m private var readDataStream: AsyncStream<Data>?
[0;36m15 |[0;0m private var readBytesStream: AsyncStream<UInt8>?
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:140:18: [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m138 |[0;0m
[0;36m139 |[0;0m // Set up the control structure
[0;36m140 |[0;0m var settings = [4;39mtermios[0;0m()
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'termios' in scope[0;0m
[0;36m141 |[0;0m
[0;36m142 |[0;0m // Get options structure for the port
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:143:3: [1;31merror: [1;39mcannot find 'tcgetattr' in scope[0;0m
[0;36m141 |[0;0m
[0;36m142 |[0;0m // Get options structure for the port
[0;36m143 |[0;0m [4;39mtcgetattr[0;0m(fileDescriptor, &settings)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcgetattr' in scope[0;0m
[0;36m144 |[0;0m
[0;36m145 |[0;0m // Set baud rates
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:146:3: [1;31merror: [1;39mcannot find 'cfsetispeed' in scope[0;0m
[0;36m144 |[0;0m
[0;36m145 |[0;0m // Set baud rates
[0;36m146 |[0;0m [4;39mcfsetispeed[0;0m(&settings, baudRateSetting.receiveRate.speedValue)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'cfsetispeed' in scope[0;0m
[0;36m147 |[0;0m cfsetospeed(&settings, baudRateSetting.transmitRate.speedValue)
[0;36m148 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:147:3: [1;31merror: [1;39mcannot find 'cfsetospeed' in scope[0;0m
[0;36m145 |[0;0m // Set baud rates
[0;36m146 |[0;0m cfsetispeed(&settings, baudRateSetting.receiveRate.speedValue)
[0;36m147 |[0;0m [4;39mcfsetospeed[0;0m(&settings, baudRateSetting.transmitRate.speedValue)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'cfsetospeed' in scope[0;0m
[0;36m148 |[0;0m
[0;36m149 |[0;0m // Enable parity (even/odd) if needed
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:154:24: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m152 |[0;0m // Set stop bit flag
[0;36m153 |[0;0m if sendTwoStopBits {
[0;36m154 |[0;0m settings.c_cflag |= [4;39mtcflag_t[0;0m(CSTOPB)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m155 |[0;0m } else {
[0;36m156 |[0;0m settings.c_cflag &= ~tcflag_t(CSTOPB)
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:154:33: [1;31merror: [1;39mcannot find 'CSTOPB' in scope[0;0m
[0;36m152 |[0;0m // Set stop bit flag
[0;36m153 |[0;0m if sendTwoStopBits {
[0;36m154 |[0;0m settings.c_cflag |= tcflag_t([4;39mCSTOPB[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'CSTOPB' in scope[0;0m
[0;36m155 |[0;0m } else {
[0;36m156 |[0;0m settings.c_cflag &= ~tcflag_t(CSTOPB)
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:156:25: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m154 |[0;0m settings.c_cflag |= tcflag_t(CSTOPB)
[0;36m155 |[0;0m } else {
[0;36m156 |[0;0m settings.c_cflag &= ~[4;39mtcflag_t[0;0m(CSTOPB)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m157 |[0;0m }
[0;36m158 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:156:34: [1;31merror: [1;39mcannot find 'CSTOPB' in scope[0;0m
[0;36m154 |[0;0m settings.c_cflag |= tcflag_t(CSTOPB)
[0;36m155 |[0;0m } else {
[0;36m156 |[0;0m settings.c_cflag &= ~tcflag_t([4;39mCSTOPB[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'CSTOPB' in scope[0;0m
[0;36m157 |[0;0m }
[0;36m158 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:160:24: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m158 |[0;0m
[0;36m159 |[0;0m // Set data bits size flag
[0;36m160 |[0;0m settings.c_cflag &= ~[4;39mtcflag_t[0;0m(CSIZE)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m161 |[0;0m settings.c_cflag |= dataBitsSize.flagValue
[0;36m162 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:160:33: [1;31merror: [1;39mcannot find 'CSIZE' in scope[0;0m
[0;36m158 |[0;0m
[0;36m159 |[0;0m // Set data bits size flag
[0;36m160 |[0;0m settings.c_cflag &= ~tcflag_t([4;39mCSIZE[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'CSIZE' in scope[0;0m
[0;36m161 |[0;0m settings.c_cflag |= dataBitsSize.flagValue
[0;36m162 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:164:24: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m162 |[0;0m
[0;36m163 |[0;0m //Disable input mapping of CR to NL, mapping of NL into CR, and ignoring CR
[0;36m164 |[0;0m settings.c_iflag &= ~[4;39mtcflag_t[0;0m(ICRNL | INLCR | IGNCR)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m165 |[0;0m
[0;36m166 |[0;0m // Set hardware flow control flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:164:33: [1;31merror: [1;39mcannot find 'ICRNL' in scope[0;0m
[0;36m162 |[0;0m
[0;36m163 |[0;0m //Disable input mapping of CR to NL, mapping of NL into CR, and ignoring CR
[0;36m164 |[0;0m settings.c_iflag &= ~tcflag_t([4;39mICRNL[0;0m | INLCR | IGNCR)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'ICRNL' in scope[0;0m
[0;36m165 |[0;0m
[0;36m166 |[0;0m // Set hardware flow control flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:164:41: [1;31merror: [1;39mcannot find 'INLCR' in scope[0;0m
[0;36m162 |[0;0m
[0;36m163 |[0;0m //Disable input mapping of CR to NL, mapping of NL into CR, and ignoring CR
[0;36m164 |[0;0m settings.c_iflag &= ~tcflag_t(ICRNL | [4;39mINLCR[0;0m | IGNCR)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'INLCR' in scope[0;0m
[0;36m165 |[0;0m
[0;36m166 |[0;0m // Set hardware flow control flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:164:49: [1;31merror: [1;39mcannot find 'IGNCR' in scope[0;0m
[0;36m162 |[0;0m
[0;36m163 |[0;0m //Disable input mapping of CR to NL, mapping of NL into CR, and ignoring CR
[0;36m164 |[0;0m settings.c_iflag &= ~tcflag_t(ICRNL | INLCR | [4;39mIGNCR[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'IGNCR' in scope[0;0m
[0;36m165 |[0;0m
[0;36m166 |[0;0m // Set hardware flow control flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:184:34: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m182 |[0;0m
[0;36m183 |[0;0m // Set software flow control flags
[0;36m184 |[0;0m let softwareFlowControlFlags = [4;39mtcflag_t[0;0m(IXON | IXOFF | IXANY)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m185 |[0;0m if useSoftwareFlowControl {
[0;36m186 |[0;0m settings.c_iflag |= softwareFlowControlFlags
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:184:43: [1;31merror: [1;39mcannot find 'IXON' in scope[0;0m
[0;36m182 |[0;0m
[0;36m183 |[0;0m // Set software flow control flags
[0;36m184 |[0;0m let softwareFlowControlFlags = tcflag_t([4;39mIXON[0;0m | IXOFF | IXANY)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'IXON' in scope[0;0m
[0;36m185 |[0;0m if useSoftwareFlowControl {
[0;36m186 |[0;0m settings.c_iflag |= softwareFlowControlFlags
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:184:50: [1;31merror: [1;39mcannot find 'IXOFF' in scope[0;0m
[0;36m182 |[0;0m
[0;36m183 |[0;0m // Set software flow control flags
[0;36m184 |[0;0m let softwareFlowControlFlags = tcflag_t(IXON | [4;39mIXOFF[0;0m | IXANY)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'IXOFF' in scope[0;0m
[0;36m185 |[0;0m if useSoftwareFlowControl {
[0;36m186 |[0;0m settings.c_iflag |= softwareFlowControlFlags
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:184:58: [1;31merror: [1;39mcannot find 'IXANY' in scope[0;0m
[0;36m182 |[0;0m
[0;36m183 |[0;0m // Set software flow control flags
[0;36m184 |[0;0m let softwareFlowControlFlags = tcflag_t(IXON | IXOFF | [4;39mIXANY[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'IXANY' in scope[0;0m
[0;36m185 |[0;0m if useSoftwareFlowControl {
[0;36m186 |[0;0m settings.c_iflag |= softwareFlowControlFlags
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:192:23: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m190 |[0;0m
[0;36m191 |[0;0m // Turn on the receiver of the serial port, and ignore modem control lines
[0;36m192 |[0;0m settings.c_cflag |= [4;39mtcflag_t[0;0m(CREAD | CLOCAL)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:192:32: [1;31merror: [1;39mcannot find 'CREAD' in scope[0;0m
[0;36m190 |[0;0m
[0;36m191 |[0;0m // Turn on the receiver of the serial port, and ignore modem control lines
[0;36m192 |[0;0m settings.c_cflag |= tcflag_t([4;39mCREAD[0;0m | CLOCAL)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'CREAD' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:192:40: [1;31merror: [1;39mcannot find 'CLOCAL' in scope[0;0m
[0;36m190 |[0;0m
[0;36m191 |[0;0m // Turn on the receiver of the serial port, and ignore modem control lines
[0;36m192 |[0;0m settings.c_cflag |= tcflag_t(CREAD | [4;39mCLOCAL[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'CLOCAL' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:195:24: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
[0;36m195 |[0;0m settings.c_lflag &= ~[4;39mtcflag_t[0;0m(ICANON | ECHO | ECHOE | ISIG)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m196 |[0;0m
[0;36m197 |[0;0m // Set output processing flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:195:33: [1;31merror: [1;39mcannot find 'ICANON' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
[0;36m195 |[0;0m settings.c_lflag &= ~tcflag_t([4;39mICANON[0;0m | ECHO | ECHOE | ISIG)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'ICANON' in scope[0;0m
[0;36m196 |[0;0m
[0;36m197 |[0;0m // Set output processing flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:195:42: [1;31merror: [1;39mcannot find 'ECHO' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
[0;36m195 |[0;0m settings.c_lflag &= ~tcflag_t(ICANON | [4;39mECHO[0;0m | ECHOE | ISIG)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'ECHO' in scope[0;0m
[0;36m196 |[0;0m
[0;36m197 |[0;0m // Set output processing flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:195:49: [1;31merror: [1;39mcannot find 'ECHOE' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
[0;36m195 |[0;0m settings.c_lflag &= ~tcflag_t(ICANON | ECHO | [4;39mECHOE[0;0m | ISIG)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'ECHOE' in scope[0;0m
[0;36m196 |[0;0m
[0;36m197 |[0;0m // Set output processing flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:195:57: [1;31merror: [1;39mcannot find 'ISIG' in scope[0;0m
[0;36m193 |[0;0m
[0;36m194 |[0;0m // Turn off canonical mode
[0;36m195 |[0;0m settings.c_lflag &= ~tcflag_t(ICANON | ECHO | ECHOE | [4;39mISIG[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'ISIG' in scope[0;0m
[0;36m196 |[0;0m
[0;36m197 |[0;0m // Set output processing flag
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:199:24: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m197 |[0;0m // Set output processing flag
[0;36m198 |[0;0m if processOutput {
[0;36m199 |[0;0m settings.c_oflag |= [4;39mtcflag_t[0;0m(OPOST)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m200 |[0;0m } else {
[0;36m201 |[0;0m settings.c_oflag &= ~tcflag_t(OPOST)
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:199:33: [1;31merror: [1;39mcannot find 'OPOST' in scope[0;0m
[0;36m197 |[0;0m // Set output processing flag
[0;36m198 |[0;0m if processOutput {
[0;36m199 |[0;0m settings.c_oflag |= tcflag_t([4;39mOPOST[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'OPOST' in scope[0;0m
[0;36m200 |[0;0m } else {
[0;36m201 |[0;0m settings.c_oflag &= ~tcflag_t(OPOST)
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:201:25: [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m199 |[0;0m settings.c_oflag |= tcflag_t(OPOST)
[0;36m200 |[0;0m } else {
[0;36m201 |[0;0m settings.c_oflag &= ~[4;39mtcflag_t[0;0m(OPOST)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcflag_t' in scope[0;0m
[0;36m202 |[0;0m }
[0;36m203 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:201:34: [1;31merror: [1;39mcannot find 'OPOST' in scope[0;0m
[0;36m199 |[0;0m settings.c_oflag |= tcflag_t(OPOST)
[0;36m200 |[0;0m } else {
[0;36m201 |[0;0m settings.c_oflag &= ~tcflag_t([4;39mOPOST[0;0m)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'OPOST' in scope[0;0m
[0;36m202 |[0;0m }
[0;36m203 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:215:3: [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m213 |[0;0m #endif
[0;36m214 |[0;0m
[0;36m215 |[0;0m [4;39mspecialCharacters[0;0m.VMIN = cc_t(minimumBytesToRead)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m216 |[0;0m specialCharacters.VTIME = cc_t(timeout)
[0;36m217 |[0;0m settings.c_cc = specialCharacters
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:215:28: [1;31merror: [1;39mcannot find 'cc_t' in scope[0;0m
[0;36m213 |[0;0m #endif
[0;36m214 |[0;0m
[0;36m215 |[0;0m specialCharacters.VMIN = [4;39mcc_t[0;0m(minimumBytesToRead)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'cc_t' in scope[0;0m
[0;36m216 |[0;0m specialCharacters.VTIME = cc_t(timeout)
[0;36m217 |[0;0m settings.c_cc = specialCharacters
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:216:3: [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m214 |[0;0m
[0;36m215 |[0;0m specialCharacters.VMIN = cc_t(minimumBytesToRead)
[0;36m216 |[0;0m [4;39mspecialCharacters[0;0m.VTIME = cc_t(timeout)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m217 |[0;0m settings.c_cc = specialCharacters
[0;36m218 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:216:29: [1;31merror: [1;39mcannot find 'cc_t' in scope[0;0m
[0;36m214 |[0;0m
[0;36m215 |[0;0m specialCharacters.VMIN = cc_t(minimumBytesToRead)
[0;36m216 |[0;0m specialCharacters.VTIME = [4;39mcc_t[0;0m(timeout)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'cc_t' in scope[0;0m
[0;36m217 |[0;0m settings.c_cc = specialCharacters
[0;36m218 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:217:19: [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m215 |[0;0m specialCharacters.VMIN = cc_t(minimumBytesToRead)
[0;36m216 |[0;0m specialCharacters.VTIME = cc_t(timeout)
[0;36m217 |[0;0m settings.c_cc = [4;39mspecialCharacters[0;0m
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'specialCharacters' in scope[0;0m
[0;36m218 |[0;0m
[0;36m219 |[0;0m // Commit settings
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:220:3: [1;31merror: [1;39mcannot find 'tcsetattr' in scope[0;0m
[0;36m218 |[0;0m
[0;36m219 |[0;0m // Commit settings
[0;36m220 |[0;0m [4;39mtcsetattr[0;0m(fileDescriptor, TCSANOW, &settings)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'tcsetattr' in scope[0;0m
[0;36m221 |[0;0m }
[0;36m222 |[0;0m
/host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift:220:29: [1;31merror: [1;39mcannot find 'TCSANOW' in scope[0;0m
[0;36m218 |[0;0m
[0;36m219 |[0;0m // Commit settings
[0;36m220 |[0;0m tcsetattr(fileDescriptor, [4;39mTCSANOW[0;0m, &settings)
[0;36m|[0;0m `- [1;31merror: [1;39mcannot find 'TCSANOW' in scope[0;0m
[0;36m221 |[0;0m }
[0;36m222 |[0;0m
Failed frontend command:
/usr/bin/swift-frontend -frontend -emit-module -experimental-skip-non-inlinable-function-bodies-without-types /host/spi-builder-workspace/Sources/SwiftSerial/BaudRate.swift /host/spi-builder-workspace/Sources/SwiftSerial/DataBitsSize.swift /host/spi-builder-workspace/Sources/SwiftSerial/ParityType.swift /host/spi-builder-workspace/Sources/SwiftSerial/PortError.swift /host/spi-builder-workspace/Sources/SwiftSerial/PortMode.swift /host/spi-builder-workspace/Sources/SwiftSerial/SerialPort.swift /host/spi-builder-workspace/Sources/SwiftSerial/SerialPortDeprecated.swift -target wasm32-unknown-wasip1 -disable-objc-interop -sdk /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -sysroot /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/WASI.sdk -I /host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32 -module-cache-path /host/spi-builder-workspace/.build/out/ModuleCache.noindex -color-diagnostics -Xcc -fcolor-diagnostics -enable-testing -g -debug-info-format\=dwarf -dwarf-version\=4 -swift-version 5 -Onone -D SWIFT_PACKAGE -D DEBUG -D SWIFT_MODULE_RESOURCE_BUNDLE_UNAVAILABLE -D Xcode -serialize-debugging-options -enable-experimental-feature DebugDescriptionMacro -empty-abi-descriptor -external-plugin-path /usr/lib/swift/host/plugins/testing\#/usr/bin/swift-plugin-server -validate-clang-modules-once -clang-build-session-file /host/spi-builder-workspace/.build/out/ModuleCache.noindex/Session.modulevalidation -Xcc -working-directory -Xcc /host -resource-dir /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static -use-static-resource-dir -enable-anonymous-context-mangled-names -file-compilation-dir /host -Xcc -resource-dir -Xcc /root/.swiftpm/swift-sdks/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm.artifactbundle/swift-6.4.x-DEVELOPMENT-SNAPSHOT-2026-09-04-a_wasm/wasm32-unknown-wasip1/swift.xctoolchain/usr/lib/swift_static/clang -Xcc -D_LIBCPP_HARDENING_MODE\=_LIBCPP_HARDENING_MODE_DEBUG -Xcc -fmodules-prune-interval\=86400 -Xcc -fmodules-prune-after\=345600 -Xcc -I/host/spi-builder-workspace/.build/out/Products/Debug-webassembly-wasm32/include -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/DerivedSources-normal/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/DerivedSources/wasm32 -Xcc -I/host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/DerivedSources -Xcc -DSWIFT_PACKAGE -Xcc -DDEBUG\=1 -no-auto-bridging-header-chaining -module-name SwiftSerial -package-name spi_builder_workspace -const-gather-protocols-file /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/SwiftSerial_const_extract_protocols.json -in-process-plugin-server-path /usr/lib/swift/host/libSwiftInProcPluginServer.so -plugin-path /usr/lib/swift/host/plugins -plugin-path /usr/local/lib/swift/host/plugins -emit-module-doc-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/Modules/SwiftSerial.swiftdoc -emit-module-source-info-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/Modules/SwiftSerial.swiftsourceinfo -emit-objc-header-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/SwiftSerial-Swift.h -serialize-diagnostics-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/SwiftSerial-primary-emit-module.dia -emit-dependencies-path /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/SwiftSerial-primary-emit-module.d -parse-as-library -o /host/spi-builder-workspace/.build/out/Intermediates.noindex/SwiftSerial.build/Debug-webassembly-wasm32/SwiftSerial-t.build/Objects-normal/wasm32/Modules/SwiftSerial.swiftmodule
error: Build failed
BUILD FAILURE 6.4 wasm