forked from rarias/bscpkgs
Add intel compiler
This commit is contained in:
@@ -1,40 +1,29 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, rpmextract
|
||||
{
|
||||
stdenv
|
||||
, gcc
|
||||
, nanos6
|
||||
, icc-unwrapped
|
||||
, wrapCCWith
|
||||
, libstdcxxHook
|
||||
, intel-license
|
||||
}:
|
||||
|
||||
stdenv.mkDerivation rec {
|
||||
version = "2019.1.217";
|
||||
name = "intel-compiler-${version}";
|
||||
let
|
||||
targetConfig = stdenv.targetPlatform.config;
|
||||
inherit gcc;
|
||||
in wrapCCWith rec {
|
||||
cc = icc-unwrapped;
|
||||
extraPackages = [ libstdcxxHook ];
|
||||
extraBuildCommands = ''
|
||||
echo "-B${gcc.cc}/lib/gcc/${targetConfig}/${gcc.version}" >> $out/nix-support/cc-cflags
|
||||
echo "-L${gcc.cc}/lib/gcc/${targetConfig}/${gcc.version}" >> $out/nix-support/cc-ldflags
|
||||
echo "-L${gcc.cc.lib}/lib" >> $out/nix-support/cc-ldflags
|
||||
|
||||
# From Arch Linux PKGBUILD
|
||||
dir_nr="16526";
|
||||
year="2020";
|
||||
v_a="1";
|
||||
v_b="217";
|
||||
update="1";
|
||||
composer_xe_dir="compilers_and_libraries_${year}.${v_a}.${v_b}";
|
||||
tgz="parallel_studio_xe_2020_update${update}_cluster_edition.tgz";
|
||||
|
||||
# sha256-/RHY3nKyvWBHT4vOe0Y+TLsiVZabnq8k9olXWqKiq6s=
|
||||
src = fetchurl {
|
||||
url = "http://registrationcenter-download.intel.com/akdlm/irc_nas/tec/${dir_nr}/${tgz}";
|
||||
sha256 = "1axblai5lmw9yqjaz7lvjraj5fsc7r37pklb9x3n1gdjfbgdh4gx";
|
||||
};
|
||||
echo "export INTEL_LICENSE_FILE=${intel-license}" \
|
||||
>> $out/nix-support/setup-hook
|
||||
|
||||
buildInputs = [
|
||||
rpmextract
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
rpmextract rpm/intel-icc-*.rpm
|
||||
rpmextract rpm/intel-comp-*.rpm
|
||||
|
||||
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/
|
||||
popd
|
||||
# Create the wrappers for icc and icpc
|
||||
wrap icc $wrapper $ccPath/icc
|
||||
wrap icpc $wrapper $ccPath/icpc
|
||||
'';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user