about summary refs log tree commit diff
path: root/pkgs/development/python-modules/lttng/default.nix
blob: 521def0abf77b3fbad38eab6dca7c405ad390715 (plain) (blame)
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
{
  toPythonModule,
  python,
  lttng-tools,
  swig,
}:

toPythonModule (
  lttng-tools.overrideAttrs (
    {
      nativeBuildInputs ? [ ],
      configureFlags ? [ ],
      ...
    }:
    {
      pname = "lttng";

      nativeBuildInputs = nativeBuildInputs ++ [ swig ];

      configureFlags = configureFlags ++ [
        "--enable-python-bindings"
        # "--disable-bin-lttng" # The Python bindings depend on liblttng-ctl, which is only built when the binary is enabled.
        "--disable-bin-lttng-consumerd"
        "--disable-bin-lttng-crash"
        "--disable-bin-lttng-relayd"
        "--disable-bin-lttng-sessiond"
        # "--disable-extras" # The Python bindings are an extra.
        "--disable-man-pages"
      ];

      # Nix treats nativeBuildInputs specially for cross-compilation, but in this
      # case, cross-compilation is accounted for explicitly. Using the variables
      # ensures that the platform setup isn't messed with further. It also allows
      # regular Python to be added in the future if it is ever needed.
      PYTHON = "${python.pythonOnBuildForHost}/bin/python";
      PYTHON_CONFIG = "${python.pythonOnBuildForHost}/bin/python-config";
    }
  )
)