Skip to content

Build failure with swiftbuild build system package with spaces in directory name on Linux #8400

Open
@cmcgee1024

Description

@cmcgee1024

Is it reproducible with SwiftPM command-line tools: swift build, swift test, swift package etc?

  • Confirmed reproduction steps with SwiftPM CLI. The description text must include reproduction steps with either of command-line SwiftPM commands, swift build, swift test, swift package etc.

Description

When building a SwiftPM package using the swiftbuild build system on a path with spaces in it there is a build failure on Linux.

Run this command from a swift-package manager Linux development environment:

swift run swift-build -v --build-system=swiftbuild --package-path=Fixtures/Miscellaneous/Spaces\ Fixture

It's expected that this should pass as it does for similar packages without spaces in the package path.

Instead, we get an error from clang:

info: Link Module Name 1_Module.o (aarch64)
    cd /swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture
    /usr/bin/clang -target aarch64-unknown-linux-gnu -r --sysroot / -O0 -L/swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/EagerLinkingTBDs/Debug-linux -L/swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture/.build/aarch64-unknown-linux-gnu/Products/Debug-linux -L/usr/lib @/swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/Spaces\ Fixture.build/Debug-linux/Module\ Name\ 1_Module.build/Objects-normal/aarch64/Module\ Name\ 1_Module.LinkFileList -nostdlib -rdynamic -o /swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture/.build/aarch64-unknown-linux-gnu/Products/Debug-linux/Module\ Name\ 1_Module.o
error: unknown No such file or directory: '/swiftpm/Fixtures/Miscellaneous/Spaces' []
error: unknown No such file or directory: 'Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/Spaces' []
error: unknown No such file or directory: 'Fixture.build/Debug-linux/Module' []
error: unknown No such file or directory: 'Name' []
error: unknown No such file or directory: '1_Module.build/Objects-normal/aarch64/Modules/Module_Name_1.o' []
error: unknown No such file or directory: '/swiftpm/Fixtures/Miscellaneous/Spaces' []
error: unknown No such file or directory: 'Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/Spaces' []
info: Compile main.swift (aarch64)
    cd /swiftpm/Fixtures/Miscellaneous/Spaces\ Fixture

error: unknown No such file or directory: 'Fixture.build/Debug-linux/Module' []
error: unknown No such file or directory: 'Name' []
error: unknown No such file or directory: '1_Module.build/Objects-normal/aarch64/Foo.o' []
info: clang: error: no such file or directory: '/swiftpm/Fixtures/Miscellaneous/Spaces'
clang: error: no such file or directory: 'Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/Spaces'
clang: error: no such file or directory: 'Fixture.build/Debug-linux/Module'
clang: error: no such file or directory: 'Name'
clang: error: no such file or directory: '1_Module.build/Objects-normal/aarch64/Modules/Module_Name_1.o'
clang: error: no such file or directory: '/swiftpm/Fixtures/Miscellaneous/Spaces'
clang: error: no such file or directory: 'Fixture/.build/aarch64-unknown-linux-gnu/Intermediates.noindex/Spaces'
clang: error: no such file or directory: 'Fixture.build/Debug-linux/Module'
clang: error: no such file or directory: 'Name'
clang: error: no such file or directory: '1_Module.build/Objects-normal/aarch64/Foo.o'
error: Build failed

Expected behavior

No response

Actual behavior

No response

Steps to reproduce

No response

Swift Package Manager version/commit hash

No response

Swift & OS version (output of swift --version ; uname -a)

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugswift buildChanges impacting `swift build`

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions