Skip to content

duplication of crates in rust-std-nightly-arm-* tarballs #31101

@japaric

Description

@japaric

The rust-std-nightly-arm-unknown-linux-gnueabihf tarball contains cross compiled crates for two targets: arm-unknown-linux-gnueabi and arm-unknown-linux-gnueabihf (note: hf at the end):

$ wget http://static.rust-lang.org/dist/2016-01-21/rust-std-nightly-arm-unknown-linux-gnueabihf.tar.gz
$ tar xzf rust-std-nightly-arm-unknown-linux-gnueabihf.tar.gz
$ tree rust-std-nightly-arm-unknown-linux-gnueabihf
rust-std-nightly-arm-unknown-linux-gnueabihf
├── components
├── install.sh
├── rust-installer-version
└── rust-std-arm-unknown-linux-gnueabihf
    ├── lib
    │   └── rustlib
    │       ├── arm-unknown-linux-gnueabi <=
    │       │   └── lib
    │       │       ├── liballoc-17a8ccbd.rlib
    │       │       ├── liballoc_jemalloc-17a8ccbd.rlib
    │       │       ├── (...)
    │       ├── arm-unknown-linux-gnueabihf <=
    │       │   └── lib
    │       │       ├── liballoc-17a8ccbd.rlib
    │       │       ├── liballoc_jemalloc-17a8ccbd.rlib
    │       │       ├── (...)
    │       └── x86_64-unknown-linux-gnu
    │           └── bin
    └── manifest.in

I don't think said tarball should contain the cross compiled crates for the arm-unknown-linux-gnueabi target, because those are already provided by the rust-std-nightly-arm-unknown-linux-gnueabi tarball:

$ wget http://static.rust-lang.org/dist/2016-01-21/rust-std-nightly-arm-unknown-linux-gnueabi.tar.gz
$ tar xzf rust-std-nightly-arm-unknown-linux-gnueabi.tar.gz
$ tree rust-std-nightly-arm-unknown-linux-gnueabi
rust-std-nightly-arm-unknown-linux-gnueabi
├── components
├── install.sh
├── rust-installer-version
└── rust-std-arm-unknown-linux-gnueabi
    ├── lib
    │   └── rustlib
    │       ├── arm-unknown-linux-gnueabi <=
    │       │   └── lib
    │       │       ├── liballoc-17a8ccbd.rlib
    │       │       ├── liballoc_jemalloc-17a8ccbd.rlib
    │       │       ├── (...)
    │       └── x86_64-unknown-linux-gnu
    │           └── bin
    └── manifest.in

$ diff -r \
    *-gnueabihf/rust-std-arm-unknown-linux-gnueabihf/lib/rustlib/arm-unknown-linux-gnueabi/lib \
    *-gnueabi/rust-std-arm-unknown-linux-gnueabi/lib/rustlib/arm-unknown-linux-gnueabi/lib
    && echo they provide the same crates
they provide the same crates

Is there a rationale for this duplication of crates, or is this a packaging bug?

cc @alexcrichton

Metadata

Metadata

Assignees

No one assigned

    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