summary refs log tree commit diff
path: root/pkgs/os-specific/linux/cpupower/default.nix
blob: 7cde965d2153d880f1469aaf108a7059d50c5e95 (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
40
41
{ stdenv, buildPackages, fetchurl, kernel, pciutils, gettext }:

stdenv.mkDerivation {
  name = "cpupower-${kernel.version}";

  src = kernel.src;

  nativeBuildInputs = [ gettext ];
  buildInputs = [ pciutils ];

  configurePhase = ''
    cd tools/power/cpupower
    sed -i 's,/bin/true,${buildPackages.coreutils}/bin/true,' Makefile
    sed -i 's,/bin/pwd,${buildPackages.coreutils}/bin/pwd,' Makefile
    sed -i 's,/usr/bin/install,${buildPackages.coreutils}/bin/install,' Makefile
  '';

  makeFlags = [ "CROSS=${stdenv.cc.targetPrefix}" ];

  installPhase = ''
    make \
      bindir="$out/bin" \
      sbindir="$out/sbin" \
      mandir="$out/share/man" \
      includedir="$out/include" \
      libdir="$out/lib" \
      localedir="$out/share/locale" \
      docdir="$out/share/doc/cpupower" \
      confdir="$out/etc" \
      install install-man
  '';

  enableParallelBuilding = true;

  meta = with stdenv.lib; {
    description = "Tool to examine and tune power saving features";
    homepage = https://www.kernel.org/;
    license = licenses.gpl2;
    platforms = platforms.linux;
  };
}