Skip to content

lib/systems: add aarch64-windows#263714

Draft
RaitoBezarius wants to merge 1 commit intoNixOS:masterfrom
RaitoBezarius:aarch64-windows
Draft

lib/systems: add aarch64-windows#263714
RaitoBezarius wants to merge 1 commit intoNixOS:masterfrom
RaitoBezarius:aarch64-windows

Conversation

@RaitoBezarius
Copy link
Copy Markdown
Member

Description of changes

Building compiler-rt for aarch64-windows is possible and yield a working LLVM cross-compiler to aarch64-windows.

You

Tested via:

NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1 nix-build -E '(import <nixpkgs> { crossSystem = { config = "aarch64-windows"; libc = null; rustc.config = "aarch64-unknown-uefi"; useLLVM = true; }; }).lanzaboote-stub'

(works with any proper UEFI package that you have at your disposal in your tree, note: I said proper UEFI package, not systemd-boot ELF hackery or GNU-EFI.)

and then, you can run the UEFI result using QEMU and AArch64 UEFI binaries.

Some questions remains if this is viable approach on actual hardware.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 23.11 Release Notes (or backporting 23.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

@github-actions github-actions bot added the 6.topic: lib The Nixpkgs function library label Oct 27, 2023
Building compiler-rt for aarch64-windows is possible and yield a working LLVM cross-compiler to
aarch64-windows.

Tested via:

```
NIXPKGS_ALLOW_UNSUPPORTED_SYSTEM=1 nix-build -E '(import <nixpkgs> { crossSystem = { config = "aarch64-windows"; libc = null; rustc.config = "aarch64-unknown-uefi"; useLLVM = true; }; }).lanzaboote-stub'
```

(can work with any UEFI binary you have at your disposal in your
nixpkgs.)

and then, you can run the UEFI result using QEMU and AArch64 UEFI binaries.
@wegank wegank changed the title lib/systems/doubles: aarch64-windows is supported for some programs lib/systems: add aarch64-windows Oct 27, 2023
@ofborg ofborg bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Oct 27, 2023
@ghost
Copy link
Copy Markdown

ghost commented Oct 30, 2023

This is for building UEFI binaries, right? Just checking.

Building compiler-rt for aarch64-windows is possible and yield a working LLVM cross-compiler to aarch64-windows.

Won't LLVM accept aarch64-unknown-uefi?

@RaitoBezarius
Copy link
Copy Markdown
Member Author

This is for building UEFI binaries, right? Just checking.

Building compiler-rt for aarch64-windows is possible and yield a working LLVM cross-compiler to aarch64-windows.

Won't LLVM accept aarch64-unknown-uefi?

It will, it just doesn't for now. This is a draft because no real intention to go somewhere with this, we can close.

@wegank wegank added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jul 4, 2024
@wegank wegank added the 2.status: merge conflict This PR has merge conflicts with the target branch label Nov 9, 2024
@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Nov 9, 2024
@wegank wegank added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jan 2, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

2.status: merge conflict This PR has merge conflicts with the target branch 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md 6.topic: lib The Nixpkgs function library 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants