Commit Graph

30 Commits

Author SHA1 Message Date
Sergei Trofimovich
67843259ad bpftrace: pull upstream fix for binutils-2.39
Without the change build fails on binutils-2.39 branch as:

    jit_disasm.c:105:17: error: too few arguments to function 'init_disassemble_info'
      105 |                 init_disassemble_info(&info, stdout,
          |                 ^~~~~~~~~~~~~~~~~~~~~
2022-08-25 08:14:44 +01:00
Dominique Martinet
3762c001fa bpftrace: remove libelf extraneous dependency
elfutils provides a libelf, we don't need it twice
2022-07-13 19:54:47 +09:00
Vladimír Čunát
8982198748
Merge #175467: libbpf 0.7.0 -> 0.8.0, bpftrace: 0.14.1 -> 0.15.0 2022-07-09 07:54:46 +02:00
Klemens Nanni
3d54f15c00 bpftrace: Pull tools into PATH
The *.bt(8) tools are meant to be used as standalone scripts,
their synopsis demonstrates this usage.

Especially under NixOS, calling them via their absoloute path
in interactive shells is a huge pain, however.

Symlink them next to bpftrace(8) itself so they end up in `PATH`
but do not move them to avoid breaking existing setups that expect
them under share/tools/.

This goes in line with our bcc as well as Debian's bpftrace package.
2022-06-23 19:42:08 +02:00
Dominique Martinet
d8b840a60f bpftrace: 0.14.1 -> 0.15.0 2022-06-10 06:38:54 +09:00
Klemens Nanni
1a20dbc086 bpftrace: Rename *.8 to *.bt.8 to avoid bcc conflicts
bpftrace ships *.bt replacement scripts for the original bcc programs
but still installs their manual pages as *.8 rather than *.bt.8 which
conflicts with the original manual pages.

Rename them to recover the original manuals and avoid conflict spam:
```
building '/nix/store/jspx13hyfi2m9vlnbj5iywk6rxpxp7y0-system-path.drv'...
warning: collision between `/nix/store/dv7x07rmd2m7596f38kl9d5bnv545qz7-bpftrace-0.14.1-man/share/man/man8/biolatency.8.gz' and `/nix/store/lw1kw7077wk3j6cnvjrm904rs2w7785p-bcc-0.24.0/share/man/man8/biolatency.8.gz'
[... 28 more duplicate manuals ...]
```
2022-05-30 11:39:15 +02:00
R. Ryantm
734af73298 bpftrace: 0.14.0 -> 0.14.1 2022-01-12 04:01:33 -06:00
Dominique Martinet
fa857bb435 bpftrace: fix build with libbpf 0.6.0
libbpf 0.6.0 relies on typeof in bpf/btf.h to pick the right version of
btf_dump__new() but that's not valid c++.
see https://github.com/iovisor/bpftrace/issues/2068
2021-12-06 07:15:56 +09:00
Dominique Martinet
559fe43665 nixos/tests: add bpf test
test bcc and bpftrace briefly
2021-12-04 21:12:07 +09:00
Dominique Martinet
292cea9418 bpftrace: 0.13.0 -> 0.14.0 2021-12-04 21:12:07 +09:00
Dominique Martinet
eb774dd039 bpftrace: move from linux kernel packages to normal package
bpftrace doesn't actually need to be a kernel package anymore.
It used to require path to kernel sources, but we build our kernels
with IKHEADER and BTF so the currently running configuration can always
be found automatically without any patch
2021-12-04 21:07:10 +09:00
R. RyanTM
d9b84822e6 linuxPackages_5_4.bpftrace: 0.12.1 -> 0.13.0 2021-07-03 05:57:56 +00:00
R. RyanTM
1c563249ea linuxPackages.bpftrace: 0.12.0 -> 0.12.1 2021-05-17 13:44:33 -07:00
Jonathan Ringer
0ef9059dd4 linuxPackages.bpftrace: fix llvm build 2021-05-08 18:13:45 -07:00
V
fb1a5d09d9 linuxPackages.bpftrace: 0.11.4 -> 0.12.0 2021-04-02 17:15:17 +02:00
Jonathan Ringer
9bb3fccb5b treewide: pkgs.pkgconfig -> pkgs.pkg-config, move pkgconfig to alias.nix
continuation of #109595

pkgconfig was aliased in 2018, however, it remained in
all-packages.nix due to its wide usage. This cleans
up the remaining references to pkgs.pkgsconfig and
moves the entry to aliases.nix.

python3Packages.pkgconfig remained unchanged because
it's the canonical name of the upstream package
on pypi.
2021-01-19 01:16:25 -08:00
Ben Siraphob
16d91ee628 pkgs/os-specific: stdenv.lib -> lib 2021-01-17 23:26:08 +07:00
Profpatsch
4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00
Ben Siraphob
3ae5e6ce03 treewide: remove enableParallelBuilding = true if using cmake 2021-01-03 18:37:40 +07:00
Sarah Brofeldt
6b882ee0eb linuxPackages.bpftrace: 0.11.0 -> 0.11.4 2020-11-28 14:00:09 +01:00
Austin Seipp
6fb7b16046
linuxPackages.bpftrace: 0.9.4 -> 0.11.0
This fixes the `bcc` include directory (which was improperly set, and
warned about at build-time, but masked by some backwards compat code,
apparently) and also includes some missing libraries in `buildInputs`

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2020-08-31 17:47:30 -05:00
Maximilian Bosch
89d2967c9e
linuxPackages.bpftrace: 0.9.3 -> 0.9.4
https://github.com/iovisor/bpftrace/releases/tag/v0.9.4
2020-04-13 12:03:37 +02:00
Michael Reilly
84cf00f980
treewide: Per RFC45, remove all unquoted URLs 2020-04-10 17:54:53 +01:00
R. RyanTM
52950ee73f linuxPackages.bpftrace: 0.9.2 -> 0.9.3 2019-12-04 14:31:39 -06:00
Austin Seipp
0ea34f70c3
linuxPackages.bpftrace: 0.9.1 -> 0.9.2
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2019-10-14 10:50:34 -05:00
volth
46420bbaa3 treewide: name -> pname (easy cases) (#66585)
treewide replacement of

stdenv.mkDerivation rec {
  name = "*-${version}";
  version = "*";

to pname
2019-08-15 13:41:18 +01:00
Austin Seipp
8250dbb1a9
linuxPackages.bpftrace: 0.9 -> 0.9.1
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2019-07-17 21:48:54 -05:00
Austin Seipp
f40a559cbb
bpftrace: nuke some unneeded files from $out
Signed-off-by: Austin Seipp <aseipp@pobox.com>
2019-05-03 12:25:59 -05:00
Austin Seipp
241063ca84
bpftrace: unstable-2018-10-27 -> 0.9
Update bpftrace to the latest pre-release, with a real version number.

The most notable change now is that bpftrace can use a stable version of
the 'bcc' toolchain in order to build, meaning no more hacks are needed
to clone the source code and fix up the build system, etc. This
simplifies things greatly and removes the old bcc-source patch.

Similarly, we can remove our custom gtests patch (which disabled the
build) by just passing -DBUILD_TESTING=FALSE when running cmake. This
was also added upstream recently.

However, something does still need to be fixed, at a cost: bpftrace
requires the kernel -dev package because it wants both objects and
include directories (some files are only shipped in one or the other).
Therefore, we remove the dependency on linuxHeaders and instead use
kernel.dev as the sole input to the build.

This is both a positive and a negative: the positive is that tools work
without annoying fatal errors, and that the bpf toolchain is
synchronized to the linuxPackages.kernel derivation it was built
against. The downside is that the .dev expression is much heavier as a
dependency, so bpftrace is now closer to 700mb in closure size. (This
especially hurts across kernel upgrades requiring a whole new rebuild,
especially if you have existing nixos generations that won't GC, etc.)

We probably want to slim this down substantially in the future (and
there may be a few ways to do that), but as this will probably also
touch bcc, and as a first cut of the pre-releases, this is probably fine
while we work out other kinks.

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2019-05-03 11:32:58 -05:00
Rodney Lorrimar
95fab6a09c
linuxPackages.bpftrace: init at unstable-2018-10-27 2018-10-28 14:33:37 +10:00