nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{ lib, stdenv, makeWrapper, requireFile, gcc, unzip }:
2
3# v2.1: last version with NHM/WSM arch support
4stdenv.mkDerivation rec {
5 pname = "iaca";
6 version = "2.1";
7 src = requireFile {
8 name = "iaca-version-${version}-lin64.zip";
9 sha256 = "11s1134ijf66wrc77ksky9mnb0lq6ml6fzmr86a6p6r5xclzay2m";
10 url = "https://software.intel.com/en-us/articles/intel-architecture-code-analyzer-download";
11 };
12 unpackCmd = ''${unzip}/bin/unzip "$src" -x __MACOSX/ __MACOSX/iaca-lin64/ __MACOSX/iaca-lin64/._.DS_Store'';
13 nativeBuildInputs = [ makeWrapper ];
14 installPhase = ''
15 mkdir -p $out/bin $out/lib
16 cp bin/iaca $out/bin/
17 cp lib/* $out/lib
18 '';
19 preFixup = let libPath = lib.makeLibraryPath [ stdenv.cc.cc.lib gcc ]; in ''
20 patchelf \
21 --set-interpreter ${stdenv.cc.libc}/lib/ld-linux-x86-64.so.2 \
22 --set-rpath $out/lib:"${libPath}" \
23 $out/bin/iaca
24 '';
25 postFixup = "wrapProgram $out/bin/iaca --set LD_LIBRARY_PATH $out/lib";
26 meta = with lib; {
27 description = "Intel Architecture Code Analyzer";
28 homepage = "https://software.intel.com/en-us/articles/intel-architecture-code-analyzer/";
29 sourceProvenance = with sourceTypes; [ binaryNativeCode ];
30 license = licenses.unfree;
31 platforms = [ "x86_64-linux" ];
32 maintainers = with maintainers; [ kazcw ];
33 };
34}