diffprobe.nix (790B)
1 let 2 f = builtins.getFlake "/Users/jtobin/src/ppad/vestigia"; 3 pkgs = import f.inputs.nixpkgs { system = "x86_64-linux"; }; 4 plugin = pkgs.runCommandCC "vestigia-qemu-plugin" { 5 nativeBuildInputs = [ pkgs.pkg-config ]; 6 buildInputs = [ pkgs.glib ]; 7 } '' 8 mkdir -p $out/lib 9 cc -O2 -shared -fPIC -Wall -Werror \ 10 $(pkg-config --cflags glib-2.0) -I${pkgs.qemu}/include \ 11 -o $out/lib/libvestigia-qemu.so ${../../plugin/vestigia-qemu.c} 12 ''; 13 in pkgs.runCommandCC "vestigia-diffprobe" { } '' 14 mkdir -p $out 15 cc -O2 -g -o probe ${./diffprobe.c} 16 for s in 03 05; do 17 ${pkgs.qemu}/bin/qemu-x86_64 \ 18 -plugin ${plugin}/lib/libvestigia-qemu.so,out=$out/dump-$s \ 19 ./probe $s > $out/stdout-$s 20 done 21 objdump -d probe > $out/probe.dis 22 cp probe $out/ 23 ''