about summary refs log tree commit diff
path: root/nixpkgs/pkgs/development/tools/misc/kconfig-frontends/default.nix
blob: 3b355b6218a5acf3cf0aea31beb5eea7190dd11a (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
{ lib, stdenv, fetchurl, pkg-config, bison, flex, gperf, ncurses, pythonPackages }:

stdenv.mkDerivation rec {
  basename = "kconfig-frontends";
  version = "4.11.0.1";
  name = "${basename}-${version}";

  src = fetchurl {
    sha256 = "1xircdw3k7aaz29snf96q2fby1cs48bidz5l1kkj0a5gbivw31i3";
    url = "http://ymorin.is-a-geek.org/download/${basename}/${name}.tar.xz";
  };

  nativeBuildInputs = [ pkg-config ];
  buildInputs = [ bison flex gperf ncurses pythonPackages.python pythonPackages.wrapPython ];

  configureFlags = [
    "--enable-frontends=conf,mconf,nconf"
  ];

  postInstall = ''
    wrapPythonPrograms
  '';

  NIX_CFLAGS_COMPILE = lib.optionalString stdenv.cc.isClang "-Wno-error=format-security";

  meta = with lib; {
    description = "Out of Linux tree packaging of the kconfig infrastructure";
    longDescription = ''
      Configuration language and system for the Linux kernel and other
      projects. Features simple syntax and grammar, limited yet adequate option
      types, simple organization of options, and direct and reverse
      dependencies.
    '';
    homepage = "http://ymorin.is-a-geek.org/projects/kconfig-frontends";
    license = licenses.gpl2;
    platforms = platforms.unix;
    maintainers = with maintainers; [ mbe ];
  };
}