bscpkgs/bsc/intel-compiler/icc2020.nix

66 lines
1.5 KiB
Nix
Raw Normal View History

2020-07-01 17:58:29 +02:00
{ stdenv
, fetchurl
2020-07-01 17:58:29 +02:00
, rpmextract
, autoPatchelfHook
, gcc
2020-07-10 13:42:55 +02:00
, intel-mpi
2020-07-01 17:58:29 +02:00
}:
stdenv.mkDerivation rec {
2020-07-02 15:32:52 +02:00
version = "${year}.${v_a}.${v_b}";
2020-07-01 17:58:29 +02:00
name = "intel-compiler-${version}";
passthru = {
CC = "icc";
CXX = "icpc";
};
2020-07-01 17:58:29 +02:00
# From Arch Linux PKGBUILD
2020-11-09 13:08:45 +01:00
dir_nr="17114";
2020-07-01 17:58:29 +02:00
year="2020";
v_a="1";
v_b="217";
2020-11-09 13:08:45 +01:00
update="4";
2020-07-01 17:58:29 +02:00
composer_xe_dir="compilers_and_libraries_${year}.${v_a}.${v_b}";
2020-11-09 13:08:45 +01:00
#tgz="parallel_studio_xe_2020_update${update}_cluster_edition.tgz";
tgz="parallel_studio_xe_2020_update${update}_professional_edition.tgz";
#https://registrationcenter-download.intel.com/akdlm/irc_nas/tec/17114/parallel_studio_xe_2020_update4_professional_edition.tgz
2020-07-01 17:58:29 +02:00
src = fetchurl {
2020-07-27 15:23:42 +02:00
url = "http://registrationcenter-download.intel.com/akdlm/IRC_NAS/tec/${dir_nr}/${tgz}";
2020-11-09 13:08:45 +01:00
sha256 = "0nmp6np4s7nx2p94x40bpqkp5nasgif3gmbfl4lajzgj2rkh871v";
2020-07-01 17:58:29 +02:00
};
buildInputs = [
rpmextract
autoPatchelfHook
gcc.cc.lib
gcc
2020-07-10 13:42:55 +02:00
intel-mpi
2020-07-01 17:58:29 +02:00
];
# The gcc package is required for building other programs
propagatedBuildInputs = [ gcc ];
2020-07-01 17:58:29 +02:00
installPhase = ''
2020-11-09 13:08:45 +01:00
pwd
ls -l rpm
2020-07-01 17:58:29 +02:00
rpmextract rpm/intel-icc-*.rpm
rpmextract rpm/intel-comp-*.rpm
rpmextract rpm/intel-c-comp-*.rpm
rpmextract rpm/intel-openmp*.rpm
2020-07-10 13:42:55 +02:00
rpmextract rpm/intel-ifort*.rpm
2020-07-01 17:58:29 +02:00
mkdir -p $out/{bin,lib,include}
pushd ./opt/intel/${composer_xe_dir}/linux/
cp -a bin/intel64/* $out/bin/
cp -a compiler/include/* $out/include/
cp -a compiler/lib/intel64_lin/* $out/lib/
2020-07-10 17:04:21 +02:00
ln -s lib $out/lib_lin
2020-07-01 17:58:29 +02:00
rm $out/lib/*.dbg
popd
'';
}