Skip to content

Build directory structure doesn't support target executables #997

@brson

Description

@brson

Our current layout for a stage looks like

bin - host executables
lib - host libraries
    rustc
        ${target} - target libraries

This works for now because we don't actually cross-compile, but it also means that building host executables (rustc, fuzzer) is done in a different way than target libraries (they build across stages, with stageN building into stageN+1).

I propose that our layout should look like

bin - host executables
lib - host libraries
    rustc
        ${target}
            bin - target executables
            lib - target libraries

We always build into stageN target directories using the stageN host compiler, then promote the stageN+1 host compiler from the appropriate stageN target directory.

This is the exact directory structure that would then be installed to /usr

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions