bscpkgs/pkgs/mcxx/default.nix

63 lines
975 B
Nix
Raw Normal View History

2020-11-20 01:50:30 +08:00
{
stdenv
, fetchFromGitHub
2020-06-29 23:32:30 +08:00
, autoreconfHook
, nanos6
, gperf
2023-04-12 02:33:35 +08:00
, python3
2020-06-29 23:32:30 +08:00
, gfortran
, pkg-config
, sqlite
, flex
, bison
, gcc
}:
stdenv.mkDerivation rec {
2020-09-21 23:30:24 +08:00
pname = "mcxx";
version = "2023.11";
2020-06-29 23:32:30 +08:00
passthru = {
CC = "mcc";
CXX = "mcxx";
};
2020-11-20 01:50:30 +08:00
# mcxx doesn't use tags, so we pick the same version of the ompss2 release
src = fetchFromGitHub {
owner = "bsc-pm";
repo = pname;
rev = "github-release-${version}";
hash = "sha256-GyBvyy/HD3t9rHSXAYZRMhn4o4Nm/HFfjuOS8J0LPu8=";
2020-06-29 23:32:30 +08:00
};
enableParallelBuilding = true;
buildInputs = [
autoreconfHook
nanos6
gperf
2023-04-12 02:33:35 +08:00
python3
2020-06-29 23:32:30 +08:00
gfortran
pkg-config
sqlite.dev
bison
flex
gcc
];
2020-07-10 22:42:33 +08:00
patches = [ ./intel.patch ];
preConfigure = ''
export ICC=icc
export ICPC=icpc
export IFORT=ifort
'';
2020-06-29 23:32:30 +08:00
configureFlags = [
"--enable-ompss-2"
"--with-nanos6=${nanos6}"
2020-09-21 23:30:24 +08:00
# Fails with "memory exhausted" with bison 3.7.1
# "--enable-bison-regeneration"
2020-06-29 23:32:30 +08:00
];
}