diff options
Diffstat (limited to 'nixpkgs/pkgs/development/tools/analysis/cov-build/default.nix')
-rw-r--r-- | nixpkgs/pkgs/development/tools/analysis/cov-build/default.nix | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/nixpkgs/pkgs/development/tools/analysis/cov-build/default.nix b/nixpkgs/pkgs/development/tools/analysis/cov-build/default.nix new file mode 100644 index 000000000000..61c8dda2e6da --- /dev/null +++ b/nixpkgs/pkgs/development/tools/analysis/cov-build/default.nix @@ -0,0 +1,69 @@ +{ lib +, stdenv +, fetchurl + +, autoPatchelfHook + +, alsa-lib +, libxcrypt-legacy +, lttng-ust_2_12 +, xorg +, zlib +}: + +stdenv.mkDerivation rec { + pname = "cov-build"; + version = "2022.12.2"; + + src = + if stdenv.hostPlatform.system == "i686-linux" + then fetchurl { + url = "https://archive.org/download/cov-analysis-linux-${version}.tar/cov-analysis-linux-${version}.tar.gz"; + hash = "sha256-Jr9bMUo9GRp+dgoAPqKxaTqWYWh4djGArdG9ukUK+ZY="; + } + else if stdenv.hostPlatform.system == "x86_64-linux" + then fetchurl { + url = "https://archive.org/download/cov-analysis-linux64-${version}.tar/cov-analysis-linux64-${version}.tar.gz"; + hash = "sha256-CyNKILJXlDMOCXbZZF4r/knz0orRx32oSj+Kpq/nxXQ="; + } + else throw "Unsupported platform '${stdenv.hostPlatform.system}'"; + + nativeBuildInputs = [ autoPatchelfHook ]; + + buildInputs = [ + alsa-lib + libxcrypt-legacy + lttng-ust_2_12 + xorg.libXext + xorg.libXrender + xorg.libXtst + zlib + ]; + + dontConfigure = true; + + dontBuild = true; + + installPhase = '' + mkdir -p $out/bin $out/libexec + mv * $out/libexec + for x in cov-build cov-capture cov-configure cov-emit cov-emit-java \ + cov-export-cva cov-extract-scm cov-help cov-import-scm cov-link \ + cov-internal-clang cov-internal-emit-clang cov-internal-nm \ + cov-internal-emit-java-bytecode cov-internal-reduce cov-translate \ + cov-preprocess cov-internal-pid-to-db cov-manage-emit \ + cov-manage-history; do + ln -s $out/libexec/bin/$x $out/bin/$x; + done + ''; + + dontStrip = true; + + meta = { + description = "Coverity Scan build tools"; + homepage = "https://scan.coverity.com"; + license = lib.licenses.unfreeRedistributable; + platforms = lib.platforms.linux; + maintainers = [ lib.maintainers.thoughtpolice ]; + }; +} |