Build Information
Failed to build StreamDeckKit, reference 1.3.0 (23c377), with Swift 6.1 for Android on 10 Mar 2026 19:30:08 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/elgatosf/streamdeck-kit-ipad.git
Reference: 1.3.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/elgatosf/streamdeck-kit-ipad
* tag 1.3.0 -> FETCH_HEAD
HEAD is now at 23c3770 Add Stream Deck + XL support
Cloned https://github.com/elgatosf/streamdeck-kit-ipad.git
Revision (git rev-parse @):
23c3770bd51aa016a681d88d108cb0ab712171d5
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/elgatosf/streamdeck-kit-ipad.git at 1.3.0
========================================
Build
========================================
Selected platform: android
Swift version: 6.1
Building package at path: $PWD
https://github.com/elgatosf/streamdeck-kit-ipad.git
https://github.com/elgatosf/streamdeck-kit-ipad.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
"dependencies" : [
{
"identity" : "swift-snapshot-testing",
"requirement" : {
"range" : [
{
"lower_bound" : "1.12.0",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/pointfreeco/swift-snapshot-testing"
}
],
"manifest_display_name" : "StreamDeckKit",
"name" : "StreamDeckKit",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "ios",
"version" : "16.0"
}
],
"products" : [
{
"name" : "StreamDeckKit",
"targets" : [
"StreamDeckKit"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "StreamDeckSimulator",
"targets" : [
"StreamDeckSimulator"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "StreamDeckSimulator",
"module_type" : "SwiftTarget",
"name" : "StreamDeckSimulator",
"path" : "Sources/StreamDeckSimulator",
"product_memberships" : [
"StreamDeckSimulator"
],
"resources" : [
{
"path" : "/host/spi-builder-workspace/Sources/StreamDeckSimulator/Resources/SimulatorAssets.xcassets",
"rule" : {
"process" : {
}
}
}
],
"sources" : [
"Extensions/Bundle+ResourceBundle.swift",
"Extensions/DeviceInfo+Simulator.swift",
"Extensions/StreamDeck+Simulator.swift",
"Extensions/StreamDeckProduct+Simulator.swift",
"StreamDeckSimulator.swift",
"StreamDeckSimulatorClient.swift",
"Views/Dial.swift",
"Views/SimulatorContainer.swift",
"Views/SimulatorDialTouchView.swift",
"Views/SimulatorDialView.swift",
"Views/SimulatorKeyView.swift",
"Views/SimulatorNeoPanelView.swift",
"Views/StreamDeckPedalSimulatorView.swift",
"Views/StreamDeckSimulator.PreviewView.swift",
"Views/StreamDeckSimulatorView.swift"
],
"target_dependencies" : [
"StreamDeckKit"
],
"type" : "library"
},
{
"c99name" : "StreamDeckSDKTests",
"module_type" : "SwiftTarget",
"name" : "StreamDeckSDKTests",
"path" : "Tests/StreamDeckSDKTests",
"product_dependencies" : [
"SnapshotTesting"
],
"sources" : [
"Helper/StreamDeckClientMock.swift",
"Helper/StreamDeckRobot.swift",
"Helper/TestViews.swift",
"Helper/WaitFor.swift",
"StreamDeckLayoutTests.swift",
"StreamDeckTests.swift",
"VersionsTests.swift"
],
"target_dependencies" : [
"StreamDeckKit",
"StreamDeckSimulator"
],
"type" : "test"
},
{
"c99name" : "StreamDeckKit",
"module_type" : "SwiftTarget",
"name" : "StreamDeckKit",
"path" : "Sources/StreamDeckKit",
"product_memberships" : [
"StreamDeckKit",
"StreamDeckSimulator"
],
"sources" : [
"Device/AsyncQueue.swift",
"Device/DeviceCapabilities+Rect.swift",
"Device/DeviceCapabilities.swift",
"Device/DeviceInfo.swift",
"Device/ImageFormat.swift",
"Device/InputEvent.swift",
"Device/StreamDeck+ImageTransformation.swift",
"Device/StreamDeck+OperationQueue.swift",
"Device/StreamDeck.swift",
"Device/StreamDeckClient.swift",
"Device/StreamDeckClientProtocol.swift",
"Device/StreamDeckProduct.swift",
"Device/StreamDeckProductId.swift",
"Extensions/String+IOReturn.swift",
"Extensions/UIImage+Color.swift",
"Layout/DirtyMarker.swift",
"Layout/Environment+Ext.swift",
"Layout/StreamDeckClientDummy.swift",
"Layout/StreamDeckDialAreaLayout.swift",
"Layout/StreamDeckDialView.swift",
"Layout/StreamDeckKeyAreaLayout.swift",
"Layout/StreamDeckKeyView.swift",
"Layout/StreamDeckLayout.swift",
"Layout/StreamDeckLayoutRenderer.swift",
"Layout/StreamDeckNeoPanelLayout.swift",
"Layout/StreamDeckViewContext.swift",
"Logging.swift",
"Session/InternalStreamDeckSession.swift",
"Session/StreamDeckSession.State+CustomDebugStringConvertible.swift",
"Session/StreamDeckSession.swift",
"Version.swift"
],
"target_dependencies" : [
"StreamDeckCApi"
],
"type" : "library"
},
{
"c99name" : "StreamDeckCApi",
"module_type" : "ClangTarget",
"name" : "StreamDeckCApi",
"path" : "Sources/StreamDeckCApi",
"product_memberships" : [
"StreamDeckKit",
"StreamDeckSimulator"
],
"sources" : [
"StreamDeckCApi.c"
],
"type" : "library"
}
],
"tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.1-latest swift build --swift-sdk aarch64-unknown-linux-android24 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
android-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:08fa5f1bd27c53c71ebe7c2842e29d52715d90da2c5b8f52513c9039c232613d
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
Fetching https://github.com/pointfreeco/swift-snapshot-testing
[1/15780] Fetching swift-snapshot-testing
Fetched https://github.com/pointfreeco/swift-snapshot-testing from cache (3.51s)
Computing version for https://github.com/pointfreeco/swift-snapshot-testing
Computed https://github.com/pointfreeco/swift-snapshot-testing at 1.18.9 (5.32s)
Fetching https://github.com/pointfreeco/swift-custom-dump
Fetching https://github.com/swiftlang/swift-syntax
[1/5370] Fetching swift-custom-dump
[5371/80022] Fetching swift-custom-dump, swift-syntax
Fetched https://github.com/pointfreeco/swift-custom-dump from cache (6.11s)
Fetched https://github.com/swiftlang/swift-syntax from cache (6.18s)
Computing version for https://github.com/pointfreeco/swift-custom-dump
Computed https://github.com/pointfreeco/swift-custom-dump at 1.5.0 (6.91s)
Fetching https://github.com/pointfreeco/xctest-dynamic-overlay
[58/5718] Fetching xctest-dynamic-overlay
Fetched https://github.com/pointfreeco/xctest-dynamic-overlay from cache (1.02s)
Computing version for https://github.com/swiftlang/swift-syntax
Computed https://github.com/swiftlang/swift-syntax at 602.0.0 (4.86s)
Computing version for https://github.com/pointfreeco/xctest-dynamic-overlay
Computed https://github.com/pointfreeco/xctest-dynamic-overlay at 1.9.0 (1.03s)
Creating working copy for https://github.com/pointfreeco/swift-snapshot-testing
Working copy of https://github.com/pointfreeco/swift-snapshot-testing resolved at 1.18.9
Creating working copy for https://github.com/pointfreeco/swift-custom-dump
Working copy of https://github.com/pointfreeco/swift-custom-dump resolved at 1.5.0
Creating working copy for https://github.com/swiftlang/swift-syntax
Working copy of https://github.com/swiftlang/swift-syntax resolved at 602.0.0
Creating working copy for https://github.com/pointfreeco/xctest-dynamic-overlay
Working copy of https://github.com/pointfreeco/xctest-dynamic-overlay resolved at 1.9.0
Building for debugging...
[0/5] Write sources
[2/5] Copying SimulatorAssets.xcassets
In file included from /host/spi-builder-workspace/Sources/StreamDeckCApi/StreamDeckCApi.c:29:
/host/spi-builder-workspace/Sources/StreamDeckCApi/include/StreamDeckCApi.h:31:10: fatal error: 'IOKit/IOKitLib.h' file not found
31 | #include <IOKit/IOKitLib.h>
| ^~~~~~~~~~~~~~~~~~
1 error generated.
[3/5] Compiling StreamDeckCApi StreamDeckCApi.c
[3/5] Write swift-version-24593BA9C3E375BF.txt
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" 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:08fa5f1bd27c53c71ebe7c2842e29d52715d90da2c5b8f52513c9039c232613d
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.1-latest
warning: 'spi-builder-workspace': found 39 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_keys.left_touched.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_set_key_image_should_set_scaled_image_on_key.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.2.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_render_initial_frame.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_key_down_up.key_down.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_image_rotation.top_green_bottom_red.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_set_window_image_should_set_scaled_window_image.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.5.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_keys.right_touched.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_keys.left_released.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_key_on_device_without_hardware_support.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_touch_area.dial_right.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_touch_area.dial_left.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.4.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_touch_area.encoder_up.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_keys.right_released.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.6.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_touch_area.encoder_down.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_window_image_with_rect_should_fill_specified_area.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_dial_section.section_0.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_dial_section.section_3.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_dial_view.dial_right.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_dial_view.dial_left.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_dial_section.section_1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_keys.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_key_down_up.key_up.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_fling_on_touch_area.fling_left.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_fill_screen_on_device_without_hardware_support.3.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckTests/test_set_screen_image_should_set_scaled_fullscreen_image.1.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_fling_on_touch_area.fling_down.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_fling_on_touch_area.fling_up.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_area.30_20.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_fling_on_touch_area.fling_right.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_dial_view.encoder_down.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_dial_rotate_and_click_on_dial_view.encoder_up.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_touch_area.80_10.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_key_down_up.fullscreen.png
/host/spi-builder-workspace/Tests/StreamDeckSDKTests/__Snapshots__/StreamDeckLayoutTests/test_touch_on_dial_section.section_2.png
[0/1] Planning build
Building for debugging...
In file included from /host/spi-builder-workspace/Sources/StreamDeckCApi/StreamDeckCApi.c:29:
/host/spi-builder-workspace/Sources/StreamDeckCApi/include/StreamDeckCApi.h:31:10: fatal error: 'IOKit/IOKitLib.h' file not found
31 | #include <IOKit/IOKitLib.h>
| ^~~~~~~~~~~~~~~~~~
1 error generated.
[0/2] Compiling StreamDeckCApi StreamDeckCApi.c
[0/2] Write swift-version-24593BA9C3E375BF.txt
BUILD FAILURE 6.1 android