uboot: (firmwareOdroidC2/C4) don't invoke patch tool, use patches = [] instead
https://github.com/NixOS/nixpkgs/blob/master/pkgs/stdenv/generic/setup.sh#L948 this can do it nicely. Signed-off-by: Anton Arapov <anton@deadbeef.mx>
This commit is contained in:
commit
56de2bcd43
30691 changed files with 3076956 additions and 0 deletions
78
pkgs/development/libraries/relibc/default.nix
Normal file
78
pkgs/development/libraries/relibc/default.nix
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
{ lib, stdenvNoCC, buildPackages, makeRustPlatform }:
|
||||
|
||||
let
|
||||
rpath = lib.makeLibraryPath [
|
||||
buildPackages.stdenv.cc.libc
|
||||
"$out"
|
||||
];
|
||||
bootstrapCrossRust = stdenvNoCC.mkDerivation {
|
||||
name = "binary-redox-rust";
|
||||
|
||||
src = buildPackages.fetchzip {
|
||||
name = "redox-rust-toolchain.tar.gz";
|
||||
url = "https://www.dropbox.com/s/qt7as0j7cwnin8z/redox-rust-toolchain.tar.gz?dl=1";
|
||||
sha256 = "1g17qp2q6b88p04yclkw6amm374pqlakrmw9kd86vw8z4g70jkxm";
|
||||
};
|
||||
|
||||
dontBuild = true;
|
||||
dontPatchELF = true;
|
||||
dontStrip = true;
|
||||
installPhase = ''
|
||||
mkdir $out/
|
||||
cp -r * $out/
|
||||
|
||||
find $out/ -executable -type f -exec patchelf \
|
||||
--set-interpreter "${buildPackages.stdenv.cc.libc}/lib/ld-linux-x86-64.so.2" \
|
||||
--set-rpath "${rpath}" \
|
||||
"{}" \;
|
||||
find $out/ -name "*.so" -type f -exec patchelf \
|
||||
--set-rpath "${rpath}" \
|
||||
"{}" \;
|
||||
'';
|
||||
|
||||
meta.platforms = with lib; platforms.redox ++ platforms.linux;
|
||||
};
|
||||
|
||||
redoxRustPlatform = buildPackages.makeRustPlatform {
|
||||
rustc = bootstrapCrossRust;
|
||||
cargo = bootstrapCrossRust;
|
||||
};
|
||||
|
||||
in
|
||||
redoxRustPlatform.buildRustPackage rec {
|
||||
pname = "relibc";
|
||||
version = "latest";
|
||||
|
||||
LD_LIBRARY_PATH = "${buildPackages.zlib}/lib";
|
||||
|
||||
src = buildPackages.fetchgit {
|
||||
url = "https://gitlab.redox-os.org/redox-os/relibc/";
|
||||
rev = "5af8e3ca35ad401014a867ac1a0cc3b08dee682b";
|
||||
sha256 = "1j4wsga9psl453031izkl3clkvm31d1wg4y8f3yqqvhml2aliws5";
|
||||
fetchSubmodules = true;
|
||||
};
|
||||
|
||||
RUSTC_BOOTSTRAP = 1;
|
||||
|
||||
dontInstall = true;
|
||||
dontFixup = true;
|
||||
doCheck = false;
|
||||
|
||||
postBuild = ''
|
||||
mkdir -p $out
|
||||
DESTDIR=$out make install
|
||||
'';
|
||||
|
||||
# TODO: should be hostPlatform
|
||||
TARGET = buildPackages.rust.toRustTargetSpec stdenvNoCC.targetPlatform;
|
||||
|
||||
cargoSha256 = "1fzz7ba3ga57x1cbdrcfrdwwjr70nh4skrpxp4j2gak2c3scj6rz";
|
||||
|
||||
meta = with lib; {
|
||||
homepage = "https://gitlab.redox-os.org/redox-os/relibc";
|
||||
description = "C Library in Rust for Redox and Linux";
|
||||
license = licenses.mit;
|
||||
maintainers = [ maintainers.aaronjanse ];
|
||||
platforms = platforms.redox ++ [ "x86_64-linux" ];
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue