mirror of
https://github.com/NixOS/nixpkgs.git
synced 2025-06-12 12:45:27 +03:00
systems: support cross-compiling for Renesas RX microcontrollers (#173858)
This commit is contained in:
parent
66782715d8
commit
bf139d83ec
6 changed files with 11 additions and 1 deletions
|
@ -41,7 +41,7 @@ let
|
||||||
# none
|
# none
|
||||||
"aarch64_be-none" "aarch64-none" "arm-none" "armv6l-none" "avr-none" "i686-none"
|
"aarch64_be-none" "aarch64-none" "arm-none" "armv6l-none" "avr-none" "i686-none"
|
||||||
"msp430-none" "or1k-none" "m68k-none" "powerpc-none" "powerpcle-none"
|
"msp430-none" "or1k-none" "m68k-none" "powerpc-none" "powerpcle-none"
|
||||||
"riscv32-none" "riscv64-none" "s390-none" "s390x-none" "vc4-none"
|
"riscv32-none" "riscv64-none" "rx-none" "s390-none" "s390x-none" "vc4-none"
|
||||||
"x86_64-none"
|
"x86_64-none"
|
||||||
|
|
||||||
# OpenBSD
|
# OpenBSD
|
||||||
|
@ -76,6 +76,7 @@ in {
|
||||||
riscv = filterDoubles predicates.isRiscV;
|
riscv = filterDoubles predicates.isRiscV;
|
||||||
riscv32 = filterDoubles predicates.isRiscV32;
|
riscv32 = filterDoubles predicates.isRiscV32;
|
||||||
riscv64 = filterDoubles predicates.isRiscV64;
|
riscv64 = filterDoubles predicates.isRiscV64;
|
||||||
|
rx = filterDoubles predicates.isRx;
|
||||||
vc4 = filterDoubles predicates.isVc4;
|
vc4 = filterDoubles predicates.isVc4;
|
||||||
or1k = filterDoubles predicates.isOr1k;
|
or1k = filterDoubles predicates.isOr1k;
|
||||||
m68k = filterDoubles predicates.isM68k;
|
m68k = filterDoubles predicates.isM68k;
|
||||||
|
|
|
@ -145,6 +145,11 @@ rec {
|
||||||
libc = "newlib";
|
libc = "newlib";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
rx-embedded = {
|
||||||
|
config = "rx-none-elf";
|
||||||
|
libc = "newlib";
|
||||||
|
};
|
||||||
|
|
||||||
msp430 = {
|
msp430 = {
|
||||||
config = "msp430-elf";
|
config = "msp430-elf";
|
||||||
libc = "newlib";
|
libc = "newlib";
|
||||||
|
|
|
@ -26,6 +26,7 @@ rec {
|
||||||
isRiscV = { cpu = { family = "riscv"; }; };
|
isRiscV = { cpu = { family = "riscv"; }; };
|
||||||
isRiscV32 = { cpu = { family = "riscv"; bits = 32; }; };
|
isRiscV32 = { cpu = { family = "riscv"; bits = 32; }; };
|
||||||
isRiscV64 = { cpu = { family = "riscv"; bits = 64; }; };
|
isRiscV64 = { cpu = { family = "riscv"; bits = 64; }; };
|
||||||
|
isRx = { cpu = { family = "rx"; }; };
|
||||||
isSparc = { cpu = { family = "sparc"; }; };
|
isSparc = { cpu = { family = "sparc"; }; };
|
||||||
isWasm = { cpu = { family = "wasm"; }; };
|
isWasm = { cpu = { family = "wasm"; }; };
|
||||||
isMsp430 = { cpu = { family = "msp430"; }; };
|
isMsp430 = { cpu = { family = "msp430"; }; };
|
||||||
|
|
|
@ -116,6 +116,7 @@ rec {
|
||||||
|
|
||||||
alpha = { bits = 64; significantByte = littleEndian; family = "alpha"; };
|
alpha = { bits = 64; significantByte = littleEndian; family = "alpha"; };
|
||||||
|
|
||||||
|
rx = { bits = 32; significantByte = littleEndian; family = "rx"; };
|
||||||
msp430 = { bits = 16; significantByte = littleEndian; family = "msp430"; };
|
msp430 = { bits = 16; significantByte = littleEndian; family = "msp430"; };
|
||||||
avr = { bits = 8; family = "avr"; };
|
avr = { bits = 8; family = "avr"; };
|
||||||
|
|
||||||
|
|
|
@ -213,6 +213,7 @@ stdenv.mkDerivation {
|
||||||
else if targetPlatform.isM68k then "m68k"
|
else if targetPlatform.isM68k then "m68k"
|
||||||
else if targetPlatform.isS390 then "s390"
|
else if targetPlatform.isS390 then "s390"
|
||||||
else if targetPlatform.isRiscV then "lriscv"
|
else if targetPlatform.isRiscV then "lriscv"
|
||||||
|
else if targetPlatform.isRx then "rx"
|
||||||
else throw "unknown emulation for platform: ${targetPlatform.config}";
|
else throw "unknown emulation for platform: ${targetPlatform.config}";
|
||||||
in if targetPlatform.useLLVM or false then ""
|
in if targetPlatform.useLLVM or false then ""
|
||||||
else targetPlatform.bfdEmulation or (fmt + sep + arch);
|
else targetPlatform.bfdEmulation or (fmt + sep + arch);
|
||||||
|
|
|
@ -197,6 +197,7 @@ in
|
||||||
x86_64-embedded = mapTestOnCross lib.systems.examples.x86_64-embedded embedded;
|
x86_64-embedded = mapTestOnCross lib.systems.examples.x86_64-embedded embedded;
|
||||||
riscv64-embedded = mapTestOnCross lib.systems.examples.riscv64-embedded embedded;
|
riscv64-embedded = mapTestOnCross lib.systems.examples.riscv64-embedded embedded;
|
||||||
riscv32-embedded = mapTestOnCross lib.systems.examples.riscv32-embedded embedded;
|
riscv32-embedded = mapTestOnCross lib.systems.examples.riscv32-embedded embedded;
|
||||||
|
rx-embedded = mapTestOnCross lib.systems.examples.rx-embedded embedded;
|
||||||
|
|
||||||
x86_64-netbsd = mapTestOnCross lib.systems.examples.x86_64-netbsd common;
|
x86_64-netbsd = mapTestOnCross lib.systems.examples.x86_64-netbsd common;
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue