The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Failed to build Shout, reference 0.5.7 (fbcae2), with Swift 6.1 for Wasm on 27 May 2025 23:59:51 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jakeheis/shout.git
Reference: 0.5.7
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/jakeheis/shout
 * tag               0.5.7      -> FETCH_HEAD
HEAD is now at fbcae22 Merge pull request #53 from pelopina6/master
Cloned https://github.com/jakeheis/shout.git
Revision (git rev-parse @):
fbcae228bc68d5e2352f0790079995d27b610dbc
SUCCESS checkout https://github.com/jakeheis/shout.git at 0.5.7
========================================
Build
========================================
Selected platform:         wasm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/jakeheis/shout.git
https://github.com/jakeheis/shout.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "bluesocket",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.46",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/IBM-Swift/BlueSocket"
    }
  ],
  "manifest_display_name" : "Shout",
  "name" : "Shout",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.10"
    }
  ],
  "products" : [
    {
      "name" : "Shout",
      "targets" : [
        "Shout"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ShoutTests",
      "module_type" : "SwiftTarget",
      "name" : "ShoutTests",
      "path" : "Tests/ShoutTests",
      "sources" : [
        "SFTPTests.swift",
        "SSHTests.swift",
        "XCTestManifests.swift"
      ],
      "target_dependencies" : [
        "Shout"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Shout",
      "module_type" : "SwiftTarget",
      "name" : "Shout",
      "path" : "Sources/Shout",
      "product_dependencies" : [
        "Socket"
      ],
      "product_memberships" : [
        "Shout"
      ],
      "sources" : [
        "Agent.swift",
        "Channel.swift",
        "FileAttributes.swift",
        "FilePermissions.swift",
        "FileType.swift",
        "ReadWrite.swift",
        "SFTP.swift",
        "SSH.swift",
        "SSHAuthMethod.swift",
        "SSHError.swift",
        "Session.swift"
      ],
      "target_dependencies" : [
        "CSSH"
      ],
      "type" : "library"
    },
    {
      "c99name" : "CSSH",
      "module_type" : "SystemLibraryTarget",
      "name" : "CSSH",
      "path" : "Sources/CSSH",
      "product_memberships" : [
        "Shout"
      ],
      "sources" : [
      ],
      "type" : "system-target"
    }
  ],
  "tools_version" : "5.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
Fetching https://github.com/IBM-Swift/BlueSocket
[1/2942] Fetching bluesocket
Fetched https://github.com/IBM-Swift/BlueSocket from cache (0.57s)
Computing version for https://github.com/IBM-Swift/BlueSocket
Computed https://github.com/IBM-Swift/BlueSocket at 1.0.200 (1.25s)
Creating working copy for https://github.com/IBM-Swift/BlueSocket
Working copy of https://github.com/IBM-Swift/BlueSocket resolved at 1.0.200
warning: couldn't find pc file for libssh2
warning: couldn't find pc file for libssh2
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/7] Compiling Socket SocketProtocols.swift
[5/7] Emitting module Socket
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:146:27: error: cannot find '__DARWIN_FD_SETSIZE' in scope
144 | 	// __DARWIN_FD_SETSIZE is number of *bits*, so divide by number bits in each element to get element count
145 | 	// at present this is 1024 / 32 == 32
146 | 	let __fd_set_count = Int(__DARWIN_FD_SETSIZE) / 32
    |                           `- error: cannot find '__DARWIN_FD_SETSIZE' in scope
147 |
148 | 	extension fd_set {
[6/7] Compiling Socket Socket.swift
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:208:13: error: cannot find 'SOCK_STREAM' in scope
 206 | 					return Int32(SOCK_STREAM.rawValue)
 207 | 				#else
 208 | 					return SOCK_STREAM
     |             `- error: cannot find 'SOCK_STREAM' in scope
 209 | 				#endif
 210 | 			case .datagram:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:214:13: error: cannot find 'SOCK_DGRAM' in scope
 212 | 					return Int32(SOCK_DGRAM.rawValue)
 213 | 				#else
 214 | 					return SOCK_DGRAM
     |             `- error: cannot find 'SOCK_DGRAM' in scope
 215 | 				#endif
 216 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:241:10: error: cannot find 'SOCK_STREAM' in scope
 239 | 				switch forValue {
 240 |
 241 | 				case SOCK_STREAM:
     |          `- error: cannot find 'SOCK_STREAM' in scope
 242 | 					return .stream
 243 | 				case SOCK_DGRAM:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:243:10: error: cannot find 'SOCK_DGRAM' in scope
 241 | 				case SOCK_STREAM:
 242 | 					return .stream
 243 | 				case SOCK_DGRAM:
     |          `- error: cannot find 'SOCK_DGRAM' in scope
 244 | 					return .datagram
 245 | 				default:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:597:63: error: value of type 'sockaddr_un' has no member 'sun_path'
 595 |
 596 | 			// Validate the length...
 597 | 			guard lengthOfPath < MemoryLayout.size(ofValue: remoteAddr.sun_path) else {
     |                                                               `- error: value of type 'sockaddr_un' has no member 'sun_path'
 598 |
 599 | 				throw Error(code: Socket.SOCKET_ERR_BAD_SIGNATURE_PARAMETERS, reason: "Pathname supplied is too long.")
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:603:49: error: value of type 'sockaddr_un' has no member 'sun_path'
 601 |
 602 | 			// Copy the path to the remote address...
 603 | 			_ = withUnsafeMutablePointer(to: &remoteAddr.sun_path.0) { ptr in
     |                                                 `- error: value of type 'sockaddr_un' has no member 'sun_path'
 604 |
 605 | 				path.withCString {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:611:19: error: value of type 'sockaddr_un' has no member 'sun_len'
 609 |
 610 | 			#if !os(Linux)
 611 | 			    remoteAddr.sun_len = UInt8(MemoryLayout<UInt8>.size + MemoryLayout<sa_family_t>.size + path.utf8.count + 1)
     |                   `- error: value of type 'sockaddr_un' has no member 'sun_len'
 612 | 			#endif
 613 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1175:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1173 | 			// First get seconds...
1174 | 			let secs = Int(Double(timeout / 1000))
1175 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1176 |
1177 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1187:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1185 | 				timer.tv_usec = Int(uSecs)
1186 | 			#else
1187 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1188 | 			#endif
1189 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1238:34: error: cannot find type 'addrinfo' in scope
1236 | 	public class func createAddress(for host: String, on port: Int32) -> Address? {
1237 |
1238 | 		var info: UnsafeMutablePointer<addrinfo>?
     |                                  `- error: cannot find type 'addrinfo' in scope
1239 |
1240 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1241:23: error: cannot find 'getaddrinfo' in scope
1239 |
1240 | 		// Retrieve the info on our target...
1241 | 		let status: Int32 = getaddrinfo(host, String(port), nil, &info)
     |                       `- error: cannot find 'getaddrinfo' in scope
1242 | 		if status != 0 {
1243 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1241:55: error: 'nil' requires a contextual type
1239 |
1240 | 		// Retrieve the info on our target...
1241 | 		let status: Int32 = getaddrinfo(host, String(port), nil, &info)
     |                                                       `- error: 'nil' requires a contextual type
1242 | 		if status != 0 {
1243 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1251:5: error: cannot find 'freeaddrinfo' in scope
1249 |
1250 | 			if info != nil {
1251 | 				freeaddrinfo(info)
     |     `- error: cannot find 'freeaddrinfo' in scope
1252 | 			}
1253 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1309:20: error: cannot find 'Darwin' in scope
1307 | 			self.socketfd = Glibc.socket(family.value, type.value, sockProto.value)
1308 | 		#else
1309 | 			self.socketfd = Darwin.socket(family.value, type.value, sockProto.value)
     |                    `- error: cannot find 'Darwin' in scope
1310 | 		#endif
1311 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1354:15: error: cannot find 'SOCK_STREAM' in scope
1352 | 			let type = Int32(SOCK_STREAM.rawValue)
1353 | 		#else
1354 | 			let type = SOCK_STREAM
     |               `- error: cannot find 'SOCK_STREAM' in scope
1355 | 		#endif
1356 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1444:16: error: cannot find 'Darwin' in scope
1442 | 						let fd = Glibc.accept(self.socketfd, addressPointer, addressLengthPointer)
1443 | 					#else
1444 | 						let fd = Darwin.accept(self.socketfd, addressPointer, addressLengthPointer)
     |                `- error: cannot find 'Darwin' in scope
1445 | 					#endif
1446 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1557:16: error: cannot find 'Darwin' in scope
1555 | 						let fd = Glibc.accept(self.socketfd, addressPointer, addressLengthPointer)
1556 | 					#else
1557 | 						let fd = Darwin.accept(self.socketfd, addressPointer, addressLengthPointer)
     |                `- error: cannot find 'Darwin' in scope
1558 | 					#endif
1559 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1706:16: error: cannot find 'addrinfo' in scope
1704 | 				ai_next: nil)
1705 | 		#else
1706 | 			var hints = addrinfo(
     |                `- error: cannot find 'addrinfo' in scope
1707 | 				ai_flags: AI_PASSIVE,
1708 | 				ai_family: familyOnly ? signature?.protocolFamily.value ?? AF_UNSPEC : AF_UNSPEC,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1707:15: error: cannot find 'AI_PASSIVE' in scope
1705 | 		#else
1706 | 			var hints = addrinfo(
1707 | 				ai_flags: AI_PASSIVE,
     |               `- error: cannot find 'AI_PASSIVE' in scope
1708 | 				ai_family: familyOnly ? signature?.protocolFamily.value ?? AF_UNSPEC : AF_UNSPEC,
1709 | 				ai_socktype: socketType.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1712:19: error: 'nil' requires a contextual type
1710 | 				ai_protocol: 0,
1711 | 				ai_addrlen: 0,
1712 | 				ai_canonname: nil,
     |                   `- error: 'nil' requires a contextual type
1713 | 				ai_addr: nil,
1714 | 				ai_next: nil)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1713:14: error: 'nil' requires a contextual type
1711 | 				ai_addrlen: 0,
1712 | 				ai_canonname: nil,
1713 | 				ai_addr: nil,
     |              `- error: 'nil' requires a contextual type
1714 | 				ai_next: nil)
1715 | 		#endif
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1714:14: error: 'nil' requires a contextual type
1712 | 				ai_canonname: nil,
1713 | 				ai_addr: nil,
1714 | 				ai_next: nil)
     |              `- error: 'nil' requires a contextual type
1715 | 		#endif
1716 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1717:40: error: cannot find type 'addrinfo' in scope
1715 | 		#endif
1716 |
1717 | 		var targetInfo: UnsafeMutablePointer<addrinfo>?
     |                                        `- error: cannot find type 'addrinfo' in scope
1718 |
1719 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1720:23: error: cannot find 'getaddrinfo' in scope
1718 |
1719 | 		// Retrieve the info on our target...
1720 | 		var status: Int32 = getaddrinfo(host, String(port), &hints, &targetInfo)
     |                       `- error: cannot find 'getaddrinfo' in scope
1721 | 		if status != 0 {
1722 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1724:17: error: cannot find 'EAI_SYSTEM' in scope
1722 |
1723 | 			var errorString: String
1724 | 			if status == EAI_SYSTEM {
     |                 `- error: cannot find 'EAI_SYSTEM' in scope
1725 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
1726 | 			} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1727:42: error: cannot find 'gai_strerror' in scope
1725 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
1726 | 			} else {
1727 | 				errorString = String(validatingUTF8: gai_strerror(status)) ?? "Unknown error code."
     |                                          `- error: cannot find 'gai_strerror' in scope
1728 | 			}
1729 | 			throw Error(code: Socket.SOCKET_ERR_GETADDRINFO_FAILED, reason: errorString)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1736:5: error: cannot find 'freeaddrinfo' in scope
1734 |
1735 | 			if targetInfo != nil {
1736 | 				freeaddrinfo(targetInfo)
     |     `- error: cannot find 'freeaddrinfo' in scope
1737 | 			}
1738 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1748:10: error: cannot find 'Darwin' in scope
1746 | 					_ = Glibc.close(socketDescriptor!)
1747 | 				#else
1748 | 					_ = Darwin.close(socketDescriptor!)
     |          `- error: cannot find 'Darwin' in scope
1749 | 				#endif
1750 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1759:24: error: cannot find 'Darwin' in scope
1757 | 				socketDescriptor = Glibc.socket(info!.pointee.ai_family, info!.pointee.ai_socktype, info!.pointee.ai_protocol)
1758 | 			#else
1759 | 				socketDescriptor = Darwin.socket(info!.pointee.ai_family, info!.pointee.ai_socktype, info!.pointee.ai_protocol)
     |                        `- error: cannot find 'Darwin' in scope
1760 | 			#endif
1761 | 			if socketDescriptor == -1 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1775:60: error: cannot find 'O_NONBLOCK' in scope
1773 | 				}
1774 |
1775 | 				let result = fcntl(socketDescriptor!, F_SETFL, flags | O_NONBLOCK)
     |                                                            `- error: cannot find 'O_NONBLOCK' in scope
1776 | 				if result < 0 {
1777 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1786:14: error: cannot find 'Darwin' in scope
1784 | 				status = Glibc.connect(socketDescriptor!, info!.pointee.ai_addr, info!.pointee.ai_addrlen)
1785 | 			#else
1786 | 				status = Darwin.connect(socketDescriptor!, info!.pointee.ai_addr, info!.pointee.ai_addrlen)
     |              `- error: cannot find 'Darwin' in scope
1787 | 			#endif
1788 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1808:21: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1806 | 					// First get seconds...
1807 | 					let secs = Int(Double(timeout / 1000))
1808 | 					timer.tv_sec = secs
     |                     `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1809 |
1810 | 					// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1820:23: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1818 | 						timer.tv_usec = Int(uSecs)
1819 | 					#else
1820 | 						timer.tv_usec = Int32(uSecs)
     |                       `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1821 | 					#endif
1822 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1836:52: error: cannot find 'SO_ERROR' in scope
1834 | 						var result: Int = 0
1835 | 						var resultLength = socklen_t(MemoryLayout<Int>.size)
1836 | 						if getsockopt(socketDescriptor!, SOL_SOCKET, SO_ERROR, &result, &resultLength) < 0 {
     |                                                    `- error: cannot find 'SO_ERROR' in scope
1837 |
1838 | 							throw Error(code: Socket.SOCKET_ERR_GETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1860:9: error: cannot find 'Darwin' in scope
1858 | 				_ = Glibc.close(socketDescriptor!)
1859 | 			#else
1860 | 				_ = Darwin.close(socketDescriptor!)
     |         `- error: cannot find 'Darwin' in scope
1861 | 			#endif
1862 | 			socketDescriptor = nil
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1873:10: error: cannot find 'Darwin' in scope
1871 | 					_ = Glibc.close(socketDescriptor!)
1872 | 				#else
1873 | 					_ = Darwin.close(socketDescriptor!)
     |          `- error: cannot find 'Darwin' in scope
1874 | 				#endif
1875 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1928:56: error: cannot find 'O_NONBLOCK' in scope
1926 | 			}
1927 |
1928 | 			let result = fcntl(self.socketfd, F_SETFL, flags & ~O_NONBLOCK)
     |                                                        `- error: cannot find 'O_NONBLOCK' in scope
1929 | 			if result < 0 {
1930 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2002:12: error: cannot find 'Darwin' in scope
2000 | 				return Glibc.connect(self.socketfd, p, socklen_t(addrLen))
2001 | 			#else
2002 | 				return Darwin.connect(self.socketfd, p, socklen_t(addrLen))
     |            `- error: cannot find 'Darwin' in scope
2003 | 			#endif
2004 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2056:13: error: cannot find 'Darwin' in scope
2054 | 					return Glibc.connect(self.socketfd, sockaddr, length)
2055 | 				#else
2056 | 					return Darwin.connect(self.socketfd, sockaddr, length)
     |             `- error: cannot find 'Darwin' in scope
2057 | 				#endif
2058 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2138:6: error: cannot find 'setsockopt' in scope
2136 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2137 | 		var on: Int32 = 1
2138 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
2139 |
2140 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2138:44: error: cannot find 'SO_REUSEADDR' in scope
2136 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2137 | 		var on: Int32 = 1
2138 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_REUSEADDR' in scope
2139 |
2140 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2150:7: error: cannot find 'setsockopt' in scope
2148 | 			// instances of a program to each receive UDP/IP multicast or broadcast datagrams
2149 | 			// destined for the bound port.
2150 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEPORT, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |       `- error: cannot find 'setsockopt' in scope
2151 |
2152 | 				// Setting of this option on WSL (Windows Subsytem for Linux) is not supported.  Check for
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2150:45: error: cannot find 'SO_REUSEPORT' in scope
2148 | 			// instances of a program to each receive UDP/IP multicast or broadcast datagrams
2149 | 			// destined for the bound port.
2150 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEPORT, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                             `- error: cannot find 'SO_REUSEPORT' in scope
2151 |
2152 | 				// Setting of this option on WSL (Windows Subsytem for Linux) is not supported.  Check for
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2168:16: error: cannot find 'setsockopt' in scope
2166 |         // Configure ipv6 socket so that it can share ports with ipv4 on the same port.
2167 |         if sig.protocolFamily == .inet6 && sig.proto == .tcp {
2168 |             if setsockopt(self.socketfd, Int32(IPPROTO_IPV6), IPV6_V6ONLY, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                `- error: cannot find 'setsockopt' in scope
2169 |
2170 |                 throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2205:16: error: cannot find 'addrinfo' in scope
2203 | 				ai_next: nil)
2204 | 		#else
2205 | 			var hints = addrinfo(
     |                `- error: cannot find 'addrinfo' in scope
2206 | 				ai_flags: AI_PASSIVE,
2207 | 				ai_family: sig.protocolFamily.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2206:15: error: cannot find 'AI_PASSIVE' in scope
2204 | 		#else
2205 | 			var hints = addrinfo(
2206 | 				ai_flags: AI_PASSIVE,
     |               `- error: cannot find 'AI_PASSIVE' in scope
2207 | 				ai_family: sig.protocolFamily.value,
2208 | 				ai_socktype: sig.socketType.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2211:19: error: 'nil' requires a contextual type
2209 | 				ai_protocol: 0,
2210 | 				ai_addrlen: 0,
2211 | 				ai_canonname: nil,
     |                   `- error: 'nil' requires a contextual type
2212 | 				ai_addr: nil,
2213 | 				ai_next: nil)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2212:14: error: 'nil' requires a contextual type
2210 | 				ai_addrlen: 0,
2211 | 				ai_canonname: nil,
2212 | 				ai_addr: nil,
     |              `- error: 'nil' requires a contextual type
2213 | 				ai_next: nil)
2214 | 		#endif
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2213:14: error: 'nil' requires a contextual type
2211 | 				ai_canonname: nil,
2212 | 				ai_addr: nil,
2213 | 				ai_next: nil)
     |              `- error: 'nil' requires a contextual type
2214 | 		#endif
2215 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2216:40: error: cannot find type 'addrinfo' in scope
2214 | 		#endif
2215 |
2216 | 		var targetInfo: UnsafeMutablePointer<addrinfo>?
     |                                        `- error: cannot find type 'addrinfo' in scope
2217 |
2218 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2219:23: error: cannot find 'getaddrinfo' in scope
2217 |
2218 | 		// Retrieve the info on our target...
2219 | 		let status: Int32 = getaddrinfo(node ?? nil, String(port), &hints, &targetInfo)
     |                       `- error: cannot find 'getaddrinfo' in scope
2220 | 		if status != 0 {
2221 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2223:17: error: cannot find 'EAI_SYSTEM' in scope
2221 |
2222 | 			var errorString: String
2223 | 			if status == EAI_SYSTEM {
     |                 `- error: cannot find 'EAI_SYSTEM' in scope
2224 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
2225 | 			} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2226:42: error: cannot find 'gai_strerror' in scope
2224 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
2225 | 			} else {
2226 | 				errorString = String(validatingUTF8: gai_strerror(errno)) ?? "Unknown error code."
     |                                          `- error: cannot find 'gai_strerror' in scope
2227 | 			}
2228 | 			throw Error(code: Socket.SOCKET_ERR_GETADDRINFO_FAILED, reason: errorString)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2235:5: error: cannot find 'freeaddrinfo' in scope
2233 |
2234 | 			if targetInfo != nil {
2235 | 				freeaddrinfo(targetInfo)
     |     `- error: cannot find 'freeaddrinfo' in scope
2236 | 			}
2237 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2253:8: error: cannot find 'Darwin' in scope
2251 | 				}
2252 | 			#else
2253 | 				if Darwin.bind(self.socketfd, info!.pointee.ai_addr, info!.pointee.ai_addrlen) == 0 {
     |        `- error: cannot find 'Darwin' in scope
2254 |
2255 | 					// Success... We've found our address...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2277:8: error: cannot find 'getsockname' in scope
2275 | 		if port == 0 {
2276 | 			guard let addressFromSockName = try Address(addressProvider: { (sockaddr, length) in
2277 | 				if getsockname(self.socketfd, sockaddr, length) != 0 {
     |        `- error: cannot find 'getsockname' in scope
2278 | 					throw Error(code: Socket.SOCKET_ERR_BIND_FAILED, reason: "Unable to determine listening socket address after bind.")
2279 | 				}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2326:7: error: cannot find 'Darwin' in scope
2324 | 			}
2325 | 		#else
2326 | 			if Darwin.listen(self.socketfd, Int32(maxBacklogSize)) < 0 {
     |       `- error: cannot find 'Darwin' in scope
2327 |
2328 | 				throw Error(code: Socket.SOCKET_ERR_LISTEN_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2362:6: error: cannot find 'setsockopt' in scope
2360 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2361 | 		var on: Int32 = 1
2362 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
2363 |
2364 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2362:44: error: cannot find 'SO_REUSEADDR' in scope
2360 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2361 | 		var on: Int32 = 1
2362 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_REUSEADDR' in scope
2363 |
2364 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2378:8: error: cannot find 'Darwin' in scope
2376 | 			_ = Glibc.unlink(path)
2377 | 		#else
2378 | 			_ = Darwin.unlink(path)
     |        `- error: cannot find 'Darwin' in scope
2379 | 		#endif
2380 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2399:12: error: cannot find 'Darwin' in scope
2397 | 				return Glibc.bind(self.socketfd, p, socklen_t(addrLen))
2398 | 			#else
2399 | 				return Darwin.bind(self.socketfd, p, socklen_t(addrLen))
     |            `- error: cannot find 'Darwin' in scope
2400 | 			#endif
2401 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2415:7: error: cannot find 'Darwin' in scope
2413 | 			}
2414 | 		#else
2415 | 			if Darwin.listen(self.socketfd, Int32(maxBacklogSize)) < 0 {
     |       `- error: cannot find 'Darwin' in scope
2416 |
2417 | 				throw Error(code: Socket.SOCKET_ERR_LISTEN_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3020:10: error: cannot find 'Darwin' in scope
3018 | 					s = Glibc.send(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags)
3019 | 				#else
3020 | 					s = Darwin.send(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags)
     |          `- error: cannot find 'Darwin' in scope
3021 | 				#endif
3022 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3157:10: error: cannot find 'Darwin' in scope
3155 | 					s = Glibc.sendto(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags, addressPointer, addressLength)
3156 | 				#else
3157 | 					s = Darwin.sendto(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags, addressPointer, addressLength)
     |          `- error: cannot find 'Darwin' in scope
3158 | 				#endif
3159 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3290:20: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3288 | 				// First get seconds...
3289 | 				let secs = Int(Double(timeout / 1000))
3290 | 				timer.tv_sec = secs
     |                    `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3291 |
3292 | 				// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3302:22: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3300 | 					timer.tv_usec = Int(uSecs)
3301 | 				#else
3302 | 					timer.tv_usec = Int32(uSecs)
     |                      `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3303 | 				#endif
3304 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3336:52: error: cannot find 'O_NONBLOCK' in scope
3334 | 		if shouldBlock {
3335 |
3336 | 			result = fcntl(self.socketfd, F_SETFL, flags & ~O_NONBLOCK)
     |                                                    `- error: cannot find 'O_NONBLOCK' in scope
3337 |
3338 | 		} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3340:51: error: cannot find 'O_NONBLOCK' in scope
3338 | 		} else {
3339 |
3340 | 			result = fcntl(self.socketfd, F_SETFL, flags | O_NONBLOCK)
     |                                                   `- error: cannot find 'O_NONBLOCK' in scope
3341 | 		}
3342 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3367:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3365 | 			// First get seconds...
3366 | 			let secs = Int(Double(value / 1000))
3367 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3368 |
3369 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3379:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3377 | 				timer.tv_usec = Int(uSecs)
3378 | 			#else
3379 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3380 | 			#endif
3381 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3383:16: error: cannot find 'setsockopt' in scope
3381 | 		}
3382 |
3383 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_RCVTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                `- error: cannot find 'setsockopt' in scope
3384 |
3385 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3383:54: error: cannot find 'SO_RCVTIMEO' in scope
3381 | 		}
3382 |
3383 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_RCVTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                                                      `- error: cannot find 'SO_RCVTIMEO' in scope
3384 |
3385 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3407:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3405 | 			// First get seconds...
3406 | 			let secs = Int(Double(value / 1000))
3407 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3408 |
3409 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3419:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3417 | 				timer.tv_usec = Int(uSecs)
3418 | 			#else
3419 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3420 | 			#endif
3421 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3423:16: error: cannot find 'setsockopt' in scope
3421 | 		}
3422 |
3423 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_SNDTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                `- error: cannot find 'setsockopt' in scope
3424 |
3425 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3423:54: error: cannot find 'SO_SNDTIMEO' in scope
3421 | 		}
3422 |
3423 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_SNDTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                                                      `- error: cannot find 'SO_SNDTIMEO' in scope
3424 |
3425 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3454:6: error: cannot find 'setsockopt' in scope
3452 | 		// Turn on or off UDP broadcasting...
3453 | 		var on: Int32 = enable ? 1 : 0
3454 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_BROADCAST, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
3455 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3456 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3454:44: error: cannot find 'SO_BROADCAST' in scope
3452 | 		// Turn on or off UDP broadcasting...
3453 | 		var on: Int32 = enable ? 1 : 0
3454 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_BROADCAST, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_BROADCAST' in scope
3455 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3456 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3487:10: error: cannot find 'Darwin' in scope
3485 | 			#else
3486 | 				if self.isListening {
3487 | 					_ = Darwin.shutdown(self.socketfd, Int32(SHUT_RDWR))
     |          `- error: cannot find 'Darwin' in scope
3488 | 					self.isListening = false
3489 | 				}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3487:47: error: cannot find 'SHUT_RDWR' in scope
3485 | 			#else
3486 | 				if self.isListening {
3487 | 					_ = Darwin.shutdown(self.socketfd, Int32(SHUT_RDWR))
     |                                               `- error: cannot find 'SHUT_RDWR' in scope
3488 | 					self.isListening = false
3489 | 				}
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_sys_socket.h:13:9: note: macro 'SHUT_RDWR' unavailable: structure not supported
11 | #define SHUT_RD __WASI_SDFLAGS_RD
12 | #define SHUT_WR __WASI_SDFLAGS_WR
13 | #define SHUT_RDWR (SHUT_RD | SHUT_WR)
   |         `- note: macro 'SHUT_RDWR' unavailable: structure not supported
14 |
15 | #ifdef __wasilibc_use_wasip2
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3491:9: error: cannot find 'Darwin' in scope
3489 | 				}
3490 | 				self.isConnected = false
3491 | 				_ = Darwin.close(self.socketfd)
     |         `- error: cannot find 'Darwin' in scope
3492 | 			#endif
3493 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3508:10: error: cannot find 'Darwin' in scope
3506 | 					_ = Glibc.unlink(self.signature!.path!)
3507 | 				#else
3508 | 					_ = Darwin.unlink(self.signature!.path!)
     |          `- error: cannot find 'Darwin' in scope
3509 | 				#endif
3510 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3532:23: error: cannot find 'MSG_DONTWAIT' in scope
3530 | 		var recvFlags: Int32 = 0
3531 | 		if self.readStorage.length > 0 {
3532 | 			recvFlags |= Int32(MSG_DONTWAIT)
     |                       `- error: cannot find 'MSG_DONTWAIT' in scope
3533 | 		}
3534 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3544:14: error: cannot find 'Darwin' in scope
3542 | 					count = Glibc.recv(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags)
3543 | 				#else
3544 | 					count = Darwin.recv(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags)
     |              `- error: cannot find 'Darwin' in scope
3545 | 				#endif
3546 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3646:23: error: cannot find 'MSG_DONTWAIT' in scope
3644 | 		var recvFlags: Int32 = 0
3645 | 		if self.readStorage.length > 0 {
3646 | 			recvFlags |= Int32(MSG_DONTWAIT)
     |                       `- error: cannot find 'MSG_DONTWAIT' in scope
3647 | 		}
3648 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3656:18: error: cannot find 'Darwin' in scope
3654 | 					let count = Glibc.recvfrom(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags, addresssPointer, addressLengthPointer)
3655 | 				#else
3656 | 					let count = Darwin.recvfrom(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags, addresssPointer, addressLengthPointer)
     |                  `- error: cannot find 'Darwin' in scope
3657 | 				#endif
3658 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3753:7: error: cannot find 'setsockopt' in scope
3751 | 			// MSG_NOSIGNAL flags passed to send.  See the write() functions below.
3752 | 			var on: Int32 = 1
3753 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_NOSIGPIPE, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |       `- error: cannot find 'setsockopt' in scope
3754 | 				throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3755 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3753:45: error: cannot find 'SO_NOSIGPIPE' in scope
3751 | 			// MSG_NOSIGNAL flags passed to send.  See the write() functions below.
3752 | 			var on: Int32 = 1
3753 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_NOSIGPIPE, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                             `- error: cannot find 'SO_NOSIGPIPE' in scope
3754 | 				throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3755 | 			}
[7/7] Compiling Socket SocketUtils.swift
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:146:27: error: cannot find '__DARWIN_FD_SETSIZE' in scope
144 | 	// __DARWIN_FD_SETSIZE is number of *bits*, so divide by number bits in each element to get element count
145 | 	// at present this is 1024 / 32 == 32
146 | 	let __fd_set_count = Int(__DARWIN_FD_SETSIZE) / 32
    |                           `- error: cannot find '__DARWIN_FD_SETSIZE' in scope
147 |
148 | 	extension fd_set {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:152:45: error: cannot find 'fds_bits' in scope
150 | 		@inline(__always)
151 | 		mutating func withCArrayAccess<T>(block: (UnsafeMutablePointer<Int32>) throws -> T) rethrows -> T {
152 | 			return try withUnsafeMutablePointer(to: &fds_bits) {
    |                                             `- error: cannot find 'fds_bits' in scope
153 | 				try block(UnsafeMutableRawPointer($0).assumingMemoryBound(to: Int32.self))
154 | 			}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest swift build --swift-sdk wasm32-unknown-wasi 2>&1
wasm-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:7e37457820e5f17452a98118754f345f2619722c485f2db0d8b666940a83afd2
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:wasm-6.1-latest
warning: couldn't find pc file for libssh2
warning: couldn't find pc file for libssh2
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
[2/5] Compiling Socket SocketUtils.swift
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:146:27: error: cannot find '__DARWIN_FD_SETSIZE' in scope
144 | 	// __DARWIN_FD_SETSIZE is number of *bits*, so divide by number bits in each element to get element count
145 | 	// at present this is 1024 / 32 == 32
146 | 	let __fd_set_count = Int(__DARWIN_FD_SETSIZE) / 32
    |                           `- error: cannot find '__DARWIN_FD_SETSIZE' in scope
147 |
148 | 	extension fd_set {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:152:45: error: cannot find 'fds_bits' in scope
150 | 		@inline(__always)
151 | 		mutating func withCArrayAccess<T>(block: (UnsafeMutablePointer<Int32>) throws -> T) rethrows -> T {
152 | 			return try withUnsafeMutablePointer(to: &fds_bits) {
    |                                             `- error: cannot find 'fds_bits' in scope
153 | 				try block(UnsafeMutableRawPointer($0).assumingMemoryBound(to: Int32.self))
154 | 			}
[3/5] Compiling Socket SocketProtocols.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/5] Emitting module Socket
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/SocketUtils.swift:146:27: error: cannot find '__DARWIN_FD_SETSIZE' in scope
144 | 	// __DARWIN_FD_SETSIZE is number of *bits*, so divide by number bits in each element to get element count
145 | 	// at present this is 1024 / 32 == 32
146 | 	let __fd_set_count = Int(__DARWIN_FD_SETSIZE) / 32
    |                           `- error: cannot find '__DARWIN_FD_SETSIZE' in scope
147 |
148 | 	extension fd_set {
[5/5] Compiling Socket Socket.swift
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:208:13: error: cannot find 'SOCK_STREAM' in scope
 206 | 					return Int32(SOCK_STREAM.rawValue)
 207 | 				#else
 208 | 					return SOCK_STREAM
     |             `- error: cannot find 'SOCK_STREAM' in scope
 209 | 				#endif
 210 | 			case .datagram:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:214:13: error: cannot find 'SOCK_DGRAM' in scope
 212 | 					return Int32(SOCK_DGRAM.rawValue)
 213 | 				#else
 214 | 					return SOCK_DGRAM
     |             `- error: cannot find 'SOCK_DGRAM' in scope
 215 | 				#endif
 216 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:241:10: error: cannot find 'SOCK_STREAM' in scope
 239 | 				switch forValue {
 240 |
 241 | 				case SOCK_STREAM:
     |          `- error: cannot find 'SOCK_STREAM' in scope
 242 | 					return .stream
 243 | 				case SOCK_DGRAM:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:243:10: error: cannot find 'SOCK_DGRAM' in scope
 241 | 				case SOCK_STREAM:
 242 | 					return .stream
 243 | 				case SOCK_DGRAM:
     |          `- error: cannot find 'SOCK_DGRAM' in scope
 244 | 					return .datagram
 245 | 				default:
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:597:63: error: value of type 'sockaddr_un' has no member 'sun_path'
 595 |
 596 | 			// Validate the length...
 597 | 			guard lengthOfPath < MemoryLayout.size(ofValue: remoteAddr.sun_path) else {
     |                                                               `- error: value of type 'sockaddr_un' has no member 'sun_path'
 598 |
 599 | 				throw Error(code: Socket.SOCKET_ERR_BAD_SIGNATURE_PARAMETERS, reason: "Pathname supplied is too long.")
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:603:49: error: value of type 'sockaddr_un' has no member 'sun_path'
 601 |
 602 | 			// Copy the path to the remote address...
 603 | 			_ = withUnsafeMutablePointer(to: &remoteAddr.sun_path.0) { ptr in
     |                                                 `- error: value of type 'sockaddr_un' has no member 'sun_path'
 604 |
 605 | 				path.withCString {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:611:19: error: value of type 'sockaddr_un' has no member 'sun_len'
 609 |
 610 | 			#if !os(Linux)
 611 | 			    remoteAddr.sun_len = UInt8(MemoryLayout<UInt8>.size + MemoryLayout<sa_family_t>.size + path.utf8.count + 1)
     |                   `- error: value of type 'sockaddr_un' has no member 'sun_len'
 612 | 			#endif
 613 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1175:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1173 | 			// First get seconds...
1174 | 			let secs = Int(Double(timeout / 1000))
1175 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1176 |
1177 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1187:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1185 | 				timer.tv_usec = Int(uSecs)
1186 | 			#else
1187 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1188 | 			#endif
1189 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1238:34: error: cannot find type 'addrinfo' in scope
1236 | 	public class func createAddress(for host: String, on port: Int32) -> Address? {
1237 |
1238 | 		var info: UnsafeMutablePointer<addrinfo>?
     |                                  `- error: cannot find type 'addrinfo' in scope
1239 |
1240 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1241:23: error: cannot find 'getaddrinfo' in scope
1239 |
1240 | 		// Retrieve the info on our target...
1241 | 		let status: Int32 = getaddrinfo(host, String(port), nil, &info)
     |                       `- error: cannot find 'getaddrinfo' in scope
1242 | 		if status != 0 {
1243 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1241:55: error: 'nil' requires a contextual type
1239 |
1240 | 		// Retrieve the info on our target...
1241 | 		let status: Int32 = getaddrinfo(host, String(port), nil, &info)
     |                                                       `- error: 'nil' requires a contextual type
1242 | 		if status != 0 {
1243 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1251:5: error: cannot find 'freeaddrinfo' in scope
1249 |
1250 | 			if info != nil {
1251 | 				freeaddrinfo(info)
     |     `- error: cannot find 'freeaddrinfo' in scope
1252 | 			}
1253 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1309:20: error: cannot find 'Darwin' in scope
1307 | 			self.socketfd = Glibc.socket(family.value, type.value, sockProto.value)
1308 | 		#else
1309 | 			self.socketfd = Darwin.socket(family.value, type.value, sockProto.value)
     |                    `- error: cannot find 'Darwin' in scope
1310 | 		#endif
1311 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1354:15: error: cannot find 'SOCK_STREAM' in scope
1352 | 			let type = Int32(SOCK_STREAM.rawValue)
1353 | 		#else
1354 | 			let type = SOCK_STREAM
     |               `- error: cannot find 'SOCK_STREAM' in scope
1355 | 		#endif
1356 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1444:16: error: cannot find 'Darwin' in scope
1442 | 						let fd = Glibc.accept(self.socketfd, addressPointer, addressLengthPointer)
1443 | 					#else
1444 | 						let fd = Darwin.accept(self.socketfd, addressPointer, addressLengthPointer)
     |                `- error: cannot find 'Darwin' in scope
1445 | 					#endif
1446 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1557:16: error: cannot find 'Darwin' in scope
1555 | 						let fd = Glibc.accept(self.socketfd, addressPointer, addressLengthPointer)
1556 | 					#else
1557 | 						let fd = Darwin.accept(self.socketfd, addressPointer, addressLengthPointer)
     |                `- error: cannot find 'Darwin' in scope
1558 | 					#endif
1559 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1706:16: error: cannot find 'addrinfo' in scope
1704 | 				ai_next: nil)
1705 | 		#else
1706 | 			var hints = addrinfo(
     |                `- error: cannot find 'addrinfo' in scope
1707 | 				ai_flags: AI_PASSIVE,
1708 | 				ai_family: familyOnly ? signature?.protocolFamily.value ?? AF_UNSPEC : AF_UNSPEC,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1707:15: error: cannot find 'AI_PASSIVE' in scope
1705 | 		#else
1706 | 			var hints = addrinfo(
1707 | 				ai_flags: AI_PASSIVE,
     |               `- error: cannot find 'AI_PASSIVE' in scope
1708 | 				ai_family: familyOnly ? signature?.protocolFamily.value ?? AF_UNSPEC : AF_UNSPEC,
1709 | 				ai_socktype: socketType.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1712:19: error: 'nil' requires a contextual type
1710 | 				ai_protocol: 0,
1711 | 				ai_addrlen: 0,
1712 | 				ai_canonname: nil,
     |                   `- error: 'nil' requires a contextual type
1713 | 				ai_addr: nil,
1714 | 				ai_next: nil)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1713:14: error: 'nil' requires a contextual type
1711 | 				ai_addrlen: 0,
1712 | 				ai_canonname: nil,
1713 | 				ai_addr: nil,
     |              `- error: 'nil' requires a contextual type
1714 | 				ai_next: nil)
1715 | 		#endif
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1714:14: error: 'nil' requires a contextual type
1712 | 				ai_canonname: nil,
1713 | 				ai_addr: nil,
1714 | 				ai_next: nil)
     |              `- error: 'nil' requires a contextual type
1715 | 		#endif
1716 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1717:40: error: cannot find type 'addrinfo' in scope
1715 | 		#endif
1716 |
1717 | 		var targetInfo: UnsafeMutablePointer<addrinfo>?
     |                                        `- error: cannot find type 'addrinfo' in scope
1718 |
1719 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1720:23: error: cannot find 'getaddrinfo' in scope
1718 |
1719 | 		// Retrieve the info on our target...
1720 | 		var status: Int32 = getaddrinfo(host, String(port), &hints, &targetInfo)
     |                       `- error: cannot find 'getaddrinfo' in scope
1721 | 		if status != 0 {
1722 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1724:17: error: cannot find 'EAI_SYSTEM' in scope
1722 |
1723 | 			var errorString: String
1724 | 			if status == EAI_SYSTEM {
     |                 `- error: cannot find 'EAI_SYSTEM' in scope
1725 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
1726 | 			} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1727:42: error: cannot find 'gai_strerror' in scope
1725 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
1726 | 			} else {
1727 | 				errorString = String(validatingUTF8: gai_strerror(status)) ?? "Unknown error code."
     |                                          `- error: cannot find 'gai_strerror' in scope
1728 | 			}
1729 | 			throw Error(code: Socket.SOCKET_ERR_GETADDRINFO_FAILED, reason: errorString)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1736:5: error: cannot find 'freeaddrinfo' in scope
1734 |
1735 | 			if targetInfo != nil {
1736 | 				freeaddrinfo(targetInfo)
     |     `- error: cannot find 'freeaddrinfo' in scope
1737 | 			}
1738 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1748:10: error: cannot find 'Darwin' in scope
1746 | 					_ = Glibc.close(socketDescriptor!)
1747 | 				#else
1748 | 					_ = Darwin.close(socketDescriptor!)
     |          `- error: cannot find 'Darwin' in scope
1749 | 				#endif
1750 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1759:24: error: cannot find 'Darwin' in scope
1757 | 				socketDescriptor = Glibc.socket(info!.pointee.ai_family, info!.pointee.ai_socktype, info!.pointee.ai_protocol)
1758 | 			#else
1759 | 				socketDescriptor = Darwin.socket(info!.pointee.ai_family, info!.pointee.ai_socktype, info!.pointee.ai_protocol)
     |                        `- error: cannot find 'Darwin' in scope
1760 | 			#endif
1761 | 			if socketDescriptor == -1 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1775:60: error: cannot find 'O_NONBLOCK' in scope
1773 | 				}
1774 |
1775 | 				let result = fcntl(socketDescriptor!, F_SETFL, flags | O_NONBLOCK)
     |                                                            `- error: cannot find 'O_NONBLOCK' in scope
1776 | 				if result < 0 {
1777 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1786:14: error: cannot find 'Darwin' in scope
1784 | 				status = Glibc.connect(socketDescriptor!, info!.pointee.ai_addr, info!.pointee.ai_addrlen)
1785 | 			#else
1786 | 				status = Darwin.connect(socketDescriptor!, info!.pointee.ai_addr, info!.pointee.ai_addrlen)
     |              `- error: cannot find 'Darwin' in scope
1787 | 			#endif
1788 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1808:21: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1806 | 					// First get seconds...
1807 | 					let secs = Int(Double(timeout / 1000))
1808 | 					timer.tv_sec = secs
     |                     `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
1809 |
1810 | 					// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1820:23: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1818 | 						timer.tv_usec = Int(uSecs)
1819 | 					#else
1820 | 						timer.tv_usec = Int32(uSecs)
     |                       `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
1821 | 					#endif
1822 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1836:52: error: cannot find 'SO_ERROR' in scope
1834 | 						var result: Int = 0
1835 | 						var resultLength = socklen_t(MemoryLayout<Int>.size)
1836 | 						if getsockopt(socketDescriptor!, SOL_SOCKET, SO_ERROR, &result, &resultLength) < 0 {
     |                                                    `- error: cannot find 'SO_ERROR' in scope
1837 |
1838 | 							throw Error(code: Socket.SOCKET_ERR_GETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1860:9: error: cannot find 'Darwin' in scope
1858 | 				_ = Glibc.close(socketDescriptor!)
1859 | 			#else
1860 | 				_ = Darwin.close(socketDescriptor!)
     |         `- error: cannot find 'Darwin' in scope
1861 | 			#endif
1862 | 			socketDescriptor = nil
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1873:10: error: cannot find 'Darwin' in scope
1871 | 					_ = Glibc.close(socketDescriptor!)
1872 | 				#else
1873 | 					_ = Darwin.close(socketDescriptor!)
     |          `- error: cannot find 'Darwin' in scope
1874 | 				#endif
1875 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:1928:56: error: cannot find 'O_NONBLOCK' in scope
1926 | 			}
1927 |
1928 | 			let result = fcntl(self.socketfd, F_SETFL, flags & ~O_NONBLOCK)
     |                                                        `- error: cannot find 'O_NONBLOCK' in scope
1929 | 			if result < 0 {
1930 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2002:12: error: cannot find 'Darwin' in scope
2000 | 				return Glibc.connect(self.socketfd, p, socklen_t(addrLen))
2001 | 			#else
2002 | 				return Darwin.connect(self.socketfd, p, socklen_t(addrLen))
     |            `- error: cannot find 'Darwin' in scope
2003 | 			#endif
2004 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2056:13: error: cannot find 'Darwin' in scope
2054 | 					return Glibc.connect(self.socketfd, sockaddr, length)
2055 | 				#else
2056 | 					return Darwin.connect(self.socketfd, sockaddr, length)
     |             `- error: cannot find 'Darwin' in scope
2057 | 				#endif
2058 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2138:6: error: cannot find 'setsockopt' in scope
2136 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2137 | 		var on: Int32 = 1
2138 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
2139 |
2140 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2138:44: error: cannot find 'SO_REUSEADDR' in scope
2136 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2137 | 		var on: Int32 = 1
2138 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_REUSEADDR' in scope
2139 |
2140 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2150:7: error: cannot find 'setsockopt' in scope
2148 | 			// instances of a program to each receive UDP/IP multicast or broadcast datagrams
2149 | 			// destined for the bound port.
2150 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEPORT, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |       `- error: cannot find 'setsockopt' in scope
2151 |
2152 | 				// Setting of this option on WSL (Windows Subsytem for Linux) is not supported.  Check for
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2150:45: error: cannot find 'SO_REUSEPORT' in scope
2148 | 			// instances of a program to each receive UDP/IP multicast or broadcast datagrams
2149 | 			// destined for the bound port.
2150 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEPORT, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                             `- error: cannot find 'SO_REUSEPORT' in scope
2151 |
2152 | 				// Setting of this option on WSL (Windows Subsytem for Linux) is not supported.  Check for
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2168:16: error: cannot find 'setsockopt' in scope
2166 |         // Configure ipv6 socket so that it can share ports with ipv4 on the same port.
2167 |         if sig.protocolFamily == .inet6 && sig.proto == .tcp {
2168 |             if setsockopt(self.socketfd, Int32(IPPROTO_IPV6), IPV6_V6ONLY, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                `- error: cannot find 'setsockopt' in scope
2169 |
2170 |                 throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2205:16: error: cannot find 'addrinfo' in scope
2203 | 				ai_next: nil)
2204 | 		#else
2205 | 			var hints = addrinfo(
     |                `- error: cannot find 'addrinfo' in scope
2206 | 				ai_flags: AI_PASSIVE,
2207 | 				ai_family: sig.protocolFamily.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2206:15: error: cannot find 'AI_PASSIVE' in scope
2204 | 		#else
2205 | 			var hints = addrinfo(
2206 | 				ai_flags: AI_PASSIVE,
     |               `- error: cannot find 'AI_PASSIVE' in scope
2207 | 				ai_family: sig.protocolFamily.value,
2208 | 				ai_socktype: sig.socketType.value,
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2211:19: error: 'nil' requires a contextual type
2209 | 				ai_protocol: 0,
2210 | 				ai_addrlen: 0,
2211 | 				ai_canonname: nil,
     |                   `- error: 'nil' requires a contextual type
2212 | 				ai_addr: nil,
2213 | 				ai_next: nil)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2212:14: error: 'nil' requires a contextual type
2210 | 				ai_addrlen: 0,
2211 | 				ai_canonname: nil,
2212 | 				ai_addr: nil,
     |              `- error: 'nil' requires a contextual type
2213 | 				ai_next: nil)
2214 | 		#endif
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2213:14: error: 'nil' requires a contextual type
2211 | 				ai_canonname: nil,
2212 | 				ai_addr: nil,
2213 | 				ai_next: nil)
     |              `- error: 'nil' requires a contextual type
2214 | 		#endif
2215 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2216:40: error: cannot find type 'addrinfo' in scope
2214 | 		#endif
2215 |
2216 | 		var targetInfo: UnsafeMutablePointer<addrinfo>?
     |                                        `- error: cannot find type 'addrinfo' in scope
2217 |
2218 | 		// Retrieve the info on our target...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2219:23: error: cannot find 'getaddrinfo' in scope
2217 |
2218 | 		// Retrieve the info on our target...
2219 | 		let status: Int32 = getaddrinfo(node ?? nil, String(port), &hints, &targetInfo)
     |                       `- error: cannot find 'getaddrinfo' in scope
2220 | 		if status != 0 {
2221 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2223:17: error: cannot find 'EAI_SYSTEM' in scope
2221 |
2222 | 			var errorString: String
2223 | 			if status == EAI_SYSTEM {
     |                 `- error: cannot find 'EAI_SYSTEM' in scope
2224 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
2225 | 			} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2226:42: error: cannot find 'gai_strerror' in scope
2224 | 				errorString = String(validatingUTF8: strerror(errno)) ?? "Unknown error code."
2225 | 			} else {
2226 | 				errorString = String(validatingUTF8: gai_strerror(errno)) ?? "Unknown error code."
     |                                          `- error: cannot find 'gai_strerror' in scope
2227 | 			}
2228 | 			throw Error(code: Socket.SOCKET_ERR_GETADDRINFO_FAILED, reason: errorString)
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2235:5: error: cannot find 'freeaddrinfo' in scope
2233 |
2234 | 			if targetInfo != nil {
2235 | 				freeaddrinfo(targetInfo)
     |     `- error: cannot find 'freeaddrinfo' in scope
2236 | 			}
2237 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2253:8: error: cannot find 'Darwin' in scope
2251 | 				}
2252 | 			#else
2253 | 				if Darwin.bind(self.socketfd, info!.pointee.ai_addr, info!.pointee.ai_addrlen) == 0 {
     |        `- error: cannot find 'Darwin' in scope
2254 |
2255 | 					// Success... We've found our address...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2277:8: error: cannot find 'getsockname' in scope
2275 | 		if port == 0 {
2276 | 			guard let addressFromSockName = try Address(addressProvider: { (sockaddr, length) in
2277 | 				if getsockname(self.socketfd, sockaddr, length) != 0 {
     |        `- error: cannot find 'getsockname' in scope
2278 | 					throw Error(code: Socket.SOCKET_ERR_BIND_FAILED, reason: "Unable to determine listening socket address after bind.")
2279 | 				}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2326:7: error: cannot find 'Darwin' in scope
2324 | 			}
2325 | 		#else
2326 | 			if Darwin.listen(self.socketfd, Int32(maxBacklogSize)) < 0 {
     |       `- error: cannot find 'Darwin' in scope
2327 |
2328 | 				throw Error(code: Socket.SOCKET_ERR_LISTEN_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2362:6: error: cannot find 'setsockopt' in scope
2360 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2361 | 		var on: Int32 = 1
2362 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
2363 |
2364 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2362:44: error: cannot find 'SO_REUSEADDR' in scope
2360 | 		// closes.  (TCP normally imposes a delay before an address can be re-used.)
2361 | 		var on: Int32 = 1
2362 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_REUSEADDR, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_REUSEADDR' in scope
2363 |
2364 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2378:8: error: cannot find 'Darwin' in scope
2376 | 			_ = Glibc.unlink(path)
2377 | 		#else
2378 | 			_ = Darwin.unlink(path)
     |        `- error: cannot find 'Darwin' in scope
2379 | 		#endif
2380 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2399:12: error: cannot find 'Darwin' in scope
2397 | 				return Glibc.bind(self.socketfd, p, socklen_t(addrLen))
2398 | 			#else
2399 | 				return Darwin.bind(self.socketfd, p, socklen_t(addrLen))
     |            `- error: cannot find 'Darwin' in scope
2400 | 			#endif
2401 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:2415:7: error: cannot find 'Darwin' in scope
2413 | 			}
2414 | 		#else
2415 | 			if Darwin.listen(self.socketfd, Int32(maxBacklogSize)) < 0 {
     |       `- error: cannot find 'Darwin' in scope
2416 |
2417 | 				throw Error(code: Socket.SOCKET_ERR_LISTEN_FAILED, reason: self.lastError())
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3020:10: error: cannot find 'Darwin' in scope
3018 | 					s = Glibc.send(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags)
3019 | 				#else
3020 | 					s = Darwin.send(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags)
     |          `- error: cannot find 'Darwin' in scope
3021 | 				#endif
3022 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3157:10: error: cannot find 'Darwin' in scope
3155 | 					s = Glibc.sendto(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags, addressPointer, addressLength)
3156 | 				#else
3157 | 					s = Darwin.sendto(self.socketfd, buffer.advanced(by: sent), Int(bufSize - sent), sendFlags, addressPointer, addressLength)
     |          `- error: cannot find 'Darwin' in scope
3158 | 				#endif
3159 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3290:20: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3288 | 				// First get seconds...
3289 | 				let secs = Int(Double(timeout / 1000))
3290 | 				timer.tv_sec = secs
     |                    `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3291 |
3292 | 				// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3302:22: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3300 | 					timer.tv_usec = Int(uSecs)
3301 | 				#else
3302 | 					timer.tv_usec = Int32(uSecs)
     |                      `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3303 | 				#endif
3304 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3336:52: error: cannot find 'O_NONBLOCK' in scope
3334 | 		if shouldBlock {
3335 |
3336 | 			result = fcntl(self.socketfd, F_SETFL, flags & ~O_NONBLOCK)
     |                                                    `- error: cannot find 'O_NONBLOCK' in scope
3337 |
3338 | 		} else {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3340:51: error: cannot find 'O_NONBLOCK' in scope
3338 | 		} else {
3339 |
3340 | 			result = fcntl(self.socketfd, F_SETFL, flags | O_NONBLOCK)
     |                                                   `- error: cannot find 'O_NONBLOCK' in scope
3341 | 		}
3342 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3367:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3365 | 			// First get seconds...
3366 | 			let secs = Int(Double(value / 1000))
3367 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3368 |
3369 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3379:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3377 | 				timer.tv_usec = Int(uSecs)
3378 | 			#else
3379 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3380 | 			#endif
3381 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3383:16: error: cannot find 'setsockopt' in scope
3381 | 		}
3382 |
3383 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_RCVTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                `- error: cannot find 'setsockopt' in scope
3384 |
3385 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3383:54: error: cannot find 'SO_RCVTIMEO' in scope
3381 | 		}
3382 |
3383 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_RCVTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                                                      `- error: cannot find 'SO_RCVTIMEO' in scope
3384 |
3385 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3407:19: error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3405 | 			// First get seconds...
3406 | 			let secs = Int(Double(value / 1000))
3407 | 			timer.tv_sec = secs
     |                   `- error: cannot assign value of type 'Int' to type 'time_t' (aka 'Int64')
3408 |
3409 | 			// Now get the leftover millisecs...
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3419:21: error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3417 | 				timer.tv_usec = Int(uSecs)
3418 | 			#else
3419 | 				timer.tv_usec = Int32(uSecs)
     |                     `- error: cannot assign value of type 'Int32' to type 'suseconds_t' (aka 'Int64')
3420 | 			#endif
3421 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3423:16: error: cannot find 'setsockopt' in scope
3421 | 		}
3422 |
3423 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_SNDTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                `- error: cannot find 'setsockopt' in scope
3424 |
3425 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3423:54: error: cannot find 'SO_SNDTIMEO' in scope
3421 | 		}
3422 |
3423 | 		let result = setsockopt(self.socketfd, SOL_SOCKET, SO_SNDTIMEO, &timer, socklen_t(MemoryLayout<timeval>.stride))
     |                                                      `- error: cannot find 'SO_SNDTIMEO' in scope
3424 |
3425 | 		if result < 0 {
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3454:6: error: cannot find 'setsockopt' in scope
3452 | 		// Turn on or off UDP broadcasting...
3453 | 		var on: Int32 = enable ? 1 : 0
3454 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_BROADCAST, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |      `- error: cannot find 'setsockopt' in scope
3455 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3456 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3454:44: error: cannot find 'SO_BROADCAST' in scope
3452 | 		// Turn on or off UDP broadcasting...
3453 | 		var on: Int32 = enable ? 1 : 0
3454 | 		if setsockopt(self.socketfd, SOL_SOCKET, SO_BROADCAST, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                            `- error: cannot find 'SO_BROADCAST' in scope
3455 | 			throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3456 | 		}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3487:10: error: cannot find 'Darwin' in scope
3485 | 			#else
3486 | 				if self.isListening {
3487 | 					_ = Darwin.shutdown(self.socketfd, Int32(SHUT_RDWR))
     |          `- error: cannot find 'Darwin' in scope
3488 | 					self.isListening = false
3489 | 				}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3487:47: error: cannot find 'SHUT_RDWR' in scope
3485 | 			#else
3486 | 				if self.isListening {
3487 | 					_ = Darwin.shutdown(self.socketfd, Int32(SHUT_RDWR))
     |                                               `- error: cannot find 'SHUT_RDWR' in scope
3488 | 					self.isListening = false
3489 | 				}
/root/.swiftpm/swift-sdks/swift-wasm-6.1-RELEASE-wasm32-unknown-wasi.artifactbundle/6.1-RELEASE-wasm32-unknown-wasi/wasm32-unknown-wasi/WASI.sdk/include/wasm32-wasi/__header_sys_socket.h:13:9: note: macro 'SHUT_RDWR' unavailable: structure not supported
11 | #define SHUT_RD __WASI_SDFLAGS_RD
12 | #define SHUT_WR __WASI_SDFLAGS_WR
13 | #define SHUT_RDWR (SHUT_RD | SHUT_WR)
   |         `- note: macro 'SHUT_RDWR' unavailable: structure not supported
14 |
15 | #ifdef __wasilibc_use_wasip2
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3491:9: error: cannot find 'Darwin' in scope
3489 | 				}
3490 | 				self.isConnected = false
3491 | 				_ = Darwin.close(self.socketfd)
     |         `- error: cannot find 'Darwin' in scope
3492 | 			#endif
3493 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3508:10: error: cannot find 'Darwin' in scope
3506 | 					_ = Glibc.unlink(self.signature!.path!)
3507 | 				#else
3508 | 					_ = Darwin.unlink(self.signature!.path!)
     |          `- error: cannot find 'Darwin' in scope
3509 | 				#endif
3510 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3532:23: error: cannot find 'MSG_DONTWAIT' in scope
3530 | 		var recvFlags: Int32 = 0
3531 | 		if self.readStorage.length > 0 {
3532 | 			recvFlags |= Int32(MSG_DONTWAIT)
     |                       `- error: cannot find 'MSG_DONTWAIT' in scope
3533 | 		}
3534 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3544:14: error: cannot find 'Darwin' in scope
3542 | 					count = Glibc.recv(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags)
3543 | 				#else
3544 | 					count = Darwin.recv(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags)
     |              `- error: cannot find 'Darwin' in scope
3545 | 				#endif
3546 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3646:23: error: cannot find 'MSG_DONTWAIT' in scope
3644 | 		var recvFlags: Int32 = 0
3645 | 		if self.readStorage.length > 0 {
3646 | 			recvFlags |= Int32(MSG_DONTWAIT)
     |                       `- error: cannot find 'MSG_DONTWAIT' in scope
3647 | 		}
3648 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3656:18: error: cannot find 'Darwin' in scope
3654 | 					let count = Glibc.recvfrom(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags, addresssPointer, addressLengthPointer)
3655 | 				#else
3656 | 					let count = Darwin.recvfrom(self.socketfd, self.readBuffer, self.readBufferSize, recvFlags, addresssPointer, addressLengthPointer)
     |                  `- error: cannot find 'Darwin' in scope
3657 | 				#endif
3658 |
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3753:7: error: cannot find 'setsockopt' in scope
3751 | 			// MSG_NOSIGNAL flags passed to send.  See the write() functions below.
3752 | 			var on: Int32 = 1
3753 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_NOSIGPIPE, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |       `- error: cannot find 'setsockopt' in scope
3754 | 				throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3755 | 			}
/host/spi-builder-workspace/.build/checkouts/BlueSocket/Sources/Socket/Socket.swift:3753:45: error: cannot find 'SO_NOSIGPIPE' in scope
3751 | 			// MSG_NOSIGNAL flags passed to send.  See the write() functions below.
3752 | 			var on: Int32 = 1
3753 | 			if setsockopt(self.socketfd, SOL_SOCKET, SO_NOSIGPIPE, &on, socklen_t(MemoryLayout<Int32>.size)) < 0 {
     |                                             `- error: cannot find 'SO_NOSIGPIPE' in scope
3754 | 				throw Error(code: Socket.SOCKET_ERR_SETSOCKOPT_FAILED, reason: self.lastError())
3755 | 			}
BUILD FAILURE 6.1 wasm