summaryrefslogtreecommitdiff
path: root/pkgs/rv8.nix
blob: 8527601ca12ca7d5c2759bc2527f2bce33585d91 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
{ callPackage, lib, fetchFromGitHub, stdenv, writeText, ... }:
stdenv.mkDerivation {
  pname = "rv8";
  version = "master";

  src = fetchFromGitHub {
    owner = "michaeljclark";
    repo = "rv8";
    rev = "834259098a5c182874aac97d82a164d144244e1a";
    sha256 = "sha256-I1lMKxfu+04Ap9WNjr8S1FLcUpQ3pVlTu61L/LFFGJ0=";
    fetchSubmodules = true;
  };

  makeFlags = [ "AR=${stdenv.cc.targetPrefix}ar" "DEST_DIR=$(out)" ];

  preInstall = ''
    mkdir -p $out/bin $out/lib
  '';

  patches = [
    (writeText "rv8-include-limits.patch" ''
      diff --git a/src/gen/gen-cc.cc b/src/gen/gen-cc.cc
      index fd9f948..44c8bf7 100644
      --- a/src/gen/gen-cc.cc
      +++ b/src/gen/gen-cc.cc
      @@ -12,6 +12,7 @@
       #include <deque>
       #include <map>
       #include <set>
      +#include <limits>
     
       #include "util.h"
       #include "cmdline.h"
      diff --git a/src/gen/gen-fpu-test.cc b/src/gen/gen-fpu-test.cc
      index f1b8f84..d0a2f32 100644
      --- a/src/gen/gen-fpu-test.cc
      +++ b/src/gen/gen-fpu-test.cc
      @@ -12,6 +12,7 @@
       #include <deque>
       #include <map>
       #include <set>
      +#include <limits>
     
       #include "util.h"
       #include "cmdline.h"
    '')
  ];
}