tangled
alpha
login
or
join now
pyrox.dev
/
nixpkgs
0
fork
atom
lol
0
fork
atom
overview
issues
pulls
pipelines
llef: init at unstable-2023-10-18
Nikodem Rabuliński
2 years ago
62cb8f46
6152f88d
+57
-2
3 changed files
expand all
collapse all
unified
split
pkgs
development
compilers
llvm
15
default.nix
16
default.nix
common
lldb-plugins
llef.nix
+7
-1
pkgs/development/compilers/llvm/15/default.nix
···
59
59
inherit (releaseInfo) release_version version;
60
60
inherit (import ../common/common-let.nix { inherit lib fetchFromGitHub release_version gitRelease officialRelease monorepoSrc'; }) llvm_meta monorepoSrc;
61
61
62
62
+
lldbPlugins = lib.makeExtensible (lldbPlugins: let
63
63
+
callPackage = newScope (lldbPlugins // { inherit stdenv; inherit (tools) lldb; });
64
64
+
in {
65
65
+
llef = callPackage ../common/lldb-plugins/llef.nix {};
66
66
+
});
67
67
+
62
68
tools = lib.makeExtensible (tools: let
63
69
callPackage = newScope (tools // { inherit stdenv cmake ninja libxml2 python3 release_version version monorepoSrc buildLlvmTools; });
64
70
mkExtraBuildCommands0 = cc: ''
···
359
365
});
360
366
noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
361
367
362
362
-
in { inherit tools libraries release_version; } // (noExtend libraries) // (noExtend tools)
368
368
+
in { inherit tools libraries release_version lldbPlugins; } // (noExtend libraries) // (noExtend tools)
+7
-1
pkgs/development/compilers/llvm/16/default.nix
···
59
59
inherit (releaseInfo) release_version version;
60
60
inherit (import ../common/common-let.nix { inherit lib fetchFromGitHub release_version gitRelease officialRelease monorepoSrc'; }) llvm_meta monorepoSrc;
61
61
62
62
+
lldbPlugins = lib.makeExtensible (lldbPlugins: let
63
63
+
callPackage = newScope (lldbPlugins // { inherit stdenv; inherit (tools) lldb; });
64
64
+
in {
65
65
+
llef = callPackage ../common/lldb-plugins/llef.nix {};
66
66
+
});
67
67
+
62
68
tools = lib.makeExtensible (tools: let
63
69
callPackage = newScope (tools // { inherit stdenv cmake ninja libxml2 python3 release_version version monorepoSrc buildLlvmTools; });
64
70
major = lib.versions.major release_version;
···
370
376
});
371
377
noExtend = extensible: lib.attrsets.removeAttrs extensible [ "extend" ];
372
378
373
373
-
in { inherit tools libraries release_version; } // (noExtend libraries) // (noExtend tools)
379
379
+
in { inherit tools libraries release_version lldbPlugins; } // (noExtend libraries) // (noExtend tools)
+43
pkgs/development/compilers/llvm/common/lldb-plugins/llef.nix
···
1
1
+
{ lib
2
2
+
, stdenv
3
3
+
, fetchFromGitHub
4
4
+
, makeWrapper
5
5
+
, lldb
6
6
+
}:
7
7
+
8
8
+
stdenv.mkDerivation {
9
9
+
pname = "llef";
10
10
+
version = "unstable-2023-10-18";
11
11
+
12
12
+
src = fetchFromGitHub {
13
13
+
owner = "foundryzero";
14
14
+
repo = "llef";
15
15
+
rev = "629bd75f44c356f7a3576a6436d3919ce111240d";
16
16
+
hash = "sha256-JtCHG89s436Di/6+V7Le4CZnkIPh/RYIllfXEO/B7+8";
17
17
+
};
18
18
+
19
19
+
dontBuild = true;
20
20
+
21
21
+
nativeBuildInputs = [ makeWrapper ];
22
22
+
23
23
+
installPhase = ''
24
24
+
runHook preInstall
25
25
+
26
26
+
mkdir -p $out/share/llef
27
27
+
cp -r llef.py arch commands common handlers $out/share/llef
28
28
+
makeWrapper ${lib.getExe lldb} $out/bin/llef \
29
29
+
--add-flags "-o 'settings set stop-disassembly-display never'" \
30
30
+
--add-flags "-o \"command script import $out/share/llef/llef.py\""
31
31
+
32
32
+
runHook postInstall
33
33
+
'';
34
34
+
35
35
+
meta = with lib; {
36
36
+
description = "LLEF is a plugin for LLDB to make it more useful for RE and VR";
37
37
+
homepage = "https://github.com/foundryzero/llef";
38
38
+
license = licenses.mit;
39
39
+
platforms = platforms.all;
40
40
+
maintainers = with maintainers; [ nrabulinski ];
41
41
+
mainProgram = "llef";
42
42
+
};
43
43
+
}