diff options
author | Sandro <sandro.jaeckel@gmail.com> | 2024-05-18 15:52:30 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-05-18 15:52:30 +0200 |
commit | c21d10ba30f90d5554f0e16fb73af52600f1f8f4 (patch) | |
tree | e7f22b24a44939ece33f6853f8000e0aaf0b8837 /pkgs/by-name/be | |
parent | c7829cdc44581b1a589f6d84c125b2501fd158c5 (diff) | |
parent | 9f2f6359bb22bddf828ccd6cd4f5abcceffad39e (diff) |
Merge pull request #263375 from lorenzleutgeb/benchexec
benchexec: init at 3.21
Diffstat (limited to 'pkgs/by-name/be')
-rw-r--r-- | pkgs/by-name/be/benchexec/package.nix | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/pkgs/by-name/be/benchexec/package.nix b/pkgs/by-name/be/benchexec/package.nix new file mode 100644 index 0000000000000..abc04b97cb8de --- /dev/null +++ b/pkgs/by-name/be/benchexec/package.nix @@ -0,0 +1,62 @@ +{ lib +, fetchFromGitHub +, python3 +, libseccomp +, nixosTests +, testers +, benchexec +}: +python3.pkgs.buildPythonApplication rec { + pname = "benchexec"; + version = "3.21"; + + src = fetchFromGitHub { + owner = "sosy-lab"; + repo = "benchexec"; + rev = version; + hash = "sha256-bE3brmmLHZQakDKvd47I1hm9Dcsu6DrSeJyjWWtEZWI="; + }; + + pyproject = true; + + nativeBuildInputs = with python3.pkgs; [ setuptools ]; + + # NOTE: CPU Energy Meter is not added, + # because BenchExec should call the wrapper configured + # via `security.wrappers.cpu-energy-meter` + # in `programs.cpu-energy-meter`, which will have the required + # capabilities to access MSR. + # If we add `cpu-energy-meter` here, BenchExec will instead call an executable + # without `CAP_SYS_RAWIO` and fail. + propagatedBuildInputs = with python3.pkgs; [ + coloredlogs + lxml + pystemd + pyyaml + ]; + + makeWrapperArgs = [ "--set-default LIBSECCOMP ${lib.getLib libseccomp}/lib/libseccomp.so" ]; + + passthru.tests = + let + testVersion = result: testers.testVersion { + command = "${result} --version"; + package = benchexec; + }; + in + { + nixos = nixosTests.benchexec; + benchexec-version = testVersion "benchexec"; + runexec-version = testVersion "runexec"; + table-generator-version = testVersion "table-generator"; + containerexec-version = testVersion "containerexec"; + }; + + meta = with lib; { + description = "A Framework for Reliable Benchmarking and Resource Measurement."; + homepage = "https://github.com/sosy-lab/benchexec"; + maintainers = with maintainers; [ lorenzleutgeb ]; + license = licenses.asl20; + mainProgram = "benchexec"; + }; +} |