Archived
1
0
forked from rarias/bscpkgs

19 Commits

Author SHA1 Message Date
205e8145d0 Fix nanos6 cross-compilation for riscv 2025-10-01 15:03:51 +02:00
83770ec6f0 Fix cross compilation for lmbench 2025-10-01 15:03:51 +02:00
0dd260ae45 Disable papi when cross compiling
Even if we do an override to papi get the proper configure flags for
cross-compiling, the memory fences are not defined for risc-v:

mb.h:67:2: error: #error Need to define rmb for this architecture!
2025-10-01 15:03:51 +02:00
ad17dbc06e Move bsc-ci test into let 2025-10-01 15:03:51 +02:00
46990fc8f7 Rework bsc-ci 2025-10-01 15:03:51 +02:00
2d125cabaf Add riscv64 cross compilation to bsc-ci and hydra 2025-10-01 15:03:51 +02:00
00f5aad8e6 Put helper attrs of ompss2 drv to passthru 2025-10-01 15:03:50 +02:00
4cbc9b81e3 Remove gcc from tampi *buildInputs 2025-10-01 15:03:50 +02:00
21516bd96b Fix strictDeps ovni 2025-10-01 15:03:50 +02:00
c30a1ed96d Fix strictDeps osu 2025-10-01 15:03:50 +02:00
adbee036ef Fix strictDeps mercurium 2025-10-01 15:03:50 +02:00
8092140a9c Fix strictDeps tampi 2025-10-01 15:03:50 +02:00
cf2239d2db Fix strictDeps sonar 2025-10-01 15:03:50 +02:00
6c54675da4 Fix strictDeps nanos6 2025-10-01 15:03:49 +02:00
d91db4afb4 Fix strictDeps paraver 2025-10-01 15:03:49 +02:00
c07c5efbfa Fix strictDeps ompss2 2025-10-01 15:03:49 +02:00
aa55166cf3 Fix strictDeps intel 2023 2025-10-01 15:03:49 +02:00
914ee07439 Fix strictDeps bench6 2025-10-01 15:03:49 +02:00
de99a89845 Fix strictDeps bigotes 2025-10-01 15:03:49 +02:00
19 changed files with 190 additions and 114 deletions

View File

@@ -17,7 +17,7 @@
legacyPackages.${system} = pkgs; legacyPackages.${system} = pkgs;
hydraJobs = { hydraJobs = {
inherit (self.legacyPackages.${system}.bsc-ci) test pkgs; inherit (self.legacyPackages.${system}.bsc-ci) test pkgs cross;
}; };
# propagate nixpkgs lib, so we can do bscpkgs.lib # propagate nixpkgs lib, so we can do bscpkgs.lib

View File

@@ -6,9 +6,6 @@ with final.lib;
let let
callPackage = final.callPackage; callPackage = final.callPackage;
mkDeps = name: pkgs: final.runCommand name { }
"printf '%s\n' ${toString (collect (x: x ? outPath) pkgs)} > $out";
bscPkgs = { bscPkgs = {
bench6 = callPackage ./pkgs/bench6/default.nix { }; bench6 = callPackage ./pkgs/bench6/default.nix { };
bigotes = callPackage ./pkgs/bigotes/default.nix { }; bigotes = callPackage ./pkgs/bigotes/default.nix { };
@@ -49,58 +46,74 @@ let
wxparaver = callPackage ./pkgs/paraver/default.nix { }; wxparaver = callPackage ./pkgs/paraver/default.nix { };
}; };
test = rec {
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { };
hello-c = callPackage ./test/compilers/hello-c.nix { };
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
lto = callPackage ./test/compilers/lto.nix { };
asan = callPackage ./test/compilers/asan.nix { };
intel2023-icx-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv; };
intel2023-icc-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv-icc; };
intel2023-icx-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv; };
intel2023-icc-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv-icc; };
intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
stdenv = final.intelPackages_2023.stdenv-ifort;
};
clangOmpss2-lto = lto.override { stdenv = final.stdenvClangOmpss2Nanos6; };
clangOmpss2-asan = asan.override { stdenv = final.stdenvClangOmpss2Nanos6; };
clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
stdenv = final.stdenvClangOmpss2Nanos6;
};
clangNodes-task = callPackage ./test/compilers/ompss2.nix {
stdenv = final.stdenvClangOmpss2Nodes;
};
clangNosvOpenmp-task = callPackage ./test/compilers/clang-openmp.nix {
stdenv = final.stdenvClangOmpss2Nodes;
};
clangNosvOmpv-nosv = callPackage ./test/compilers/clang-openmp-nosv.nix {
stdenv = final.stdenvClangOmpss2NodesOmpv;
};
clangNosvOmpv-ld = callPackage ./test/compilers/clang-openmp-ld.nix {
stdenv = final.stdenvClangOmpss2NodesOmpv;
};
};
pkgs = filterAttrs (_: isDerivation) bscPkgs;
crossTargets = [ "riscv64" ];
cross = prev.lib.genAttrs crossTargets (target:
final.pkgsCross.${target}.bsc-ci.pkgs
);
buildList = name: paths:
final.runCommandLocal name { } ''
printf '%s\n' ${toString paths} | tee $out
'';
buildList' = name: paths:
final.runCommandLocal name { } ''
deps="${toString paths}"
cat $deps
printf '%s\n' $deps >$out
'';
crossList = builtins.mapAttrs (t: v: buildList t (builtins.attrValues v)) cross;
pkgsList = buildList "ci-pkgs" (builtins.attrValues pkgs);
tests = buildList "ci-tests" (collect isDerivation test);
all = buildList' "ci-all" [ pkgsList tests ];
in bscPkgs // { in bscPkgs // {
# Prevent accidental usage of bsc attribute # Prevent accidental usage of bsc attribute
bsc = throw "the bsc attribute is deprecated, packages are now in the root"; bsc = throw "the bsc attribute is deprecated, packages are now in the root";
# Internal for our CI tests # Internal for our CI tests
bsc-ci = { bsc-ci = {
test = rec { inherit pkgs pkgsList;
#hwloc = callPackage ./test/bugs/hwloc.nix { }; # Broken, no /sys inherit test tests;
#sigsegv = callPackage ./test/reproducers/sigsegv.nix { }; inherit cross crossList;
hello-c = callPackage ./test/compilers/hello-c.nix { }; inherit all;
hello-cpp = callPackage ./test/compilers/hello-cpp.nix { };
lto = callPackage ./test/compilers/lto.nix { };
asan = callPackage ./test/compilers/asan.nix { };
intel2023-icx-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv; };
intel2023-icc-c = hello-c.override { stdenv = final.intelPackages_2023.stdenv-icc; };
intel2023-icx-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv; };
intel2023-icc-cpp = hello-cpp.override { stdenv = final.intelPackages_2023.stdenv-icc; };
intel2023-ifort = callPackage ./test/compilers/hello-f.nix {
stdenv = final.intelPackages_2023.stdenv-ifort;
};
clangOmpss2-lto = lto.override { stdenv = final.stdenvClangOmpss2Nanos6; };
clangOmpss2-asan = asan.override { stdenv = final.stdenvClangOmpss2Nanos6; };
clangOmpss2-task = callPackage ./test/compilers/ompss2.nix {
stdenv = final.stdenvClangOmpss2Nanos6;
};
clangNodes-task = callPackage ./test/compilers/ompss2.nix {
stdenv = final.stdenvClangOmpss2Nodes;
};
clangNosvOpenmp-task = callPackage ./test/compilers/clang-openmp.nix {
stdenv = final.stdenvClangOmpss2Nodes;
};
clangNosvOmpv-nosv = callPackage ./test/compilers/clang-openmp-nosv.nix {
stdenv = final.stdenvClangOmpss2NodesOmpv;
};
clangNosvOmpv-ld = callPackage ./test/compilers/clang-openmp-ld.nix {
stdenv = final.stdenvClangOmpss2NodesOmpv;
};
};
pkgs = filterAttrs (_: isDerivation) bscPkgs;
pkgsList = final.runCommand "ci-pkgs" { }
"printf '%s\n' ${toString (collect isDerivation bscPkgs)} > $out";
tests = final.runCommand "ci-tests" { }
"printf '%s\n' ${toString (collect isDerivation final.bsc-ci.test)} > $out";
all = final.runCommand "ci-all" { }
''
deps="${toString [ final.bsc-ci.pkgsList final.bsc-ci.tests ]}"
cat $deps
printf '%s\n' $deps > $out
'';
}; };
} }

View File

@@ -27,10 +27,13 @@ stdenv.mkDerivation rec {
rev = gitCommit; rev = gitCommit;
}; };
buildInputs = [ nativeBuildInputs = [
bigotes
cmake cmake
clangOmpss2 clangOmpss2
];
buildInputs = [
bigotes
openmp openmp
openmpv openmpv
nanos6 nanos6

View File

@@ -4,7 +4,7 @@
, cmake , cmake
}: }:
stdenv.mkDerivation rec { stdenv.mkDerivation {
pname = "bigotes"; pname = "bigotes";
version = "9dce13"; version = "9dce13";
src = fetchFromGitHub { src = fetchFromGitHub {
@@ -13,5 +13,5 @@ stdenv.mkDerivation rec {
rev = "9dce13446a8da30bea552d569d260d54e0188518"; rev = "9dce13446a8da30bea552d569d260d54e0188518";
sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE="; sha256 = "sha256-ktxM3pXiL8YXSK+/IKWYadijhYXqGoLY6adLk36iigE=";
}; };
buildInputs = [ cmake ]; nativeBuildInputs = [ cmake ];
} }

View File

@@ -20,6 +20,7 @@
#, python3Packages #, python3Packages
, installShellFiles , installShellFiles
, symlinkJoin , symlinkJoin
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
}: }:
let let
@@ -87,7 +88,7 @@ stdenv.mkDerivation rec {
--enable-sampling --enable-sampling
--with-unwind=${libunwind.dev} --with-unwind=${libunwind.dev}
--with-xml-prefix=${libxml2.dev} --with-xml-prefix=${libxml2.dev}
--with-papi=${papi} ${lib.optionalString enablePapi "--with-papi=${papi}"}
${if (mpi != null) then ''--with-mpi=${mpi}'' ${if (mpi != null) then ''--with-mpi=${mpi}''
else ''--without-mpi''} else ''--without-mpi''}
--without-dyninst) --without-dyninst)

View File

@@ -78,7 +78,7 @@ let
uncompressDebs = debs: name: stdenv.mkDerivation { uncompressDebs = debs: name: stdenv.mkDerivation {
name = name; name = name;
srcs = debs; srcs = debs;
buildInputs = [ dpkg ]; nativeBuildInputs = [ dpkg ];
phases = [ "installPhase" ]; phases = [ "installPhase" ];
installPhase = '' installPhase = ''
mkdir -p $out mkdir -p $out
@@ -108,14 +108,17 @@ let
"intel-oneapi-mpi-${version}" "intel-oneapi-mpi-${version}"
]; ];
buildInputs = [ nativeBuildInputs = [
autoPatchelfHook
rsync rsync
];
buildInputs = [
libfabric libfabric
zlib zlib
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
nativeBuildInputs = [ autoPatchelfHook ];
phases = [ "installPhase" "fixupPhase" ]; phases = [ "installPhase" "fixupPhase" ];
dontStrip = true; dontStrip = true;
installPhase = '' installPhase = ''
@@ -154,7 +157,6 @@ let
buildInputs = [ buildInputs = [
intel-mpi intel-mpi
rsync
libffi_3_3 libffi_3_3
libelf libelf
libxml2 libxml2
@@ -162,7 +164,10 @@ let
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
nativeBuildInputs = [ autoPatchelfHook ]; nativeBuildInputs = [
autoPatchelfHook
rsync
];
phases = [ "installPhase" "fixupPhase" ]; phases = [ "installPhase" "fixupPhase" ];
dontStrip = true; dontStrip = true;
@@ -192,7 +197,6 @@ let
buildInputs = [ buildInputs = [
intel-mpi intel-mpi
intel-tbb intel-tbb
rsync
libffi_3_3 libffi_3_3
libelf libelf
libxml2 libxml2
@@ -201,7 +205,10 @@ let
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
nativeBuildInputs = [ autoPatchelfHook ]; nativeBuildInputs = [
autoPatchelfHook
rsync
];
phases = [ "installPhase" "fixupPhase" ]; phases = [ "installPhase" "fixupPhase" ];
dontStrip = true; dontStrip = true;
@@ -254,7 +261,6 @@ let
buildInputs = [ buildInputs = [
intel-mpi intel-mpi
intel-compiler-shared intel-compiler-shared
rsync
libffi_3_3 libffi_3_3
libelf libelf
libxml2 libxml2
@@ -262,7 +268,10 @@ let
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
nativeBuildInputs = [ autoPatchelfHook ]; nativeBuildInputs = [
autoPatchelfHook
rsync
];
phases = [ "installPhase" "fixupPhase" ]; phases = [ "installPhase" "fixupPhase" ];
@@ -337,7 +346,6 @@ let
buildInputs = [ buildInputs = [
intel-compiler-shared intel-compiler-shared
rsync
libffi_3_3 libffi_3_3
libelf libelf
libxml2 libxml2
@@ -345,7 +353,10 @@ let
stdenv.cc.cc.lib stdenv.cc.cc.lib
]; ];
nativeBuildInputs = [ autoPatchelfHook ]; nativeBuildInputs = [
autoPatchelfHook
rsync
];
autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ]; autoPatchelfIgnoreMissingDeps = [ "libtbb.so.12" "libtbbmalloc.so.2" "libze_loader.so.1" ];
phases = [ "installPhase" "fixupPhase" ]; phases = [ "installPhase" "fixupPhase" ];

View File

@@ -43,32 +43,36 @@ let
source = if (useGit) then git else release; source = if (useGit) then git else release;
in stdenv.mkDerivation rec { in stdenv.mkDerivation {
pname = "clang-ompss2"; pname = "clang-ompss2";
inherit (source) src version; inherit (source) src version;
enableParallelBuilding = true; enableParallelBuilding = true;
isClang = true;
passthru = { passthru = {
CC = "clang"; CC = "clang";
CXX = "clang++"; CXX = "clang++";
isClang = true;
isClangWithOmpss = true;
inherit gcc zlib;
}; };
isClangWithOmpss = true; nativeBuildInputs = [
nativeBuildInputs = [ zlib ];
buildInputs = [
which
bash bash
cmake
elfutils
llvmPackages_latest.lld
pkg-config
python3 python3
perl perl
cmake which
llvmPackages_latest.lld zlib
elfutils ];
buildInputs = [
libffi libffi
pkg-config
zlib zlib
gcc.cc.lib # Required for libstdc++.so.6 gcc.cc.lib # Required for libstdc++.so.6
]; ];

View File

@@ -22,7 +22,11 @@ stdenv.mkDerivation rec {
''; '';
buildInputs = [ libtirpc ]; buildInputs = [ libtirpc ];
patches = [ ./fix-install.patch ./gcc-14.patch ]; patches = [
./fix-install.patch
./gcc-14.patch
./fix-cross.patch
];
hardeningDisable = [ "all" ]; hardeningDisable = [ "all" ];
@@ -35,6 +39,8 @@ stdenv.mkDerivation rec {
CFLAGS=-Wno-implicit-int CFLAGS=-Wno-implicit-int
CPPFLAGS=-I${libtirpc.dev}/include/tirpc CPPFLAGS=-I${libtirpc.dev}/include/tirpc
LDFLAGS=-ltirpc LDFLAGS=-ltirpc
CC=${stdenv.cc.targetPrefix}cc
AR=${stdenv.cc.targetPrefix}ar
) )
''; '';

View File

@@ -0,0 +1,13 @@
diff --git a/src/Makefile b/src/Makefile
index 2555014..356eeb3 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -36,7 +36,7 @@ SHELL=/bin/sh
CC=`../scripts/compiler`
MAKE=`../scripts/make`
-AR=ar
+AR?=ar
ARCREATE=cr
# base of installation location

View File

@@ -32,19 +32,22 @@ stdenv.mkDerivation rec {
enableParallelBuilding = true; enableParallelBuilding = true;
buildInputs = [ nativeBuildInputs = [
autoreconfHook autoreconfHook
nanos6 bison
gperf flex
python3 python3
gfortran gfortran
pkg-config pkg-config
sqlite.dev gperf
bison
flex
gcc gcc
]; ];
buildInputs = [
nanos6
sqlite.dev
];
patches = [ ./intel.patch ]; patches = [ ./intel.patch ];
preConfigure = '' preConfigure = ''

View File

@@ -16,6 +16,7 @@
, jemallocNanos6 ? null , jemallocNanos6 ? null
, cachelineBytes ? 64 , cachelineBytes ? 64
, enableGlibcxxDebug ? false , enableGlibcxxDebug ? false
, enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
, useGit ? false , useGit ? false
, gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6" , gitUrl ? "ssh://git@bscpm04.bsc.es/nanos6/nanos6"
, gitBranch ? "master" , gitBranch ? "master"
@@ -47,6 +48,8 @@ let
}; };
source = if (useGit) then git else release; source = if (useGit) then git else release;
isCross = stdenv.hostPlatform != stdenv.buildPlatform;
in in
stdenv.mkDerivation (source // { stdenv.mkDerivation (source // {
pname = "nanos6"; pname = "nanos6";
@@ -71,9 +74,11 @@ in
"--disable-all-instrumentations" "--disable-all-instrumentations"
"--enable-ovni-instrumentation" "--enable-ovni-instrumentation"
"--with-ovni=${ovni}" "--with-ovni=${ovni}"
"--with-boost=${boost.dev}"
] ++ ] ++
(optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++ (optional enableJemalloc "--with-jemalloc=${jemallocNanos6}") ++
(optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG"); (optional enableGlibcxxDebug "CXXFLAGS=-D_GLIBCXX_DEBUG") ++
(optional isCross "--with-symbol-resolution=ifunc");
postConfigure = lib.optionalString (!enableDebug) '' postConfigure = lib.optionalString (!enableDebug) ''
# Disable debug # Disable debug
@@ -88,23 +93,29 @@ in
dontStrip = enableDebug; dontStrip = enableDebug;
separateDebugInfo = true; separateDebugInfo = true;
buildInputs = [ nativeBuildInputs = [
autoconf autoconf
automake automake
libtool libtool
pkg-config pkg-config
# TODO: papi_version is needed for configure:
# ./configure: line 27378: papi_version: command not found
# This probably breaks cross-compilation
] ++ lib.optionals enablePapi [ papi ];
buildInputs = [
boost boost
numactl numactl
hwloc hwloc
papi
ovni ovni
]; ] ++ lib.optionals enablePapi [ papi ];
# Create a script that sets NANOS6_HOME # Create a script that sets NANOS6_HOME
postInstall = '' postInstall = ''
mkdir -p $out/nix-support mkdir -p $out/nix-support
echo "export NANOS6_HOME=$out" >> $out/nix-support/setup-hook echo "export NANOS6_HOME=$out" >> $out/nix-support/setup-hook
''; '';
meta = with lib; { meta = with lib; {
homepage = "https://github.com/bsc-pm/nanos6"; homepage = "https://github.com/bsc-pm/nanos6";

View File

@@ -7,7 +7,7 @@
, numactl , numactl
, hwloc , hwloc
, papi , papi
, enablePapi ? true , enablePapi ? stdenv.hostPlatform == stdenv.buildPlatform # Disabled when cross-compiling
, cacheline ? 64 # bits , cacheline ? 64 # bits
, ovni ? null , ovni ? null
, useGit ? false , useGit ? false

View File

@@ -24,9 +24,10 @@ stdenv.mkDerivation rec {
doCheck = true; doCheck = true;
enableParallelBuilding = true; enableParallelBuilding = true;
nativeBuildInputs = [ mpiAll ];
buildInputs = [ mpiAll ]; buildInputs = [ mpiAll ];
hardeningDisable = [ "all" ]; hardeningDisable = [ "all" ];
configureFlags = [ configureFlags = [
"CC=mpicc" "CC=mpicc"
"CXX=mpicxx" "CXX=mpicxx"
]; ];
@@ -40,7 +41,7 @@ stdenv.mkDerivation rec {
meta = { meta = {
description = "OSU Micro-Benchmarks"; description = "OSU Micro-Benchmarks";
homepage = http://mvapich.cse.ohio-state.edu/benchmarks/; homepage = "http://mvapich.cse.ohio-state.edu/benchmarks/";
maintainers = [ ]; maintainers = [ ];
platforms = lib.platforms.all; platforms = lib.platforms.all;
}; };

View File

@@ -13,8 +13,6 @@
, useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform) , useMpi ? (stdenv.buildPlatform.canExecute stdenv.hostPlatform)
}: }:
with lib;
let let
release = rec { release = rec {
version = "1.12.0"; version = "1.12.0";
@@ -45,7 +43,7 @@ in
postPatch = '' postPatch = ''
patchShebangs --build test/ patchShebangs --build test/
''; '';
nativeBuildInputs = [ cmake ]; nativeBuildInputs = [ cmake ] ++ lib.optionals (useMpi) [ mpi ];
buildInputs = lib.optionals (useMpi) [ mpi ]; buildInputs = lib.optionals (useMpi) [ mpi ];
cmakeBuildType = if (enableDebug) then "Debug" else "Release"; cmakeBuildType = if (enableDebug) then "Debug" else "Release";
cmakeFlags = [ cmakeFlags = [

View File

@@ -60,17 +60,17 @@ stdenv.mkDerivation rec {
]; ];
nativeBuildInputs = [ nativeBuildInputs = [
autoconf
automake
autoreconfHook
wrapGAppsHook wrapGAppsHook
]; ];
buildInputs = [ buildInputs = [
autoreconfHook
boost boost
libxml2.dev libxml2.dev
xml2 xml2
wx wx
autoconf
automake
paraverKernel paraverKernel
openssl.dev openssl.dev
]; ];

View File

@@ -44,14 +44,17 @@ stdenv.mkDerivation rec {
"--enable-openmp" "--enable-openmp"
]; ];
buildInputs = [ nativeBuildInputs = [
autoreconfHook autoreconfHook
boost
libxml2.dev
xml2
autoconf autoconf
automake automake
pkg-config pkg-config
];
buildInputs = [
boost
libxml2.dev
xml2
zlib zlib
]; ];
} }

View File

@@ -61,13 +61,16 @@ stdenv.mkDerivation rec {
"--with-wx-config=${wx}/bin/wx-config" "--with-wx-config=${wx}/bin/wx-config"
]; ];
nativeBuildInputs = [
autoconf
automake
];
buildInputs = [ buildInputs = [
boost boost
xml2 xml2
libxml2.dev libxml2.dev
wx wx
autoconf
automake
openssl.dev openssl.dev
]; ];

View File

@@ -18,8 +18,12 @@ stdenv.mkDerivation rec {
hardeningDisable = [ "all" ]; hardeningDisable = [ "all" ];
dontStrip = true; dontStrip = true;
configureFlags = [ "--with-ovni=${ovni}" ]; configureFlags = [ "--with-ovni=${ovni}" ];
buildInputs = [
nativeBuildInputs = [
autoreconfHook autoreconfHook
];
buildInputs = [
ovni ovni
mpi mpi
]; ];

View File

@@ -8,7 +8,6 @@
, gnumake , gnumake
, boost , boost
, mpi , mpi
, gcc
, autoreconfHook , autoreconfHook
, enableOvni ? true , enableOvni ? true
, ovni ? null , ovni ? null
@@ -41,20 +40,23 @@ let
}; };
}; };
source = if (useGit) then git else release; source = if (useGit) then git else release;
in stdenv.mkDerivation rec { in stdenv.mkDerivation {
pname = "tampi"; pname = "tampi";
inherit (source) src version; inherit (source) src version;
enableParallelBuilding = true; enableParallelBuilding = true;
separateDebugInfo = true; separateDebugInfo = true;
buildInputs = [
autoreconfHook nativeBuildInputs = [
automake
autoconf autoconf
libtool automake
autoreconfHook
gnumake gnumake
libtool
];
buildInputs = [
boost boost
mpi mpi
gcc
] ++ optional (enableOvni) ovni; ] ++ optional (enableOvni) ovni;
configureFlags = optional (enableOvni) "--with-ovni=${ovni}"; configureFlags = optional (enableOvni) "--with-ovni=${ovni}";
dontDisableStatic = true; dontDisableStatic = true;