lib.systems.examples: Add LLVM x86-64 UCRT platform and clean up
Co-authored-by: Eveeifyeve <88671402+Eveeifyeve@users.noreply.github.com>
This commit is contained in:
committed by
John Ericson
co-authored by
Eveeifyeve
parent
bf09af597b
commit
7d034687f2
@@ -341,32 +341,49 @@ rec {
|
||||
# Windows
|
||||
#
|
||||
|
||||
# 32 bit mingw-w64
|
||||
mingw32 = {
|
||||
# mingw-w64 with MSVCRT for i686
|
||||
mingw-msvcrt-i686 = {
|
||||
config = "i686-w64-mingw32";
|
||||
libc = "msvcrt"; # This distinguishes the mingw (non posix) toolchain
|
||||
};
|
||||
|
||||
# 64 bit mingw-w64
|
||||
mingwW64 = {
|
||||
# mingw-w64 with MSVCRT for x86_64
|
||||
mingw-msvcrt-x86_64 = {
|
||||
# That's the triplet they use in the mingw-w64 docs.
|
||||
config = "x86_64-w64-mingw32";
|
||||
libc = "msvcrt"; # This distinguishes the mingw (non posix) toolchain
|
||||
};
|
||||
|
||||
ucrt64 = {
|
||||
# mingw-w64 with UCRT for x86_64, default compiler
|
||||
mingw-ucrt-x86_64 = {
|
||||
config = "x86_64-w64-mingw32";
|
||||
libc = "ucrt"; # This distinguishes the mingw (non posix) toolchain
|
||||
};
|
||||
|
||||
# LLVM-based mingw-w64 for ARM
|
||||
ucrtAarch64 = {
|
||||
# mingw-w64 with UCRT for x86_64, LLVM
|
||||
mingw-ucrt-x86_64-llvm = {
|
||||
config = "x86_64-w64-mingw32";
|
||||
libc = "ucrt";
|
||||
rust.rustcTarget = "x86_64-pc-windows-gnullvm";
|
||||
useLLVM = true;
|
||||
};
|
||||
|
||||
# mingw-w64 with ucrt for Aarch64, default compiler (which is LLVM
|
||||
# because GCC does not support this platform yet).
|
||||
mingw-ucrt-aarch64 = {
|
||||
config = "aarch64-w64-mingw32";
|
||||
libc = "ucrt";
|
||||
rust.rustcTarget = "aarch64-pc-windows-gnullvm";
|
||||
useLLVM = true;
|
||||
};
|
||||
|
||||
# mingw-64 back compat
|
||||
# TODO: Warn after 26.05, and remove after 26.11.
|
||||
mingw32 = mingw-msvcrt-i686;
|
||||
mingwW64 = mingw-msvcrt-x86_64;
|
||||
ucrt64 = mingw-ucrt-x86_64;
|
||||
ucrtAarch64 = mingw-ucrt-aarch64;
|
||||
|
||||
# Target the MSVC ABI
|
||||
x86_64-windows = {
|
||||
config = "x86_64-pc-windows-msvc";
|
||||
|
||||
@@ -205,11 +205,12 @@ in
|
||||
}
|
||||
);
|
||||
|
||||
# Test some cross builds on 32 bit mingw-w64
|
||||
crossMingw32 = mapTestOnCross systems.examples.mingw32 windowsCommon;
|
||||
|
||||
# Test some cross builds on 64 bit mingw-w64
|
||||
crossMingwW64 = mapTestOnCross systems.examples.mingwW64 windowsCommon;
|
||||
# Test some cross builds on various mingw-w64 platforms
|
||||
crossMingw32 = mapTestOnCross systems.examples.mingw-msvcrt-i686 windowsCommon;
|
||||
cross-mingw-msvcrt-x86_64 = mapTestOnCross systems.examples.mingw-msvcrt-x86_64 windowsCommon;
|
||||
cross-mingw-ucrt-x86_64 = mapTestOnCross systems.examples.mingw-ucrt-x86_64 windowsCommon;
|
||||
cross-mingw-ucrt-x86_64-llvm = mapTestOnCross systems.examples.mingw-ucrt-x86_64-llvm windowsCommon;
|
||||
cross-mingw-ucrt-aarch64 = mapTestOnCross systems.examples.mingw-ucrt-aarch64 windowsCommon;
|
||||
|
||||
x86_64-cygwin = mapTestOnCross systems.examples.x86_64-cygwin cygwinCommon;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user