Build Information
Failed to build swift-java, reference main (3d9433
), with Swift 6.2 (beta) for Android on 10 Sep 2025 04:34:04 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/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.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.67.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/swiftlang/swift-java.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/swiftlang/swift-java
* branch main -> FETCH_HEAD
* [new branch] main -> origin/main
HEAD is now at 3d9433f [SwiftJava] Fix Android build by making JNINativeInterface_ public (#387)
Cloned https://github.com/swiftlang/swift-java.git
Revision (git rev-parse @):
3d9433f95f6323b2707590b29474f12247ae842c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/swiftlang/swift-java.git at main
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/swiftlang/swift-java.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-3":/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.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:b7c4a6b4153ff40ef9277e2157e708f835b8eb011095d53bd8db4594eb2b7798
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.2-latest
warning: 'spi-builder-workspace': JAVA_HOME = /root/.sdkman/candidates/java/current
Fetching https://github.com/swiftlang/swift-syntax
Fetching https://github.com/apple/swift-argument-parser
Fetching https://github.com/ordo-one/package-benchmark
Fetching https://github.com/apple/swift-system
[1/15914] Fetching swift-argument-parser
[638/22346] Fetching swift-argument-parser, package-benchmark
[6878/27283] Fetching swift-argument-parser, package-benchmark, swift-system
[20760/99194] Fetching swift-argument-parser, package-benchmark, swift-system, swift-syntax
Fetched https://github.com/apple/swift-system from cache (0.52s)
[26661/94257] Fetching swift-argument-parser, package-benchmark, swift-syntax
Fetched https://github.com/ordo-one/package-benchmark from cache (0.76s)
Fetched https://github.com/apple/swift-argument-parser from cache (0.77s)
[10787/71911] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax from cache (6.29s)
Computing version for https://github.com/swiftlang/swift-syntax
Computed https://github.com/swiftlang/swift-syntax at 601.0.1 (8.76s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.6.1 (0.36s)
Computing version for https://github.com/apple/swift-system
Computed https://github.com/apple/swift-system at 1.6.2 (0.47s)
Computing version for https://github.com/ordo-one/package-benchmark
Computed https://github.com/ordo-one/package-benchmark at 1.29.4 (0.54s)
Fetching https://github.com/ordo-one/TextTable.git
Fetching https://github.com/ordo-one/package-jemalloc.git
Fetching https://github.com/HdrHistogram/hdrhistogram-swift.git
Fetching https://github.com/apple/swift-atomics.git
[1/203] Fetching texttable
[204/805] Fetching texttable, hdrhistogram-swift
[788/840] Fetching texttable, hdrhistogram-swift, package-jemalloc
[841/2654] Fetching texttable, hdrhistogram-swift, package-jemalloc, swift-atomics
Fetched https://github.com/HdrHistogram/hdrhistogram-swift.git from cache (0.25s)
[855/2052] Fetching texttable, package-jemalloc, swift-atomics
Fetched https://github.com/ordo-one/package-jemalloc.git from cache (0.39s)
Fetched https://github.com/ordo-one/TextTable.git from cache (0.40s)
Fetched https://github.com/apple/swift-atomics.git from cache (0.40s)
Computing version for https://github.com/ordo-one/package-jemalloc.git
Computed https://github.com/ordo-one/package-jemalloc.git at 1.0.0 (0.80s)
Computing version for https://github.com/ordo-one/TextTable.git
Computed https://github.com/ordo-one/TextTable.git at 0.0.2 (0.42s)
Computing version for https://github.com/HdrHistogram/hdrhistogram-swift.git
Computed https://github.com/HdrHistogram/hdrhistogram-swift.git at 0.1.3 (3.26s)
Fetching https://github.com/apple/swift-numerics
[1/6348] Fetching swift-numerics
Fetched https://github.com/apple/swift-numerics from cache (0.41s)
Computing version for https://github.com/apple/swift-numerics
Computed https://github.com/apple/swift-numerics at 1.1.0 (1.39s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.0 (0.37s)
Creating working copy for https://github.com/ordo-one/TextTable.git
Working copy of https://github.com/ordo-one/TextTable.git resolved at 0.0.2
Creating working copy for https://github.com/apple/swift-numerics
Working copy of https://github.com/apple/swift-numerics resolved at 1.1.0
Creating working copy for https://github.com/ordo-one/package-benchmark
Working copy of https://github.com/ordo-one/package-benchmark resolved at 1.29.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.6.1
Creating working copy for https://github.com/swiftlang/swift-syntax
Working copy of https://github.com/swiftlang/swift-syntax resolved at 601.0.1
Creating working copy for https://github.com/HdrHistogram/hdrhistogram-swift.git
Working copy of https://github.com/HdrHistogram/hdrhistogram-swift.git resolved at 0.1.3
Creating working copy for https://github.com/ordo-one/package-jemalloc.git
Working copy of https://github.com/ordo-one/package-jemalloc.git resolved at 1.0.0
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.3.0
Creating working copy for https://github.com/apple/swift-system
Working copy of https://github.com/apple/swift-system resolved at 1.6.2
warning: couldn't find pc file for jemalloc
warning: couldn't find pc file for jemalloc
warning: 'swift-syntax': found 1 file(s) which are unhandled; explicitly declare them as resources or exclude from the target
/host/spi-builder-workspace/.build/checkouts/swift-syntax/Sources/SwiftLexicalLookup/CMakeLists.txt
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:36:11: warning: expression of type '(any SourceModuleTarget)?' is unused [#no-usage]
34 | switch (dependency) {
35 | case .target(let t):
36 | t.sourceModule
| `- warning: expression of type '(any SourceModuleTarget)?' is unused [#no-usage]
37 | case .product(let p):
38 | p.sourceModules
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:38:11: warning: expression of type '[any SourceModuleTarget]' is unused [#no-usage]
36 | t.sourceModule
37 | case .product(let p):
38 | p.sourceModules
| `- warning: expression of type '[any SourceModuleTarget]' is unused [#no-usage]
39 | @unknown default:
40 | fatalError("Unknown target dependency type: \(dependency)")
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:44:38: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
42 | }
43 |
44 | let sourceDir = target.directory.string
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
45 |
46 | // The name of the configuration file SwiftJava.config from the target for
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:80:12: warning: immutable value 'moduleName' was never used; consider replacing with '_' or removing it [#no-usage]
78 |
79 | let dependentConfigFilesArguments = dependentConfigFiles.flatMap { moduleAndConfigFile in
80 | let (moduleName, configFile) = moduleAndConfigFile
| `- warning: immutable value 'moduleName' was never used; consider replacing with '_' or removing it [#no-usage]
81 | return [
82 | "--depends-on",
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:105:11: warning: variable 'outputURL' was never mutated; consider changing to 'let' constant
103 | fatalError("Could not get relative path for source file \(sourceFilePath)")
104 | }
105 | var outputURL = outputSwiftDirectory
| `- warning: variable 'outputURL' was never mutated; consider changing to 'let' constant
106 | .appending(path: String(sourceFilePath.dropFirst(sourceDir.count).dropLast(sourceFileURL.lastPathComponent.count + 1)))
107 |
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/JExtractSwiftPlugin.swift:142:58: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
140 | func _searchForConfigFiles(in target: any Target) {
141 | // log("Search for config files in target: \(target.name)")
142 | let dependencyURL = URL(filePath: target.directory.string)
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
143 |
144 | // Look for a config file within this target.
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/_PluginsShared/PluginUtils.swift:41:58: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
39 |
40 | func getSwiftJavaConfigPath(target: Target) -> String? {
41 | let configPath = URL(fileURLWithPath: target.directory.string).appending(component: "swift-java.config").path()
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
42 |
43 | if FileManager.default.fileExists(atPath: configPath) {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/JExtractSwiftPlugin/_PluginsShared/SwiftJavaConfigurationShared/Configuration.swift:204:30: warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
202 | if fileURL.lastPathComponent.hasSuffix(".swift-java.classpath") {
203 | print("[debug][swift-java] Constructing classpath with entries from: \(fileURL.path)")
204 | if let contents = try? String(contentsOf: fileURL) {
| `- warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
205 | let entries = contents.split(separator: ":").map(String.init)
206 | for entry in entries {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[1/1] Compiling plugin JExtractSwiftPlugin
/host/spi-builder-workspace/Plugins/SwiftJavaPlugin/SwiftJavaPlugin.swift:35:38: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
33 | // Note: Target doesn't have a directoryURL counterpart to directory,
34 | // so we cannot eliminate this deprecation warning.
35 | let sourceDir = target.directory.string
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
36 |
37 | // The name of the configuration file SwiftJava.config from the target for
/host/spi-builder-workspace/Plugins/SwiftJavaPlugin/SwiftJavaPlugin.swift:52:58: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
50 | func searchForConfigFiles(in target: any Target) {
51 | // log("Search for config files in target: \(target.name)")
52 | let dependencyURL = URL(filePath: target.directory.string)
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
53 |
54 | // Look for a config file within this target.
/host/spi-builder-workspace/Plugins/SwiftJavaPlugin/SwiftJavaPlugin.swift:45:9: warning: initialization of variable 'javaDependencies' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
43 | log("Config on path: \(configFile.path(percentEncoded: false))")
44 | log("Config was: \(config)")
45 | var javaDependencies = config.dependencies ?? []
| `- warning: initialization of variable 'javaDependencies' was never used; consider replacing with assignment to '_' or removing it [#no-usage]
46 |
47 | /// Find the manifest files from other swift-java executions in any targets
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/SwiftJavaPlugin/_PluginsShared/PluginUtils.swift:41:58: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
39 |
40 | func getSwiftJavaConfigPath(target: Target) -> String? {
41 | let configPath = URL(fileURLWithPath: target.directory.string).appending(component: "swift-java.config").path()
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
42 |
43 | if FileManager.default.fileExists(atPath: configPath) {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/SwiftJavaPlugin/_PluginsShared/SwiftJavaConfigurationShared/Configuration.swift:204:30: warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
202 | if fileURL.lastPathComponent.hasSuffix(".swift-java.classpath") {
203 | print("[debug][swift-java] Constructing classpath with entries from: \(fileURL.path)")
204 | if let contents = try? String(contentsOf: fileURL) {
| `- warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
205 | let entries = contents.split(separator: ":").map(String.init)
206 | for entry in entries {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[2/2] Compiling plugin SwiftJavaPlugin
/host/spi-builder-workspace/Plugins/JavaCompilerPlugin/JavaCompilerPlugin.swift:33:38: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
31 | // Note: Target doesn't have a directoryURL counterpart to directory,
32 | // so we cannot eliminate this deprecation warning.
33 | let sourceDir = target.directory.string
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
34 |
35 | // The name of the configuration file SwiftJava.config from the target for
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/JavaCompilerPlugin/_PluginsShared/PluginUtils.swift:41:58: warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
39 |
40 | func getSwiftJavaConfigPath(target: Target) -> String? {
41 | let configPath = URL(fileURLWithPath: target.directory.string).appending(component: "swift-java.config").path()
| `- warning: 'string' is deprecated: Use `URL` type instead of `Path`. [#DeprecatedDeclaration]
42 |
43 | if FileManager.default.fileExists(atPath: configPath) {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/host/spi-builder-workspace/Plugins/JavaCompilerPlugin/_PluginsShared/SwiftJavaConfigurationShared/Configuration.swift:204:30: warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
202 | if fileURL.lastPathComponent.hasSuffix(".swift-java.classpath") {
203 | print("[debug][swift-java] Constructing classpath with entries from: \(fileURL.path)")
204 | if let contents = try? String(contentsOf: fileURL) {
| `- warning: 'init(contentsOf:)' is deprecated: Use `init(contentsOf:encoding:)` instead [#DeprecatedDeclaration]
205 | let entries = contents.split(separator: ":").map(String.init)
206 | for entry in entries {
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
[3/3] Compiling plugin JavaCompilerPlugin
[4/4] Compiling plugin BenchmarkPlugin
[5/5] Compiling plugin BenchmarkCommandPlugin
[6/6] Compiling plugin GenerateManual
[7/7] Compiling plugin GenerateDoccReference
Building for debugging...
[7/136] Write sources
[41/136] Compiling CSwiftJavaJNI dummy.c
[41/136] Write sources
[52/136] Compiling _SwiftSyntaxCShims dummy.c
[52/136] Write sources
[75/136] Compiling CSwiftJavaJNI dummy.c
[76/136] Compiling _SwiftSyntaxCShims dummy.c
[77/136] Write swift-version-8C5A4AE7A8CE2BA.txt
[78/136] Compiling _SubprocessCShims process_shims.c
[79/136] Compiling CSystem shims.c
/host/spi-builder-workspace/Sources/_SubprocessCShims/process_shims.c:257:42: error: token is not a valid binary operator in a preprocessor subexpression
257 | #if defined(__GLIBC__) && !__GLIBC_PREREQ(2, 29)
| ~~~~~~~~~~~~~~~^
/host/spi-builder-workspace/Sources/_SubprocessCShims/process_shims.c:287:42: error: token is not a valid binary operator in a preprocessor subexpression
287 | #if defined(__GLIBC__) && !__GLIBC_PREREQ(2, 29)
| ~~~~~~~~~~~~~~~^
/host/spi-builder-workspace/Sources/_SubprocessCShims/process_shims.c:309:12: error: call to undeclared function 'posix_spawn_file_actions_addchdir'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration]
309 | return posix_spawn_file_actions_addchdir(file_actions, path);
| ^
/host/spi-builder-workspace/Sources/_SubprocessCShims/process_shims.c:309:12: note: did you mean 'posix_spawn_file_actions_addclose'?
/root/.swiftpm/swift-sdks/swift-6.2-DEVELOPMENT-SNAPSHOT-2025-05-15-a-android-0.1.artifactbundle/swift-android/ndk-sysroot/usr/include/spawn.h:89:5: note: 'posix_spawn_file_actions_addclose' declared here
89 | int posix_spawn_file_actions_addclose(posix_spawn_file_actions_t _Nonnull * _Nonnull __actions, int __fd) __INTRODUCED_IN(28);
| ^
3 errors generated.
[81/141] Compiling _SubprocessCShims process_shims.c
BUILD FAILURE 6.2 android