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 tui-fuzzy-finder, reference main (389e78), with Swift 6.1 for Android on 30 May 2025 04:40:53 UTC.

Build Command

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

Build Log

========================================
RunAll
========================================
Builder version: 4.63.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/juri/tui-fuzzy-finder.git
Reference: main
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/juri/tui-fuzzy-finder
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 389e789 Use release 2.6.3 of swift-service-lifecycle
Cloned https://github.com/juri/tui-fuzzy-finder.git
Revision (git rev-parse @):
389e789ffaf6ef1e68091b4fe886cf94ee819587
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/juri/tui-fuzzy-finder.git at main
========================================
Build
========================================
Selected platform:         android
Swift version:             6.1
Building package at path:  $PWD
https://github.com/juri/tui-fuzzy-finder.git
https://github.com/juri/tui-fuzzy-finder.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.5.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    },
    {
      "identity" : "swift-async-algorithms",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-async-algorithms"
    },
    {
      "identity" : "swift-service-lifecycle",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "2.6.3",
            "upper_bound" : "3.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/swift-server/swift-service-lifecycle.git"
    }
  ],
  "manifest_display_name" : "tui-fuzzy-finder",
  "name" : "tui-fuzzy-finder",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "15.0"
    }
  ],
  "products" : [
    {
      "name" : "sfzf",
      "targets" : [
        "FuzzyFinderCLI"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "FuzzyTUI",
      "targets" : [
        "FuzzyTUI"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "FuzzyTUITests",
      "module_type" : "SwiftTarget",
      "name" : "FuzzyTUITests",
      "path" : "Tests/FuzzyTUITests",
      "sources" : [
        "MatchTests.swift",
        "ScoringMatchTests.swift"
      ],
      "target_dependencies" : [
        "FuzzyTUI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "FuzzyTUI",
      "module_type" : "SwiftTarget",
      "name" : "FuzzyTUI",
      "path" : "Sources/FuzzyTUI",
      "product_dependencies" : [
        "AsyncAlgorithms",
        "UnixSignals"
      ],
      "product_memberships" : [
        "sfzf",
        "FuzzyTUI"
      ],
      "sources" : [
        "ANSIControlCode.swift",
        "Appearance.swift",
        "AsyncArray.swift",
        "FuzzySelector.swift",
        "KeyReader.swift",
        "TTY.swift",
        "TerminalKey.swift",
        "TerminalSize.swift",
        "ViewState.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "FuzzyFinderCLI",
      "module_type" : "SwiftTarget",
      "name" : "FuzzyFinderCLI",
      "path" : "Sources/FuzzyFinderCLI",
      "product_dependencies" : [
        "ArgumentParser"
      ],
      "product_memberships" : [
        "sfzf"
      ],
      "sources" : [
        "CLI.swift",
        "DirectoryLister.swift"
      ],
      "target_dependencies" : [
        "FuzzyTUI"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "6.0"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/swift-server/swift-service-lifecycle.git
Fetching https://github.com/apple/swift-async-algorithms
[1/2426] Fetching swift-service-lifecycle
[729/7411] Fetching swift-service-lifecycle, swift-async-algorithms
Fetched https://github.com/swift-server/swift-service-lifecycle.git from cache (0.39s)
[1/15386] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-async-algorithms from cache (1.04s)
Fetched https://github.com/apple/swift-argument-parser from cache (1.05s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.5.1 (1.78s)
Computing version for https://github.com/swift-server/swift-service-lifecycle.git
Computed https://github.com/swift-server/swift-service-lifecycle.git at 2.8.0 (1.46s)
Fetching https://github.com/apple/swift-log.git
[1/3836] Fetching swift-log
Fetched https://github.com/apple/swift-log.git from cache (0.60s)
Computing version for https://github.com/apple/swift-async-algorithms
Computed https://github.com/apple/swift-async-algorithms at 1.0.4 (1.62s)
Fetching https://github.com/apple/swift-collections.git
[1/16591] Fetching swift-collections
Fetched https://github.com/apple/swift-collections.git from cache (1.52s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.2.0 (2.33s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.6.3 (0.62s)
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.2.0
Creating working copy for https://github.com/swift-server/swift-service-lifecycle.git
Working copy of https://github.com/swift-server/swift-service-lifecycle.git resolved at 2.8.0
Creating working copy for https://github.com/apple/swift-async-algorithms
Working copy of https://github.com/apple/swift-async-algorithms resolved at 1.0.4
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.5.1
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.6.3
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/24] Write sources
[11/24] Write swift-version-24593BA9C3E375BF.txt
[13/43] Compiling ConcurrencyHelpers LockedValueBox.swift
[14/43] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[15/43] Compiling InternalCollectionsUtilities Descriptions.swift
[16/43] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[17/44] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[18/44] Compiling InternalCollectionsUtilities Debugging.swift
[19/44] Compiling InternalCollectionsUtilities _UnsafeBitSet.swift
[20/44] Compiling InternalCollectionsUtilities _SortedCollection.swift
[21/44] Compiling InternalCollectionsUtilities UInt+first and last set bit.swift
[22/44] Compiling InternalCollectionsUtilities UInt+reversed.swift
[23/44] Compiling InternalCollectionsUtilities FixedWidthInteger+roundUpToPowerOfTwo.swift
[24/44] Compiling InternalCollectionsUtilities Integer rank.swift
[25/44] Emitting module InternalCollectionsUtilities
[26/44] Compiling InternalCollectionsUtilities _UnsafeBitSet+Index.swift
[27/44] Compiling InternalCollectionsUtilities _UnsafeBitSet+_Word.swift
[28/44] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[29/45] Emitting module ArgumentParserToolInfo
[30/45] Compiling ArgumentParserToolInfo ToolInfo.swift
[32/46] Wrapping AST for InternalCollectionsUtilities for debugging
[33/46] Wrapping AST for ArgumentParserToolInfo for debugging
[35/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtract.swift
[36/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtracting.swift
[37/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra symmetricDifference.swift
[38/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra union.swift
[39/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra+Basics.swift
[40/154] Compiling OrderedCollections OrderedSet+RandomAccessCollection.swift
[41/154] Compiling OrderedCollections OrderedSet+ReserveCapacity.swift
[42/161] Compiling ArgumentParser NameSpecification.swift
[43/161] Compiling ArgumentParser Option.swift
[44/161] Compiling ArgumentParser FishCompletionsGenerator.swift
[45/161] Compiling ArgumentParser ZshCompletionsGenerator.swift
[46/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra intersection.swift
[47/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isDisjoint.swift
[48/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isEqualSet.swift
[49/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSubset.swift
[50/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSuperset.swift
[51/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSubset.swift
[52/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSuperset.swift
[53/163] Compiling DequeModule _DequeSlot.swift
[54/163] Compiling DequeModule _UnsafeWrappedBuffer.swift
[55/163] Compiling OrderedCollections OrderedSet+Initializers.swift
[56/163] Compiling OrderedCollections OrderedSet+Insertions.swift
[57/163] Compiling OrderedCollections OrderedSet+Invariants.swift
[58/163] Compiling OrderedCollections OrderedSet+Partial MutableCollection.swift
[59/163] Compiling OrderedCollections OrderedSet+Partial RangeReplaceableCollection.swift
[60/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formIntersection.swift
[61/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formSymmetricDifference.swift
[62/163] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formUnion.swift
[63/163] Compiling ArgumentParser ArgumentVisibility.swift
[64/163] Compiling ArgumentParser CompletionKind.swift
[65/163] Compiling ArgumentParser Errors.swift
[66/163] Compiling ArgumentParser Flag.swift
[67/163] Compiling DequeModule Deque+Testing.swift
[68/163] Compiling DequeModule Deque._Storage.swift
[69/163] Compiling ArgumentParser Argument.swift
[70/163] Compiling ArgumentParser ArgumentHelp.swift
[71/163] Compiling ArgumentParser EnumerableFlag.swift
[72/163] Compiling ArgumentParser ArgumentDefinition.swift
[73/163] Compiling ArgumentParser ArgumentSet.swift
[74/163] Compiling ArgumentParser CommandParser.swift
[75/163] Compiling OrderedCollections OrderedSet+Diffing.swift
[76/163] Compiling OrderedCollections OrderedSet+Equatable.swift
[77/163] Compiling OrderedCollections OrderedSet+ExpressibleByArrayLiteral.swift
[78/163] Compiling OrderedCollections OrderedSet+Hashable.swift
[79/163] Compiling OrderedCollections OrderedDictionary+Hashable.swift
[80/163] Compiling OrderedCollections OrderedDictionary+Initializers.swift
[81/163] Compiling OrderedCollections OrderedDictionary+Invariants.swift
[82/163] Compiling OrderedCollections OrderedDictionary+Partial MutableCollection.swift
[83/163] Compiling OrderedCollections OrderedDictionary+Partial RangeReplaceableCollection.swift
[84/163] Compiling OrderedCollections OrderedDictionary+Sendable.swift
[85/163] Compiling OrderedCollections OrderedDictionary+Sequence.swift
[86/163] Compiling OrderedCollections OrderedDictionary+Values.swift
[87/163] Emitting module DequeModule
[88/163] Compiling ArgumentParser BashCompletionsGenerator.swift
[89/163] Compiling ArgumentParser CompletionsGenerator.swift
[98/164] Compiling OrderedCollections OrderedSet+Sendable.swift
[99/164] Compiling OrderedCollections OrderedSet+SubSequence.swift
[100/164] Compiling OrderedCollections OrderedSet+Testing.swift
[101/164] Compiling OrderedCollections OrderedSet+UnorderedView.swift
[102/164] Compiling OrderedCollections OrderedSet+UnstableInternals.swift
[103/164] Compiling OrderedCollections OrderedSet.swift
[104/164] Compiling OrderedCollections _UnsafeBitset.swift
[105/164] Wrapping AST for DequeModule for debugging
[107/164] Emitting module ConcurrencyHelpers
[108/164] Compiling ConcurrencyHelpers Lock.swift
[117/165] Wrapping AST for ConcurrencyHelpers for debugging
[119/168] Emitting module OrderedCollections
[121/169] Emitting module UnixSignals
[122/169] Compiling UnixSignals UnixSignal.swift
[123/169] Compiling UnixSignals UnixSignalsSequence.swift
[123/170] Wrapping AST for OrderedCollections for debugging
[125/215] Wrapping AST for UnixSignals for debugging
[127/215] Compiling AsyncAlgorithms ChannelStateMachine.swift
[128/215] Compiling AsyncAlgorithms ChannelStorage.swift
[129/215] Compiling AsyncAlgorithms AsyncCombineLatest2Sequence.swift
[130/215] Compiling AsyncAlgorithms AsyncCombineLatest3Sequence.swift
[131/215] Compiling AsyncAlgorithms CombineLatestStateMachine.swift
[132/215] Compiling AsyncAlgorithms CombineLatestStorage.swift
[133/215] Emitting module ArgumentParser
[134/215] Compiling AsyncAlgorithms BoundedBufferStateMachine.swift
[135/215] Compiling AsyncAlgorithms BoundedBufferStorage.swift
[136/215] Compiling AsyncAlgorithms UnboundedBufferStateMachine.swift
[137/215] Compiling AsyncAlgorithms UnboundedBufferStorage.swift
[138/215] Compiling AsyncAlgorithms AsyncChannel.swift
[139/215] Compiling AsyncAlgorithms AsyncThrowingChannel.swift
[140/220] Compiling AsyncAlgorithms AsyncChunksOfCountSequence.swift
[141/220] Compiling AsyncAlgorithms AsyncCompactedSequence.swift
[142/220] Compiling AsyncAlgorithms AsyncExclusiveReductionsSequence.swift
[143/220] Compiling AsyncAlgorithms AsyncInclusiveReductionsSequence.swift
[144/220] Compiling AsyncAlgorithms AsyncJoinedBySeparatorSequence.swift
[145/220] Compiling AsyncAlgorithms AsyncJoinedSequence.swift
[146/220] Compiling AsyncAlgorithms AsyncRemoveDuplicatesSequence.swift
[147/220] Compiling AsyncAlgorithms AsyncSyncSequence.swift
[148/220] Compiling AsyncAlgorithms AsyncThrottleSequence.swift
[149/220] Compiling AsyncAlgorithms AsyncThrowingExclusiveReductionsSequence.swift
[150/220] Emitting module AsyncAlgorithms
[151/226] Compiling ArgumentParser CollectionExtensions.swift
[152/226] Compiling ArgumentParser Platform.swift
[153/226] Compiling ArgumentParser SequenceExtensions.swift
[154/226] Compiling ArgumentParser StringExtensions.swift
[155/226] Compiling ArgumentParser Tree.swift
[160/226] Compiling AsyncAlgorithms AsyncInterspersedSequence.swift
[161/226] Compiling AsyncAlgorithms Locking.swift
[162/226] Compiling AsyncAlgorithms AsyncMerge2Sequence.swift
[163/226] Compiling AsyncAlgorithms AsyncMerge3Sequence.swift
[164/226] Compiling AsyncAlgorithms MergeStateMachine.swift
[165/226] Compiling AsyncAlgorithms MergeStorage.swift
[166/226] Compiling AsyncAlgorithms RangeReplaceableCollection.swift
[173/226] Compiling AsyncAlgorithms AsyncChain2Sequence.swift
[174/226] Compiling AsyncAlgorithms AsyncChain3Sequence.swift
[175/226] Compiling AsyncAlgorithms AsyncChunkedByGroupSequence.swift
[176/226] Compiling AsyncAlgorithms AsyncChunkedOnProjectionSequence.swift
[177/226] Compiling AsyncAlgorithms AsyncChunksOfCountOrSignalSequence.swift
[178/226] Compiling AsyncAlgorithms AsyncThrowingInclusiveReductionsSequence.swift
[179/226] Compiling AsyncAlgorithms AsyncTimerSequence.swift
[180/226] Compiling AsyncAlgorithms AsyncBufferSequence.swift
[181/226] Compiling AsyncAlgorithms AsyncAdjacentPairsSequence.swift
[182/226] Compiling AsyncAlgorithms AsyncBufferedByteIterator.swift
[215/227] Compiling AsyncAlgorithms SetAlgebra.swift
[216/227] Compiling AsyncAlgorithms UnsafeTransfer.swift
[217/227] Compiling AsyncAlgorithms AsyncZip2Sequence.swift
[218/227] Compiling AsyncAlgorithms AsyncZip3Sequence.swift
[219/227] Compiling AsyncAlgorithms ZipStateMachine.swift
[220/227] Compiling AsyncAlgorithms ZipStorage.swift
[222/228] Wrapping AST for ArgumentParser for debugging
[223/228] Wrapping AST for AsyncAlgorithms for debugging
[225/237] Compiling FuzzyTUI TerminalSize.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:14:17: error: cannot find 'winsize' in scope
12 |     /// Return the current terminal size.
13 |     public static func current() -> Self? {
14 |         var w = winsize()
   |                 `- error: cannot find 'winsize' in scope
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:16:13: error: cannot find 'ioctl' in scope
14 |         var w = winsize()
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
   |             `- error: cannot find 'ioctl' in scope
17 |         return TerminalSize(height: Int(w.ws_row), width: Int(w.ws_col))
18 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:16:44: error: cannot find 'TIOCGWINSZ' in scope
14 |         var w = winsize()
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
   |                                            `- error: cannot find 'TIOCGWINSZ' in scope
17 |         return TerminalSize(height: Int(w.ws_row), width: Int(w.ws_col))
18 |     }
[226/237] Compiling FuzzyTUI TerminalKey.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[227/238] Emitting module FuzzyTUI
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:6:34: error: cannot find type 'termios' in scope
 4 | final class TTY {
 5 |     let fileHandle: FileHandle
 6 |     private var originalTermios: termios?
   |                                  `- error: cannot find type 'termios' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
[228/238] Compiling FuzzyTUI ViewState.swift
[229/238] Compiling FuzzyTUI AsyncArray.swift
[230/238] Compiling FuzzyTUI ANSIControlCode.swift
[231/238] Compiling FuzzyTUI Appearance.swift
[232/238] Compiling FuzzyTUI KeyReader.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/KeyReader.swift:20:37: error: cannot find 'read' in scope
18 |                 let key = { () -> TerminalKey? in
19 |                     var buffer = [UInt8](repeating: 0, count: 4)
20 |                     let bytesRead = read(self.tty.fileHandle.fileDescriptor, &buffer, 4)
   |                                     `- error: cannot find 'read' in scope
21 |                     guard bytesRead > 0 else { return nil }
22 |                     if bytesRead == 1 {
[233/238] Compiling FuzzyTUI FuzzySelector.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/FuzzySelector.swift:604:28: error: cannot find 'getpgid' in scope
602 |                 ])
603 |                 let pid = ProcessInfo.processInfo.processIdentifier
604 |                 let pgid = getpgid(pid)
    |                            `- error: cannot find 'getpgid' in scope
605 |                 let target = pgid * -1
606 |                 kill(target, SIGTSTP)
[234/238] Compiling FuzzyTUI TTY.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:6:34: error: cannot find type 'termios' in scope
 4 | final class TTY {
 5 |     let fileHandle: FileHandle
 6 |     private var originalTermios: termios?
   |                                  `- error: cannot find type 'termios' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:9:15: error: cannot find 'isatty' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
 9 |         guard isatty(fileHandle.fileDescriptor) == 1 else { return nil }
   |               `- error: cannot find 'isatty' in scope
10 |         self.fileHandle = fileHandle
11 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:14:31: error: cannot find 'termios' in scope
12 |
13 |     func setRaw() throws {
14 |         var originalTermios = termios()
   |                               `- error: cannot find 'termios' in scope
15 |
16 |         if tcgetattr(fileHandle.fileDescriptor, &originalTermios) == -1 {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:16:12: error: cannot find 'tcgetattr' in scope
14 |         var originalTermios = termios()
15 |
16 |         if tcgetattr(fileHandle.fileDescriptor, &originalTermios) == -1 {
   |            `- error: cannot find 'tcgetattr' in scope
17 |             throw Failure.getAttributes
18 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:25: error: cannot find 'tcflag_t' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                         `- error: cannot find 'tcflag_t' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:34: error: cannot find 'BRKINT' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                  `- error: cannot find 'BRKINT' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:43: error: cannot find 'ICRNL' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                           `- error: cannot find 'ICRNL' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:51: error: cannot find 'INPCK' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                   `- error: cannot find 'INPCK' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:59: error: cannot find 'ISTRIP' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                           `- error: cannot find 'ISTRIP' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:68: error: cannot find 'IXON' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                                    `- error: cannot find 'IXON' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:24:25: error: cannot find 'tcflag_t' in scope
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
   |                         `- error: cannot find 'tcflag_t' in scope
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:24:34: error: cannot find 'OPOST' in scope
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
   |                                  `- error: cannot find 'OPOST' in scope
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:25:24: error: cannot find 'tcflag_t' in scope
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
   |                        `- error: cannot find 'tcflag_t' in scope
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
27 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:25:33: error: cannot find 'CS8' in scope
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
   |                                 `- error: cannot find 'CS8' in scope
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
27 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:25: error: cannot find 'tcflag_t' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                         `- error: cannot find 'tcflag_t' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:34: error: cannot find 'ECHO' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                  `- error: cannot find 'ECHO' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:41: error: cannot find 'ICANON' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                         `- error: cannot find 'ICANON' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:50: error: cannot find 'IEXTEN' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                                  `- error: cannot find 'IEXTEN' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:59: error: cannot find 'ISIG' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                                           `- error: cannot find 'ISIG' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:38: error: cannot find 'cc_t' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                      `- error: cannot find 'cc_t' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:63: error: cannot find 'NCCS' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                                               `- error: cannot find 'NCCS' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:79: error: cannot find 'VMIN' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                                                               `- error: cannot find 'VMIN' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:32:12: error: cannot find 'tcsetattr' in scope
30 |         }
31 |
32 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &raw) < 0 {
   |            `- error: cannot find 'tcsetattr' in scope
33 |             throw Failure.setAttributes
34 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:32:54: error: cannot find 'TCSAFLUSH' in scope
30 |         }
31 |
32 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &raw) < 0 {
   |                                                      `- error: cannot find 'TCSAFLUSH' in scope
33 |             throw Failure.setAttributes
34 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:39:12: error: cannot find 'tcsetattr' in scope
37 |     func unsetRaw() throws {
38 |         guard var originalTermios = self.originalTermios else { return }
39 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &originalTermios) < 0 {
   |            `- error: cannot find 'tcsetattr' in scope
40 |             throw Failure.setAttributes
41 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:39:54: error: cannot find 'TCSAFLUSH' in scope
37 |     func unsetRaw() throws {
38 |         guard var originalTermios = self.originalTermios else { return }
39 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &originalTermios) < 0 {
   |                                                      `- error: cannot find 'TCSAFLUSH' in scope
40 |             throw Failure.setAttributes
41 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:57:15: error: cannot find 'isatty' in scope
55 |
56 |     init?(fileHandle: FileHandle) {
57 |         guard isatty(fileHandle.fileDescriptor) == 1 else { return nil }
   |               `- error: cannot find 'isatty' in scope
58 |         self.fileHandle = fileHandle
59 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:63:9: error: cannot find 'tcflush' in scope
61 |     func close() throws {
62 |         try self.fileHandle.synchronize()
63 |         tcflush(self.fileHandle.fileDescriptor, TCOFLUSH)
   |         `- error: cannot find 'tcflush' in scope
64 |         try self.fileHandle.close()
65 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:63:49: error: cannot find 'TCOFLUSH' in scope
61 |     func close() throws {
62 |         try self.fileHandle.synchronize()
63 |         tcflush(self.fileHandle.fileDescriptor, TCOFLUSH)
   |                                                 `- error: cannot find 'TCOFLUSH' in scope
64 |         try self.fileHandle.close()
65 |     }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-3":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:fe1962677657b2408c217cb5cceb3c09bc1d91486e360cebbc6eee461a5945d8
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
[0/1] Planning build
[1/1] Compiling plugin GenerateManual
Building for debugging...
[1/14] Write swift-version-24593BA9C3E375BF.txt
[3/33] Compiling ConcurrencyHelpers LockedValueBox.swift
[4/33] Compiling ConcurrencyHelpers Lock.swift
[5/33] Compiling InternalCollectionsUtilities _UniqueCollection.swift
[6/33] Compiling InternalCollectionsUtilities Debugging.swift
[7/34] Emitting module ConcurrencyHelpers
[8/35] Compiling InternalCollectionsUtilities UnsafeBufferPointer+Extras.swift
[9/35] Compiling InternalCollectionsUtilities Descriptions.swift
[10/35] Compiling InternalCollectionsUtilities RandomAccessCollection+Offsets.swift
[12/35] Emitting module InternalCollectionsUtilities
[13/35] Compiling InternalCollectionsUtilities UnsafeMutableBufferPointer+Extras.swift
[14/34] Compiling InternalCollectionsUtilities _UnsafeBitSet.swift
[15/34] Compiling InternalCollectionsUtilities _SortedCollection.swift
[16/34] Compiling InternalCollectionsUtilities UInt+first and last set bit.swift
[17/34] Compiling InternalCollectionsUtilities UInt+reversed.swift
[18/34] Compiling InternalCollectionsUtilities FixedWidthInteger+roundUpToPowerOfTwo.swift
[19/34] Compiling InternalCollectionsUtilities Integer rank.swift
[20/34] Compiling InternalCollectionsUtilities _UnsafeBitSet+Index.swift
[21/34] Compiling InternalCollectionsUtilities _UnsafeBitSet+_Word.swift
[22/35] Emitting module ArgumentParserToolInfo
[23/35] Compiling ArgumentParserToolInfo ToolInfo.swift
[26/50] Compiling UnixSignals UnixSignal.swift
[27/50] Emitting module UnixSignals
[28/50] Compiling UnixSignals UnixSignalsSequence.swift
[30/125] Compiling ArgumentParser ExpressibleByArgument.swift
[31/125] Compiling ArgumentParser ParsableArguments.swift
[32/147] Compiling ArgumentParser FishCompletionsGenerator.swift
[33/147] Compiling ArgumentParser ZshCompletionsGenerator.swift
[34/147] Compiling ArgumentParser Argument.swift
[35/147] Compiling ArgumentParser ArgumentHelp.swift
[36/147] Compiling ArgumentParser ArgumentVisibility.swift
[37/147] Compiling ArgumentParser CompletionKind.swift
[38/147] Compiling ArgumentParser BashCompletionsGenerator.swift
[39/147] Compiling ArgumentParser CompletionsGenerator.swift
[46/154] Compiling ArgumentParser Errors.swift
[47/154] Compiling ArgumentParser Flag.swift
[48/154] Compiling ArgumentParser NameSpecification.swift
[49/154] Compiling ArgumentParser Option.swift
[50/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtract.swift
[51/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra subtracting.swift
[52/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra symmetricDifference.swift
[53/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra union.swift
[54/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra+Basics.swift
[55/154] Compiling OrderedCollections OrderedSet+RandomAccessCollection.swift
[56/154] Compiling OrderedCollections OrderedSet+ReserveCapacity.swift
[57/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra intersection.swift
[58/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isDisjoint.swift
[59/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isEqualSet.swift
[60/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSubset.swift
[61/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isStrictSuperset.swift
[62/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSubset.swift
[63/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra isSuperset.swift
[64/154] Compiling DequeModule _DequeSlot.swift
[65/154] Compiling DequeModule _UnsafeWrappedBuffer.swift
[66/154] Compiling ArgumentParser DumpHelpGenerator.swift
[67/154] Compiling ArgumentParser HelpCommand.swift
[68/154] Compiling ArgumentParser HelpGenerator.swift
[69/154] Compiling ArgumentParser MessageInfo.swift
[70/154] Compiling ArgumentParser UsageGenerator.swift
[71/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formIntersection.swift
[72/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formSymmetricDifference.swift
[73/154] Compiling OrderedCollections OrderedSet+Partial SetAlgebra formUnion.swift
[74/154] Compiling ArgumentParser ArgumentDecoder.swift
[75/154] Compiling ArgumentParser ArgumentDefinition.swift
[76/154] Compiling ArgumentParser ArgumentSet.swift
[77/154] Compiling ArgumentParser CommandParser.swift
[78/154] Compiling ArgumentParser InputKey.swift
[79/154] Compiling ArgumentParser InputOrigin.swift
[80/154] Compiling ArgumentParser OptionGroup.swift
[81/154] Compiling ArgumentParser AsyncParsableCommand.swift
[82/154] Compiling ArgumentParser CommandConfiguration.swift
[83/154] Compiling ArgumentParser CommandGroup.swift
[84/154] Compiling ArgumentParser EnumerableFlag.swift
[85/154] Compiling ArgumentParser Name.swift
[86/154] Compiling ArgumentParser Parsed.swift
[87/154] Compiling ArgumentParser ParsedValues.swift
[88/154] Compiling ArgumentParser ParserError.swift
[89/154] Compiling ArgumentParser SplitArguments.swift
[92/154] Emitting module DequeModule
[94/154] Compiling OrderedCollections OrderedSet+Sendable.swift
[95/154] Compiling OrderedCollections OrderedSet+SubSequence.swift
[96/154] Compiling OrderedCollections OrderedSet+Testing.swift
[97/154] Compiling OrderedCollections OrderedSet+UnorderedView.swift
[98/154] Compiling OrderedCollections OrderedSet+UnstableInternals.swift
[99/154] Compiling OrderedCollections OrderedSet.swift
[100/154] Compiling OrderedCollections _UnsafeBitset.swift
[109/154] Emitting module OrderedCollections
[110/155] Emitting module ArgumentParser
[149/204] Compiling AsyncAlgorithms AsyncSyncSequence.swift
[150/204] Compiling AsyncAlgorithms AsyncThrottleSequence.swift
[151/204] Compiling AsyncAlgorithms AsyncThrowingExclusiveReductionsSequence.swift
[152/204] Compiling AsyncAlgorithms AsyncThrowingInclusiveReductionsSequence.swift
[153/204] Compiling AsyncAlgorithms AsyncTimerSequence.swift
[154/204] Compiling AsyncAlgorithms AsyncBufferSequence.swift
[155/204] Compiling AsyncAlgorithms CombineLatestStorage.swift
[156/204] Compiling AsyncAlgorithms AsyncMerge2Sequence.swift
[157/204] Compiling AsyncAlgorithms AsyncMerge3Sequence.swift
[158/204] Compiling AsyncAlgorithms MergeStateMachine.swift
[159/204] Compiling AsyncAlgorithms MergeStorage.swift
[164/211] Compiling AsyncAlgorithms RangeReplaceableCollection.swift
[165/211] Compiling AsyncAlgorithms Rethrow.swift
[166/211] Compiling AsyncAlgorithms AsyncChunksOfCountSequence.swift
[167/211] Compiling AsyncAlgorithms AsyncCompactedSequence.swift
[168/211] Compiling AsyncAlgorithms AsyncExclusiveReductionsSequence.swift
[169/211] Compiling AsyncAlgorithms AsyncInclusiveReductionsSequence.swift
[170/211] Compiling AsyncAlgorithms AsyncJoinedBySeparatorSequence.swift
[171/211] Compiling AsyncAlgorithms AsyncJoinedSequence.swift
[172/211] Compiling AsyncAlgorithms AsyncRemoveDuplicatesSequence.swift
[173/211] Emitting module AsyncAlgorithms
[175/211] Compiling AsyncAlgorithms AsyncAdjacentPairsSequence.swift
[176/211] Compiling AsyncAlgorithms AsyncBufferedByteIterator.swift
[177/211] Compiling AsyncAlgorithms AsyncChain2Sequence.swift
[178/211] Compiling AsyncAlgorithms AsyncChain3Sequence.swift
[179/211] Compiling AsyncAlgorithms AsyncChunkedByGroupSequence.swift
[180/211] Compiling AsyncAlgorithms AsyncChunkedOnProjectionSequence.swift
[181/211] Compiling AsyncAlgorithms AsyncChunksOfCountOrSignalSequence.swift
[182/210] Compiling AsyncAlgorithms ChannelStateMachine.swift
[183/210] Compiling AsyncAlgorithms ChannelStorage.swift
[184/210] Compiling AsyncAlgorithms AsyncCombineLatest2Sequence.swift
[185/210] Compiling AsyncAlgorithms AsyncCombineLatest3Sequence.swift
[186/210] Compiling AsyncAlgorithms CombineLatestStateMachine.swift
[188/210] Compiling AsyncAlgorithms BoundedBufferStateMachine.swift
[189/210] Compiling AsyncAlgorithms BoundedBufferStorage.swift
[190/210] Compiling AsyncAlgorithms UnboundedBufferStateMachine.swift
[191/210] Compiling AsyncAlgorithms UnboundedBufferStorage.swift
[192/210] Compiling AsyncAlgorithms AsyncChannel.swift
[193/210] Compiling AsyncAlgorithms AsyncThrowingChannel.swift
[194/210] Compiling AsyncAlgorithms AsyncDebounceSequence.swift
[195/210] Compiling AsyncAlgorithms DebounceStateMachine.swift
[196/210] Compiling AsyncAlgorithms DebounceStorage.swift
[197/210] Compiling AsyncAlgorithms Dictionary.swift
[198/210] Compiling AsyncAlgorithms AsyncInterspersedSequence.swift
[199/210] Compiling AsyncAlgorithms Locking.swift
[200/210] Compiling AsyncAlgorithms SetAlgebra.swift
[201/210] Compiling AsyncAlgorithms UnsafeTransfer.swift
[202/210] Compiling AsyncAlgorithms AsyncZip2Sequence.swift
[203/210] Compiling AsyncAlgorithms AsyncZip3Sequence.swift
[204/210] Compiling AsyncAlgorithms ZipStateMachine.swift
[205/210] Compiling AsyncAlgorithms ZipStorage.swift
[207/219] Compiling FuzzyTUI AsyncArray.swift
[208/220] Compiling FuzzyTUI TerminalSize.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:14:17: error: cannot find 'winsize' in scope
12 |     /// Return the current terminal size.
13 |     public static func current() -> Self? {
14 |         var w = winsize()
   |                 `- error: cannot find 'winsize' in scope
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:16:13: error: cannot find 'ioctl' in scope
14 |         var w = winsize()
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
   |             `- error: cannot find 'ioctl' in scope
17 |         return TerminalSize(height: Int(w.ws_row), width: Int(w.ws_col))
18 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TerminalSize.swift:16:44: error: cannot find 'TIOCGWINSZ' in scope
14 |         var w = winsize()
15 |         guard let tty = FileHandle.init(forReadingAtPath: "/dev/tty") else { return nil }
16 |         _ = ioctl(tty.fileDescriptor, UInt(TIOCGWINSZ), &w)
   |                                            `- error: cannot find 'TIOCGWINSZ' in scope
17 |         return TerminalSize(height: Int(w.ws_row), width: Int(w.ws_col))
18 |     }
[209/220] Compiling FuzzyTUI TerminalKey.swift
error: emit-module command failed with exit code 1 (use -v to see invocation)
[210/220] Compiling FuzzyTUI ANSIControlCode.swift
[211/220] Compiling FuzzyTUI Appearance.swift
[212/220] Emitting module FuzzyTUI
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:6:34: error: cannot find type 'termios' in scope
 4 | final class TTY {
 5 |     let fileHandle: FileHandle
 6 |     private var originalTermios: termios?
   |                                  `- error: cannot find type 'termios' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
[213/220] Compiling FuzzyTUI ViewState.swift
[214/220] Compiling FuzzyTUI KeyReader.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/KeyReader.swift:20:37: error: cannot find 'read' in scope
18 |                 let key = { () -> TerminalKey? in
19 |                     var buffer = [UInt8](repeating: 0, count: 4)
20 |                     let bytesRead = read(self.tty.fileHandle.fileDescriptor, &buffer, 4)
   |                                     `- error: cannot find 'read' in scope
21 |                     guard bytesRead > 0 else { return nil }
22 |                     if bytesRead == 1 {
[215/220] Compiling FuzzyTUI FuzzySelector.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/FuzzySelector.swift:604:28: error: cannot find 'getpgid' in scope
602 |                 ])
603 |                 let pid = ProcessInfo.processInfo.processIdentifier
604 |                 let pgid = getpgid(pid)
    |                            `- error: cannot find 'getpgid' in scope
605 |                 let target = pgid * -1
606 |                 kill(target, SIGTSTP)
[216/220] Compiling FuzzyTUI TTY.swift
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:6:34: error: cannot find type 'termios' in scope
 4 | final class TTY {
 5 |     let fileHandle: FileHandle
 6 |     private var originalTermios: termios?
   |                                  `- error: cannot find type 'termios' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:9:15: error: cannot find 'isatty' in scope
 7 |
 8 |     init?(fileHandle: FileHandle) {
 9 |         guard isatty(fileHandle.fileDescriptor) == 1 else { return nil }
   |               `- error: cannot find 'isatty' in scope
10 |         self.fileHandle = fileHandle
11 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:14:31: error: cannot find 'termios' in scope
12 |
13 |     func setRaw() throws {
14 |         var originalTermios = termios()
   |                               `- error: cannot find 'termios' in scope
15 |
16 |         if tcgetattr(fileHandle.fileDescriptor, &originalTermios) == -1 {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:16:12: error: cannot find 'tcgetattr' in scope
14 |         var originalTermios = termios()
15 |
16 |         if tcgetattr(fileHandle.fileDescriptor, &originalTermios) == -1 {
   |            `- error: cannot find 'tcgetattr' in scope
17 |             throw Failure.getAttributes
18 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:25: error: cannot find 'tcflag_t' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                         `- error: cannot find 'tcflag_t' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:34: error: cannot find 'BRKINT' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                  `- error: cannot find 'BRKINT' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:43: error: cannot find 'ICRNL' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                           `- error: cannot find 'ICRNL' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:51: error: cannot find 'INPCK' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                   `- error: cannot find 'INPCK' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:59: error: cannot find 'ISTRIP' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                           `- error: cannot find 'ISTRIP' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:23:68: error: cannot find 'IXON' in scope
21 |         var raw = originalTermios
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
   |                                                                    `- error: cannot find 'IXON' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:24:25: error: cannot find 'tcflag_t' in scope
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
   |                         `- error: cannot find 'tcflag_t' in scope
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:24:34: error: cannot find 'OPOST' in scope
22 |
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
   |                                  `- error: cannot find 'OPOST' in scope
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:25:24: error: cannot find 'tcflag_t' in scope
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
   |                        `- error: cannot find 'tcflag_t' in scope
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
27 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:25:33: error: cannot find 'CS8' in scope
23 |         raw.c_iflag &= ~tcflag_t(BRKINT | ICRNL | INPCK | ISTRIP | IXON)
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
   |                                 `- error: cannot find 'CS8' in scope
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
27 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:25: error: cannot find 'tcflag_t' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                         `- error: cannot find 'tcflag_t' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:34: error: cannot find 'ECHO' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                  `- error: cannot find 'ECHO' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:41: error: cannot find 'ICANON' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                         `- error: cannot find 'ICANON' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:50: error: cannot find 'IEXTEN' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                                  `- error: cannot find 'IEXTEN' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:26:59: error: cannot find 'ISIG' in scope
24 |         raw.c_oflag &= ~tcflag_t(OPOST)
25 |         raw.c_cflag |= tcflag_t(CS8)
26 |         raw.c_lflag &= ~tcflag_t(ECHO | ICANON | IEXTEN | ISIG)
   |                                                           `- error: cannot find 'ISIG' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:38: error: cannot find 'cc_t' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                      `- error: cannot find 'cc_t' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:63: error: cannot find 'NCCS' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                                               `- error: cannot find 'NCCS' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:29:79: error: cannot find 'VMIN' in scope
27 |
28 |         withUnsafeMutablePointer(to: &raw.c_cc) {
29 |             $0.withMemoryRebound(to: cc_t.self, capacity: Int(NCCS)) { $0[Int(VMIN)] = 1 }
   |                                                                               `- error: cannot find 'VMIN' in scope
30 |         }
31 |
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:32:12: error: cannot find 'tcsetattr' in scope
30 |         }
31 |
32 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &raw) < 0 {
   |            `- error: cannot find 'tcsetattr' in scope
33 |             throw Failure.setAttributes
34 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:32:54: error: cannot find 'TCSAFLUSH' in scope
30 |         }
31 |
32 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &raw) < 0 {
   |                                                      `- error: cannot find 'TCSAFLUSH' in scope
33 |             throw Failure.setAttributes
34 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:39:12: error: cannot find 'tcsetattr' in scope
37 |     func unsetRaw() throws {
38 |         guard var originalTermios = self.originalTermios else { return }
39 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &originalTermios) < 0 {
   |            `- error: cannot find 'tcsetattr' in scope
40 |             throw Failure.setAttributes
41 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:39:54: error: cannot find 'TCSAFLUSH' in scope
37 |     func unsetRaw() throws {
38 |         guard var originalTermios = self.originalTermios else { return }
39 |         if tcsetattr(self.fileHandle.fileDescriptor, TCSAFLUSH, &originalTermios) < 0 {
   |                                                      `- error: cannot find 'TCSAFLUSH' in scope
40 |             throw Failure.setAttributes
41 |         }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:57:15: error: cannot find 'isatty' in scope
55 |
56 |     init?(fileHandle: FileHandle) {
57 |         guard isatty(fileHandle.fileDescriptor) == 1 else { return nil }
   |               `- error: cannot find 'isatty' in scope
58 |         self.fileHandle = fileHandle
59 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:63:9: error: cannot find 'tcflush' in scope
61 |     func close() throws {
62 |         try self.fileHandle.synchronize()
63 |         tcflush(self.fileHandle.fileDescriptor, TCOFLUSH)
   |         `- error: cannot find 'tcflush' in scope
64 |         try self.fileHandle.close()
65 |     }
/host/spi-builder-workspace/Sources/FuzzyTUI/TTY.swift:63:49: error: cannot find 'TCOFLUSH' in scope
61 |     func close() throws {
62 |         try self.fileHandle.synchronize()
63 |         tcflush(self.fileHandle.fileDescriptor, TCOFLUSH)
   |                                                 `- error: cannot find 'TCOFLUSH' in scope
64 |         try self.fileHandle.close()
65 |     }
BUILD FAILURE 6.1 android