Commit df89f69f authored by J. Dekker's avatar J. Dekker
Browse files

xed: 2022.08.11 -> 2024.02.22

Additionally, build xed tool.
parent f0d74452
Loading
Loading
Loading
Loading
+9 −6
Original line number Diff line number Diff line
{ lib, stdenv, fetchFromGitHub, python3Packages }:
{ lib, stdenv, fetchFromGitHub, python3Packages, llvmPackages }:

let
  # mbuild is a custom build system used only to build xed
@@ -10,34 +10,37 @@ let
      owner = "intelxed";
      repo = "mbuild";
      rev = "v${version}";
      sha256 = "sha256-eOAqmoPotdXGcBmrD9prXph4XOL6noJU6GYT/ud/VXk=";
      sha256 = "sha256-nVHHiaPbf+b+RntjUGjLLGS53e6c+seXIBx7AcTtiWU=";
    };
  };

in stdenv.mkDerivation rec {
  pname = "xed";
  version = "2022.08.11";
  version = "2024.02.22";

  src = fetchFromGitHub {
    owner = "intelxed";
    repo = "xed";
    rev = "v${version}";
    sha256 = "sha256-Iil+dfjuWYPbzmSjgwKTKScSE/IsWuHEKQ5HsBJDqWM=";
    sha256 = "sha256-LF4iJ1/Z3OifCiir/kU3ufZqtiRLeaJeAwuBqP2BCF4=";
  };

  nativeBuildInputs = [ mbuild ];
  nativeBuildInputs = [ mbuild ] ++ lib.optionals stdenv.isDarwin [ llvmPackages.bintools ];

  buildPhase = ''
    patchShebangs mfile.py

    # this will build, test and install
    ./mfile.py test --prefix $out
    ./mfile.py examples
    mkdir -p $out/bin
    cp ./obj/wkit/examples/obj/xed $out/bin/
  '';

  dontInstall = true; # already installed during buildPhase

  meta = with lib; {
    broken = (stdenv.isLinux && stdenv.isAarch64);
    broken = stdenv.isAarch64;
    description = "Intel X86 Encoder Decoder (Intel XED)";
    homepage    = "https://intelxed.github.io/";
    license     = licenses.asl20;