Compare commits
3 Commits
b17ec6fb1f
...
aa1c3726f3
Author | SHA1 | Date |
---|---|---|
Sebastien Bourdeauducq | aa1c3726f3 | |
Sebastien Bourdeauducq | d5c288c20b | |
Sebastien Bourdeauducq | 1361c6ae9e |
|
@ -18,11 +18,15 @@ rec {
|
||||||
binutils-riscv = pkgs.callPackage ./compilers/binutils.nix { platform = "riscv32"; };
|
binutils-riscv = pkgs.callPackage ./compilers/binutils.nix { platform = "riscv32"; };
|
||||||
llvm_7 = pkgs.llvm_7.overrideAttrs(oa: {
|
llvm_7 = pkgs.llvm_7.overrideAttrs(oa: {
|
||||||
name = oa.name + "-riscv";
|
name = oa.name + "-riscv";
|
||||||
cmakeFlags = oa.cmakeFlags ++ ["-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=RISCV" "-DLLVM_TARGETS_TO_BUILD=X86"];
|
cmakeFlags = oa.cmakeFlags ++ ["-DLLVM_EXPERIMENTAL_TARGETS_TO_BUILD=RISCV"];
|
||||||
});
|
});
|
||||||
|
lld_7 = (pkgs.lld_7.overrideAttrs(oa: {
|
||||||
|
name = oa.name + "-riscv";
|
||||||
|
})).override {
|
||||||
|
llvm = llvm_7;
|
||||||
|
};
|
||||||
rustc = (pkgs.rustc.overrideAttrs(oa: {
|
rustc = (pkgs.rustc.overrideAttrs(oa: {
|
||||||
name = "${oa.pname}-${oa.version}-riscv";
|
name = "${oa.pname}-${oa.version}-riscv";
|
||||||
configureFlags = oa.configureFlags ++ [ "--enable-lld" ];
|
|
||||||
})).override {
|
})).override {
|
||||||
inherit llvm_7;
|
inherit llvm_7;
|
||||||
pkgsBuildBuild = pkgs.pkgsBuildBuild // { inherit llvm_7; };
|
pkgsBuildBuild = pkgs.pkgsBuildBuild // { inherit llvm_7; };
|
||||||
|
|
|
@ -3,6 +3,6 @@ let
|
||||||
hx = import ./derivations.nix { inherit pkgs; };
|
hx = import ./derivations.nix { inherit pkgs; };
|
||||||
in
|
in
|
||||||
pkgs.mkShell {
|
pkgs.mkShell {
|
||||||
buildInputs = [ hx.rustc hx.rust-riscv32imc-crates hx.cargo ];
|
buildInputs = [ hx.rustc hx.rust-riscv32imc-crates hx.lld_7 hx.cargo ];
|
||||||
RUSTFLAGS="-L ${hx.rust-riscv32imc-crates}/lib/rustlib/riscv32imc-unknown-none-elf/lib";
|
RUSTFLAGS="-L ${hx.rust-riscv32imc-crates}/lib/rustlib/riscv32imc-unknown-none-elf/lib -C linker=lld";
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue