conda: build binutils

This commit is contained in:
Sebastien Bourdeauducq 2020-06-09 17:29:38 +08:00
parent ef8664443a
commit e9c07a8985
2 changed files with 23 additions and 0 deletions

View File

@ -16,11 +16,24 @@ let
targetPkgs = pkgs: ([ condaSrcChmod ] ++ condaDeps); targetPkgs = pkgs: ([ condaSrcChmod ] ++ condaDeps);
}; };
libiconv-filename = "libiconv-1.15-h516909a_1006.tar.bz2";
libiconv = pkgs.fetchurl {
url = "https://anaconda.org/conda-forge/libiconv/1.15/download/linux-64/${libiconv-filename}";
sha256 = "1y1g807881j95f9s6mjinf6b7mqa51vc9jf0v7cx8hn7xx4d10ik";
};
condaInstalled = runCommand "conda-installed" { } condaInstalled = runCommand "conda-installed" { }
'' ''
${condaInstallerEnv}/bin/conda-installer-env -c "${condaSrcChmod}/conda-installer.sh -p $out -b" ${condaInstallerEnv}/bin/conda-installer-env -c "${condaSrcChmod}/conda-installer.sh -p $out -b"
substituteInPlace $out/lib/python3.7/site-packages/conda/gateways/disk/__init__.py \ substituteInPlace $out/lib/python3.7/site-packages/conda/gateways/disk/__init__.py \
--replace "os.chmod(path, 0o2775)" "pass" --replace "os.chmod(path, 0o2775)" "pass"
# The conda garbage breaks if the package filename is prefixed with the Nix store hash.
# Symptom is "WARNING conda.core.prefix_data:_load_single_record(167): Ignoring malformed
# prefix record at: /nix/store/[...].json", and the package is not registered in the conda
# list, even though its files are installed.
ln -s ${libiconv} ${libiconv-filename}
${condaInstallerEnv}/bin/conda-installer-env -c "$out/bin/conda install ${libiconv-filename}"
''; '';
in in
buildFHSUserEnv { buildFHSUserEnv {

View File

@ -44,6 +44,16 @@ let
dependencies = ["regex"]; dependencies = ["regex"];
}; };
}; };
conda-binutils-or1k = import ./conda/binutils.nix {
inherit pkgs;
inherit (binutils-or1k) version src;
target = "or1k-linux";
};
conda-binutils-arm = import ./conda/binutils.nix {
inherit pkgs;
inherit (binutils-arm) version src;
target = "armv7-unknown-linux-gnueabihf";
};
conda-sipyco = import ./conda/build.nix { inherit pkgs; } { conda-sipyco = import ./conda/build.nix { inherit pkgs; } {
name = "conda-sipyco"; name = "conda-sipyco";
src = import ./conda/fake-source.nix { inherit pkgs; } { src = import ./conda/fake-source.nix { inherit pkgs; } {