diff options
author | William A. Kennington III <william@wkennington.com> | 2015-04-05 14:58:50 -0700 |
---|---|---|
committer | William A. Kennington III <william@wkennington.com> | 2015-04-05 14:58:50 -0700 |
commit | 181248b2a20497d8dc92d1763d9f804951cb9b9e (patch) | |
tree | 1285c646343dce60d290f87c99c63276a02dad0e | |
parent | a5d29aaae2c882f7e438175b344bf0a62f38cb41 (diff) | |
parent | 466cb22bcd06ddf57b76e93f992957443ea313b4 (diff) | |
download | nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar.gz nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar.bz2 nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar.lz nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar.xz nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.tar.zst nixlib-181248b2a20497d8dc92d1763d9f804951cb9b9e.zip |
Merge pull request #7176 from codyopel/v4l
v4l-util: refactor & 1.0.0 -> 1.6.2 (libv4l)
-rw-r--r-- | pkgs/os-specific/linux/v4l-utils/default.nix | 55 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 7 |
2 files changed, 47 insertions, 15 deletions
diff --git a/pkgs/os-specific/linux/v4l-utils/default.nix b/pkgs/os-specific/linux/v4l-utils/default.nix index 0455c2b8626a..ca5b35cff2fd 100644 --- a/pkgs/os-specific/linux/v4l-utils/default.nix +++ b/pkgs/os-specific/linux/v4l-utils/default.nix @@ -1,26 +1,55 @@ -{stdenv, fetchurl, which, libjpeg -, withQt4 ? false, qt4 ? null}: +{ stdenv, fetchurl, pkgconfig +, libjpeg +, alsaLib ? null +, libX11 ? null +, qt4 ? null # The default is set to qt4 in all-packages.nix +, qt5 ? null +}: -assert withQt4 -> qt4 != null; +# See libv4l in all-packages.nix for the libs only (overrides alsa, libX11 & QT) + +assert qt4 != null -> qt5 == null; +assert qt5 != null -> qt4 == null; + +let + inherit (stdenv.lib) optional; +in stdenv.mkDerivation rec { - name = "v4l-utils-1.0.0"; + name = "v4l-utils-1.6.2"; src = fetchurl { url = "http://linuxtv.org/downloads/v4l-utils/${name}.tar.bz2"; - sha256 = "0c2z500ijxr1ldzb4snasfpwi2icp04f8pk7akiqjkp0k4h8iqqx"; + sha256 = "0zdyjrja2mkqlijpdb4gz1vw0g7pslswmgqqsgri3yq408gypmnk"; }; - buildInputs = [ which ]; - propagatedBuildInputs = [ libjpeg ] ++ stdenv.lib.optional withQt4 qt4; + configureFlags = [ + "--enable-libv4l" + ] ++ (if (alsaLib != null && libX11 != null && (qt4 != null || qt5 != null)) then [ + "--with-udevdir=\${out}/lib/udev" + "--enable-v4l-utils" + "--enable-qv4l2" + ] else [ + "--without-libudev" + "--without-udevdir" + "--disable-v4l-utils" + "--disable-qv4l2" + ]); + + postInstall = '' + # Create symlink for V4l1 compatibility + ln -s $out/include/libv4l1-videodev.h $out/include/videodev.h + ''; + + nativeBuildInputs = [ pkgconfig ]; - preConfigure = ''configureFlags="--with-udevdir=$out/lib/udev"''; + buildInputs = [ alsaLib libjpeg libX11 qt4 qt5 ]; - meta = { + meta = with stdenv.lib; { + description = "V4L utils and libv4l, provide common image formats regardless of the v4l device"; homepage = http://linuxtv.org/projects.php; - description = "V4L utils and libv4l, that provides common image formats regardless of the v4l device"; - license = stdenv.lib.licenses.free; # The libs are of LGPLv2.1+, some other pieces are GPL. - maintainers = with stdenv.lib.maintainers; [viric]; - platforms = with stdenv.lib.platforms; linux; + license = licenses.lgpl21Plus; + maintainers = with maintainers; [ codyopel viric ]; + platforms = platforms.linux; }; } diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 649850cd8cde..67df7ea30ed3 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -6826,7 +6826,10 @@ let }); libv4l = lowPrio (v4l_utils.override { - withQt4 = false; + alsaLib = null; + libX11 = null; + qt4 = null; + qt5 = null; }); libva = callPackage ../development/libraries/libva { }; @@ -9553,7 +9556,7 @@ let }); v4l_utils = callPackage ../os-specific/linux/v4l-utils { - withQt4 = true; + qt5 = null; }; windows = rec { |