unicap: use stdenv

This replaces use of `builderDefsPackage`. Also fix build.
This commit is contained in:
Robert Helgesson 2015-12-30 12:22:11 +01:00
parent 6ca0480de6
commit ffd09ecc60

View File

@ -1,56 +1,34 @@
x@{builderDefsPackage { stdenv, fetchurl, libusb, libraw1394, dcraw, intltool, perl, v4l_utils }:
, libusb, libraw1394, dcraw, intltool, perl
, ...}:
builderDefsPackage
(a :
let
helperArgNames = ["stdenv" "fetchurl" "builderDefsPackage"] ++
[];
buildInputs = map (n: builtins.getAttr n x) stdenv.mkDerivation rec {
(builtins.attrNames (builtins.removeAttrs x helperArgNames)); name = "libunicap-${version}";
sourceInfo = rec { version="0.9.12";
baseName="libunicap";
version="0.9.12"; src = fetchurl {
name="${baseName}-${version}"; url = "http://www.unicap-imaging.org/downloads/${name}.tar.gz";
url="http://www.unicap-imaging.org/downloads/${name}.tar.gz"; sha256 = "05zcnnm4dfc6idihfi0fq5xka6x86zi89wip2ca19yz768sd33s9";
hash="05zcnnm4dfc6idihfi0fq5xka6x86zi89wip2ca19yz768sd33s9";
};
in
rec {
src = a.fetchurl {
url = sourceInfo.url;
sha256 = sourceInfo.hash;
}; };
inherit (sourceInfo) name version; buildInputs = [ libusb libraw1394 dcraw intltool perl v4l_utils ];
inherit buildInputs;
/* doConfigure should be removed if not needed */ patches = [
phaseNames = ["fixIncludes" "fixMakefiles" "doConfigure" "doMakeInstall"]; # Debian has a patch that fixes the build.
(fetchurl {
url = "https://sources.debian.net/data/main/u/unicap/0.9.12-2/debian/patches/1009_v4l1.patch";
sha256 = "1lgypmhdj681m7d1nmzgvh19cz8agj2f31wlnfib0ha8i3g5hg5w";
})
];
fixIncludes = a.fullDepEntry ('' postPatch = ''
find . -type f -exec sed -e '/linux\/types\.h/d' -i '{}' ';' find . -type f -exec sed -e '/linux\/types\.h/d' -i '{}' ';'
'') ["minInit" "doUnpack"];
fixMakefiles = a.fullDepEntry (''
sed -e 's@/etc/udev@'"$out"'/&@' -i data/Makefile.* sed -e 's@/etc/udev@'"$out"'/&@' -i data/Makefile.*
'') ["minInit" "doUnpack"]; '';
meta = { meta = with stdenv.lib; {
description = "Universal video capture API"; description = "Universal video capture API";
maintainers = with a.lib.maintainers; homepage = http://www.unicap-imaging.org/;
[ maintainers = [ maintainers.raskin ];
raskin license = licenses.gpl2Plus;
]; platforms = platforms.linux;
platforms = with a.lib.platforms;
linux;
broken = true;
}; };
passthru = { }
updateInfo = {
downloadPage = "http://unicap-imaging.org/download.htm";
};
};
}) x