···
9
+
python3.pkgs.buildPythonApplication rec {
10
+
pname = "benchexec";
13
+
src = fetchFromGitHub {
17
+
hash = "sha256-bE3brmmLHZQakDKvd47I1hm9Dcsu6DrSeJyjWWtEZWI=";
22
+
nativeBuildInputs = with python3.pkgs; [ setuptools ];
24
+
# NOTE: CPU Energy Meter is not added,
25
+
# because BenchExec should call the wrapper configured
26
+
# via `security.wrappers.cpu-energy-meter`
27
+
# in `programs.cpu-energy-meter`, which will have the required
28
+
# capabilities to access MSR.
29
+
# If we add `cpu-energy-meter` here, BenchExec will instead call an executable
30
+
# without `CAP_SYS_RAWIO` and fail.
31
+
propagatedBuildInputs = with python3.pkgs; [
38
+
makeWrapperArgs = [ "--set-default LIBSECCOMP ${lib.getLib libseccomp}/lib/libseccomp.so" ];
42
+
testVersion = result: testers.testVersion {
43
+
command = "${result} --version";
44
+
package = benchexec;
48
+
nixos = nixosTests.benchexec;
49
+
benchexec-version = testVersion "benchexec";
50
+
runexec-version = testVersion "runexec";
51
+
table-generator-version = testVersion "table-generator";
52
+
containerexec-version = testVersion "containerexec";
56
+
description = "A Framework for Reliable Benchmarking and Resource Measurement.";
57
+
homepage = "https://github.com/sosy-lab/benchexec";
58
+
maintainers = with maintainers; [ lorenzleutgeb ];
59
+
license = licenses.asl20;
60
+
mainProgram = "benchexec";