Add pcmcia-utils.

Merge branch 'tmp' into tmp2

svn path=/nixpkgs/trunk/; revision=12432
This commit is contained in:
Nicolas Pierron 2008-07-25 15:54:19 +00:00
parent e2d94c740c
commit 0abfffc0f2
2 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,51 @@
{ stdenv, fetchurl
, yacc, flex
, sysfsutils, module_init_tools, udev
, firmware # Special pcmcia cards.
, config # Special hardware (map memory & port & irq)
}:
# FIXME: should add an option to choose between hotplug and udev.
stdenv.mkDerivation rec {
name = "pcmciautils-015";
src = fetchurl {
url = "http://kernel.org/pub/linux/utils/kernel/pcmcia/${name}.tar.bz2";
sha256 = "4847485c412b47e3d88fa83ef811229e0e7941217303bc8449c30a3dc2128b6e";
};
buildInputs = [udev yacc sysfsutils module_init_tools flex];
patchPhase = ''
sed -i "
s,/sbin/modprobe,$module_init_tools/sbin/modprobe,;
s,/lib/udev/,$out/sbin/,;
" udev/* # fix-color */
sed -i "
s,/lib/firmware,$out&,;
s,/etc/pcmcia,$out&,;
" src/{startup.c,pcmcia-check-broken-cis.c} # fix-color */
''
+ (if firmware == null then ''sed -i "s,STARTUP = true,STARTUP = false," Makefile'' else "")
+ (if config == null then "" else ''
ln -sf ${config}/config.opts ./config/config.opts'')
;
makeFlags = "LEX=flex";
installFlags = ''INSTALL=install DESTDIR=''${out}'';
postInstall =
(if firmware == null then "" else ''
ensureDir $out/lib
ln -s ${firmware} $out/lib/firmware'')
;
meta = {
homepage = http://kernel.org/pub/linux/utils/kernel/pcmcia/pcmcia.html;
longDescription = "
PCMCIAutils contains the initialization tools necessary to allow
the PCMCIA subsystem to behave (almost) as every other
hotpluggable bus system.
";
license = "GPL2";
};
}

View File

@ -5324,6 +5324,14 @@ let pkgs = rec {
inherit stdenv fetchurl pam libxcrypt;
};
pcmciaUtils = (import ../os-specific/linux/pcmciautils) {
inherit stdenv fetchurl udev yacc flex;
inherit sysfsutils module_init_tools;
firmware = getConfig ["pcmciaUtils" "firmware"] null;
config = getConfig ["pcmciaUtils" "config"] null;
};
powertop = import ../os-specific/linux/powertop {
inherit fetchurl stdenv ncurses;
};