m-labs / artiq

A leading-edge control system for quantum information experiments
https://m-labs.hk/artiq
GNU Lesser General Public License v3.0
426 stars 198 forks source link

remove cargo-xbuild, fix nix build #2408

Closed Spaqin closed 4 months ago

Spaqin commented 4 months ago

ARTIQ Pull Request

Description of Changes

After the misoc changes removing xbuild were merged, it broke nix build for kc705. That was a bit of a surprise, as it compiled fine within the development shell (where I have done for most of my tests), but okay, it is a different world.

1787 mentions an issue where build-std is basically unsupported with Nix without awful 500+ line workarounds, which I thought is the issue at the beginning, but it turned out I just had to cave into cargo's demands for every extra package required to build core/alloc, one by one, specifying the version exactly (see bootloader/Cargo.toml).

One other thing that was broken was that the llvm_asm macro was replaced with a new asm macro, so that feature also had to be added.

Tested by nix build .#artiq-board-kc705-nist_clock and running HITL tests.

Type of Changes

Type
:bug: Bug fix

Steps (Choose relevant, delete irrelevant before submitting)

All Pull Requests

Code Changes

Git Logistics

Licensing

See copyright & licensing for more info. ARTIQ files that do not contain a license header are copyrighted by M-Labs Limited and are licensed under LGPLv3+.