bscpkgs/bsc/mcxx/default.nix

63 lines
977 B
Nix
Raw Normal View History

2020-11-19 18:50:30 +01:00
{
stdenv
, fetchFromGitHub
2020-06-29 17:32:30 +02:00
, autoreconfHook
, nanos6
, gperf
2023-04-11 20:33:35 +02:00
, python3
2020-06-29 17:32:30 +02:00
, gfortran
, pkg-config
, sqlite
, flex
, bison
, gcc
}:
stdenv.mkDerivation rec {
2020-09-21 17:30:24 +02:00
pname = "mcxx";
2023-10-02 08:31:20 +02:00
version = "2023.05";
2020-06-29 17:32:30 +02:00
passthru = {
CC = "mcc";
CXX = "mcxx";
};
2020-11-19 18:50:30 +01: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}";
2023-10-02 08:31:20 +02:00
sha256 = "sha256-GyBvyy/HD3t9rHSXAYZRMhn4o4Nm/HFfjuOS8J0LPu8=";
2020-06-29 17:32:30 +02:00
};
enableParallelBuilding = true;
buildInputs = [
autoreconfHook
nanos6
gperf
2023-04-11 20:33:35 +02:00
python3
2020-06-29 17:32:30 +02:00
gfortran
pkg-config
sqlite.dev
bison
flex
gcc
];
2020-07-10 16:42:33 +02:00
patches = [ ./intel.patch ];
preConfigure = ''
export ICC=icc
export ICPC=icpc
export IFORT=ifort
'';
2020-06-29 17:32:30 +02:00
configureFlags = [
"--enable-ompss-2"
"--with-nanos6=${nanos6}"
2020-09-21 17:30:24 +02:00
# Fails with "memory exhausted" with bison 3.7.1
# "--enable-bison-regeneration"
2020-06-29 17:32:30 +02:00
];
}